社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

用opencv python检测对象

python_interest • 6 年前 • 2335 次点击  

我有20000张图片,在所有的图片中都有相同的物体。我想用open cv python在我感兴趣的对象周围画一个边界框。你能就如何在感兴趣的物体周围画一个盒子提出建议吗? 我一直在检查orb,sift,但所有这些都在图像上画了一个关键点描述符。

提前谢谢你

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/43792
文章 [ 2 ]  |  最新文章 6 年前
Jirka B.
Reply   •   1 楼
Jirka B.    7 年前

请你详细说明一下这些照片好吗?我看到了以下两种情况:

  1. 如果图像中总是有一个对象,则可以使用 a feature matching 然后围绕所有正确匹配的特征绘制边界框。
  2. 如果在图像中有多个相同的对象,并且没有旋转或缩放,则可以使用 template matching (也 here )对整个图像进行相关峰识别。
  3. 训练模型 deep object detection ,请参见示例 YOLO w. OpenCV , SSD , Faster RCNN Mask R-CNN w. OpenCV
Dude
Reply   •   2 楼
Dude    7 年前

尺度不变特征变换(sift)用于 检测 匹配 特征点,意味着它只识别图像中的模式。如果你想在你的对象周围有一个盒子,圆圈或者其他什么框架,你需要在你当前的方法之上手动地整合它。比如说,以集群的中心作为矩形中心。此外,如果你感兴趣的话,你也可以看看基于神经网络的方法,因为它们现在广泛用于模式识别算法。