2020.6.21P72_OpenCV_几何变换_图像平移_缩放_旋转
描述:
//2020.6.21P72_OpenCV_图像平移_缩放_旋转
代码:
//2020.6.21P72_OpenCV_图像平移_缩放_旋转
//#include <opencv2/core.hpp>
//#include <opencv2/highgui.hpp>
//txwtech
#include<opencv2/imgproc/imgproc.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace cv;int main(int argc, char *argv[])
{//Mat I = imread(argv[1],CV_LOAD_IMAGE_GRAYSCALE);//Mat I = imread(argv[1], CV_LOAD_IMAGE_COLOR);Mat I = imread("yezi.png");//图片放在cpp的相同目录。 比如cvp71.cpp, yezi.png放在同一个文件夹if (!I.data) //no data ,return to -1;return -1;//缩放仿射矩阵,等比例缩放2倍Mat s = (Mat_<float>(2,3)<<0.5, 0, 0, 0, 0.5, 0);//x平移80,y不移动仿射矩阵Mat s5 = (Mat_<float>(2,3)<<1, 0, 180,0, 1, 0);//x平移80,y移动100仿射矩阵/*Mat s2 = (Mat_<float>(2, 3) << 1, 0, 80,0, 1, 100);*///缩放+平移仿射矩阵Mat s2 = (Mat_<float>(2, 3) << 0.5, 0, 80,0, 0.5, 80);Mat s3 = getRotationMatrix2D(Point2f(280,280),-90,0.5);//顺时针旋转90度,缩小2倍Mat dst1a, dst1b;Mat dst1,dst3;//插值算法warpAffine(I,dst1,s,Size(I.cols/2,I.rows/2));//图像缩放warpAffine(I, dst3,s3,Size(I.cols,I.rows));//顺时针旋转90度,缩小2倍warpAffine(I, dst1b, s2, Size(I.cols, I.rows));//缩放+平移warpAffine(I, dst1a, s5, Size(I.cols, I.rows));//平移Mat dst2;resize(I,dst2,Size(I.cols/2,I.rows/2),0.5,0.5);//openCV缩放函数imshow("原图像I",I);imshow("平移",dst1a);imshow("缩放+平移", dst1b);//imshow("warAffine仿射方式",dst1);//imshow("resize方式",dst2);imshow("缩放+旋转90度",dst3);Mat img2,Rimg3;img2 = I.clone();//imshow("复制图像",img2);waitKey(0);return 0;}
结果:
2020.6.21P72_OpenCV_几何变换_图像平移_缩放_旋转相关推荐
- MFC空间几何变换之图像平移、镜像、旋转、缩放
本文主要讲述基于VC++6.0 MFC图像处理的应用知识,主要结合自己大三所学课程<数字图像处理>及课件进行讲解,主要通过MFC单文档视图实现显示BMP图片空间几何变换,包括图像平移.图形 ...
- 【数字图像处理】六.MFC空间几何变换之图像平移、镜像、旋转、缩放详解
本文主要讲述基于VC++6.0 MFC图像处理的应用知识,主要结合自己大三所学课程<数字图像处理>及课件进行讲解,主要通过MFC单文档视图实现显示BMP图片空间几何变换,包括图像平移.图形 ...
- 【数字图像处理】六.MFC空间几何变换之图像平移、镜像、旋转、缩放具体解释...
本文主要讲述基于VC++6.0 MFC图像处理的应用知识,主要结合自己大三所学课程<数字图像处理>及课件进行解说,主要通过MFC单文档视图实现显示BMP图片空间几何变换.包含 ...
- opencv 图像平移、缩放、旋转、翻转 图像仿射变换
图像几何变换 图像几何变换从原理上看主要包括两种:基于2x3矩阵的仿射变换(平移.缩放.旋转.翻转).基于3x3矩阵的透视变换. 图像平移 opencv实现图像平移 实现图像平移,我们需要定义下面这样 ...
- 矩阵陈列:平移、缩放、旋转、镜像、矩阵相乘、变化的实现_NXopen-UG二次开发_新浪博客
矩阵陈列:平移.缩放.旋转.镜像.矩阵相乘.变化的实现 uf5940_ uf5941_ uf5942_ 矩阵相乘 uf5943_ 平移 uf5944_ 缩放 uf5945_ 旋转 uf5946_ 镜像 ...
- 深度学习数据增强方法,利用仿射变换实现图像进行各种操作如平移、缩放、旋转、翻转
导读 在深度学习的数据增强中,我们经常需要对图像进行各种增强操作如平移.缩放.旋转.翻转等,这些其实都是图像的仿射变换.通过本篇文章,你能够知道它们的实现原理以及如何应用它们.本文讲述如何通过仿射变换 ...
- 几何变换详解:平移、缩放、旋转
声明:此文章主要参考两位大佬的博客,参考文章在文末. 文章目录 平移变换 缩放变换 旋转变换 绕X轴旋转 绕Y轴旋转 绕Z轴旋转 绕坐标轴旋转的矩阵推导 逆矩阵 代码实战 1.平移 2.缩放 3.旋转 ...
- 【数字图像处理】【Matlab】【作业六】几何变换(平移、缩放、旋转、镜像、转置等)
注意事项: 1.使用软件:Matlab2019a. 2.使用图像来自网络. 3.所以坐标系均采用竖直为x轴,水平为y轴(与matlab矩阵对应). 4.初学者代码仅供参考,可自行简化或添加自己想要的部 ...
- opencv之图像翻转、平移、缩放、旋转、仿射学习笔记
opencv版本:opencv3.4.1 目录 1. 图像翻转(坐标映射) 2. 平移 3. 缩放 4. 旋转 1. 图像翻转(坐标映射) int main() {cv::Mat srcImage ...
- 【计算机图形学实验四——简单几何形体的平移、缩放、旋转等几何变换】
一.实验内容.目的.要求 1.简单几何形体(三角形.多边形等)的平移.缩放.旋转等几何变换. 2.掌握相关算法的原理及实现 3.实现基础代码(非调用OpenGL等图形库): 缩放.旋转等能指定变换参考 ...
最新文章
- 《科学》:中国科学家揭示,人脑中间神经元多样性从何而来?
- CentOS 生成SSH-KEY
- dojo Quick Start/dojo入门手册--xmlhttp dojo.xhrGet
- 高效万进制——蓝桥杯|HDOJ 1002 大数加法——30行代码AC
- 趣文:如果编程语言是车
- Android官方开发文档Training系列课程中文版:构建第一款安卓应用之启动另一个Activity
- 草稿pyqt控件简单了解
- android win10 双系统,安卓+Win10双系统?这个可以有!
- 【UAV】光流传感器原理分析及讲解
- 天池大数据竞赛-河北高校邀请赛——二手车交易价格预测-初赛第22名
- 十一种常见的光纤网络传输方案
- 给定一个候选人编号的集合 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。
- 关于Java的抽象类与接口
- WIN7无法保存打印机设置错误0x000006d9处理办法(转载)
- 艾永亮:当产品遇到超级产品战略会发生什么?
- ERP-非财务人员的财务培训教(二)------如何评价公司/部门经营业绩收藏
- 谷歌小恐龙HTML源代码
- 计算机控制相机拍照,电脑操作单反 远程遥控拍摄电脑就这么简单!
- Windows 10 - Python - 数据分析 - 年龄分组统计 - 条形图 - matplotlib
- 面试技巧:原来薪资可以这样谈!