计算机视觉CV+数字图像处理

本文介绍了计算机视觉中的立体匹配技术,从原理到应用,如深度估计和3D重建,重点讲解了如何通过双目视觉进行深度感知,以及SLAM在定位与建模中的关键作用。同时,概述了相关领域的交集,如计算摄影和增强现实。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

计算机视觉包括三个领域(R3),Recognition,Reconstruction ,Reorganization。识别和检测只能是第一个R,SLAM算第二个R。图像处理属于计算机视觉的底层处理。增强现实AR、IBR、计算摄影是计算机视觉和其他领域如图形学、VR、成像学的交集。

计算机视觉目录:图像形成;图像处理;模型拟合与优化;深度学习;深度估计;特征检测与匹配;分割;基于特征的对齐;运动估计;由运动到结构与SLAM;图像拼接;计算摄影学;立体匹配;3D 重建;基于图像的渲染

数字图像处理目录: 图像感知与获取、 图像取样和量化、灰度变换与空间滤波、频率域滤波原理、图像复原与重构、彩色图像处理、小波变换和其他图像变换、图像压缩和水印、形态学图像处理、图像分割、图像特征提取、图像模式分类

1、立体匹配 Stereo correspondence

应用于,立体匹配是从图像生成三维点云的常规手段

人根据左眼和右眼的外观差异来感知深度。简单的实验,将手指垂直地放在眼睛前面,交替地闭上每只眼睛,能看到手指相对于场景背景左右跳跃。1张图片无法测量物体深度,2张可以。

下图,两个相机拍摄同一场景,两个场景中相同的点就是一个同名点对,立体匹配就是寻找两幅图中所有的同名点对。

下图,一个概念“极线”约束。在这条极线上找同名点对。大大缩短了寻找同名点对的复杂程度。 

下图,极线来源于极平面和相机平面的交线。极平面由两个相机和物体P三个点组成。

  一个相机无法测距。下图,两个相机O1、Or,通过公式可以求出深度,就是物体P与相机的距离。视差和深度成反比。

2、SLAM

经典的运动重建(SFM,Structure From Motion),也叫做同步定位和制图(simultaneous localization and mapping,SLAM)。是假设场景静态情况下,通过摄像机的运动来获取图像序列,并得到场景3-D结构的估计。是计算机视觉的重要任务;在机器人领域,这个任务还会估计现场摄像头的姿态和位置,即定位任务。

基础知识

分辨率

分辨率的单位:PPI、DPI、LPI和PPD。

  1. PPI(Pixels Per Inch)‌。
    每英寸像素数,用于描述屏幕或数字图像的分辨率,是衡量像素密度的标准单位。例如,手机屏幕的清晰度常用PPI表示。‌‌
  2. DPI(Dots Per Inch)‌。
    每英寸点数,主要用于印刷领域,表示打印机输出的墨点密度。尽管常与PPI混用,但DPI更强调物理输出精度。‌‌
  3. LPI(Lines Per Inch)‌。
    每英寸线数,用于印刷中的网线数,控制半色调图像的细节疏密,与专业印刷分辨率相关。‌‌
  4. PPD(Pixels Per Degree)‌。
    像素每度,用于头戴显示设备如VR,衡量视场角内像素填充密度,直接影响视觉清晰度。‌‌

其他相关概念

  • 像素(px)‌:基础单位,表示图像或屏幕的最小显示单元。例如,1920×1080分辨率指水平1920像素、垂直1080像素。‌‌
  • 位分辨率(BPP)‌:每个像素的位数,决定色彩深度(如24位真彩色),但属于色彩信息单位,与分辨率无直接关联。‌‌

X.公开图片数据集

使用matlab进行计算机视觉和图像处理

图像处理

在matlab里有很多app可以直接使用,实现图像处理。比如,image labler图像标注,image segment图像分割。matlab官方视频中介绍了几种app的用法。

完整的例子:摄像机实时检测糖果数量。关键软硬件:图像分割app软件;webcam硬件支持包。

计算机视觉

使用人工智能、机器学习的算法处理图像。

例1:ocr文字识别。

可以使用OCR trainer app,,可以自定义识别的字符,但是我的matlab没有这个app????;还可以使用trainOCR函数,并有例子,用下面语句打开。

openExample('vision/TrainAnOCRModelExample')

例2:实现“你画我猜”。

不用现成的app,而是通过机器学习和已有数据训练一个模型,选择一个最佳模型实现。

模型训练使用机器学习的分类学习器app。

JPEG格式

joint Photographic Experts Group。chroma色度。hue色调。

  • Cb(蓝色色度分量)‌:Color-difference of Blue‌,表示蓝色与亮度的差异。
  • Cr(红色色度分量)‌:Color-difference of Red‌,表示红色与亮度的差异。

利用人眼特点,对亮度敏感、对色差不敏感。大小是普通图片十分之一程度。网络中86%图片是jpeg格式。例,4032 X 3024分辨率为12M,1200万像素,46MB(BMP格式)压缩到4MB。需1.2亿次运算,手机soc如骁龙snapdragon 8 gen3耗时10ms。

主要技术:色彩空间转换、色差下采样、离散余弦变换DCT、量化与编码。

压缩遵循原则:亮度优先;黑白图像保留细节;色差图像模糊可接受。

JPEG压缩过程是一种有损压缩标准,主要用于减少连续色调静态图像的文件大小,平衡视觉质量与存储效率‌。以下是其核心步骤:

  • 颜色空间转换‌:首先将RGB颜色模型转换为YCbCr模型,因为人眼对亮度分量(Y)更敏感,而对色度分量(Cb和Cr)不敏感,首先压缩色差数据。转换公式包括Y = 0.299R + 0.587G + 0.114B,类似地计算Cb和Cr‌。
  • 图像分块‌:将转换后的图像划分为8×8像素块,便于后续处理‌。
  • 离散余弦变换(DCT)‌:对每个像素块应用DCT,将空间域图像数据转换为频域系数,其中低频分量(图像平滑区域)占主要信息,高频分量(边缘细节)被舍弃‌。人眼对高频变化不敏感。
  • 量化‌:使用预设的量化表压缩DCT系数,通过除法操作减少数据精度(特别是高频系数),这是有损压缩的关键,损失部分视觉细节但显著减小文件大小‌。
  • 熵编码‌:最后对量化后的数据进行无损压缩,如哈夫曼编码,移除统计冗余进一步优化存储‌。

整个流程中,可调整压缩参数(如量化级别)以控制输出文件大小和质量‌。

参考文献:

1、《Computer Vision_ Algorithms and Applications-Richard Szeliski 》

2、《Digital Image Processing_3ed_Gonzalez_冈萨雷斯》

3、【3D视觉工坊】第八期公开课:立体视觉之立体匹配理论与实战_哔哩哔哩_bilibili  https://www.bilibili.com/video/BV1Uv411q7GU

4、单目视觉深度估计测距的前生今世 - 知乎  https://zhuanlan.zhihu.com/p/56263560

5、使用MATLAB进行计算机视觉和图像处理 -MATLAB&Simulink_哔哩哔哩_bilibili

6、MATLAB深度学习之手写数字识别_哔哩哔哩_bilibili

7、MATLAB利用OCR Trainer识别数字&字母_matlab ocr-CSDN博客

8、一个案例学会用Matlab App Designer设计文字识别工具_matlab 读取文本框-CSDN博客

9、

10、

11、

12、

13、

14、

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值