Python+Torch+FasterCNN网络目标检测识别

程序示例精选
Python+Torch+FasterCNN网络目标检测识别
如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助!

前言

这篇博客针对《Python+Torch+FasterCNN网络目标检测识别》编写代码,代码整洁,规则,易读。 学习与应用推荐首选。


运行结果

在这里插入图片描述


文章目录

一、所需工具软件
二、使用步骤
       1. 主要代码
       2. 运行结果
三、在线协助

一、所需工具软件

       1. VS2019, Qt
       2. C++

二、使用步骤

代码如下(示例):

# coding:utf-8

'''


import json
import shutil

data_root = './coco/'
with open(data_root+"annotations/instances_val2014.json", 'r') as f:
    annos = json.load(f)
images = annos["images"]
imageid2image = {}
for image in images:
    imageid2image[image['id']]=image
categories = annos['categories']
cateid2name={}
for cate in categories:
    cateid2name[cate['id']] = cate['name']
image_final=[]
annos_final=[]
categories_final=[{
"id":1,
"name": "airplane"}]
image_id=1
anno_id=1
imgid2airplane={}
for anno in annos['annotations']:
    if cateid2name[anno['category_id']] == 'airplane':
        image_id_t = anno['image_id']
        if image_id_t not in imgid2airplane:
            imgid2airplane[image_id_t] = []
        imgid2airplane[image_id_t].append(anno)
'mini_airplane/' + imagename)
    image =  imageid2image[imgid]
    image['id'] = image_id
    image_final.append(image)
    for anno in annos:
        anno["id"] = anno_id
        anno["image_id"] = image_id
        anno["category_id"] = 1
        anno_id+=1
        annos_final.append(anno)
    image_id+=1
    if image_id >=100:
        break
instance = {"images": image_final,
            "annotations":annos_final,
            "categories": categories_final}
with open('mini_airplane_train.json', 'w') as f:
    json.dump(instance, f, indent=1)

运行结果

在这里插入图片描述

三、在线协助:

如需安装运行环境或远程调试,见文章底部个人 QQ 名片,由专业技术人员远程协助!

1)远程安装运行环境,代码调试
2)Visual Studio, Qt, C++, Python编程语言入门指导
3)界面美化
4)软件制作
5)云服务器申请
6)网站制作

当前文章连接:https://blog.csdn.net/alicema1111/article/details/132666851
个人博客主页https://blog.csdn.net/alicema1111?type=blog
博主所有文章点这里:https://blog.csdn.net/alicema1111?type=blog

博主推荐:
Python人脸识别考勤打卡系统:
https://blog.csdn.net/alicema1111/article/details/133434445
Python果树水果识别https://blog.csdn.net/alicema1111/article/details/130862842
Python+Yolov8+Deepsort入口人流量统计:https://blog.csdn.net/alicema1111/article/details/130454430
Python+Qt人脸识别门禁管理系统:https://blog.csdn.net/alicema1111/article/details/130353433
Python+Qt指纹录入识别考勤系统:https://blog.csdn.net/alicema1111/article/details/129338432
Python Yolov5火焰烟雾识别源码分享:https://blog.csdn.net/alicema1111/article/details/128420453
Python+Yolov8路面桥梁墙体裂缝识别:https://blog.csdn.net/alicema1111/article/details/133434445

  • 27
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,下面我为您介绍一下如何使用 Python、SSD 和 PyTorch 实现目标检测。 1. 准备数据集和模型 首先,您需要准备好数据集,并使用 PyTorch 实现的 SSD 进行训练。可以使用一些开源数据集,如 COCO 数据集,或自己收集数据集。 2. 加载模型和图像 使用 PyTorch 加载训练好的模型,并将待检测的图像输入到模型中。可以使用 OpenCV 加载图像。这里需要注意,输入图像需要经过预处理,如缩放、归一化等操作。 ```python import torch import cv2 # 加载模型 model = torch.load('path/to/model.pth') model.eval() # 加载图像 image = cv2.imread('path/to/image.jpg') # 图像预处理 image = cv2.resize(image, (300, 300)) image = image.astype('float32') image = image / 255.0 image = (image - [0.485, 0.456, 0.406]) / [0.229, 0.224, 0.225] image = image.transpose((2, 0, 1)) image = torch.from_numpy(image).unsqueeze(0) ``` 3. 进行目标检测 将预处理后的图像输入到模型中,模型将会输出目标在图像中的位置和分类信息。 ```python # 目标检测 with torch.no_grad(): outputs = model(image) detections = outputs.data # 解析检测结果 for i in range(detections.size(1)): j = 0 while detections[0, i, j, 0] >= 0.6: score = detections[0, i, j, 0] label_name = 'class_name' pt = (detections[0, i, j, 1:]*300).cpu().numpy() j += 1 # 在图像上绘制检测结果 cv2.rectangle(image, (int(pt[0]), int(pt[1])), (int(pt[2]), int(pt[3])), (0, 255, 0), 2) cv2.putText(image, label_name, (int(pt[0]), int(pt[1]-10)), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2) ``` 4. 展示检测结果 可以使用 OpenCV 在图像上绘制检测结果,并展示出来。 ```python # 展示检测结果 cv2.imshow('image', image) cv2.waitKey(0) cv2.destroyAllWindows() ``` 需要注意的是,这里只是一个简单的示例,实际应用中还需要针对具体情况进行调整和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荷塘月色2

您的鼓励将是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值