提取Google街景图像中房屋的可能位置

时间:2019-05-29 19:57:02

标签: image-segmentation image-recognition google-street-view

我正在一个项目中,尝试检测Google街景图像是否包含某种房屋建筑风格(温哥华特刊),以及该房屋的实例在图像中的位置(如果房屋是在图片中)。我没有访问GPU的权限,因此我尝试使用可以在使用Python的CPU上合理执行的方法(到目前为止,我一直在使用OpenCV进行实现)-因此,诸如YOLO之类的方法目前无法使用。我的基本想法是,首先尝试检测房子在街景图像中的位置,然后裁剪出这些建议的区域,然后通过经过预先训练的CNN分类器(类似于RCNN分类器,但具有非常具体的先验信息)对它们进行处理我在寻找什么对象。

当我对非常靠近的房屋的图像进行训练时,例如在这里(http://www.vancouverspecial.com/images/3976beatrice.JPG),我获得了不错的分类评分。

这样说,我很难在街景图像中实际找到房屋的可能位置。我已经尝试过Canny边缘检测器,但是由于房屋边缘不能很好地分辨,因此无法通过,似乎街景图像中的信息太多,无法正常工作。我还尝试使用RCNN(https://link.springer.com/article/10.1023/B:VISI.0000022288.19776.77)中使用的基于半流行图的分段算法,但是对于合理的CPU运行时间,其输出的可能区域数量过多。

我的主要问题是磨练有效的方法,因为似乎有很多方法可以做到这一点-例如边缘检测,轮廓发现和分割;每种方法都有许多不同的方法。很难找到一种方法来处理诸如Google街景图像之类的图像。大多数街景图像包含许多对象,例如房屋,人,树木,草等。其中任何一个都可能部分覆盖房屋。房屋也从多个角度出现,因此似乎仅搜索与矩形形状匹配且不可能进行剪切类型转换的对象并不是很有效。所以我的问题是:可以在Python中使用和实现哪些可能的CV方法,这些方法将以合理的准确性从Google街景图像返回房屋的可能位置?到目前为止,我正在尝试使用不使用ML来查找区域的方法。

谢谢

0 个答案:

没有答案