摄像头加编码器全场定位算法_刘述亮20120407..doc

摄像头加编码器全场定位算法_刘述亮20120407..doc

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
摄像头加编码器全场定位算法_刘述亮20120407.

摄像头加编码器全场定位算法 本文提出了一种摄像头加编码器全场定位的初步算法。算法的关键是通过识别网格白线边沿特征,通过白线边沿提供的信息来修正编码器得到的坐标和角度。 1 摄像头数据初步处理 - 1 - 1.1 领域加权平均滤波 - 1 - 1.2 分类及其阀值确定 - 3 - 1.3 分块 - 5 - 1.4 提取边界 - 6 - 1.5 图像标定及直线拟合 - 6 - 1.7 求白线中心线方程 - 10 - 2 与编码器数据融合 - 11 - 2.1 判断横竖线及修正编码器获得方向角 - 11 - 2.2 图块原点在地面坐标系的坐标位置 - 12 - 2.3 总结: - 13 - 3 附录: - 13 - 3.1 程序流程图 - 14 - 3.2 C程序 - 15 - 摄像头数据初步处理 为方便数据处理坐标系为左手系,与矩阵行列序号一致。现用摄像头为 Ov7620。 领域加权平均滤波 普通的二维数字滤波都有特别大的计算量。通过观察原始图像可知噪声并非非常大,因此我们可以可以利用低级的滤波方法来处理。 原始图像的灰度矩阵为 ,领域加权矩阵为。 对领域进行加权求和得到以虑除部分噪声。 噪声分布 分类及其阀值确定 由摄像头获取的图像有场地和白线,白线的灰度值大。如果则认为该像素点是白线的投影点。 但是由于场地及光源的变化,固定的阀值可能会失效及可靠性降低。因此需要通过处理得到最佳分类阀值。如下图最优分类阀值应该是在120左右,我们的分类阀值应该不随两类像素点的多少影响。设场地灰度值均值为、白线灰度值为、分割阀值为。 确定阀值的方法有: (1)参考文献《数字图像处理基础》,当错分率最小。 (2),分别为第一类和第二类占总像素点的比例。当取到最大值时分割最优。 (3)。当取得最小值时分割最优。 阀值确定方法 1 2 3 119.7617 119.8 119.8 三种方法的结果几乎相等,与上面估计的120非常吻合。 但利用方法2方法3,要求出最优阀值需要进行多次迭代寻优计算量较大。下面给出实现方法1的具体过程。 有实验数据的统计图可以看出白线和场地的灰度值相差较大,但两类数据的波动并不大,重叠部分非常少。下面为程序流程图 收敛速度非常快,只迭代了三次便得到了最优阀值。 由上图可知,当两类数量之比为20时也只要迭代三次便可求出最优阀值。 在实际计算中为了减少计算量可以通过抽样抽出一部分数据进行 分块 为了便于数据处理对进行分块成。为了使每一小块图像的特征尽可能简单,每一小块对应的对角线长不超过白线宽度,则每一图块的特征有三种情况如下: 图、2 图、3 图、4 其中图一的特征最简单,其边界就为一条直线,可以进行直线拟合求出其方程。如果也拟合其他两幅图则可以通过判断直线拟合后的方差大小给与判断。对图像分块后,能尽可能的保证提取到直线特征。为了使数据比较可靠,又使数据处理方便。摄像头俘获的图像大小为60x60mm,分为9块,每一小块的对角线长28.28mm小于线宽。如图: 提取边界 提取边界的算子有很多,sobel、robert、prewitt、拉普拉斯高斯算子等等。上面已经经对图片进行了分割,场地和白线间的边界也即是中值为1和值为0的元素的分界线。即0的周围不全为零的元素;1的周围的元素不全为1。这里为简便提取边界方法如下: 提取边界结果如下图: 图像标定及直线拟合 由图 可知本摄像头获取的图片具有一定的程度的变形,需要进行重新标定校正其形变。标定函数为,为了方便采用极坐标形式,则通过实验数据拟合得到标定方程为: (r为像素点离中心的距离,r0为该像素点对应的机器人坐标离中心的距离) 摄像头的中心像素点为 标定前后结果比较 设图块中边界方程为: 边界点个数:(当NNNN0,则认为未遇到白线) 得到直线方程为: 回归后方差为: 通过判断Q值确定是否遇到相交线,相交线判断如下: 改进: 由于当直线斜率非常大时计算可能会溢出或会计算不精确,因此会导致斜率较小时计算精确,斜率较大时就很可能会出问题。这里就避免用方程来表示直线,而用直线的方向向量和向量的起点来表示直线。 直线方向向量为: 直线起点: 直线方程为: 回归后的方差为: 1.6判断灰度梯度方向向量 为了判断图块是进入白线还是离开白线需要得到图块的灰度梯度向量。边界直线方程会把图块的四个角分开,通过判断四个角点的灰度值与直线的法向量确定灰度梯度向量。但边界线也很有可能会经过一个角或两个角,再加上干扰的存在,数据并不总是可靠。 直线的法向量为: 为了可靠图块矩阵四个角落分别取四个

文档评论(0)

s4as2gs2cI + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档