maskrcnn 制作masks

img

instance_subset: 一个 COCO JSON forma文件,使用coco-annotator label后输出的文件

masks: 要放相应原图的masks

问题: 那么现在我有3个COCO JSON format文件: instances_test, instances_train, instances_val 和原图
要用什么工具制作masks?

可以使用图像标注工具,例如 labelImg,labelbox,VGG Image Annotator (VIA) 等。

这些工具通常都是使用图形用户界面 (GUI) 提供的,因此可以通过打开图像并在其上绘制多边形来标注对象。然后可以将多边形保存为掩码。

在标注所有图像之后,可以使用 COCO 格式的数据加载器将它们加载到 Mask R-CNN 中进行训练。
仅供参考,望采纳,谢谢。

可以使用COCO API或者labelImg这个开源的图像标注工具来制作masks
使用COCO API的方法如下:

下载COCO API并解压缩到本地。
在代码中导入COCO API:

import sys
sys.path.append('/path/to/cocoapi/PythonAPI')
from pycocotools.coco import COCO

创建COCO对象并加载标注文件:

coco = COCO('/path/to/instances_{}.json')

读取图像并进行标注:

# 读取图像
image = cv2.imread('/path/to/image.jpg')
# 获取图像的高和宽
height, width, _ = image.shape
# 获取标注信息
annIds = coco.getAnnId
s(imgIds=image['id'], iscrowd=None)
anns = coco.loadAnns(annIds)
#遍历所有的标注
for ann in anns:
# 获取标注的类别信息
category_info = coco.loadCats(ann['category_id'])[0]
# 获取标注的掩码
mask = coco.annToMask(ann)
# 将掩码转换为矩形
x, y, w, h = cv2.boundingRect(mask)
# 在图像上绘制矩形
cv2.rectangle(image, (x, y), (x+w, y+h), (0, 0, 255), 2)
# 在图像上添加文本信息
cv2.putText(image, category_info['name'], (x, y-10), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 2)

#显示图像
cv2.imshow('image', image)
cv2.waitKey(0)

使用labelImg的方法如下:

1.下载labelImg并解压缩到本地。
2.打开labelImg.exe。
3.在“Open Dir”中选择存储原图的文件夹。
4.在“Change Save Dir”中选择保存标注文件的文件夹。
5.在“Save”中选择“Instance Segmentation”。
6.在“Next”中选择下一张图片。
7.使用鼠标在图像上绘制矩形并添加类别信息。
8.点击“Save”保存标注。
重复步骤5-8直到所有的图片都被标注完成。

建议题友关注和阅读该实例和该博主,链接:https://blog.csdn.net/qq_15969343/article/details/80167215

Mask R-CNN (Region-based Convolutional Neural Network) 是一种深度学习模型,用于实现目标检测和分割。

在制作 masks 时,首先需要对图像进行目标检测,以确定图像中的所有目标。然后可以使用 Mask R-CNN 模型对每个目标生成一个 mask,该 mask 将图像中的目标进行分割。

要生成 masks 需要:

准备训练数据,包括图像和标注的 masks。

使用这些数据训练 Mask R-CNN 模型。有许多开源的实现可供选择,例如 Matterport 的 Mask R-CNN 实现。

在训练完成后,使用该模型在新图像上生成 masks。

如果对如何使用 Mask R-CNN 进行目标检测和分割感兴趣,可以查看这些资源:

https://arxiv.org/abs/1703.06870%EF%BC%88Mask R-CNN 论文)
https://github.com/matterport/Mask_RCNN%EF%BC%88Matterport 的 Mask R-CNN 代码库)

你可以使用 COCO API 来帮助你制作 masks。COCO API 是一组工具,它可以帮助你处理 COCO 数据集,包括 instances_test, instances_train, instances_val 等文件。你可以在这里找到 COCO API 的文档:

https://cocodataset.org/#download

你需要先安装 COCO API,然后使用 API 中提供的工具来加载你的 COCO JSON 文件,并使用 API 中的函数来处理图像和标注。