我使用3D扫描仪来扫描矩形物体并测量它们(宽度和长度)。但是,由于传感器的位置或矩形顶点的位置,在某些方面会出现模糊。这导致测量没有足够的精度。
为了找到正确的轮廓,您建议我进行哪种预处理(使用C++的OpenCV)?你认为有没有比使用预处理更好的解决方案?请注意,像素的强度是其高度相对于零平面的平移。
这里有一个例子:一个橡胶在三个不同的地方。正如你所看到的,模糊会出现在一边,取决于这个位置。橡胶的实际尺寸是(在图像中)179x182px。
谢谢!


编辑:忘记说模糊会影响不同的边,这取决于橡胶的位置和水平轴(中间行)。
发布于 2017-04-24 22:05:14
如果图像是模糊的,我看不出你能准确地测量它。我不认为这是一个C++问题,这是一个机械的问题。
发布于 2017-04-24 22:36:17
你需要有一个模型/概念来解释模糊的原因。没有它,就没有更接近事实的计算。有了这样的模型,你也许能够调整你的计算。例如,如果您的想法是模糊是由对象与传感器不正交的事实造成的,并且存在来自对象另一侧的数据,则您可能希望在最大值(最接近传感器)处截断对象。为此,您可以使用接近最大值的阈值。请注意,这只是一个示例。
发布于 2017-04-24 22:49:16
在进行测量之前,你需要对图像进行去模糊处理,这完全取决于模糊发生的方式,不知何故,你需要估计模糊发生的方式。最简单的模型叫做移位不变模式,看看这个链接MATLAB link和这个link
https://stackoverflow.com/questions/43589907
复制相似问题