基于米尔全志T527开发板的OpenCV行人检测方案

发布时间:2025-4-11 18:18    发布者:swiftman
关键词: 全志 , T527 , 国产处理器 , opencv , 米尔电子
本文将介绍基于米尔电子MYD-LT527开发板(米尔基于全志T527开发板)的OpenCV行人检测方案测试。
摘自优秀创作者-小火苗


一、软件环境安装
1.在全志T527开发板安装OpenCV
  1. sudo apt-get install libopencv-dev python3-opencv
复制代码

2.在全志T527开发板安装pip
  1. sudo apt-get install python3-pip
复制代码


二、行人检测概论使用HOG和SVM基于全志T527开发板构建行人检测器的关键步骤包括:
  • 准备训练数据集:训练数据集应包含大量正样本(行人图像)和负样本(非行人图像)。
  • 计算HOG特征:对于每个图像,计算HOG特征。HOG特征是一个一维向量,其中每个元素表示图像中特定位置和方向的梯度强度。
  • 训练SVM分类器:使用HOG特征作为输入,训练SVM分类器。SVM分类器将学习区分行人和非行人。
  • 评估模型:使用测试数据集评估训练后的模型。计算模型的准确率、召回率和F1分数等指标。


三、代码实现
  1. import cv2
  2. import time
  3. def detect(image,scale):
  4.     imagex=image.copy()   #函数内部做个副本,让每个函数运行在不同的图像上
  5.     hog = cv2.HOGDescriptor()   #初始化方向梯度直方图描述子
  6.     #设置SVM为一个预先训练好的行人检测器
  7.     hog.setSVMDetector(cv2.HOGDescriptor_getDefaultPeopleDetector())
  8.     #调用函数detectMultiScale,检测行人对应的边框
  9.     time_start = time.time()     #记录开始时间
  10.     #获取(行人对应的矩形框、对应的权重)
  11.     (rects, weights) = hog.detectMultiScale(imagex,scale=scale)
  12.     time_end = time.time()    #记录结束时间
  13.     # 绘制每一个矩形框
  14.     for (x, y, w, h) in rects:
  15.         cv2.rectangle(imagex, (x, y), (x + w, y + h), (0, 0, 255), 2)
  16.     print("sacle size:",scale,",time:",time_end-time_start)
  17.     name=str(scale)
  18.     cv2.imshow(name, imagex)     #显示原始效果
  19. image = cv2.imread("back.jpg")
  20. detect(image,1.01)
  21. detect(image,1.05)
  22. detect(image,1.3)
  23. cv2.waitKey(0)
  24. cv2.destroyAllWindows()
复制代码

四、实际操作



本文地址:https://www.eechina.com/thread-885587-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

  • Microchip视频专区
  • 想要避免发生灾难,就用MPLAB® SiC电源仿真器!
  • 5分钟详解定时器/计数器E和波形扩展!
  • 了解一下Microchip强大的PIC18-Q24 MCU系列
  • 安静高效的电机控制——这才是正确的方向!
  • 贸泽电子(Mouser)专区

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表