PyTorch:Faster-RCNN
记录一下一个简单的调用Faster-RCNN模型测试的代码
coco_names.py
names = {'0': 'background', '1': 'person', '2': 'bicycle', '3': 'car', '4': 'motorcycle', '5': 'airplane', '6': 'bus', '7': 'train', '8': 'truck', '9': 'boat', '10': 'traffic light', '11': 'fire hydrant', '13': 'stop sign', '14': 'parking meter', '15': 'bench', '16': 'bird', '17': 'cat', '18': 'dog', '19': 'horse', '20': 'sheep', '21': 'cow', '22': 'elephant', '23': 'bear', '24': 'zebra', '25': 'giraffe', '27': 'backpack', '28': 'umbrella', '31': 'handbag', '32': 'tie', '33': 'suitcase', '34': 'frisbee', '35': 'skis', '36': 'snowboard', '37': 'sports ball', '38': 'kite', '39': 'baseball bat', '40': 'baseball glove', '41': 'skateboard', '42': 'surfboard', '43': 'tennis racket', '44': 'bottle', '46': 'wine glass', '47': 'cup', '48': 'fork', '49': 'knife', '50': 'spoon', '51': 'bowl', '52': 'banana', '53': 'apple', '54': 'sandwich', '55': 'orange', '56': 'broccoli', '57': 'carrot', '58': 'hot dog', '59': 'pizza', '60': 'donut', '61': 'cake', '62': 'chair', '63': 'couch', '64': 'potted plant', '65': 'bed', '67': 'dining table', '70': 'toilet', '72': 'tv', '73': 'laptop', '74': 'mouse', '75': 'remote', '76': 'keyboard', '77': 'cell phone', '78': 'microwave', '79': 'oven', '80': 'toaster', '81': 'sink', '82': 'refrigerator', '84': 'book', '85': 'clock', '86': 'vase', '87': 'scissors', '88': 'teddybear', '89': 'hair drier', '90': 'toothbrush'}
test.py
import torch
import torchvision
import argparse
import cv2
import numpy as np
import syssys.path.append('./')
import coco_names
import randomdef get_args():parser = argparse.ArgumentParser(description='Pytorch Faster-rcnn Detection')parser.add_argument('--image_path', default='test_03.jpg', type=str, help='image path')# parser.add_argument('image_path', type=str, help='image path')parser.add_argument('--model', default='fasterrcnn_resnet50_fpn', help='model')parser.add_argument('--dataset', default='coco', help='model')parser.add_argument('--score', type=float, default=0.8, help='objectness score threshold')args = parser.parse_args()return argsdef random_color():b = random.randint(0, 255)g = random.randint(0, 255)r = random.randint(0, 255)return (b, g, r)def main():args = get_args()input = []num_classes = 91names = coco_names.names# Model creatingprint("Creating model")model = torchvision.models.detection.__dict__[args.model](num_classes=num_classes, pretrained=True)# model = model.cuda()model.eval()src_img = cv2.imread(args.image_path)img = cv2.cvtColor(src_img, cv2.COLOR_BGR2RGB)# img_tensor = torch.from_numpy(img / 255.).permute(2, 0, 1).float().cuda()img_tensor = torch.from_numpy(img / 255.).permute(2, 0, 1).float()input.append(img_tensor)out = model(input)boxes = out[0]['boxes']labels = out[0]['labels']scores = out[0]['scores']for idx in range(boxes.shape[0]):if scores[idx] >= args.score:x1, y1, x2, y2 = boxes[idx][0], boxes[idx][1], boxes[idx][2], boxes[idx][3]name = names.get(str(labels[idx].item()))cv2.rectangle(src_img, (x1, y1), (x2, y2), random_color(), thickness=2)cv2.putText(src_img, text=name, org=(x1, y1 + 10), fontFace=cv2.FONT_HERSHEY_SIMPLEX,fontScale=0.5, thickness=1, lineType=cv2.LINE_AA, color=(0, 0, 255))cv2.imshow('result', src_img)cv2.imwrite('output.jpg',src_img)cv2.waitKey()cv2.destroyAllWindows()if __name__ == "__main__":main()
结果
PyTorch:Faster-RCNN相关推荐
- 深度学习目标检测模型全面综述:Faster R-CNN、R-FCN和SSD
为什么80%的码农都做不了架构师?>>> Faster R-CNN.R-FCN 和 SSD 是三种目前最优且应用最广泛的目标检测模型,其他流行的模型通常与这三者类似.本文介绍了 ...
- DL之FasterR-CNN:Faster R-CNN算法的简介(论文介绍)、架构详解、案例应用等配图集合之详细攻略
DL之FasterR-CNN:Faster R-CNN算法的简介(论文介绍).架构详解.案例应用等配图集合之详细攻略 目录 Faster R-CNN算法的简介(论文介绍) 1.实验结果 2.三者架构对 ...
- 深度学习论文阅读目标检测篇(三):Faster R-CNN《 Towards Real-Time Object Detection with Region Proposal Networks》
深度学习论文阅读目标检测篇(三):Faster R-CNN< Towards Real-Time Object Detection with Region Proposal Networks&g ...
- 目标检测经典论文——Faster R-CNN论文翻译:Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Net
Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks Faster R-CNN:通过Region ...
- 后 R-CNN时代, Faster R-CNN、SSD、YOLO 各类变体统治下的目标检测综述:Faster R-CNN系列胜了吗?,(知乎ChenJoya大佬,讲的挺好的,记录一下)
我们检测到你可能使用了 AdBlock 或 Adblock Plus,它的部分策略可能会影响到正常功能的使用(如关注). 你可以设定特殊规则或将知乎加入白名单,以便我们更好地提供服务. (为什么?) ...
- 目标检测经典论文——Faster R-CNN论文翻译(纯中文版):Faster R-CNN:通过Region Proposal网络实现实时目标检测
目标检测经典论文翻译汇总:[翻译汇总] 翻译pdf文件下载:[下载地址] 此版为纯中文版,中英文对照版请稳步:[Faster R-CNN中英文对照版] Faster R-CNN:通过Region Pr ...
- 面试真题总结:Faster Rcnn,目标检测,卷积,梯度消失,Adam算法
目标检测可以分为两大类,分别是什么,他们的优缺点是什么呢? 答案:目标检测算法分为单阶段和双阶段两大类.单阶段目标验测算法(one-stage),代表算法有 yolo 系列,SSD 系列:直接对图像进 ...
- 人工智能学习07--pytorch18--目标检测:Faster RCNN源码解析(pytorch)
参考博客: https://blog.csdn.net/weixin_46676835/article/details/130175898 VOC2012 1.代码的使用 查看pytorch中的fas ...
- 你真的理解Faster RCNN吗?捋一捋Pytorch官方Faster RCNN代码
作者丨白裳@知乎 来源丨https://zhuanlan.zhihu.com/p/145842317 编辑丨极市平台 目前 pytorch 已经在 torchvision 模块集成了 FasterRC ...
- Pytorch搭建Faster R-CNN目标检测平台
学习前言 什么是FasterRCNN目标检测算法 源码下载 Faster-RCNN实现思路 一.预测部分 1.主干网络介绍 2.获得Proposal建议框 3.Proposal建议框的解码 4.对Pr ...
最新文章
- 基于React与Redux的留言墙的实现
- Web测试实践-任务进度-Day02
- 论文阅读笔记三十三:Feature Pyramid Networks for Object Detection(FPN CVPR 2017)
- BenchmarkDotNet性能测试
- smartgwt_SmartGWT入门,提供出色的GWT界面
- Spring 创建对象的方式
- LNMP详解(十四)——Nginx日志详解
- mariadb配置允许远程访问方式
- python人脸照片分类_Python系列之三——人脸检测、人脸识别
- 流程图与算法_流程图与算法之间的区别
- java材质转基岩版_我的世界java版材质包转换导入基岩版教程
- 计算S=a+aa+…+aa…a
- android 拨号隐藏号码,技巧:手机隐藏代码大集合 知道五个以上是大神
- VUE 学习中的疑问
- mentohust mac安装
- unity编辑器拓展九——删除场景中丢失的脚本
- 【PS技巧】如何拼图
- HDU5855 Less Time, More profit(最大权闭合图)
- 6岁女孩出口之乎者也 用《论语》典故批评妈妈
- win10系统ipv6服务器地址,win10系统查看电脑ipv6地址的操作方法