📸 OpenCV 预处理 让 YOLO 更精准

⚡ 30 章 · 从基础到实战
01
图像预处理概述
为什么YOLO需要预处理?预处理对mAP的影响有多大?预处理流程全景图。
02
图像读取与显示
cv2.imread()的flags参数详解、cv2.imshow()与窗口管理、图像矩阵的本质。
03
色彩空间转换
BGR与RGB的恩怨、cv2.cvtColor()的用法、YOLO训练为什么用RGB?实战中的色彩陷阱。
04
图像缩放与插值
cv2.resize()的5种插值方法、YOLO输入尺寸640x640的秘密、保持宽高比的Letterbox技巧。
05
图像归一化
像素值归一化(0-1 vs 0-255)、均值减法、标准差缩放、YOLOv5/v8的归一化差异。
06
数据增强之翻转
水平翻转、垂直翻转、随机翻转策略、翻转后标签如何调整?实战代码。
07
数据增强之旋转
cv2.getRotationMatrix2D()、仿射变换、旋转后黑边处理、标签框旋转计算。
08
数据增强之裁剪
随机裁剪、中心裁剪、IoU约束裁剪、裁剪后标签映射。
09
数据增强之色彩抖动
亮度调整、对比度调整、饱和度调整、色调调整、cv2.convertScaleAbs()。
10
数据增强之噪声添加
高斯噪声、椒盐噪声、泊松噪声、噪声对YOLO小目标的影响。
11
数据增强之模糊
高斯模糊、中值模糊、运动模糊、模糊强度与检测精度的关系。
12
Mosaic增强
YOLOv4的经典创新、4张图拼成1张、标签合并策略、代码实现。
13
MixUp增强
图像混合、标签软化、α参数调优、与YOLO的兼容性。
14
CutMix增强
区域裁剪粘贴、标签按面积比例分配、实现细节。
15
图像去噪
双边滤波、非局部均值去噪、去噪对YOLO的影响、什么时候该去噪?
16
图像锐化
拉普拉斯算子、USM锐化、锐化过度检测的影响、实战经验。
17
直方图均衡化
全局直方图均衡、CLAHE限制对比度自适应直方图均衡、低光照场景下的应用。
18
Gamma校正
Gamma曲线原理、暗光增强、过曝修复、自动Gamma估计。
19
图像去雾
暗通道先验、去雾对户外检测的提升、实时性优化。
20
图像拼接与批处理
cv2.hconcat/vconcat、批量预处理Pipeline、多线程加速。
21
标签格式转换
YOLO txt格式解析、归一化坐标还原、可视化验证标签正确性。
22
数据清洗
模糊图像检测、过暗/过亮图像过滤、重复图像去重、坏图剔除。
23
类别不平衡处理
过采样、欠采样、Focal Loss在预处理层的配合、数据分布可视化。
24
小目标增强
过采样小目标、复制粘贴小目标、多尺度训练、SNIP策略。
25
多尺度训练
随机尺寸采样、固定尺寸池、尺度分布设计、YOLO多尺度适配。
26
预处理Pipeline构建
Compose设计模式、参数化配置、YAML配置文件、可复现性保证。
27
性能优化
C++ OpenCV vs Python、GPU加速预处理、缓存机制、DALI库简介。
28
调试与可视化
预处理前后对比图、标签叠加显示、中间结果保存、TensorBoard集成。
29
YOLOv5/v8预处理源码解析
Ultralytics的预处理流程、数据加载器源码、自定义预处理插入点。
30
综合实战
从原始图像到YOLO训练数据、完整Pipeline代码、mAP提升效果对比、最佳实践总结。