2016-06-22 11 views
0

自分のプログラムで使用するためにオンラインで見つけたLabviewコードを修正しました。それは動作します、私はそれのほぼすべてを理解していますが、私を混乱させるセクションがあります。このプログラムは、2枚の画像を取り、それらを減算し、画像プラス百分率差を返し誰かがこのLabviewコードを説明することができます

Compare Pictures

:これはプログラムです。私が理解しているのは、画像を取り込み、それらを減算し、減算した画像を有色画素の配列に変換し、次に数学が発生し、画素が閾値と比較されることです。スレッショルドより大きいすべてのピクセルに1を加え、イメージサイズで割った値がパーセントで表示されます。私が理解していない部分は、数学の部分、全体の商と残りの部分の "ランダムな" 256です。私はこれらの数を得る方法を理解していないので、私はパーセンテージを持っていますが、平均。ここでは、2つの異なるテストのフロントパネルの写真があります。トップ1で

Test Pictures

、私は、これは下の1は「96パーセント違う」であることを私に告げる15の割合、および下側96の割合を持っています。しかし、これが正確であることを確かめるために、とにかくありますか?

私が持っているもう一つの質問は、それが何をするのか正確にはわからないので、閾値です。下の画像の閾値を30に変更した場合と同じように、同じ画像で私の割合は8%です。

商/剰余部分を理解すれば、それはすべて意味をなさないでしょうが、私はそれを得ることができません。ご協力ありがとうございました。

答えて

1

私の最高の推測では、誰かが2つの画像の違いを1つの数字で表すことを試みたということです。 部分は、差分の各2D配列要素を2つの下位バイト(2つの剰余)と上位2バイトの単語に分割する「貧弱な人」アプローチです。次に、差の下位2バイトが合計され、結果が上位2バイトに(ワードとして)加算されます。たぶん、3つの異なるバイトがそれぞれカメラの異なるチャンネル(例えば、RGBカラー)を表していたでしょうか?

次に、値がしきい値と比較され、しきい値を超えるピクセル数が計算されます。この数値を合計ピクセル数で割って%%の差を計算します。その結果、ピクセルの%%が得られます。これは、マスター画像としきい値で異なります。

など。イメージの特定のピクセルが0x00112233で、対応するマスターイメージピクセルの値が0x00011122だった場合、しきい値と比較される数値は(0x11 - 0x01)+(0x22 - 0x11)+(0x33 - 0x22)= 0x10 + 0x11 + 0x11 = 0x32 = 50小数点。

これが最良の比較/相違の基準であるかどうかは、このトピックの外にある質問です。

+1

同じですが短い答え:色情報を赤、緑、青の成分に分割して一緒に加えることができます。これは、バイト分割を行う奇妙な方法です。 「Color to RGB.vi」または「Number to Split Number」機能(「Color to RGB.vi」が内部的に使用する機能)があります。 – srm

+0

ありがとう、皆さん、私は今、プログラム全体をはるかに理解しています。興味のある人のためにさらに説明するには、2つの画像を取り、それらを減算し、画像をすべてのピクセルの配列に変換します。配列の範囲は0(黒)〜16777215(白)です。残りの商セクションはそれらをRGB値に変換し、それらを加算します(最大765,255 + 255 + 255)。しきい値(例えば30%、229.5、少し修正)は、 0に、その数を1に上げます。すべての1を加算し、合計画像サイズで割ると、明るいピクセルの割合が得られます。 –

関連する問題