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

OpenCV第6课 图像处理之几何变换(仿射)

1.仿射变换

2. 平移

3 旋转

附录A  二维旋转矩阵

附录B 三维旋转矩阵与轴角表示


1.仿射变换

        仿射变换是指图像可以通过一系列的几何变换来实现平移、旋转等多种操作。该变换能够保持图像的平直性和平行性。

        平直性是指图像经过仿射变换后,直线仍然是直线,平行性是指图像在完成仿射变换后,平行线仍是平行线。

        平移和旋转都是仿射变换的特例,所用函数都是cv2.warpAffine,其通过一个变换矩阵(映射矩阵)M实现变换,平移和旋转转换矩阵不同。具体为:

        

        如下图,可以通过一个变换矩阵M,将原始图像O变换为仿射图像R。

                

cv2.warpAffine()函数的语法格式如下:
        dst = cv2.warpAffine( src, M, dsize[, flags[, borderMode[, borderValue]]] )

式中:

  1. dst:代表仿射后的输出图像,该图像的类型和原始图像的类型相同。dsize决定输出图像的实际大小。
  2. src:代表要仿射的原始图像。
  3. M:代表一个2×3的变换矩阵。使用不同的变换矩阵,就可以实现不同的仿射变换。
  4. dsize 代表输出图像的尺寸大小。
  5. flags:代表插值方法,默认为INTER_LINEAR。当该值为WARP_INVERSE_MAP 时,意味着M是逆变换类型,实现从目标图像dst到原始图像src的逆变换。具体可选值:borderMode代表边类型,默认为BORDER_CONSTANT。当该值为BORDER_TRANSPARENT时,意味着目标图像内的值不做改变,这些值对应原始图像内的异常值。
  6. borderValue:代表边界值,默认是0。

        通过以上分析可知,在OpenCV中使用函数cv2.warpAffine()实现仿射变换,忽略其可选参数后的语法格式为:

         dst = cv2.warpAffine( src , M , dsize )

        其通过转换矩阵M 将原始图像src 转换为目标图像dst:

        

        因此,进行何种形式的仿射变换完全取决于转换矩阵M。下面分别介绍通过不同的转换矩阵M实现的不同的仿射变换。

2. 平移

        平移是物体的移动,如果知道物体平移的坐标,可以创建如下变换矩阵:

                              

        将其放入类型为np.float32的数组中,将M矩阵赋值给cv2.warpAffine() 函数,即可实现平移。

例程如下:

相关文章:

  • 【漫话机器学习系列】241.典型丢弃概率(Typical Dropout Probabilities)
  • 基于PPO的自动驾驶小车绕圈任务
  • qt csv文件写操作
  • Java面试深度解密:Spring Boot、Redis、日志优化、JUnit5及Kafka事务核心技术解析
  • APP 设计中的色彩心理学:如何用色彩提升用户体验
  • 【MATLAB例程】基于RSSI原理的Wi-Fi定位程序,N个锚点(数量可自适应)、三维空间,轨迹使用UKF进行滤波,附代码下载链接
  • vscode docker 调试
  • 本地MySQL连接hive
  • 「OC」源码学习——对象的底层探索
  • 计算机视觉与深度学习 | 点云配准算法综述(1992-2025)
  • Amazon Bedrock Converse API:开启对话式AI新体验
  • Linux系统调优技巧与优化指南
  • Linux普通用户和超级管理员
  • LFU算法解析
  • 优化03-10046和10053
  • 免费在线练字宝藏Z2H 免安装高效生成 vs 笔顺功能补缺
  • 算法题(139):牛可乐和魔法封印
  • 读《人生道路的选择》有感
  • 数据管理能力成熟度评估模型(DCMM)全面解析:标准深度剖析与实践创新
  • 【向量数据库】用披萨点餐解释向量数据库:一个美味的技术类比
  • 五一多城楼市火热:北京新房网签量同比翻倍,上海热门楼盘认购接连触发积分
  • 科技日报刊文批院士专家“赶场式”跑会:助长浮躁之气功利之心
  • “注胶肉”或已泛滥?这几种肉,再爱吃也要管住嘴
  • 交通运输部、水利部同日召开会议,深刻汲取贵州游船倾覆事故教训
  • 这样喝酸奶相当于在喝糖水,会导致娃龋齿、肥胖
  • “五一”假期第四天,全社会跨区域人员流动量预计超2.7亿人次