在进行测试之前请确保opencv在raspberry pi上已经安装成功。

第一步:下载测试循迹程序

mkdir   osoyoo-robot/tracking-function

cd   ~/osoyoo-robot/tracking-function

wget http://osoyoo.com/driver/osoyoo_PCA9685.py

wget http://osoyoo.com/driver/tracking-hsv.py

第二步:调节摄像头

安装好摄像头,把摄像头调节到与水平面大概呈45度角的样子(最终是要加装两个舵机来自动调节摄像头角度的,人工调不准)

第三步:调节HSV(Hue、Saturation、Value)颜色参数

A.将显示器接到Pi的HDMI口上,后通过远程桌面登录pi(这种方式有点卡,建议直接接显示器)

B.运行 python  tracking-hsv.py  屏幕上会出现三个窗口,分别叫”Original”、”Mask”、”Trackbars”.Mask窗口会将目标(也就是轨道)颜色变成白色,其他非轨道部分变成黑色,这样便于参数调试;Trackbars窗口上有7个滑动条,前六个分别用来调节HSV最小值和最大值,最后一个用来控制小车运动和停止。将小车摄像头对着轨道(例如红色轨道),先调节H_MIN、S_MIN、V_MIN三个滑动条到合适位置(这个位置随轨道颜色和环境亮度而变化),H_MAX、S_MAX、V_MAX初始化为255,一般不用调节。调节到图像没有噪声时候将start/stop滑到右边,小车开始循迹,滑到左边小车停止运动。

图像有无噪声如何判断呢?

如果Mask窗口二值图像除了轨道部分是白色还有其他地方也有白色斑点,这样的参数是不合适的,会使小车误认为白色斑点也是轨道,如图

这张图中除了真正轨道外,周围还有好多白色区域

这样的图像就是理想的,把除了轨道外的区域都过滤掉了。

在键盘上按下q键可以结束程序运行。