Projector Brightness(投影仪亮度)

介绍

投影仪亮度可以通过控制输出功率,从而控制投影仪发出的光子数量。使用投影仪的亮度是最大化信噪比( SNR )的最有效方法。 最大化投影仪的亮度将最大化相机的信号幅度,只要来自投影仪的反射光不会使像素过饱和,就可以最大程度地降低噪声的影响。在增加峰值信号幅度的同时,增加的亮度也会影响图像的平均强度。这也意味着投影仪亮度可用于控制曝光(以曝光等级来测量)。

../../../../_images/projector-brightness.png

投影仪

投影仪亮度数值基于控制投影仪发出的流明量的相对应的数值。下表显示了 Zivid 相机中可用的投影仪亮度与曝光等级的关系。将投影仪亮度调至 0 将关闭投影仪。

亮度

0.25

0.50

1.00

1.80

2.00

2.50

Stops

-2

-1

0

+0.85

+1

+1.32

Lumen

Zivid 2

90

180

360

650

不适用

不适用

Zivid 2+

90

180

360

650

720

900

例如,通过将投影仪亮度从0.50增加到1.00,图像的平均强度将增加1个等级。

Thermal throttling(热节流)

To prevent the projector from overheating, the camera automatically limits its duty cycle during capture. This means it may pause between acquisitions to cool down before continuing.

What affects thermal throttling?

The maximum duty cycle (how long the projector can stay active) is reduced based on its temperature. That temperature is influenced by:

  • Projector brightness

  • Ambient temperature

  • Projector duty cycle, which depends on:

    • The vision engine used (some use more patterns)

    • The number of acquisitions per capture

    • The exposure time of each acquisition

How does it appear to the user?

When thermal throttling occurs:

  • The camera pauses during capture to cool down.

  • In Zivid Studio, you will see the throttle time displayed.

  • In the SDK, you can check the frame metadata to see if throttling occurred.

For Zivid 2+ MR130, MR60, and LR110 cameras in 2D capture mode, thermal throttling:

  • Only activates in very high ambient temperatures

  • Is not affected by projector brightness

How to check if thermal throttling occurred after a capture:

  1. In Zivid Studio, check the information panel (ViewInformation).

  2. In the SDK, inspect the frame metadata for thermal throttling time.

Go to source

source

std::cout << "Thermal throttling time:" << std::endl;
std::cout << std::chrono::duration_cast<std::chrono::milliseconds>(frameInfo.metrics().throttlingTime().value())
                 .count()
          << " ms" << std::endl;
Go to source

source

Console.WriteLine("Thermal throttling time:");
Console.WriteLine(frameInfo.Metrics.ThrottlingTime.Milliseconds + " ms");
Go to source

source

print("Thermal throttling time:")
print(f"{frame_info.metrics.throttling_time.total_seconds() * 1000:.0f} ms")

Zivid 2+ (M60/M130/L110) 投影仪最大亮度限制

默认情况下,Zivid 2+ M60/M130/L110 相机的最大投影仪亮度取决于投影仪所用光线的颜色。对于 3D 捕获,光信号的颜色由 Sampling::Pixel 设置决定。对于 2D 捕获,投影颜色始终为白色。

使用以下 Zivid::Settings::Sampling::Pixel 选项, blueSubsample2x2redSubsample2x2blueSubsample4x4redSubsample4x4

投影仪最大亮度为2.5。

使用 Zivid::Settings::Sampling::Pixel::all 或在 2D 捕获中

最大投影仪亮度上限为 2.2,以将相机运行期间的功耗保持在 100 W 以下。

如果您的应用允许超过 100 W 的功耗,您可以通过配置文件更改此限制,以允许投影仪亮度可设置为 2.5,它将在 Zivid::Settings::Sampling::Pixel::all 时或 2D 捕获中生效。

如何提高 Zivid 2+ M60/M130/L110 的最大投影仪亮度限制

您可以通过更新 Config.yml 文件来增加投影仪亮度限制。如果该文件已存在且位于 %LOCALAPPDATA%\Zivid\API (Windows)或 "${XDG_CONFIG_HOME-$HOME/.config}"/Zivid/API (Ubuntu)中,请使用以下信息进行更新:

__version__:
    serializer: 1
    data: 18
Configuration:
    Camera:
        Power:
            Limit: unlimited

备注

确保 __version__ 部分中的数据编号为18或更高。

如果文件不存在:

  1. 下载 Config.yml 文件。

  2. 将下载的配置文件放在以下目录中。

    mkdir %LOCALAPPDATA%\Zivid\API
    move %HOMEPATH%\Downloads\Config.yml %LOCALAPPDATA%\Zivid\API\
    
    mkdir --parents "${XDG_CONFIG_HOME-$HOME/.config}"/Zivid/API
    mv ~/Downloads/Config.yml "${XDG_CONFIG_HOME-$HOME/.config}"/Zivid/API/
    

    小心

    任何现有的配置文件都将被覆盖。

小心

Zivid 配置文件必须使用 .yml 文件扩展名(而不是 .yaml )。

版本历史

SDK

变更

2.17

Added support for getting throttling time after capture.

2.10.1

使用白光捕获时,Zivid 2+ 的最大投影仪亮度默认受到限制,可以选择使用 Config.yml 更改该限制。

2.10.0

添加了 Zivid 2+ 系列。

2.9.0

改进了热节流功能,可以在预测时间范围内的采集之间进行热节流,而不是暂停完整的捕获。