三次元グレースケール画像内で、指定した範囲内のエントロピーの計算の仕方
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
三次元行列を作成してそれを可視化した三次元イメージ画像があるのですが、自分で立体空間を指定して(100×100×100のイメージ内で1×1×1の範囲など)そのなかのエントロピー(黒が集まってれば集まってるほど高い)を計算したいです。 それか、範囲内の密度(黒であればあるほど高い)の計算の仕方なども教えてもらいたいです。
例として作成した三次元イメージを添付します。100×100×100doubleです
0 Kommentare
Akzeptierte Antwort
michio
am 11 Jan. 2017
Bearbeitet: michio
am 11 Jan. 2017
グレースケールのエントロピーは entropy 関数. 範囲を指定しての局所的なエントロピーは entropyfilt 関数 で求められそうです。どちらも、Image Processing Toolbox の関数です。
entropyfilt 関数はデフォルトで、9行9列近傍のエントロピー値を計算しますが、3x3x3ですと、
entropyfilt(I3D, true(3,3,3));
となります。(例えば I3D は 100x100x100 の配列とします) ただ、同じ値が集まっていればいるほど低い値となりますが、用途に合っていますか?
また、3次元画像の事前指定した範囲内の平均値を求める関数として imboxfilt3 関数 があります。グレースケール画像ですと局所的な平均輝度(白ほど高い値)が求まりますが、ryoya suzuki さんのおっしゃる密度の定義とは逆ですが、算出に応用できるかと思うので紹介しますね。
17 Kommentare
Weitere Antworten (0)
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!