如何全速获取采集的帧?-每个事件后似乎都没有执行图像事件监听器 [英] How to getting acquired frames at full speed ? - Image Event Listener does not seem to be executing after every event

查看:57
本文介绍了如何全速获取采集的帧?-每个事件后似乎都没有执行图像事件监听器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的目标是在VIEW模式(实时采集)下从GIF相机中读取1个像素,并在每次数据更新时将其保存到文件中.相机表面上每0.0001秒更新一次,因为这是最短的采集时间,Digital Micrograph让我在VIEW模式下选择了该相机.

My goal is to read out 1 pixel from the GIF camera in VIEW mode (live acquisition) and save it to a file every time the data is updated. The camera is ostensibly updating every 0.0001 seconds, because this is the minimum acquisition time Digital Micrograph lets me select in VIEW mode for this camera.

我可以使用消息映射( messagemap ="data_changed:MyFunctiontoExecute" )将Image Event Listener附加到摄像机的实时图像,并且MyFunctiontoExecute成功运行,给我一个文件具有许多像素值.

I can attach an Image Event Listener to the live image of the camera, with the message map (messagemap = "data_changed:MyFunctiontoExecute"), and MyFunctiontoExecute is being successfully ran, giving me a file with numerous pixel values.

但是,如果我让此事件侦听器运行一秒钟,那么当我期望接近10,000(如果实时图像每0.0001秒更新一次)时,我只能获得接近100个像素值.

However, if I let this event listener run for a second, I only obtain close to 100 pixel values, when I was expecting closer 10,000 (if the live image is being updated every 0.0001 seconds).

这是因为实时图像的更新速度不是我想的那么快吗?

Is this because the Live image is not updated as quickly I think?

推荐答案

事件监听器肯定在每个事件上执行.

The event-listener certainly is executed at each event.

但是,高速相机的实时显示几乎肯定不会在每个获取的帧上更新.它将执行某种累积显示或采样显示.确切的答案将取决于您所使用的确切系统和所进行的配置.

However, the live-display of a high-speed camera will near-certainly not update at each acquired-frame. It will either perform some sort of cumulative or sampled display. The exact answer will depend on the exact system you are on and configurations that are made.

应注意,通常只能通过专用固件和优化的系统才能实现超高帧速率.通用软件方法"-尤其是解释和未编译的代码-不可能能够提供必要的速度.这种方法从一开始就注定了问题.

It should be noted that super-high frame-rates can usually only be achieved by dedicated firmware and optimized systems. It's unlikely that a "general software approach" - in particular of interpreted and non-compiled code - will be able to provide the necessary speed. This type of approach the problem might be doomed from the start.

(相反,可能必须创建一个缓冲区,然后将系统设置为以最高可能的帧速率直接将数据采集到缓冲区中.这将直接对摄像机的采集进行编码)

(Instead, one will likely have to create a buffer and then set-up the system to acquire data directly into the buffer at highest-possible frame rate. This will be coding the camera-acquisition directly)

这篇关于如何全速获取采集的帧?-每个事件后似乎都没有执行图像事件监听器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