这次研究的主要是速度问题,后来还获得了其它方面的收获。

1、原始的抽帧
      对于这样一个问题,想提高速度,能够想到的最简单、最直接的方法就是“抽帧”。比如添加一个计数器
这里,只有当SumofFrames达到FRAMEBLOCK的时候,才进行下面的图像处理,否则只是显示图像本身而不处理。
但是这样做,得到的结果很诡异,就是这个人走走停停的。
这样想来,这个图像处理的过程,还是不能放到主线程中去,还是要独立出来。
就是起码要2个线程。这个时候Console程序的能力就不够了,所以开始修改GOMFCTemplate。
2、对human_pose_estimation_demo结构的进一步理解
当我开始移植human_pose_estimation_demo到GOMfcTemplate中的时候,才发现它的结构化方法提供了非常多的便利:
引入它的文件
 
 
执行它的过程
就可以。
当然看上去简单,细节还是很多的,这个放到第4个部分来讲。
3、Dshow提供的加成
当我花了一番心思把算法移植过来,准备开始搞“2线程”的时候,测试发现速度已经有了明显的提升:
注意,這里已经将视频设置成了1920*1080的原始大小。可以看到,最上面的VCam是虚拟摄像头,它比较流畅,而GOMfctemplate里面的算法处理也是比较快的,并且DShow自动进行了抽帧处理!原理我还没有考证,但是结果看上去是这样的,这也是采用专业基础库的红利吧。
这样,我就不研究双线程了……等到后面有需要的时候再研究。这里实现的功能已经符合我的预期。
4、注意事项
a、因为OpenVINO的原因,所有的项目不要放在有中文和空格的地方;
b、正确设置分辨率进行测试,否则小分辨率测试不出来什么效果;
c、matU8ToBlob  等函数在引用过来的时候会批量报错,需要改写。
 

human_pose_estimation_demo的再进一步研究的更多相关文章

  1. human_pose_estimation_demo的进一步研究

    一.demo能力 OpenVINO提供了范例(human_pose_estimation_demo),能够在CPU上以较快速度识别出多人 -iE:/OpenVINO_modelZoo/head-pos ...

  2. 瘋子C++笔记

    瘋耔C++笔记 欢迎关注瘋耔新浪微博:http://weibo.com/cpjphone 参考:C++程序设计(谭浩强) 参考:http://c.biancheng.net/cpp/biancheng ...

  3. 大气散射 GPU Gems2 Chapter 16. Accurate Atmospheric Scattering

    效果图 这次先上效果图*4 散射概念 光线击中空气中的微小颗粒后的偏折导致了光线的散射.我们看到的阳光应该是由视线上的散射在视线方向上的集合.如果由地面的反射,还要加上经过散射计算的地面反射. Ray ...

  4. html中span不显示背景

    如果不在span中输入任何文本,span设置的背景图将无法显示出来.解决办法就是设置为块元素,然后设置固定的宽高. 参考:http://blog.csdn.net/jarniyy/article/de ...

  5. Python 利用pytesser模块识别图像文字

    使用的是python的pytesser模块,原先想做的是图片中文识别,搞了一段时间了,在中文的识别上还是有很多问题,这里做记录分享. pytesser,OCR in Python using the ...

  6. edmbed system----ecos

    方案公司用的嵌入式系统用的就是开源的可配置系统, ecos 不过提到它,对方公司研究的并不透彻,它有一个可以配置的dhcp部分,也就是dns可以选择不分配给连接的客户端 不过对方公司不这个事,更不知道 ...

  7. 从零到一:caffe-windows(CPU)配置与利用mnist数据集训练第一个caffemodel

    一.前言 本文会详细地阐述caffe-windows的配置教程.由于博主自己也只是个在校学生,目前也写不了太深入的东西,所以准备从最基础的开始一步步来.个人的计划是分成配置和运行官方教程,利用自己的数 ...

  8. windows窗口分析,父窗口,子窗口,所有者窗口

    (本文尝试通过一些简单的实验,来分析Windows的窗口机制,并对微软的设计理由进行一定的猜测,需要读者具备C++.Windows编程及MFC经验,还得有一定动手能力.文中可能出现一些术语不统一的现象 ...

  9. Redis构建分布式锁

    1.前言 为什么要构建锁呢?因为构建合适的锁可以在高并发下能够保持数据的一致性,即客户端在执行连贯的命令时上锁的数据不会被别的客户端的更改而发生错误.同时还能够保证命令执行的成功率. 看到这里你不禁要 ...

随机推荐

  1. Spring Boot 的单元测试和集成测试

    学习如何使用本教程中提供的工具,并在 Spring Boot 环境中编写单元测试和集成测试. 1. 概览 本文中,我们将了解如何编写单元测试并将其集成在 Spring Boot 环境中.你可在网上找到 ...

  2. Android Studio [页面的跳转和传值]

    AActivity.java package com.xdw.a122.jump; import android.app.Activity; import android.content.Compon ...

  3. python打开文件查询字符串时报UnicodeDecodeError: 'gbk' codec can't decode byte 0xaa in position 19: illegal multibyte sequence错误

    当这样打开时报错了 lines = open(path).readlines() open(path).close() for line in lines: idx1 = line.find('检测到 ...

  4. GStreamer基础教程08 - 多线程

    摘要 GStreamer框架会自动处理多线程的逻辑,但在某些情况下,我们仍然需要根据实际的情况自己将部分Pipeline在单独的线程中执行,本文将介绍如何处理这种情况. GStreamer多线程 GS ...

  5. 基于Coravel定时任务之物联网设备数量统计

    目录 基于Coravel定时任务之物联网设备数量统计 1 应用背景 2 对比各家定时库 2.1 TaskScheduler 2.2 Fluent Scheduler 2.3 Quartz.net 2. ...

  6. springmvc(三)

    Spring MVC上传 Spring MVC为文件上传提供了直接的支持,这种支持是用即插即用的MultipartResolver实现的.SpringMVC使用Apache Commons FileU ...

  7. ps查看图层大小快捷键

    1.图层大小尺寸的: ctrl+alt+c 2.图片大小尺寸.像素大小: ctrl+alt+i

  8. idea必备快捷键

    ctrl + F: 在当前文件进行文本查找 ctrl + R: 在当前文件进行文本的替换 ctrl + Z: 撤销操作 ctrl + Y:删除光所在的行 或者选中的行 ctrl + D: 复制光标所在 ...

  9. 详解http报文(2)-web容器是如何解析http报文的

    摘要 在详解http报文一文中,详细介绍了http报文的文本结构.那么作为服务端,web容器是如何解析http报文的呢?本文以jetty和undertow容器为例,来解析web容器是如何处理http报 ...

  10. Spring Boot(四) Mybatis-MySql

    Spring Boot(四) Mybatis-MySql 0.准备数据库表 -- ---------------------------- -- Table structure for person ...