USB3.0传输数据、解析处理和帧率计算
一、背景
从获取数据到上位机的处理过程如下:
1.图像采集卡中接收数据,
2.接收数据后对数据进行解析
3.解析后的有效数据进行算法处理
4.算法处理后数据进行显示
5.有效数据进行无损压缩保存在本地磁盘。
其中,1和2在线程1中执行,3,4,5在线程2执行,采用双缓冲模式进行读写,线程1将有效数据写入后,通知线程2去读,线程2读完后将当前缓冲设置为可写,线程2正在读期间,则写入线程1进行等待,同样线程1在写入期间,读取线程2则进行等待。
二、测试验证双缓冲模式达到的帧率
1>测试接收一帧数据所需要的时间;
2>测试解析一帧数据所需时间;
3>测试算法处理所需时间;
4>测试压缩保存的时间;
三、测试分析:
测试发现,在机械硬盘上保存所花费的时间较长,比较严重影响帧率。另外换做SSD ,发现运行一段时间后,也存在保存所花费时间长的问题。所以,需要将压缩保存操作放置于另外的线程执行,同时确保生产和消费线程相互匹配。因为文件保存较大,需要采用映射文件来写入。
USB3.0传输数据、解析处理和帧率计算相关推荐
- 处理USB3.0工业相机帧率偏低的问题
处理USB3.0工业相机帧率偏问题 USB3.0相机(简称U3口)相对Gige网口相机,有着传输速度快,无需单独供电的优势,如果是采用软触发的形式控制拍照,那么只需连接一根USB3.0的通讯线即可,因 ...
- 保护计算机组件免受esd,USB3.0接口的ESD防护设计
在今年计算机硬件的热门话题中,USB3.0绝对是最受瞩目的.自从2000年USB2.0出来后,这项应用已深植各项电子产品中,在各式各样的接口规格中, USB应可算是使用最广泛的了.USB3.0的数据传 ...
- 1009 type C 与DP检测,USB3.0与PD协议
https://www.anandtech.com/show/8558/displayport-alternate-mode-for-usb-typec-announced https://blog. ...
- USB3.0之高速视频传输测试 双目相机(mt9p031、mt9m001)带宽高达300M测试 配合isensor测试 500万像素15fps...
USB3.0之高速视频传输测试 双目相机(mt9p031.mt9m001)带宽高达300M测试 配合isensor测试 500万像素15fps 最近完善了下USB3.0的视频开发测试,主要优化了FPG ...
- 通用数据接口USB3.0,雷电3,TypeC之间
计算机的核心是数据处理,或者说任何电子产品的核心都是建立在此基础上的.所有的运算器最终都会回到最底层硬件的加减乘除. 所以在不同设备之间,就需要数据的传输,然后再使用不同的设备处理这些数据.电脑和手机 ...
- USB总线-Linux内核USB3.0设备控制器之dwc3 gadget驱动初始化过程分析(五)
1.概述 USB设备控制器(UDC)驱动的框图如下图所示,由三部分组成.第一部分是UDC驱动核心层,在drivers/usb/gadget/udc/core.c文件中实现,该层是一个兼容层,将USB ...
- 北斗通讯协议4.0 java_北斗4.0协议解析.doc
北斗4.0协议解析 北斗用户机用户接口协议 (4.0版本外用) 接口数据传输约定 串口非同步传送,参数定义如下: 传输速率:19200bit/s(默认),可根据用户机具体情况设置其它速率: 1 bit ...
- USB总线-Linux内核USB3.0设备控制器中断处理程序分析(九)
1.概述 USB设备枚举.请求处理.数据交互都涉及USB设备控制器中断.当有事件发生时,USB设备控制器首先将事件信息通过DMA写入到事件缓冲区中,然后向CPU发出中断,随后CPU调用中断处理函数开始 ...
- linux 网口对应网卡_电脑实用小工具:仓华网卡转换器+USB3.0分线器体验
自从换了笔记本以来啊,偶尔总是会出现USB接口不够的问题,虽然还是可以通过一个接口用来传输数据,但是如果是两个存储设备相互倒数据的话就只能先倒到电脑上再传到另外一个存储设备上,于是产生了购买分线器的想 ...
最新文章
- 5G 承载网 — 三大运营商承载网技术的演进方向
- eclipse文本框输出mysql全部数据_小巧轻便的数据库管理软件HeidiSQL
- Android---Service(生命周期、启动方式、服务通信、实战演练、思维导图、高级音乐播放器-源码)
- C语言实现双向链表Doubly Linked List(附完整源码)
- [vue] 你有看过vue推荐的风格指南吗?列举出你知道的几条
- Spark MLlib
- Mr.J--蓝桥杯--去注释
- phpStudy配置站点 解决You don't have permission to access / on this server
- iOS开发初探篇——UITabBarController
- 微信H5页面嵌入百度地图---解决手机的webKit定位,ios系统对非https网站不提供支持问题
- python文件拷贝到其他盘符_Python:文件操作技巧(File operation)
- SQL:pgsql中查询某字段不等于的数据
- npm安装vue-cli时速度慢,fetchMetadata经常卡住并报异常
- Linux 磁盘分区及LVM实战演练
- uni-app项目的启动
- 关于Kaggle入门Titanic的一次简单尝试Part 2 -- Dive into ML
- 聚类生成anchor框的尺寸和比例
- Unity热更新机制
- 机器学习(四)——Adaboost算法
- 【层级多标签文本分类】HFT-CNN: Learning Hierarchical Category Structure for Multi-label Short Text Categorizati
热门文章
- oracle select ora-16000,ORA-00604, ORA-16000: 打开数据库以进行只读访问
- 同济大学计算机系拿奖学分绩点,同济大学绩点换算(同济大学绩点多少算高)
- Ubuntu下如何获取usb相机的PID/VID并打开指定的相机
- bilibili封面
- 教你三分钟用docker compose搭建一个自己的个人博客网站
- 【分享】“飞书自建“在集简云平台集成应用的常见问题与解决方案
- 视频教程-Prometheus+Grafana企业级监控实战(运维篇)2020年视频教程-Linux
- 河北工程大学计算机科学与技术分数线,2019年河北工程大学优势专业排名及分数线...
- 青少年CTF--misc部分题解
- unity SteamVR利用手柄合理移动