USB摄像头在TQ2440或TINY6410上帧速慢的真正原因

2023-11-29 00:58

本文主要是介绍USB摄像头在TQ2440或TINY6410上帧速慢的真正原因,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

USB摄像头在TQ2440或TINY6410上帧速慢的真正原因


移植过mjpg-streamer或者ffmpeg到板子上的人都会发现,采样只有大概2fps,总想方法提升速度,修改默认配置,命令行,使用硬件编码,实际都不能明显的提高速度,原因是,这两个板子采用的是USB1.1,导致USB摄像头采集的图像无法快速的存入内存中。


USB摄像头一般输出是YUYV422,打包格式为YUYVYUYV...……,那么,假如有一幅320*240的图片,用yuv422来表示,采样方式就是每个像素采样Y信号,U,V信号隔一个采样,这样算下来,就有320*240个Y,320*120个U,320*120个V,一幅320*240大小的YUV图片占的总字节数为320*240*2个字节,每像素2个字节,也就是16位。


在内存种这样排列:Y0U0Y1V0 Y2U1Y3V1...

第一个像素的YUV值为:Y0 U0 V0

第二个像素的YUV值为: Y1 U0 V0

第三个像素的YUV值为: Y2 U1 V1


usb1.1的最高速度是12Mb/s,传输USB摄像头的一张320*240图片,需要传输320*240*2*8b,每秒只能传9.7张,也就是不算上处理器编解码等处理时间,最快也只能达到9fps,实际应用加上编码和传输,速度就更慢了。


我通过编写了一个USB图像采集程序,在PC上能达到25fps(使用USB2.0),但在TQ2440上只能达到2fps.证实了猜想。






这篇关于USB摄像头在TQ2440或TINY6410上帧速慢的真正原因的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/430865

相关文章

javax.net.ssl.SSLHandshakeException:异常原因及解决方案

《javax.net.ssl.SSLHandshakeException:异常原因及解决方案》javax.net.ssl.SSLHandshakeException是一个SSL握手异常,通常在建立SS... 目录报错原因在程序中绕过服务器的安全验证注意点最后多说一句报错原因一般出现这种问题是因为目标服务器

MyBatis Plus 中 update_time 字段自动填充失效的原因分析及解决方案(最新整理)

《MyBatisPlus中update_time字段自动填充失效的原因分析及解决方案(最新整理)》在使用MyBatisPlus时,通常我们会在数据库表中设置create_time和update... 目录前言一、问题现象二、原因分析三、总结:常见原因与解决方法对照表四、推荐写法前言在使用 MyBATis

java对接海康摄像头的完整步骤记录

《java对接海康摄像头的完整步骤记录》在Java中调用海康威视摄像头通常需要使用海康威视提供的SDK,下面这篇文章主要给大家介绍了关于java对接海康摄像头的完整步骤,文中通过代码介绍的非常详细,需... 目录一、开发环境准备二、实现Java调用设备接口(一)加载动态链接库(二)结构体、接口重定义1.类型

IDEA中Maven Dependencies出现红色波浪线的原因及解决方法

《IDEA中MavenDependencies出现红色波浪线的原因及解决方法》在使用IntelliJIDEA开发Java项目时,尤其是基于Maven的项目,您可能会遇到MavenDependenci... 目录一、问题概述二、解决步骤2.1 检查 Maven 配置2.2 更新 Maven 项目2.3 清理本

Java空指针异常NullPointerException的原因与解决方案

《Java空指针异常NullPointerException的原因与解决方案》在Java开发中,NullPointerException(空指针异常)是最常见的运行时异常之一,通常发生在程序尝试访问或... 目录一、空指针异常产生的原因1. 变量未初始化2. 对象引用被显式置为null3. 方法返回null

C/C++和OpenCV实现调用摄像头

《C/C++和OpenCV实现调用摄像头》本文主要介绍了C/C++和OpenCV实现调用摄像头,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录准备工作1. 打开摄像头2. 读取视频帧3. 显示视频帧4. 释放资源5. 获取和设置摄像头属性

IDEA下"File is read-only"可能原因分析及"找不到或无法加载主类"的问题

《IDEA下Fileisread-only可能原因分析及找不到或无法加载主类的问题》:本文主要介绍IDEA下Fileisread-only可能原因分析及找不到或无法加载主类的问题,具有很好的参... 目录1.File is read-only”可能原因2.“找不到或无法加载主类”问题的解决总结1.File

使用@Cacheable注解Redis时Redis宕机或其他原因连不上继续调用原方法的解决方案

《使用@Cacheable注解Redis时Redis宕机或其他原因连不上继续调用原方法的解决方案》在SpringBoot应用中,我们经常使用​​@Cacheable​​注解来缓存数据,以提高应用的性能... 目录@Cacheable注解Redis时,Redis宕机或其他原因连不上,继续调用原方法的解决方案1

usb接口驱动异常问题常用解决方案

《usb接口驱动异常问题常用解决方案》当遇到USB接口驱动异常时,可以通过多种方法来解决,其中主要就包括重装USB控制器、禁用USB选择性暂停设置、更新或安装新的主板驱动等... usb接口驱动异常怎么办,USB接口驱动异常是常见问题,通常由驱动损坏、系统更新冲突、硬件故障或电源管理设置导致。以下是常用解决

Java程序进程起来了但是不打印日志的原因分析

《Java程序进程起来了但是不打印日志的原因分析》:本文主要介绍Java程序进程起来了但是不打印日志的原因分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java程序进程起来了但是不打印日志的原因1、日志配置问题2、日志文件权限问题3、日志文件路径问题4、程序