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,θ),通过转换可以确定斜率和截距。

边缘检测

作用

直方图和直方图均衡

链接

直方图

直方图均衡

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

相关推荐
avi911110 分钟前
[AI教做人]AI平台做2项目;一个3D模型展示,另一个框架多人
javascript·人工智能·ai·3d模型·3d引擎·顶点和法线
焱童鞋28 分钟前
基于DJL的LSTM水文预报模型训练完整指南
人工智能·rnn·lstm
猎嘤一号30 分钟前
博弈论(Game Theory)的理论、算法与工程
人工智能·算法·安全·博弈论
V哥AI增长39 分钟前
Schema.org 结构化数据与GEO技术落地:AI引擎引用机制与JSON-LD部署实证研究
大数据·运维·人工智能
马拉AI1 小时前
腾讯开源 Agent 记忆系统,AI“换对话就忘”的问题有了新解法(附安装使用教程)
人工智能·算法·开源·科研
IT_陈寒1 小时前
JavaScript类型转换把我坑惨了,这破玩意真该早点搞明白
前端·人工智能·后端
用户938515635071 小时前
手写一个 LLM Harness 框架:用工程化手段把大模型幻觉踩在脚下
javascript·人工智能·后端
前端开发江鸟1 小时前
我能解释 RAG、MCP 和 Eval,却画不出一条完整的 Agent 链路
人工智能
ivywriter2 小时前
【具身智能】物理AI具体指什么,和具身智能是什么关系?
人工智能
new_zhou2 小时前
C++ 项目 AI 协作指南(Windows / MSVC 环境)
c++·人工智能·windows