图片识别方法求助

2019-07-20 03:33发布

关于机械式表头的刻度位置识别
机械式表头一直在转动,边上有刻度,如图所示。借用正点原子的做法稍作改动,主控使用STM32F4,使用豪威的OV2640摄像头去读取影像信息,通过DMA的传输方式将摄像头图像信息搬运到屏幕上,最后识别显示屏上的颜 {MOD}判断刻度线是否在屏幕指定位置。
目前功能已经实现,每次出现刻度时候即发出一个脉冲信号给外部接受设备。比如刻度5的时候发出一个脉冲,6的时候发出一个。。以此类推。。
不过有个小麻烦,两次发出脉冲的时间间隔不一样,要求达到的精度是1%以内。例如转动到标准的两个刻度之间间隔为100s,故每间隔发出的脉冲信号必须落在99s到101s之间,现在做到的精度有时候会偏离范围。
分析原因:
1.由于表头转动速度太慢,所以可能会导致每次刻度出现的时间会有误差
2.摄像头数据采集只要30帧,加上处理应该只有25帧,处理过慢。
请教各位坛友,从软件处理方式上出发,有没有更好的识别思路呢?改良精度的问题。


检测位置为图片中小红框区域,转动到中间位置的时候被检测到。
之前的测试方法为使用光电头采集上面的反光片,出来的脉冲信号是在精度要求范围内的。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
huayuguo
1楼-- · 2019-07-21 23:44
 精彩回答 2  元偷偷看……
l68715553
2楼-- · 2019-07-21 23:48
huayuguo 发表于 2018-12-13 22:46
楼主这个是是固定摄像头,固定区域 检查?  不知道我理解的对不对!
  方案 1            摄像头是否支持Y ...

你好,非常感谢你的回答。
1.摄像头是OV2640,抄的原子输出格式为RGB565,官方好像是支持YUV422输出的。因为都用上了摄像头,屏幕上要求显示当前的画面信息。那个去抖的话,我在摄像头边上加了强光照射,光线亮度大于环境亮度,环境光线不起影响。
2.和1一样,那就没有的显示了。我也是极力的缩小图片尺寸,2.8寸的屏幕都没给填满。而且发现小到一定程度的话,整个输出就不正常了,所以也不能过度缩小。
千分尺的比喻我会好好考虑一下的,暂时没有太多的了解,谢谢你。
然后看到你在下面给的补充解答,标线越细,有好也有坏的。简单的话,100个像素点的话,允许有一两个误差,但是只要10个像素点的话,出现一个误差也可能直接影响计算的。

再次感谢耐心给出的方案和思路
huayuguo
3楼-- · 2019-07-22 02:54
 精彩回答 2  元偷偷看……
huayuguo
4楼-- · 2019-07-22 05:16
F7 H7 说错了 更正下
huayuguo
5楼-- · 2019-07-22 07:31
游标卡尺  尺就是红框,游就是你这刻度白线  不够这个是精度问题(刻度到底走了多少)    和你需要的脉冲无毛关系
食验室学徒
6楼-- · 2019-07-22 09:04
 精彩回答 2  元偷偷看……

一周热门 更多>