首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何检测mm刻度尺上的激光线位置

如何检测mm刻度尺上的激光线位置
EN

Stack Overflow用户
提问于 2017-02-05 23:17:49
回答 1查看 443关注 0票数 0

您好,我正在尝试确定最好的方法来捕捉距离激光/光学相机几英尺的毫米刻度尺上的激光标记(静态-不移动)。我想知道我是否应该: 1)使用对象(可能是标尺)作为“像素大小”参考,以推导出从“零”标尺边缘到激光标记的长度,或者2)使用ocr或3)斑点识别(毫米线),并计算零和激光标记之间的这些线,以解释激光瞄准的位置,例如所附图像上的85 mm线。有没有人能说明一下,哪种方法更精确或更容易?任何帮助解决这一问题的人都将不胜感激。drawing example of laser line on ruler

EN

回答 1

Stack Overflow用户

发布于 2017-02-06 04:25:04

尽管你的问题很笼统,但我还是会使用一些假设来推荐一个可能的解决方案:

  • 你的相机是固定的,所以你正在使用的标尺/参考区域也是固定的
  • 你的标尺主要是水平对齐的(几度角不会有太大伤害,使用三角测量来得到数学)
  • 激光笔足够强,可以在你的相机图像上有明亮和对比的表示
  • 激光束几乎是垂直的。如果是这样,那么在标尺标记处进行精确测量并不重要(它们实际上干扰多于它们所能提供的帮助)

我绝对不鼓励在这里使用OCR -即使上面的一些或所有假设都是错误的。无论如何都很难让它工作,最有可能的是对你的项目来说是一个简单的杀手。

有了上面的假设,我会尝试以下几点:

准备工作:

  • First:通过标尺的零线所在的像素数(从左到右)校准零。只要标尺没有移动,这只需要做一次,数字甚至可以hard-coded.
  • Then:校准一些已知的距离,例如使用标尺上的最后一个可见数字,计算像素并除以该数字。现在您知道了每个数字的像素数。每位数的像素数越多,以后就可以进行更好的测量。

测量:

  • 只提取图像的一条水平线-最佳选择是没有干扰内容的中心-只有激光束和参考area
  • drop/remove/ignore所有像素直到零校准像素
  • 找到亮度值最高的像素。如果您可以识别线条,但有一定的宽度,请取平均值(线条的中间)。
  • 将像素从0计算到最大值,并除以每个digit.
  • DONE

的像素

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42053675

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档