当前位置: 首页 > 网络应用技术

基于传统方法的行人重新认识系统的发展案例

时间:2023-03-08 20:31:49 网络应用技术

  回到主题,根据传统方法记录小规模行人重新认识系统的开发案例。整个案例是在Linux系统内置的,使用QT开发框架,图像模块使用OpenCV,并且数据库使用MySQL。

  通过Hikvision监控摄像机获得的三个部分的行人视频处理。数据集确实很难收集。多亏了周围兄弟姐妹的帮助,谢谢!交叉授权康,现有视频的基础,整个功能分为三个部分,即行人图像提取,返回数据处理和前端识别检索。以下是基于谈话的思想,没有什么,向我展示代码,三部分的代码被挂断了。

  1.行人图像提取

  从视频中提取行人图片,使用检测和跟踪,您可以提取行人,但是为了方便以后的处理,我将更多地工作并手动收集照片。但是,屏幕快照工具的提取确实很难很小。我制作了一个类似于视频播放器的小应用程序。在此窗口左上方的顶部单击,截距图片将在侧窗口显示,以确认图片是否根据是否满足要求保存。

  保留的图片命名是cameraid_suquenceid。通过这两个字段,可以找到视频和视频中的行人位置。这里设置的行人图片的大小为128x64。这种大小可以通过行人来区分,并且在行人的头和腿上大致包括在宽角摄像机中的这种尺寸的拦截。

  OPENCV中图像的数据格式为MAT,这表明您需要体验MAT-> QIMAGE-> QPIXMAP的格式转换。根据获得的检测框的大小和坐标信息,然后将编程扩展到整个主体。此部分的代码地址为:https://github.com/t20134297/screenfromvideo

  2.后端数据处理

  这部分中有很多程序,但是在一句话中,它被描述为:将比较结果放在数据库中。。

  让我们来谈谈人行的相似性比较方法并使用颜色特征。划分行人分为两个部分:躯干和腿部,每个部分都细分为5个部分,然后将RGB转换为HSV进行比较。OpenCV的直方图提取真的不好。您只能根据需要编译自定义的直方图统计功能,并且不知道比较正确。

  相似性使用bhattacharyy距离。每个行人都与其他行人进行比较以提取Top5。在小范围内,Rank1为0.833,Rank5接近0.95。

  数据库中的存储结构如图所示

  每个记录包含9个字段,top1-5是与图片最相似的五个图片,以下字段用于以后的搜索定位。该代码地址的该部分是:https://github.com/t20134297/Intelligeo_video_monitoring_backend

  3.正面 - 末端重新认识检索

  该部分用于检测行人。在此应用程序中,可以选择一个行人以进行重新认可应用。应用程序接口显示在图中

  在被选为要测试的行人之后,该程序将将图片的位置设置为在背面的数据库中检测到的图片位置,并提取最相似的图片,然后通过图片ID确定视频和顺序获取视频剪辑设置了十个播放窗口,但是由于重复的原因,它将根据实际的测试结果显示。

  代码地址的这一部分是:https://github.com/t20134297/intelligeo_video_monitoring_frontend