Reflection Filter

API:C++C#Python

The Reflection filter removes points that Zivid deems as impacted by reflection and thus erroneous. These are typically seen in the point cloud as "ghost planes" - small regions of points floating mid-air that shouldn't be there.

Zivid は、プロジェクターから送信される信号がどのようなものであるべきかを知っています。このため、カメラによって読み取られたデータが意味があるかどうかを評価することが可能です。したがって、Reflection Filter は、次のいずれかの結果として改ざんされたとみなされるピクセルを破棄しようとします。

  • 相互反射

  • シーン内の過剰な動き

  • 交互に現れるエイリアン光源

    • たとえば、同じシーンに同時に投影する 2 台目の Zivid 3D カメラです。

次の値を使用する必要があります。

値

条件

Enabled::no

シーンに反射がないことがわかっていて、取得時間を最適化したい場合。

Enabled::yes

反射しているパーツや反射ビン内にあるパーツの検出に問題がある場合は、オンにします。

Reflection Filter の無効化と有効化

Reflection Filter には、グローバル(デフォルト)とローカルの 2 つのモードがあります。これらのモードは、使用する Vision Engine によって、それぞれ異なる利点と欠点があります。

Omni

モード

長所

Mode::global

  • 低い露出でより高いダイナミックレンジを実現

Mode::local

以下の画像は、グローバルモードの主な利点である高いダイナミックレンジを強調しています。このシーンにおける光沢のある黒い物体の描写を見ればそれがよくわかります。

Reflection Filter - グローバルモード Reflection Filter - グローバルモード
Reflection Filter - ローカルモード Reflection Filter - ローカルモード

ローカルモードではダイナミックレンジが狭くなりますが、比較画像で示されているように、露光時間を長くすることでこれを補うことができます。

Reflection Filter - グローバルモード Reflection Filter - グローバルモード
Reflection Filter - ローカルモード(露出増加) Reflection Filter - ローカルモード(露出増加)

以下の画像は、ローカルモードの利点を示しています。

Reflection Filter - グローバルモード Reflection Filter - グローバルモード
Reflection Filter - ローカルモード Reflection Filter - ローカルモード
Reflection Filter - グローバルモード Reflection Filter - グローバルモード
Reflection Filter - ローカルモード Reflection Filter - ローカルモード
Reflection Filter - グローバルモード Reflection Filter - グローバルモード
Reflection Filter - ローカルモード Reflection Filter - ローカルモード
Reflection Filter - グローバルモード Reflection Filter - グローバルモード
Reflection Filter - ローカルモード Reflection Filter - ローカルモード
Phase / Stripe

モード

長所

Mode::global

  • 物体の側面とエッジの保持

  • 点群内の外れ値点の除去

Mode::local

以下の画像は、グローバルモードの主な利点を強調しています。具体的には、物体の側面やエッジに関するデータの精度向上、および外れ値の減少です。

Reflection Filter - グローバルモード Reflection Filter - グローバルモード
Reflection Filter - ローカルモード Reflection Filter - ローカルモード
Reflection Filter - グローバルモード Reflection Filter - グローバルモード
Reflection Filter - ローカルモード Reflection Filter - ローカルモード

ローカルモードで除去できない浮動点(外れ値)は、通常 Cluster Filter によって除去されます。

以下の画像は、ローカルモードの利点を示しています。細くて尖った物体上のデータを保持できる点です。

Reflection Filter - グローバルモード Reflection Filter - グローバルモード
Reflection Filter - ローカルモード Reflection Filter - ローカルモード
Reflection Filter - グローバルモード Reflection Filter - グローバルモード
Reflection Filter - ローカルモード Reflection Filter - ローカルモード

Reflection Filter(グローバルモード)では、3D キャプチャごとに次の処理時間が追加されます。

Omni

Omni エンジンを使用しても、追加の処理時間は発生しません。

Phase / Stripe

バージョン履歴

SDK

変更点

2.16.0

Reflection Filter モード「ローカル」が、 Omni エンジンで使用できるようになりました。

2.12.0

Stripe Engine が実験段階から削除されました。Reflection Filter モード「 Local 」の速度が最大 15% 向上しました。

2.11.0

Reflection Filter モード「ローカル」が、 Stripe エンジンで使用できるようになりました。

2.7.0

Reflection Filter に「 Local 」と呼ばれる新しいモードが追加されました。旧モードの名前が「 Global 」に変更されました。

1.4.0

Reflection Filter が改良され、良い点が除去される頻度が減りました。