5

上位机图像处理和嵌入式模块部署(视频处理vs图像处理)

 7 months ago
source link: https://blog.csdn.net/feixiaoxing/article/details/135925340
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        从目前发展的情况来看,视频处理会慢慢变成一种主流趋势。这里面的原因很多,比如说现在嵌入式soc的算力越来越强、获取图像的手段越来越方便、视频相比较图像信息更丰富等等的。不管怎么说,视频相比较图像而言,除了对soc的算力有一定要求之外,几乎没有什么缺点。就算是处理单张图片的信息,我们也可以从视频当中挑选质量最好的那一张来处理,这样对采集设备本身的要求也会降低很多。

0600d69998b54654bbce126af6f57b0a.png

1、视频图像信息更多

        视频,简单一点说,就可以看成是流动的图像。如果视频没有明显的卡顿,那么只需要1秒钟的帧率超过24即可。所以对于采集设备来说,完全可以从24帧的数据当中挑选质量最好的那一张来处理。因为光源、光源控制、镜头、曝光时间,这些因素都聚集到一起,有的时候需要连续拍摄才能获取到质量最好的那一张图片,某种意义上说和摄影是一样的。

2、更多的采集设备

        和之前相比较,现在的图像采集设备更多,比如说手机、pad、电脑、随身记录仪、工业摄像头设备、安防设备等等。这些设备都有一个共同的特点,那就是既支持图像的拍摄,也支持网络传输。所以,对于上层处理软件来说,基本上只要一根网线,或者有一个WiFi设备,就可以很顺利地把这些设备上的图像拿到,后续的处理基本上就和这些设备没啥关系了。

3、更强的芯片性能

        这里说的处理设备有两种,一种是pc,一种是soc本身。pc越来越强,core越来越多,频率也越来越高,这些都毋庸置疑的。而嵌入式soc越来越强,cpu的频率普遍达到了2G Hz,而且很多高端的soc都集成了isp、gpu、npu这些复杂的ip core,处理图像更加地得心应手。这使得之前只能在pc端实现的功能,现在同样可以放到嵌入式终端实现,一下子增加了很多的应用场景,扩展了原先产品的种类和类型。

4、更安全的处理算法

        之前图像处理的时候,由于只有一张图像,整个安全措施还是不太高的。比如大家取款的时候,需要进行人脸识别认证,如果仅仅是一张图片,那么作假的成本其实比较低,比如说拿出一张素描来代替人脸。但是如果是视频认证,就需要进行摇头、眨眼、前进、后退等动作,这样安全性会一下子高很多,这是之前单纯图像处理没有办法比拟的。所以,从安全性的角度来说,视频比图像处理也更加地合适。

5、视频在opencv上的处理

        对于opencv来说,不管是图像处理,还是视频处理,这方面的差距并不会很大。因为,对于它来说,图像的采集也是通过一个frame、一个frame去处理的,所以这里提供了一个最简单的opencv视频采集脚本,大家可以回头自己动手测试下,



newCodeMoreWhite.png

6、视频处理的挑战

        对于算法来说,视频处理和图像处理其实差别不大。不过视频中的信息,前后frame一般有一定的关联性,所以算法上还是存在优化空间的。但是对于单张图片而言,这里面就会存在一个问题,那就是单张图片处理的时间必须要尽可能地少,通常来说,必须要少于40ms,即保持画面连续播放的最低要求。或者换一种说法,单张图片的时间可以是40ms以上,但是pipeline结果输出的时间必须要小于40ms。因为一旦大于这个时间,很容易发生卡顿的现象,客户使用体验极差。记得之前在做车载设备时、也就是adas的dms系统的时候,如果单张图像处理时间过长,卡顿非常明显,一般来说,客户都是很难认可和接受的。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK