1

我需要从场景图像中找到图像(对象图像)并减去它们以删除对象图像中存在的所有轮廓。

这是我正在做的事情:

对象图像:以编程方式创建的图像 对象图像

场景图像:使用移动相机场景图像捕获的物体图像的打印副本照片

  1. SIFT使用特征检测器 在场景图像中映射对象图像和FlannBasedMatcher

  2. 固定透视图后固定透视图

在这个阶段,我能够找到对象图像并对其进行透视修复,但问题是轮廓(圆圈和文本)的坐标与对象图像的坐标有点不同。

任何建议/建议,以便透视固定图像中的坐标与对象图像的坐标相匹配。

  1. 创建蒙版并减去图像

    objectImageMask = np.zeros(objectImage.shape[:2], dtype=objectImage.dtype)

    objectImageMask = cv2.compare(objectImage, 150, cv2.CMP_LT)

    dilatedObjectImage = cv2.dilate(objectImageMask , np.ones((0, 0), 'uint8'), 迭代次数 = 1)

    对象图像蒙版

    sceneImageMask = np.zeros(perspectiveFixedImage.shape[:2], dtype=perspectiveFixedImage.dtype)

    sceneImageMask = cv2.compare(perspectiveFixedImage, 150, cv2.CMP_LT)

    场景图像蒙版

    subtractedImage = dilatedObjectImage - sceneImageMask

    减去图像

图像可能有也可能没有边框。

请在此处找到源代码。源代码:查找和减去图像

请建议/建议如何实现轮廓/文本坐标中的图像减法处理不匹配。

4

0 回答 0