プロジェクターの明るさ
はじめに
プロジェクターの明るさは出力電力を制御し、プロジェクターから放出される光量を調節します。プロジェクターの明るさを使用することは、信号対雑音比( SNR )を最大化する最も効率的な方法です。プロジェクターの明るさを最大化すると、カメラが受信する信号の振幅が最大になります。プロジェクターからの反射光がピクセルを過飽和させない限り、ノイズの影響を最小限に抑えることができます。ピーク信号振幅の向上と同時に、明るさの増加は画像の平均強度にも影響を与えます。つまり、プロジェクターの明るさを使用して、ストップ単位で測定される露出を制御できるということです。
プロジェクター
プロジェクターの明るさ調整は、プロジェクターから放出される光束(ルーメン)の量を制御する相対値に基づいています。下の表は、 Zivid カメラで使用可能なプロジェクターの明るさが、ストップ値とどのように対応しているかを示しています。プロジェクターの明るさを0に設定すると、プロジェクターの電源が切れます。
輝度 |
0.25 |
0.50 |
1.00 |
1.80 |
2.00 |
2.50 |
3.00 |
ストップ |
-2 |
-1 |
0 |
+0.85 |
+1 |
+1.32 |
+1.58 |
明るさとストップの関係は \(\text{Stops} = \log_2(\text{Brightness})\) で表されます。例えば、プロジェクターの明るさを0.50から1.00に上げると、画像の平均輝度は1ストップ増加します。
熱スロットリング
プロジェクターの過熱を防ぐため、カメラはキャプチャ中に自動的に動作時間を制限します。そのため、取得の合間に冷却のために一時停止し、その後再開する場合があります。
熱スロットリングに影響を与える要因は何ですか?
プロジェクターの最大デューティサイクル(プロジェクターが動作し続けることができる時間)は、温度によって低下します。その温度は、以下の要因によって影響を受けます。
プロジェクターの明るさ
周囲温度
プロジェクターのデューティサイクル(以下の要素に依存):
使用されている Vision Engine (パターン数が多いものもある)
キャプチャあたりの取得数
各取得の露出時間
ユーザーからはどのように見えますか?
熱スロットリングが発生した場合:
カメラはキャプチャ中に冷却のため一時停止します。
Zivid Studio では、スロットル時間が表示されます。
SDK では、フレームメタデータを確認することで、スロットリングが発生したかどうかを確認できます。
Zivid 2+ MR130、MR60、および LR110 カメラの2Dキャプチャモードにおける熱スロットリング:
非常に高い周囲温度でのみ作動します
プロジェクターの明るさの影響を受けません
キャプチャ後に熱スロットリングが発生したかどうかを確認する方法:
Zivid Studio で、情報パネル(View → Information)を確認してください。
SDK では、フレームメタデータを調べて、熱スロットリング時間を確認します。
std::cout << "Thermal throttling time:" << std::endl;
std::cout << std::chrono::duration_cast<std::chrono::milliseconds>(frameInfo.metrics().throttlingTime().value())
.count()
<< " ms" << std::endl;
Zivid 2+ (M60/M130/L110) プロジェクターの最大輝度制限
デフォルトでは、Zivid 2+ M60/M130/L110 カメラのプロジェクターの最大輝度は、プロジェクターが使用する光の色によって決まります。3D キャプチャの場合、光の色は Sampling::Pixel 設定によって決まります。2D キャプチャの場合、色は常に白です。
- With the following
Settings::Sampling::Pixeloptions,blueSubsample2x2,redSubsample2x2,blueSubsample4x4,redSubsample4x4 プロジェクターの最大輝度は2.5です。
Zivid::Settings::Sampling::Pixel::allまたは 2D キャプチャの場合カメラの動作中の消費電力を100W未満に抑えるため、プロジェクターの最大輝度は2.2に制限されています。
アプリケーションが100Wを超える消費電力を許容する場合、 Zivid::Settings::Sampling::Pixel::all を使用している場合や2Dキャプチャの場合でも、設定ファイルを使用してプロジェクターの明るさを2.5に増やすことができます。
Zivid 2+ M60/M130/L110 プロジェクターの最大輝度制限を上げる方法
プロジェクターの明るさの上限を上げるには Config.yml ファイルを更新します。ファイルが既に存在し、Windows の場合は %LOCALAPPDATA%\Zivid\API 、Ubuntu の場合は "${XDG_CONFIG_HOME-$HOME/.config}"/Zivid/API にある場合は、次の情報で更新してください。
__version__: serializer: 1 data: 18 Configuration: Camera: Power: Limit: unlimited注釈
__version__セクションのデータ番号が18以上であることを確認してください。
ファイルが存在しない場合:
Config.ymlファイルをダウンロードしてください。ダウンロードした Config ファイルを以下のディレクトリに配置してください。
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/
注意
既存の Config ファイルは上書きされます。
注意
Zivid の設定ファイルは .yml ファイル拡張子を使用する必要があります( .yaml ではありません)。
バージョン履歴
SDK |
変更点 |
|---|---|
2.17 |
キャプチャ後にスロットリング時間を取得する機能を追加しました。 |
2.10.1 |
Zivid 2+ の最大プロジェクター輝度は、白色光でキャプチャする場合、デフォルトでは制限されていますが、Config.yml を使用して制限値を上げることができます。 |
2.10.0 |
Zivid 2+ シリーズが追加されました。 |
2.9.0 |
サーマルスロットリング機能が改善され、完全なキャプチャを一時停止するのではなく、予測された時間範囲で取得間のスロットリングを行うようになりました。 |