记录一下一个简单的调用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相关推荐

  1. 深度学习目标检测模型全面综述:Faster R-CNN、R-FCN和SSD

    为什么80%的码农都做不了架构师?>>>    Faster R-CNN.R-FCN 和 SSD 是三种目前最优且应用最广泛的目标检测模型,其他流行的模型通常与这三者类似.本文介绍了 ...

  2. DL之FasterR-CNN:Faster R-CNN算法的简介(论文介绍)、架构详解、案例应用等配图集合之详细攻略

    DL之FasterR-CNN:Faster R-CNN算法的简介(论文介绍).架构详解.案例应用等配图集合之详细攻略 目录 Faster R-CNN算法的简介(论文介绍) 1.实验结果 2.三者架构对 ...

  3. 深度学习论文阅读目标检测篇(三):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 ...

  4. 目标检测经典论文——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 ...

  5. 后 R-CNN时代, Faster R-CNN、SSD、YOLO 各类变体统治下的目标检测综述:Faster R-CNN系列胜了吗?,(知乎ChenJoya大佬,讲的挺好的,记录一下)

    我们检测到你可能使用了 AdBlock 或 Adblock Plus,它的部分策略可能会影响到正常功能的使用(如关注). 你可以设定特殊规则或将知乎加入白名单,以便我们更好地提供服务. (为什么?) ...

  6. 目标检测经典论文——Faster R-CNN论文翻译(纯中文版):Faster R-CNN:通过Region Proposal网络实现实时目标检测

    目标检测经典论文翻译汇总:[翻译汇总] 翻译pdf文件下载:[下载地址] 此版为纯中文版,中英文对照版请稳步:[Faster R-CNN中英文对照版] Faster R-CNN:通过Region Pr ...

  7. 面试真题总结:Faster Rcnn,目标检测,卷积,梯度消失,Adam算法

    目标检测可以分为两大类,分别是什么,他们的优缺点是什么呢? 答案:目标检测算法分为单阶段和双阶段两大类.单阶段目标验测算法(one-stage),代表算法有 yolo 系列,SSD 系列:直接对图像进 ...

  8. 人工智能学习07--pytorch18--目标检测:Faster RCNN源码解析(pytorch)

    参考博客: https://blog.csdn.net/weixin_46676835/article/details/130175898 VOC2012 1.代码的使用 查看pytorch中的fas ...

  9. 你真的理解Faster RCNN吗?捋一捋Pytorch官方Faster RCNN代码

    作者丨白裳@知乎 来源丨https://zhuanlan.zhihu.com/p/145842317 编辑丨极市平台 目前 pytorch 已经在 torchvision 模块集成了 FasterRC ...

  10. Pytorch搭建Faster R-CNN目标检测平台

    学习前言 什么是FasterRCNN目标检测算法 源码下载 Faster-RCNN实现思路 一.预测部分 1.主干网络介绍 2.获得Proposal建议框 3.Proposal建议框的解码 4.对Pr ...

最新文章

  1. 基于React与Redux的留言墙的实现
  2. Web测试实践-任务进度-Day02
  3. 论文阅读笔记三十三:Feature Pyramid Networks for Object Detection(FPN CVPR 2017)
  4. BenchmarkDotNet性能测试
  5. smartgwt_SmartGWT入门,提供出色的GWT界面
  6. Spring 创建对象的方式
  7. LNMP详解(十四)——Nginx日志详解
  8. mariadb配置允许远程访问方式
  9. python人脸照片分类_Python系列之三——人脸检测、人脸识别
  10. 流程图与算法_流程图与算法之间的区别
  11. java材质转基岩版_我的世界java版材质包转换导入基岩版教程
  12. 计算S=a+aa+…+aa…a
  13. android 拨号隐藏号码,技巧:手机隐藏代码大集合 知道五个以上是大神
  14. VUE 学习中的疑问
  15. mentohust mac安装
  16. unity编辑器拓展九——删除场景中丢失的脚本
  17. 【PS技巧】如何拼图
  18. HDU5855 Less Time, More profit(最大权闭合图)
  19. 6岁女孩出口之乎者也 用《论语》典故批评妈妈
  20. win10系统ipv6服务器地址,win10系统查看电脑ipv6地址的操作方法

热门文章

  1. 最新、最前沿AI论文哪里找?
  2. 亿级流量请求,多级缓存解救
  3. 【华为云 ModelArts-Lab AI实战营】第二期
  4. gcc学习(二)[第二版]
  5. Django(三)模板
  6. JS每日一题:vue中keepalive怎么理解?
  7. 本地也能运行AWS?是的,AWS开始进军混合云领域了
  8. ospf路由协议源码学习
  9. 《网络安全原理与实践》一1.2 资产确定
  10. Python调Windows的资源管理器打开指定目录