Yolo-Uniow开集目标检测本地复现

本文不生产技术,只做技术的搬运工!!!

前言

        Yolo-Uniow是清华团队前段时间公布的开集目标检测模型,继承了Yolo家族的优秀传统:快,对coco、lvis等开源数据集类别支持良好,本文不介绍原理及论文,仅记录在本地复现过程中出现的问题及解决方案。

环境配置

项目地址:GitHub - THU-MIG/YOLO-UniOW: YOLO-UniOW: Efficient Universal Open-World Object Detection

清华团队提供了环境配置方案,作者做了一些优化,对小白更友好,过程如下:

conda create -n yolouniow python=3.9
conda activate yolouniow
pip install torch==2.1.2 torchvision==0.16.2 --index-url https://download.pytorch.org/whl/cu118
pip install mmcv==2.1.0 -f https://download.openmmlab.com/mmcv/dist/cu118/torch2.1/index.html
git clone https://github.com/THU-MIG/YOLO-UniOW.git
cd YOLO-UniOW
pip install -r requirements.txt
pip install -e .

本地推理(图像)

进行本地推理前需要先下载Yolo-Uniow权重、CLIP权重、lvis文件,其中Yolo-Uniow权重需要在github的链接中下载,CLIP权重是代码自动下载,lvis文件可以百度搜索lvis_v1_minival_inserted_image_name.json,在hugging face上下载,针对网络不好的问题,作者对这三个下载项提供了解决方案,均是免费下载。

Yolo-Uniow权重

https://download.csdn.net/download/qq_44908396/90474170https://download.csdn.net/download/qq_44908396/90474170

CLIP权重

解决OSError: We couldn‘t connect to ‘https://huggingface.co‘ to load this file_we couldn't connect to-CSDN博客文章浏览阅读3.9k次,点赞23次,收藏25次。解决hugging face无法下载模型的问题_we couldn't connect to https://blog.csdn.net/qq_44908396/article/details/142516867?spm=1001.2014.3001.5501

lvis_v1_minival_inserted_image_name.json

https://download.csdn.net/download/qq_44908396/90474156https://download.csdn.net/download/qq_44908396/90474156该文件下载后放在YOLO-UniOW/data/coco/lvis目录下即可

推理脚本

在YOLO-UniOW工程下,新建infer.sh脚本,写入如下内容

python ./demo/image_demo.py \
./configs/pretrain/yolo_uniow_l_lora_bn_5e-4_100e_8gpus_obj365v1_goldg_train_lvis_minival.py \ #配置文件
./demo/yolo_uniow_l_lora_bn_5e-4_100e_8gpus_obj365v1_goldg_train_lvis_minival.pth \ #权重路径
./demo/src.jpg \ #图像路径
'white cars' \ #提示词
--topk 100 \
--threshold 0.05 \ #阈值
--output-dir ./demo/output/ #输出路径

./configs/pretrain/路径下提供了三个配置文件,分别对应三个权重,作者使用的是L模型,因此需要使用L配置文件

执行

conda activate yolouniow
sh infer.sh
### YOLO-UniOW 介绍 YOLO-UniOW 是基于YOLO系列算法发的一个通用物体检测框架,旨在提供更便捷、高效的物体识别解决方案。该工具不仅支持多种预训练模型的选择,还允许用户自定义类别进行特定场景下的目标检测[^1]。 ### 使用教程 对于希望利用YOLO-UniOW展工作的发者而言,获取并运行此工具涉及几个重要环节: #### 下载与安装 要始使用YOLO-UniOW,需先访问官方推荐的资源站点如Hugging Face下载所需的权重文件,并依据项目文档说明将其存放在规定位置。完成上述操作后,可通过Python包管理器pip来安装必要的依赖库。 ```bash pip install ultralytics ``` #### 配置环境 确保本地计算环境中已正确设置CUDA版本以及PyTorch等相关组件,以便充分利用GPU加速性能。此外,还需确认所使用的操作系统满足最低兼容性要求[^3]。 #### 示例代码展示 下面给出一段简单的Python脚本用于加载预训练好的YOLO-UniOW模型并对图片执行推理过程: ```python from ultralytics import YOLOWorld # Initialize a YOLO-World model model = YOLOWorld('yolov8s-univow.pt') # Load pre-trained weights specific to UniOW variant model.set_classes(["car", "bike"]) # Customize detection classes as needed results = model.predict('example_image.jpg') # Perform prediction on an image file results[0].show() # Display the result of object detection visually ``` 通过这段代码可以看出,在初始化`YOLOWorld`类实例时指定了适用于UniOW变体的`.pt`格式参数文件;接着设置了想要探测的目标种类列表;最后调用了`predict()`方法传入待分析图像路径,并借助`show()`函数直观呈现最终输出效果[^2]。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值