如何获取与从更快的r-cnn对象检测过程获得的强度点相对应的坐标点?

时间:2018-12-23 06:53:36

标签: machine-learning computer-vision conv-neural-network object-detection

作为快速r-cnn对象检测方法的结果,我获得了一组强度值框(每个边界框都可以看作是3g矩阵,其中rgb强度,宽度和宽度分别为3和高度,然后可以通过采用灰度将其转换为2D矩阵),该高度对应于包含对象的区域。我要做的是获取原始图像中边界框内每个强度单元的相应坐标点。有什么想法怎么做?

1 个答案:

答案 0 :(得分:1)

据我了解,您获得了一个R-CNN模型,该模型输出输入图像的裁切后的片段,现在您希望将这些输出的裁切符追溯至原始图像中的坐标。

您所能做的就是简单地使用补丁相似度测量来找到原始位置。 由于输出的裁切图像应该看起来像原始图像中的完全一样,因此只需使用基于像素的距离即可:

enter image description here

在图像中找到距离最小(应该为零)的位置,然后您可以找到所需的坐标。

在python中:

d_min = 10**6
crop_size = crop.shape
for x in range(org_image.shape[0]-crop_size[0]):
    for y in range(org_image.shape[1]-crop_size[1]):
        d = np.abs(np.sum(np.sum(org_image[x:x+crop_size[0],y:y+crop_size[0]]-crop)))
        if d <= d_min:
            d_min = d
            coord = [x,y]

但是,您的模型应该具有可用的信息(毕竟,它会基于某些坐标来裁剪输出)。也许如果您在实现中添加一些信息。