opencv--图像变换

图像变换

图像滤波用于处理像素(去噪),从而改变图像质量。

图像的几何变换是指改变图像的几何位置、几何形状、几何尺寸等几何特征。

<详细了解,看opencv书>

概念

矩阵的运算

链接

齐次坐标

链接

齐次坐标就是用N+1维来代表N维坐标,而N维坐标值可以通过以下公式计算得出:

X = x / w

Y = y / w

图像平移

含义

图像的平移可以理解维两个矩阵相加:

也可以理解维矩阵相乘:

图像旋转

含义

图像的旋转一般是以一个点作为旋转中心旋转。

那么图像翻转呢,比如绕着轴翻转?

图像缩放

含义

射影变换

欧式变换

相似变换

仿射变换

射影变换/透视变换

作用

一般用于校正图像:

  • 当相机拍摄角度倾斜时,图像会出现梯形失真(如拍摄建筑物时近大远小)。

  • 射影变换可以将其矫正为正视图(如文档扫描、车牌识别)。

射影变换 vs. 仿射变换

链接

特性 射影变换(Projective) 仿射变换(Affine)
自由度 8 (9个参数,但可归一化) 6
保持性质 直线仍为直线,但平行线可能不再平行 保持平行性
适用场景 透视矫正(如倾斜拍摄→正视图) 旋转、缩放、平移(无透视变化)
示例 文档矫正、AR投影 图像旋转、缩放

霍夫变换

作用

霍夫变换(Hough Transform)是一种用于**检测图像中特定几何形状(如直线、圆、椭圆等)**的经典算法。

(1) 直线检测(Hough Line Transform)

  • 用于检测图像中的直线,如边缘检测后的线段提取。

  • 应用场景:

    • 车道线检测(自动驾驶)

    • 文档扫描(检测纸张边缘)

    • 建筑结构分析(检测墙面、门窗边缘)

(2) 圆检测(Hough Circle Transform)

  • 用于检测图像中的圆形或弧形结构。

  • 应用场景:

    • 工业检测(检测零件上的孔洞)

    • 医学图像分析(检测细胞、瞳孔)

    • 交通标志识别(检测圆形标志)

(3) 广义霍夫变换(检测任意形状)

  • 可以扩展用于检测椭圆、矩形等更复杂的形状。

原理

链接

(x,y)的图像空间中的一个点映射到(r,θ)极坐标空间中就是一条正弦曲线,而正弦曲线上的一个点就代表一条直线,如果极坐标空间有两条正弦曲线,就代表在图像空间中的两个确定的点,而如果这两条正弦曲线有一个交点,那么就说明这两条正弦曲线在这个点都有一条图像空间中的直线,而且这两条直线斜率和截距相同,也就是就是同一条直线。

如果一幅图像中的像素构成一条直线,那么这些像素坐标值(x, y)在参数空间对应的曲线一定相交于一个点,所以我们只需要将图像中的所有像素点(坐标值)变换成参数空间的曲线,并在参数空间检测曲线交点就可以确定直线了,也就是确定(r,θ),通过转换可以确定斜率和截距。

边缘检测

作用

直方图和直方图均衡

链接

直方图

直方图均衡

就是调整图像各个亮度值的像素的数量。

相关推荐
光锥智能2 小时前
从连接机器到激活知识:探寻工业互联网深水区的山钢范式
人工智能
GHL2842710902 小时前
分析式AI学习
人工智能·学习·ai编程
ujainu3 小时前
CANN仓库中的AIGC性能极限挑战:昇腾软件栈如何榨干每一瓦算力
人工智能·开源
wenzhangli73 小时前
ooderA2UI BridgeCode 深度解析:从设计原理到 Trae Solo Skill 实践
java·开发语言·人工智能·开源
brave and determined3 小时前
CANN ops-nn算子库使用教程:实现神经网络在NPU上的加速计算
人工智能·深度学习·神经网络
brave and determined3 小时前
CANN算子开发基础框架opbase完全解析
人工智能
一枕眠秋雨>o<3 小时前
调度的艺术:CANN Runtime如何编织昇腾AI的时空秩序
人工智能
一招定胜负3 小时前
新手入门MediaPipe系列:手势识别+姿态检测+脸部关键点检测
计算机视觉
晚烛3 小时前
CANN + 物理信息神经网络(PINNs):求解偏微分方程的新范式
javascript·人工智能·flutter·html·零售
爱吃烤鸡翅的酸菜鱼3 小时前
CANN ops-math向量运算与特殊函数实现解析
人工智能·aigc