[目标检测] 基于 YOLOV8 的自定义数据集实现水印检测
背景
近期在进行图像处理相关需求的时候,编写了图像处理-Java-OpenCV-水印编码/解码这篇文章,将水印隐藏到了图像中,关于版权保护这里,突然想到了之前接触到的一个检查 CMS 系统中是否使用了包含水印的图像,故编写此文。
思路
使用 yolo,自定义数据集之后划分数据集,灌入模型进行训练,并进行测试得到结果。
步骤
从 GitHub 上下载源码 https://github.com/ultralytics/ultralytics/tree/v8.1.0
使用 conda 创建环境 conda create --name ultralytics-env python=3.8 -y
激活环境 conda activate ultralytics-env
切换至源码解压路径 cd ultralytics-8.1.0
环境安装(显示 Successfully built ultralytics) pip install -e .
(可选)安装数据标注(Successfully built labelImg) pip install labelImg
(可选)可视化界面进行数据标注 labelImg
执行过程
本文使用代码详见: 基于YOLOV8的自定义数据集实现水印检测
使用 labelImg 创建自定义的数据集,注意左侧选择 yolo
将自定义的数据集拷贝至 datasets/data/images 文件夹,使用 Process.py 切分数据集
请验证 datasets/data/train、datasets/data/test、datasets/data/val 三个文件夹下是否生成对应的数据
执行 train.py 进行训练,请注意 imgsz 参数,如果图像很大,此参数建议同步进行增大
执行 trest.py 验证模型,请对照 test.jpg 和 result.jpg 两张图像
总结
基于 Yolo,使用自定义数据集,标注数据集中的水印区域,训练模型后进行测试,得到标注结果。本文使用源码详见基于YOLOV8的自定义数据集实现水印检测
参考
版权声明: 本文为 InfoQ 作者【alexgaoyh】的原创文章。
原文链接:【http://xie.infoq.cn/article/e7ee73e20e6980fd0abe85bd7】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论