Exposure Time(曝光时间)
介绍
曝光时间,也称为快门速度,是指单张相机图像曝光的时间。换句话说,就是快门保持打开的时间。
Zivid相机拍摄多张图像来生成彩色图像和点云,曝光时间的设定值是单张图像的曝光时间。
Zivid 2 |
Zivid 2+ |
Zivid 2+ R |
Zivid 3 |
|
最短曝光时间 (µs) |
1 677 |
1 677 |
900 |
600 |
最长曝光时间 (µs) |
100 000 |
100 000 |
20 000 |
20 000 |
小技巧
查看 捕获速度计算器 以了解曝光时间如何影响总捕获时间。
强环境光源的干扰
使用 Zivid 相机拍摄图像时,我们会在特定时间窗口内采样光信息。通过利用这个简单的概念,可以避免环境光可能引起的许多问题。
结构光传感器是一种采样系统,其工作采样率与电视和照明等许多公用设施相似。荧光灯通常连接到交流电源。在欧盟,这种电源产生的电压为正弦波,频率为 50 Hz。在其他国家/地区(例如美国),电网频率为 60 Hz。
假设有一台帧率为 30 fps 的相机。在欧洲,将它对准荧光灯并按下录制按钮。您会发现视频中似乎有闪烁。您在车库或仓库内使用智能手机拍摄时也可能遇到过这种现象。
现在考虑一台相机,其捕获率与环境光源的频率相匹配。最终,您会在每幅图像中以相同的相位对光进行采样,这种情况下闪烁似乎消失了。这会使光看起来是稳定的。
以上所解释的概念称为相关采样,在结构光 3D 扫描仪中具有良好的效果。通过选择满足以下方程的曝光时间,它可以滤除来自环境光源的随时间变化的噪声:
其中 \(n\) 是正整数, \(f_s\) 是光源的频率。
在存在强烈闪烁的环境光源的情况下,请使用电网周期倍数的采样率(曝光时间):
在 50 Hz 电网频率下为 10 000 µs 的倍数。
在 60 Hz 电网频率下为 8 333 µs 的倍数。
采用直流电源的光源,例如聚光灯,或者≥1kHz的LED,不会产生随时间变化的噪声。
干扰对彩色图像的影响
测量环境光闪烁频率
Zivid 相机可以检测场景中的闪烁并区分 50 Hz 和 60 Hz 电网的干扰。
打开 Zivid Studio 并连接到您的相机。点击 Capture 部分中的三个点。然后点击 Measure scene lighting conditions 。软件将显示检测到的环境光闪烁频率。
或者,使用 SDK 测量环境光条件。此方法将报告是否检测到明显的环境光闪烁,以及它对应的电网频率是 50 Hz 还是 60 Hz。
std::cout << "Measuring scene conditions" << std::endl;
auto sceneConditions = camera.measureSceneConditions();
auto flickerClassification = sceneConditions.ambientLight().flickerClassification().toString();
std::cout << "Flicker classification: " << flickerClassification << std::endl;
auto flickerFrequency = sceneConditions.ambientLight().flickerFrequency();
std::cout << "Measured flickering frequency in the scene: " << flickerFrequency << " Hz." << std::endl;
Console.WriteLine("Measuring scene conditions");
var sceneConditions = camera.MeasureSceneConditions();
var flickerClassification = sceneConditions.AmbientLight.FlickerClassification.ToString();
Console.WriteLine("Flicker classification: " + flickerClassification);
var flickerFrequency = sceneConditions.AmbientLight.FlickerFrequency;
Console.WriteLine($"Measured flickering frequency in the scene: {flickerFrequency} Hz.");
print("Measuring scene conditions")
scene_conditions = camera.measure_scene_conditions()
flicker_classification = scene_conditions.ambient_light.flicker_classification
print(f"Flicker classification: {flicker_classification}")
flicker_frequency = scene_conditions.ambient_light.flicker_frequency
print(f"The measured flickering frequency in the scene: {flicker_frequency} Hz.")
50 Hz 环境光适应
下表列出了在使用 50 Hz 电网频率的国家/地区建议使用的一些曝光时间。请注意,您还可以使用 10 000 µs 的其他倍数,例如 30 000 µs 和 50 000 µs。
曝光时间(µs) |
10 000 |
20 000 |
40 000 |
80 000 |
100 000 |
Stops |
0 |
+1 |
+2 |
+3 |
+3.32 |
60 Hz 环境光适应
The table below shows some of the recommended exposure times to use in countries that use 60 Hz power line frequencies. Be aware that you can also use other multiples of 8 333 µs, such as 24 999 µs and 41 665 µs.
曝光时间(µs) |
8 333 |
16 667 |
33 333 |
66 667 |
83 333 |
Stops |
0 |
+1 |
+2 |
+3 |
+3.32 |
If adjusting exposure times to match the grid frequency leads to issues such as image overexposure, consider instead synchronizing the 2D sampling interval with your region's grid frequency (Zivid 3 only).
版本历史
SDK |
变更 |
|---|---|
2.16.0 |
增加了对测量环境光闪烁频率的支持。 |
2.14.0 |
增加了对 Zivid 2+ MR130、LR110 和 MR60 的支持,最短曝光时间为 900 µs。 |