opencv——重映射仿射变换(代码片段)

long5683 long5683     2023-01-02     591

关键词:

技术分享图片

技术分享图片

技术分享图片

技术分享图片

 1 #include <opencv2/opencv.hpp>
 2 #include <iostream>
 3 #include <math.h>
 4 
 5 using namespace cv;
 6 using namespace std;
 7 
 8 
 9 int main(int argc, char** argv)
10 
11     Mat src,dst;
12     Mat map_x, map_y;
13     src = imread("3 input.bmp");
14 
15     imshow("原图像", src);
16 
17     //创建和原图一样的效果图,x重映射图,y重映射图
18     dst.create(src.size(), src.type());
19     map_x.create(src.size(), CV_32FC1);
20     map_y.create(src.size(), CV_32FC1);
21 
22     //遍历所有像素点,改变map_x & map_y的值
23     for (int j = 0; j < src.rows; j++)
24     
25         for (int i = 0; i < src.cols; i++)
26         
27             map_x.at<float>(j, i) = static_cast<float>(i);
28             map_y.at<float>(j, i) = static_cast<float>(src.rows - j);
29         
30     
31 
32     //进行重映射操作
33     remap(src, dst, map_x, map_y, INTER_LINEAR);
34 
35     imshow("效果图", dst);
36     
37     waitKey(0);
38     return 0;
39 
40 

 技术分享图片

技术分享图片

 

技术分享图片

技术分享图片

 

opencv例程300篇249.图像的重映射(cv2.remap)(代码片段)

『youcans的OpenCV例程300篇-总目录』【youcans的OpenCV例程300篇】249.图像的重映射(cv.remap)重映射是指从一个图像中的位置获取像素,将其重新映射,定位到目标图像的指定位置。重映射可以实现图像的变形、扭曲、... 查看详情

opencv例程300篇249.图像的重映射(cv2.remap)(代码片段)

『youcans的OpenCV例程300篇-总目录』【youcans的OpenCV例程300篇】249.图像的重映射(cv.remap)重映射是指从一个图像中的位置获取像素,将其重新映射,定位到目标图像的指定位置。重映射可以实现图像的变形、扭曲、... 查看详情

仿射变换

http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/imgproc/imgtrans/warp_affine/warp_affine.html目标在这个教程中你将学习到如何:使用OpenCV函数 warpAffine 来实现一些简单的重映射.使用OpenCV函数 getRotationMatrix2D 查看详情

opencv完整例程24.图像的仿射变换(代码片段)

【OpenCV完整例程】24.图像的仿射变换几何变换的可以分为等距变换、相似变换、仿射变换和投影变换。在很多书籍中把等距变换、相似变换都称为仿射变换,常见的仿射变换包括平移、旋转、缩放、翻转、斜切等方法。等距... 查看详情

利用opencv的仿射变换函数warpaffine()实现图像的亚像素级平移(代码片段)

利用OpenCV的仿射变换函数warpAffine()实现图像的亚像素级平移通常的图像平移,移动的都是整数个单位,比如向右移动8个像素。亚像素级平移,则图像的平移量可以为带小数的量,比如向右移动8.5个像素。利用OpenCV... 查看详情

opencv4机器学习:图像的几何变换仿射变换(代码片段)

前言:本专栏主要结合OpenCV4(C++版本),来实现一些基本的图像处理操作、经典的机器学习算法(比如K-Means、KNN、SVM、决策树、贝叶斯分类器等),以及常用的深度学习算法。系列文章:Open... 查看详情

opencv4机器学习:图像的几何变换仿射变换(代码片段)

前言:本专栏主要结合OpenCV4(C++版本),来实现一些基本的图像处理操作、经典的机器学习算法(比如K-Means、KNN、SVM、决策树、贝叶斯分类器等),以及常用的深度学习算法。系列文章:Open... 查看详情

opencv图像平移缩放旋转翻转图像仿射变换(代码片段)

