·上一文章:基于飞利浦P8XC591的CAN总线节点扩展
·下一文章:数学在自动控制中的应用
当A为常数时,则可用2B相匹配,当D(x,y)取得最大值时,便认为模板与图像相匹配。通常假设A为常数时会产生误差。严重时将无法正确匹配,因此可用归一化互相关作为误差平方和测度,定义为:
4.3 模板匹配改进算法
但是按模板匹配算法求匹配计算工作量非常大,考虑到相关是卷积的一种特定形式以及 Matlab计算功能的强大,采用FFT方法,在频域中计算后再进行逆变换即可求出。图像和定位模板图像旋转180°的傅里叶变换后作点乘运算,再求其逆 FFT变换并返回空间域值也就相当于相关运算。在求取空间域值的最大值后,再根据最大值选取合适的阈值,便可确定目标点的位置。实验中在模板匹配成功后,可将目标和背景颜色二值化,并用红色“十”字符号标记,不断更新数据信息。将停靠点设定在自己期望的像素位置(如图像的中心位置偏下),然后自动调整机器人位置,设计成如图5形式,可知机器人需要向右行驶。
图6为视觉导航算法流程。
5 实验结果与结论
基于以上设计,对进行机器人运动控制和路径规划进行实验。实验分别采用Matlab语言进行图像仿真,能够自动选择合适的阈值分割,并得到较好的边缘检测,然而在实验中有时会因为光照强度或其他因素影响,在进行阈值分割时不能达到理想效果,在 VC环境下能够控制机器人运动,模板匹配取得较好效果,后续将着重在Visual C++6.0环境进行图像处理方法研究。这样可以更好控制机器人运动。总之,该系统设计可使机器人能够在复杂多变的环境下准确识别图像信息,并做出正确决策,完成所需动作,从而实现既定目标。