SAM等模型通过先进的深度学习技术,实现了高效、精准的图像自动化标注。这不仅显著降低了人工标注的工作量和成本,提高了标注效率和精度,还为各个领域的研究和应用提供了强大的技术支持。随着SAM等模型的不断完善和应用,自动化标注将在更多领域展现出巨大的潜力和价值。
一、环境安装
https://github.com/yatengLG/ISAT_with_segment_anything
1.创建虚拟环境
conda create -n biaozhu python=3.10
conda activate biaozhu
2.环境安装
获取ISAT_with_segment_anything源码并安装依赖windows系统下,通过pip安装的pytorch默认是cpu版本,gpu版本的pytorch需去 pytorch 官网手动安装。
git clone https://github.com/yatengLG/ISAT_with_segment_anything.git
cd ISAT_with_segment_anything
pip install -r requirements.txt
二、工具运行
activate biaozhupython main.py
1.模型下载(通过模型管理进行下载模型):
2.模型下载后进行选定模型 (前面有个对勾就选定了)
3.打开图片文件夹
然后就会出现这个符号:
4.然后点击这个符号,就可标注了
5.按E,标注完成,点击查看
查看标注信息(保存在图片目录):
{"info": {"description": "ISAT","folder": "E:/ultralytics-main","name": "bus.jpg","width": 810,"height": 1080,"depth": 3,"note": ""},"objects": [{"category": "person","group": 1,"segmentation": [[129.0,398.0],[123.0,399.0],[105.0,410.0],[103.0,415.0],[103.0,449.0],[99.0,452.0],[97.0,465.0],[65.0,493.0],[62.0,503.0],[64.0,535.0],[60.0,553.0],[60.0,566.0],[65.0,581.0],[62.0,596.0],[59.0,676.0],[62.0,689.0],[73.0,699.0],[75.0,740.0],[72.0,754.0],[78.0,772.0],[78.0,793.0],[69.0,808.0],[62.0,814.0],[59.0,853.0],[54.0,867.0],[52.0,884.0],[55.0,888.0],[73.0,897.0],[86.0,900.0],[101.0,898.0],[106.0,893.0],[105.0,886.0],[96.0,876.0],[85.0,857.0],[84.0,841.0],[96.0,780.0],[107.0,762.0],[118.0,705.0],[124.0,702.0],[135.0,719.0],[151.0,760.0],[161.0,808.0],[178.0,863.0],[175.0,870.0],[177.0,896.0],[185.0,898.0],[222.0,892.0],[243.0,882.0],[240.0,874.0],[225.0,869.0],[201.0,849.0],[187.0,779.0],[185.0,745.0],[177.0,696.0],[178.0,691.0],[189.0,689.0],[192.0,685.0],[190.0,649.0],[184.0,616.0],[178.0,600.0],[198.0,585.0],[200.0,575.0],[199.0,555.0],[186.0,534.0],[181.0,520.0],[181.0,507.0],[174.0,499.0],[172.0,490.0],[151.0,466.0],[156.0,436.0],[157.0,410.0],[149.0,403.0]],"area": 45642.0,"layer": 1.0,"bbox": [51.50342469783856,397.42460354443125,243.46816458878453,900.4956139503413],"iscrowd": false,"note": ""}]
}
三、使用的技术与意义
1.自动化标注使用的技术:
-
预训练模型: SAM模型经过大量数据的预训练,能够识别并分割各种类型的对象。这种预训练使得模型具有了很强的泛化能力,可以在没有针对性标注数据的情况下,处理新的图像和对象。
-
多尺度特征提取: SAM利用深度卷积神经网络(如ResNet、EfficientNet)提取图像的多尺度特征,这些特征能够捕捉到图像中不同大小、形状和复杂度的对象。
-
Transformer架构: 采用Transformer架构,特别是自注意力机制,使得模型能够高效地整合图像中不同区域的信息,生成更精确的分割结果。自注意力机制可以捕捉到图像中长距离的依赖关系,从而提高分割的精度和鲁棒性。
-
区域提议网络(RPN): RPN用于在图像中生成候选区域,这些区域可能包含目标对象。然后,SAM对这些候选区域进行进一步的精细分割。这一过程提高了分割的效率,因为模型只需要处理可能包含对象的区域,而不是整张图像。
-
图像分割掩码生成: 基于模型提取的特征和区域提议,SAM生成对应的分割掩码。这些掩码准确地描绘出每个对象的边界,确保高精度的分割结果。
-
主动学习和数据增强: 在模型训练过程中,采用主动学习和数据增强技术,通过选择性地挑选和生成更具挑战性的训练样本,来不断提升模型的表现。这种方法确保了模型在面对各种复杂场景时,依然能够保持高精度的分割能力。
2.自动化标注的意义:
-
显著降低人工成本: 传统的图像标注需要大量的人工操作,标注过程繁琐且耗时。SAM模型的自动化标注可以大大减少人工标注的工作量,降低标注成本。例如,在大型图像数据库的建立过程中,SAM可以快速、高效地完成对象分割任务,节省大量人力资源。
-
提高标注效率和精度: SAM模型能够在短时间内处理大量图像,并生成高精度的分割结果。这不仅提高了标注效率,还减少了人工标注过程中可能出现的误差和不一致性,确保数据标注的一致性和准确性。
-
支持大规模数据标注: 在需要大规模图像标注的应用场景中,如自动驾驶数据集的构建、医学影像数据的分析,SAM模型的自动化标注能力显得尤为重要。它能够快速处理成千上万张图像,为进一步的研究和开发提供高质量的标注数据。
-
促进科研和开发: 高质量的标注数据是计算机视觉研究和开发的基础。SAM模型的自动化标注能力可以帮助研究人员快速获得大量标注数据,从而加速模型训练和验证过程,推动计算机视觉技术的发展。
-
多领域应用: SAM模型的通用性使其在各个领域都有广泛的应用前景。例如,在医学影像中,SAM可以帮助医生快速识别和分割病变区域,提高诊断效率;在遥感图像分析中,SAM可以自动分割土地覆盖类型,辅助地理信息系统的建设;在工业检测中,SAM可以用于产品缺陷检测,提高生产质量。