树莓派小车识别场地内特定颜色的直线并据此修正方向的方法
树莓派颜色识别原理
请参看我的这篇文章树莓派3B基于python用opencv进行颜色识别
检测水平线偏差问题说明
假设在一幅图像中存在一条直线,如果摄像头相机坐标系x轴或y轴与这条直线平行,那么这条直线在图像中必然也会与u轴或v轴平行。
在一些自动控制系统中,需要测量这条直线与相机x轴或者y轴之间偏差的夹角,以便于对系统进行修正。
case:测量场地中黄线与x轴之间的夹角
由于x轴与u轴平行,问题即为检测一幅图片中直线与u轴之间的夹角
检测水平线偏差原理
在树莓派3B基于python用opencv进行颜色识别文章中,讲到用opencv对特定颜色进行识别,得到的结果是一张二值图像,特定颜色区域被识别出来,灰度值置为255,其余区域灰度值置为0.
关于确定映射函数f()的补充说明:
后来我突然发现,在这个问题中,映射函数f()是有解析解的,不需要按照上面的方式进行拟合,理由如下:
相机坐标系的x轴与图像坐标系中的u轴完全平行,计算空间地平面中直线与x轴的夹角等价于计算一幅图像中直线与u轴的夹角。