当前位置: 首页 > news >正文

支持国产——使用mmdetection进行目标检测并保存推理结果图片

⭐️ 概述

MMDetection是OpenMMLab算法体系的一部分,OpenMMLab是一个国产的开源计算机视觉算法体系。

在这里插入图片描述

今天小编初次体验了MMDetection,怀着激动的心情,将这次体验记录下来。

⭐️ 准备工作

笔者的cuda版本是11.8

python环境中 pytorch 相关版本是:

torch                        1.13.1
torchaudio                   0.13.1
torchvision                  0.14.1

安装 mmcv

pip install -U openmim
mim install mmcv==2.1.0

安装 mmdetection

新建一个目录,在该目录下执行:

git clone git@github.com:open-mmlab/mmdetection.git
cd mmdetection
pip install -r requirements.txt
python setup.py develop

注意,执行完上面的命令后,本步骤所建目录的子目录 mmdetection,即为 mmdetection 安装目录。

目前mmdetection的版本为 3.3.0。

⭐️ 开始使用

新建项目目录,该目录独立于 mmdetection 安装目录

项目目录结构如下:

在这里插入图片描述
其中demo.py 的内容如下

import os
import mmcv
from mmdet.apis import init_detector, inference_detector
from mmdet.visualization import DetLocalVisualizer# mmdetection 安装目录,该值取决于你的安装环境
base_dir = 'xxx'
# 输入图片
in_img = 'demo1.jpg'
# in_img = 'demo2.jpg'
# 结果图片
out_img = 'out1.jpg'
# out_img = 'out2.jpg'if __name__ == '__main__':# 模型配置文件config_file = os.path.join(base_dir, 'configs/faster_rcnn/faster-rcnn_r50_fpn_1x_coco.py')# 模型 checkpoint 文件# 下载地址: https://download.openmmlab.com/mmdetection/v2.0/faster_rcnn/faster_rcnn_r50_fpn_1x_coco/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pthcheckpoint_file = r'checkpoints/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth'# 构建模型model = init_detector(config_file, checkpoint_file, device='cuda:0')# 测试单张图片img = mmcv.imread(in_img)# 利用模型对图片进行推理result = inference_detector(model, img)# 打印推理结果print(result)# 可视化推理结果并保存图片visualizer = DetLocalVisualizer()visualizer.add_datasample('detection', img, result, draw_pred=True, show=False, out_file=out_img)

base_dir一定要换成 mmdetection 安装目录,

我们准备利用Faster Rcnn 对两张图片进行推理,图片分别是

demo1.jpg

在这里插入图片描述
demo2.jpg

在这里插入图片描述
推理结果如下

在这里插入图片描述

在这里插入图片描述
效果感觉刚刚的

在这里插入图片描述


http://www.mrgr.cn/news/20016.html

相关文章:

  • vscode任务配置之tasks.json
  • Python | Leetcode Python题解之第385题迷你语法分析器
  • 鸿蒙OS试题
  • ”wait”和“notify”为什么要在Synchronized代码块里面?
  • 用Python实现时间序列模型实战——Day 11: 指数平滑模型
  • matlab 计算3D点到三角面的距离
  • 【基础算法总结】BFS_拓扑排序问题
  • 模电-三极管2
  • 推荐一款开源、高效、灵活的Redis桌面管理工具:Tiny RDM!支持调试与分析功能!
  • 华为OD机试真题 - 停车场车辆统计 - 贪心算法(Java/Python/JS/C/C++ 2024 D卷 200分)
  • 【Rust光年纪】构建高效气象模型计算系统:Rust语言库推荐与比较
  • 浅聊kubernetes 调度
  • 使用Python实现智能金融市场预测
  • 读软件设计的要素01概念
  • ASTER L2 表面反射率 SWIR 和 ASTER L2 表面反射率 VNIR V003
  • 向量数据库之Milvus
  • 独孤思维:副业不要被用户牵着鼻子走
  • RPC框架-Dubbo
  • 电脑知识:如何恢复 Word、媒体和存档文件?
  • Python 中的 None 是什么,探秘 None 的多种用途