当前位置: 首页 > news >正文

重庆大渡口建设网站百度官方app免费下载

重庆大渡口建设网站,百度官方app免费下载,品牌网站如何做,石碣做网站图像的缩放 resize(image, image, Size(round(image.cols * 0.5), round(image.rows * 0.5))); 输入图像 输出图像 大小变换 canny边缘算子的使用 cvtColor(image, gray, COLOR_BGR2GRAY);Canny(gray, canny_mat, 40, 100); 必须先转化为灰度图,作为输入 超过100是真…

图像的缩放

	resize(image, image, Size(round(image.cols * 0.5), round(image.rows * 0.5)));

 输入图像 输出图像 大小变换

canny边缘算子的使用

	cvtColor(image, gray, COLOR_BGR2GRAY);Canny(gray, canny_mat, 40, 100);

 必须先转化为灰度图,作为输入 超过100是真的边缘 低于40是确定不是边缘 在中间若连接边缘 则为边缘 

普通旋转缩放变换(仿射变换)

 获取仿射变换矩阵

	float angel = -10.0, scale = 1;Mat dstmat;Point2f center(image.cols * 0.5, image.rows * 0.5);Mat affine_matrix = getRotationMatrix2D(center, angel, scale);

获取仿射变换的矩阵 中心点 旋转角度 大小是否变换

-10是顺时针转

仿射变换函数

warpAffine(image, dstmat, affine_matrix,image.size());

输入图 输出图 仿射变换矩阵 画布的大小 

这样的仿射变换有旋转的缺陷,因为大小和原图一样,但旋转后,外接矩形肯定大于原图,所以溢出的部分会看不到,后期会更新改进版

点到点的仿射变换(6变量 所以要3个点对3个点)

	Mat affine_Mat;const cv::Point2f src_pt[] = {cv::Point2f(100,100),cv::Point2f(20,30),cv::Point2f(70,90),};const cv::Point2f warp_pt[] = {cv::Point2f(50,100),cv::Point2f(50,20),cv::Point2f(70,96),};Mat affine_matrix2 = cv::getAffineTransform(src_pt, warp_pt);warpAffine(image, affine_Mat, affine_matrix2,image.size());

一个点对应一个点 

计算机会帮我们求出仿射变换的矩阵

点到点的透射变换(8变量 所以要4个点对4个点)

	Mat perspective_Mat;cv::Point2f pts1[] = {cv::Point2f(150,150),cv::Point2f(150,300),cv::Point2f(350,300),cv::Point2f(350,150),};cv::Point2f pts2[] = {cv::Point2f(200,150),cv::Point2f(200,300),cv::Point2f(340,270),cv::Point2f(340,180),};Mat perspective_matrix = cv::getPerspectiveTransform(pts1, pts2);warpPerspective(image, perspective_Mat, perspective_matrix, image.size());

 总体代码:

#include <opencv2/opencv.hpp>
#include<iostream>
using namespace std;
using namespace cv;int main() {Mat image = imread("lena.jpeg");imshow("lena", image);waitKey(0);cvDestroyAllWindows();resize(image, image, Size(round(image.cols * 0.5), round(image.rows * 0.5)));imshow("lena", image);waitKey(0);cvDestroyAllWindows();Mat gray;Mat canny_mat;cvtColor(image, gray, COLOR_BGR2GRAY);Canny(gray, canny_mat, 40, 100);imshow("canny_mat", canny_mat);waitKey(0);cvDestroyAllWindows();	float angel = -10.0, scale = 1;Mat dstmat;Point2f center(image.cols * 0.5, image.rows * 0.5);Mat affine_matrix = getRotationMatrix2D(center, angel, scale);warpAffine(image, dstmat, affine_matrix,image.size());imshow("dstmat", dstmat);waitKey(0);cvDestroyAllWindows();Mat affine_Mat;const cv::Point2f src_pt[] = {cv::Point2f(100,100),cv::Point2f(20,30),cv::Point2f(70,90),};const cv::Point2f warp_pt[] = {cv::Point2f(50,100),cv::Point2f(50,20),cv::Point2f(70,96),};Mat affine_matrix2 = cv::getAffineTransform(src_pt, warp_pt);warpAffine(image, affine_Mat, affine_matrix2,image.size());imshow("affine_Mat", affine_Mat);waitKey(0);cvDestroyAllWindows();Mat perspective_Mat;cv::Point2f pts1[] = {cv::Point2f(150,150),cv::Point2f(150,300),cv::Point2f(350,300),cv::Point2f(350,150),};cv::Point2f pts2[] = {cv::Point2f(200,150),cv::Point2f(200,300),cv::Point2f(340,270),cv::Point2f(340,180),};Mat perspective_matrix = cv::getPerspectiveTransform(pts1, pts2);warpPerspective(image, perspective_Mat, perspective_matrix, image.size());imshow("perspective_Mat", perspective_Mat);waitKey(0);cvDestroyAllWindows();//疑问 图像的平移如何实现  image.size()是什么个东西 如何改变图像大小?return 0;
}

http://www.yidumall.com/news/11033.html

相关文章:

  • 景观设计网站推荐如何推广自己的产品
  • 网站在哪里购买新媒体销售好做吗
  • 一个网站可以做多少关键字文件外链生成网站
  • 开发app需要什么技术人才抚顺网站seo
  • 毕设做购物网站容易吗个人主页网页设计模板
  • 高质量的合肥网站建设网站seo站外优化
  • 初一下电脑课书做网站特大新闻凌晨刚刚发生
  • 设计师网上接单的网站百度网盘手机app下载安装
  • 全球咨询公司排名网站关键词排名优化电话
  • 婚纱摄影网站建设公司刚刚突发1惊天大事
  • 如何做宣传推广的网站链接做公司网站的公司
  • 做酒店网站的公司seo入门教程seo入门
  • 长安网站建设方案查收录网站
  • 王串场街网站建设公司哈尔滨seo推广优化
  • 做站群的网站怎么来网站搜索排名优化怎么做
  • 建设网站收费电商培训机构排名
  • 电影网站建设视频教程电商网站项目
  • 什么是网站建设流程图百度打广告收费表
  • 昌黎县城乡建设局网站中国万网登录入口
  • 找人做网站需要什么百度一下电脑版首页网址
  • wordpress弹窗提示沈阳seo网站推广
  • 有男女做暖暖的视频网站厦门网站快速排名优化
  • 网站永久镜像怎么做外贸网站seo推广教程
  • 深圳入户申请网站官网重庆seo排名软件
  • 昆明做网站的公司有哪些优化大师tv版
  • 网络教育新乡seo公司
  • dede 企业网站模板关键词竞价广告
  • 公司注销 网站备案苹果cms永久免费建站程序
  • 北京手机网站开发价格郑州百度推广哪家好
  • 电商网站建设规划百度ai智能写作工具