畸变校正 & 鸟瞰图实战
📚 30章 · 从零到部署
01
课程导论
车载摄像头为什么需要畸变校正?鸟瞰图在泊车与环视系统中的作用。
了解畸变来源与鸟瞰图价值,建立环视系统全局认知。
02
相机成像模型
小孔成像原理、世界坐标系到像素坐标系的转换。
从物理模型到代数表达,理解坐标变换链条。
03
相机内参与外参
内参矩阵、畸变系数、外参(旋转与平移)的物理意义。
内参外参详解,为标定与校正打下基础。
04
畸变类型详解
径向畸变(桶形/枕形)与切向畸变,数学公式推导。
畸变数学模型,理解校正的核心公式。
05
棋盘格标定板
为什么用棋盘格?制作与打印规范,角点检测原理。
标定板设计与角点检测算法。
06
OpenCV标定实战
cv2.findChessboardCorners、cv2.calibrateCamera完整流程。
手把手实现相机标定,获取内参与畸变系数。
07
标定结果评估
重投影误差计算,如何判断标定是否成功。
量化标定精度,确保校正可靠。
08
畸变校正实战
cv2.undistort与cv2.initUndistortRectifyMap详解。
两种校正方式,映射表加速。
09
透视变换基础
单应性矩阵,cv2.getPerspectiveTransform与cv2.warpPerspective。
透视变换核心,为鸟瞰图铺路。
10
鸟瞰图原理
逆透视变换(IPM),从图像坐标系到世界坐标系的映射。
IPM理论,理解俯视图生成本质。
11
鸟瞰图生成第一步
选取源点与目标点,如何确定4个对应点。
点对选取策略,影响校正效果。
12
鸟瞰图生成第二步
计算变换矩阵并应用,生成俯视效果。
矩阵计算与warp实践,输出鸟瞰图。
13
多相机环视系统
4个鱼眼相机的布局,重叠区域处理思路。
环视系统架构与重叠区融合策略。
14
图像拼接基础
特征点匹配(SIFT/ORB),cv2.findHomography。
特征匹配与单应性矩阵求解。
15
鸟瞰图拼接实战
将前后左右四路图像拼接为全景鸟瞰图。
四路图像拼接,形成完整环视。
16
亮度与色彩均衡
多图拼接时的光照差异处理,直方图匹配。
消除拼接痕迹,色彩一致性。
17
融合与去重影
加权平均融合、多频段融合,消除拼接缝。
高级融合算法,提升图像质量。
18
实时性能优化
图像缩放、ROI裁剪、多线程处理,帧率提升技巧。
工程优化,让算法跑得更快。
19
鱼眼相机模型
等距投影、等立体角投影,区别于针孔模型。
鱼眼投影模型,为标定做准备。
20
鱼眼相机标定
使用cv2.fisheye模块进行标定与校正。
鱼眼专用标定流程。
21
鱼眼图像去畸变
cv2.fisheye.undistortImage与映射表生成。
鱼眼校正与映射表优化。
22
鸟瞰图在ADAS中的应用
车道线检测、障碍物测距、车位识别。
ADAS典型任务与鸟瞰图结合。
23
车道线检测实战
基于鸟瞰图的霍夫变换与滑动窗口拟合。
在鸟瞰图上实现稳健车道线提取。
24
障碍物测距原理
利用鸟瞰图的尺度不变性进行像素到米转换。
基于俯视图的测距方法。
25
车位识别实战
鸟瞰图中车位角点检测与泊车路径规划。
自动泊车中的车位检测与规划。
26
工程化部署
模型导出为ONNX,在NVIDIA Jetson或RK3588上运行。
边缘端部署,落地实战。
27
常见问题与调试
标定失败原因、透视变形过大、拼接错位排查。
踩坑总结与调试技巧。
28
实战项目一
单目摄像头鸟瞰图生成(完整代码与数据集)。
从零搭建单目鸟瞰图系统。
29
实战项目二
四路环视全景鸟瞰图系统(从标定到拼接)。
完整环视项目,标定到拼接全流程。
30
课程总结与进阶
BEV感知(Bird's Eye View)与Transformer在自动驾驶中的前沿应用。
展望BEV+Transformer,迈向高阶。