ultralytics/yolov3YOLOv3是一款由Ultralytics开发的先进计算机视觉模型,代表了其在未来视觉AI方法方面的开源研究成果。该Docker镜像封装了YOLOv3模型及其运行环境,提供了便捷的目标检测解决方案,支持从PyTorch到ONNX、CoreML和TFLite等多种模型格式的导出与部署。
!YOLOv3 Banner
bashdocker pull ultralytics/yolov3
bashdocker run --rm -v $(pwd):/usr/src/app ultralytics/yolov3 python detect.py --source [***]
bashdocker pull ultralytics/yolov3:latest
bashdocker run --rm -v $(pwd):/usr/src/app ultralytics/yolov3 python detect.py --weights yolov3.pt --source <输入源>
bash# 摄像头 docker run --rm --device /dev/video0 -v $(pwd):/usr/src/app ultralytics/yolov3 python detect.py --source 0 # 图像文件 docker run --rm -v $(pwd):/usr/src/app ultralytics/yolov3 python detect.py --source img.jpg # 视频文件 docker run --rm -v $(pwd):/usr/src/app ultralytics/yolov3 python detect.py --source vid.mp4 # 目录中的所有图像 docker run --rm -v $(pwd):/usr/src/app ultralytics/yolov3 python detect.py --source path/ # ***视频 docker run --rm -v $(pwd):/usr/src/app ultralytics/yolov3 python detect.py --source '[***] # RTSP流 docker run --rm -v $(pwd):/usr/src/app ultralytics/yolov3 python detect.py --source 'rtsp://example.com/media.mp4'
| 参数 | 描述 | 示例 |
|---|---|---|
| --weights | 指定模型权重文件 | --weights yolov3.pt |
| --source | 指定输入源 | --source 0 (摄像头) |
| --img-size | 输入图像尺寸 | --img-size 640 |
| --conf-thres | 置信度阈值 | --conf-thres 0.25 |
| --iou-thres | NMS的IOU阈值 | --iou-thres 0.45 |
| --device | 运行设备 | --device 0 (GPU) 或 --device cpu |
| --view-img | 显示结果 | --view-img |
| --save-txt | 保存检测结果到文本文件 | --save-txt |
| --save-conf | 在输出中保存置信度 | --save-conf |
| --classes | 只检测特定类别 | --classes 0 2 3 (只检测人、车、摩托车) |
bashdocker run --rm -v $(pwd):/usr/src/app ultralytics/yolov3 python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov3.yaml --batch-size 16
| 模型 | 配置文件 | 批量大小建议 | 描述 |
|---|---|---|---|
| YOLOv3-nano | yolov3n.yaml | 128 | 最小最快的模型,适合资源受限环境 |
| YOLOv3-small | yolov3s.yaml | 64 | 小型模型,平衡速度与精度 |
| YOLOv3-medium | yolov3m.yaml | 40 | 中型模型,更高精度 |
| YOLOv3-large | yolov3l.yaml | 24 | 大型模型,高精度 |
| YOLOv3-xlarge | yolov3x.yaml | 16 | 最大模型,最高精度 |
bashdocker run --rm -v $(pwd):/usr/src/app ultralytics/yolov3 python train.py --data custom_data.yaml --epochs 100 --weights yolov3s.pt --batch-size 16
支持导出为多种格式以适应不同部署场景:
bash# 导出为ONNX格式 docker run --rm -v $(pwd):/usr/src/app ultralytics/yolov3 python export.py --weights yolov3.pt --include onnx # 导出为TFLite格式 docker run --rm -v $(pwd):/usr/src/app ultralytics/yolov3 python export.py --weights yolov3.pt --include tflite # 导出为CoreML格式 docker run --rm -v $(pwd):/usr/src/app ultralytics/yolov3 python export.py --weights yolov3.pt --include coreml
支持的导出格式:
--include onnx--include tflite--include coreml--include engine--include openvino以下是一个使用GPU加速的docker-compose配置示例:
yamlversion: '3.8' services: yolov3: image: ultralytics/yolov3:latest runtime: nvidia volumes: - ./data:/usr/src/app/data - ./runs:/usr/src/app/runs environment: - NVIDIA_VISIBLE_DEVICES=all command: python detect.py --source data/images --weights yolov3.pt --img 640 --conf 0.25
运行:
bashdocker-compose up
| 环境变量 | 描述 | 默认值 |
|---|---|---|
| PYTHONUNBUFFERED | 禁用Python输出缓冲 | 1 |
| CUDA_VISIBLE_DEVICES | 指定可见GPU设备 | 所有可用设备 |
bashdocker run --rm --runtime=nvidia -v $(pwd):/usr/src/app ultralytics/yolov3 python -m torch.distributed.launch --nproc_per_node 2 train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov3.yaml --batch-size 32
Ultralytics HUB提供无代码的模型训练和部署平台:
Ultralytics提供两种许可选项:
如需商业用途,请通过Ultralytics Licensing联系。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务