高速测量中的实时数据处理

对于速度要求比较高的时候,需要先保证数据采集的完整性。一般都是使用高速相机先采集数据,再进行后处理。本文记录的是没有那么高的拍摄频率,比如100帧每秒的采集速度下,数据的实时处理,如何保证数据的完整性和结果显示的非延迟性。

1、时间量化

首先需要统计各个流程的耗时时间,将数据处理的各个阶段的时间量化。一般高速相机采集都使用外部信号触发。所以数据处理的步骤一般从图像回图开始。包括保存图像(内存或者硬盘),图像处理,保存图像处理结果(像点坐标),多个相机的像点坐标时间戳对齐,对齐后进行交会得到三维点,使用三维点进行指定分析,分析结果的展示等。每一个步骤都需要进行时间量化。依次分析耗时的操作,以便进行优化。

2、数据分离

高速数据处理,一般使用队列。比如相机回调函数中,获取到图像后,直接push到图像队列A中。有一个线程A来监测队列A中的图像数据,poll出来进行图像处理,得到像点坐标,然后push到队列B中。另一个线程B来监测队列B中的像点坐标,然后将多个相机的像点坐标根据时间戳来对齐。再把对齐后的数据push到队列C中。线程C来监测队列C中的数据,然后直接交会三维点,进行定制分析,push到队列D中。线程D监测队列D中的数据,poll出来后,进行结果显示。

3、降频

整个处理流程中,不是所有步骤都需要按照最大速度来处理的,比如说图像采集,必须保证速度,图像处理,像点坐标提取等需要保持每帧处理。但是结果显示,就不需要。可以根据重要性,对各个步骤进行有区别的降频(抽帧)处理,在保证数据完整性的前提下,最大化的提高效率。

4、总结

其实1和2是息息相关的,2怎么进行数据分离,就需要1里面的量化的时间。如果处理流程不影响实时性,可以合并到一起处理,如果影响了。则需要分离开,这样可以避免耗时的操作影响不耗时的操作。最大化处理速度。

相关推荐
线束线缆组件品替网21 小时前
Finisar AOC/DAC 在高速网络互连中的应用解析
网络·数码相机·测试工具·电脑·pcb工艺·游戏机
陈陈爱java1 天前
Blender使用守则
数码相机·blender
_李小白1 天前
【Android 美颜相机】第十六天:GPUImageTwoInputFilter 解析
android·数码相机
wh_xia_jun1 天前
AI 自助拍照亭(AI Photo Booth)项目整体架构与实现思路总结
数码相机·架构
_李小白1 天前
【Android 美颜相机】第十七天:GPUImageAddBlendFilter 解析
android·数码相机
XuanTao772 天前
【安卓工具实测】影视仓更新!!追剧党狂喜!影视仓无广告版太香了!
深度学习·数码相机·智能手机·软件工程·软件构建
yongui478342 天前
实现线结构光技术的摄像机标定、光平面标定与三维重建
数码相机·平面
陈天伟教授3 天前
人工智能应用-机器视觉:AI 鉴伪 08.虚假图片鉴别
人工智能·神经网络·数码相机·生成对抗网络·dnn
陈天伟教授3 天前
人工智能应用-机器视觉:AI 鉴伪 07.虚假图片鉴别
人工智能·神经网络·数码相机·生成对抗网络·dnn