python - 如何在图像中找到对象的区域边界框
问题描述
我有这样的图像及其蒙版:
如何使用遮罩识别对象周围的矩形边界框?所以最终的结果应该是这样的(去掉背景):
import urllib
from io import BytesIO
url_mask = "https://i.stack.imgur.com/rIyJ6.png"
f = urllib.request.urlopen(url_mask)
mask = Image.open(BytesIO(f.read()))
url_im = "https://i.stack.imgur.com/msm7L.jpg"
f2 = urllib.request.urlopen(url_im)
img = Image.open(BytesIO(f2.read()))
解决方案
如果您不使用 cv2,那么您可以查看所有像素并找到等于 1 的 xmin、xmax、ymin ymax。因为黑色通常表示为 0,而白色通常表示为 1。
推荐阅读
- javascript - 网站未正确获取 cookie 信息并重新加载垃圾邮件
- java - Spring MVC Hibernate 集成问题
- python-2.7 - 在重复标签中查找文本
- c++ - Boost program_options 路径中的斜杠和空格无法正确解析
- vbscript - 如何计算确定日期的工作日数?
- schema.org - Schema.org 用于多个产品依赖项或先决条件
- css - 导航栏未显示在网站的第二页上
- c++ - 为什么 `wifstream` 上的 `getline` 从 UTF-16 编码文件中读取乱码输入?
- windows - 如何让 Windows 让我安装未签名的应用程序?
- php - 正则表达式仅保留字符串中的最后一个点