LEADTOOLSを適用する
Kinectの距離データが画面に表示できたら、サンプルを拡張してみましょう。
拡張方法はいろいろありますが、WPFらしくImageコントロールにBindingしているDepthImageElementをコンバーターで変換するところにLEADTOOLSを適用します。
そのためには、まずLeadConveterクラスをプロジェクトに追加します。
次に、このクラスの中にLEADTOOLSを使うコードを記述しますが、その前に参照設定を追加します。
参照設定の追加
LEADTOOLSにどのようなフィルタがあってどのような効果があるかは、ヘルプの「LeadTools.ImageProcessing.Color名前空間」の項目を参照してください。代表的なフィルタには、次のようなものがあります。
クラス | 解説 |
---|---|
AddCommand | リスト内の画像を加算合成または平均化します。 |
AddWeightedCommand | リスト内の画像を、重み係数に従って加算合成または平均化します。 |
AutoColorLevelCommand |
画像に対して自動カラーレベル調整を適用します。 この関数は、バーコード認識の結果を向上させるために画像を前処理する場合に役立ちます。 |
ChangeContrastCommand | 画像のコントラストを増減します。 |
ChangeHueCommand | カラーホイールを回転して、画像に含まれる色の色相を変更します。 |
HistogramEqualizeCommand |
指定したカラースペースに基づいて、画像のピクセル数を線形化します。 これは、画像の暗い部分の細部を明瞭にする場合に使用します。 この関数は、バーコード認識の結果を向上させるために画像を前処理する場合に役立ちます。 |
IntensityDetectCommand | 特定の画像にフィルタを適用し、特定のカラーチャネルにある特定の輝度範囲の色を検出することによって、画像を二分化します。 |
InvertCommand | 指定した画像の色調を反転し、写真のネガのような効果を生み出します。 |
SolarizeCommand |
画像にソラリゼーション効果(写真のフィルムを誤って光に露出してしまったような効果)を加えます。 この効果は、指定したしきい値以上の明度を持つすべてのカラーデータを反転することによって作成されます。 |
StretchIntensityCommand | 明度値の範囲を中央に設定して最大化し、比例配分することによって、画像のコントラストを向上させます。 |
SwapColorsCommand | 指定したカラーチャネルを入れ替えます。 |
TemperatureCommand | 画像が冷たい、または暖かい印象になるように、画像の見た目を変更します。 |
今回のサンプルでは画像の暗い部分、つまり、より距離が近い部分について細部を明瞭にしたいのでHistogramEqualizeCommandを使います。
HistogramEqualizeCommandを使うには、LEADTOOLSコンポーネントへの参照設定が必要です。