学霸笔记
北邮摄像头 一、摄像头基本原理 我们的像素是多少 不需要太大的像素,不然会降低接受图像速度 提高帧数,降低像素 中断处理 PCLK像素值、HREF行、VSYNC场:一场一zhen 1、用到的就是行中断和场中断 行\场中断:需要用到外部引脚中断,同步 DMA传输:一般:外设到CPU到内存;DMA:由DMA控制器直接向外设取数据,此时CPU就只需要等待DMA完成接受的信号 中断处理:行中断来了,存到一个数组里,行到达像素高度,行中断清零,场中断,盯着 Field_Over_Flag=1 当然,直接接受场中断就更好了 2、图像采集优化 没记 二、摄像头图像处理 1.1、图像二值化 根据环境在出发前设定固定阈值:小于阈值直接设成白色(0) 通过OLED打印,通过按键对于图像二值化阈值进行调整 大津法,遍历阈值,发现方差最大 2、赛道边线提取 2.1 图像校正 获取摄像头视野角度,水平倾角,高度 计算实际图像与获取图像的XY坐标对应关系 对于缺失值进行 加权来计算缺失点计算量太大,只需要关键点(比如:赛道边缘什么) 2.2 赛道中心提取 2.2.1 常规赛道 捕捉赛道左侧右侧边缘坐标 计算梯度幅度和方向;保留局部梯度最大的点,已得到细化的边缘 2.2.2 特殊赛道 环岛识别检测、十字交叉路口 找出关键特征 三、摄像头代码框架 1、main.c 关闭总中断,防止初始化失败,初始化结束,就开中断