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

对于速度要求比较高的时候,需要先保证数据采集的完整性。一般都是使用高速相机先采集数据,再进行后处理。本文记录的是没有那么高的拍摄频率,比如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里面的量化的时间。如果处理流程不影响实时性,可以合并到一起处理,如果影响了。则需要分离开,这样可以避免耗时的操作影响不耗时的操作。最大化处理速度。

相关推荐
胖咕噜的稞达鸭15 天前
如何写好一个skill
人工智能·数码相机
Hello-FPGA15 天前
CameraLink相机模拟器 信号源加速激光雷达系统算法开发
数码相机
双翌视觉15 天前
机器视觉系统为何离不开光学滤光片?
人工智能·数码相机·视觉检测·制造
3DVisionary15 天前
XTDIC-VG视频引伸计技术原理解析:金属疲劳测试的“非接触革命“
python·数码相机·音视频·非接触测量·xtdic-vg·视频引伸计·金属疲劳测试
_李小白15 天前
【智能驾驶:视觉感知后处理 阅读笔记】Day4: 相机成像模型与畸变
笔记·数码相机
Hello-FPGA16 天前
基于VU13P VU系列FPGA的高性能CoaXpress 图像采集系统
数码相机
ctrl_v助手16 天前
VisionPro (R) QuickBuild相机的连接
服务器·笔记·数码相机·c#
工头阿乐16 天前
相机坐标系标定与外参矩阵求解
数码相机·线性代数·矩阵
问道财经16 天前
Pocket 4爆火,索尼富士慌了
数码相机
Hello-FPGA16 天前
CoaXPress 相机触发设置
数码相机