...缩放、旋转、翻转)、基于3x3矩阵的透视变换。图像平移opencv实现图像平移实现图像平移,我们需要定义下面这样一个矩阵,tx和ty分别是x和y方向上平移的距离:图像平移利用仿射变换函数cv.warpAffine()实现实验#图像平移importnumpyas... 查看详情

opencvchapter3.图像的仿射变换(代码片段)

最近想对OpenCV进行系统学习,看到网上这份教程写得不错,于是跟着来学习实践一下。【youcans@qq.com,youcans的OpenCV例程,https://youcans.blog.csdn.net/article/details/125112487】程序仓库:https://github.com/zstar1003/OpenCV-Lea 查看详情

opencv-python-仿射变换-图片拉伸成平行四边形(代码片段)

将图片拉伸成类似平行四边形这样直接上效果图先不着急上代码,如果你遇到opencv报以下错误的话,cv2.error:OpenCV(4.5.3)C:\\Users\\runneradmin\\AppData\\Local\\Temp\\pip-req-build-z4706ql7\\opencv\\modules\\highgui\\src\\window.cpp:127 查看详情

opencv图像变换原理详解图像平移图像旋转图像缩放(代码片段)

...性变换4个自由度+平移2个自由度→仿射变换自由度为6。opencv中实现仿射变换importcv2ascvimportnumpyasnpimportmatplotlib.pyplotaspltimg=cv.imread(‘drawing.jpg‘)rows,cols=img.shape[:2]#变换前的三个点pts1=np.float32([[50,65],[150,65],[210,210]])#变换后的三个点... 查看详情

生成组合仿射变换矩阵,裁剪+缩放+平移+斜切+旋转(代码片段)

...对图像做augmentation都会用仿射变换去实现,如果是用OpenCV来实现就是生成一个放射变换矩阵再调用OpenCV的warpAffine函数,传入变换矩阵和图片得到变换后的输出,这里的难点在于如何生成这个仿射 查看详情

利用opencv的仿射变换函数warpaffine()实现图像的亚像素级平移(代码片段)

利用OpenCV的仿射变换函数warpAffine()实现图像的亚像素级平移通常的图像平移,移动的都是整数个单位,比如向右移动8个像素。亚像素级平移,则图像的平移量可以为带小数的量,比如向右移动8.5个像素。利用OpenCV... 查看详情

opencv图像处理--平面单应性(代码片段)

图像几何变化投影变换投影变换(ProjectiveTransformation),是仿射变换的一般化,二者区别如下:仿射变换用途旋转(线性变换),平移(向量加).缩放(线性变换),错切,反转方法仿射变换是一种二维坐标到... 查看详情

opencv从仿射矩阵得到旋转量平移量缩放量(代码片段)

...得到它们,需要进一步计算得出,本文主要基于opencv来实现从仿射矩阵得到旋转量平移量缩放量的值,本文主要上实现代码,有些小知识就不补充细说了。二、自己封装的接口typedefstruct doubleRot;//旋转角度 doubleTx;/... 查看详情

python大白从零开始opencv学习课-5.图像的几何变换(代码片段)

从零开始OpenCV学习课-5.图像的几何变换本系列面向Python小白,从零开始实战解说OpenCV项目实战。几何变换是指对图像的位置、大小、形状、投影进行变换,是将图像从原始平面投影到新的视平面。OpenCV中的图像以多维数... 查看详情

opencv中的「透视变换/投影变换/单应性」—cv.warpperspectivecv.findhomography(代码片段)

...换(projectivetransform)单应性(Homography)opencv代码仿射变换相关函数投影变换相关的函数鸟瞰图代码示例小结引言图像的几何变换通常包括拉伸、缩放、扭曲和旋转等操作。对于平面区域来说,分为两类几何转... 查看详情

opencv——getrotationmatrix2dwarpaffine仿射变换

...旋转变换矩阵形式: 变换形式汇总图:   OpenCV中实现仿射变换,一般涉及到 getRotationMatrix2D和 warpAffine 这两个函数:计算二维旋转变换矩阵:getRotationMatrix2D函数   getRotationMatrix2D函数用于计... 查看详情