2011-08-15 7 views
1

私は巨大な画像Iと、pix_locationsIの線形インデックスインデックスの場所)によってインデックス付けされたピクセル位置のセットを持っているとします。 pix_locationsでインデックスされた場所でのみ構成要素SEを使用して、ヒットアンドミス操作(つまり、bwhitmissの場合)を実行したいとします。MATLABの疎な場所にbwhitmiss

私はちょうどpix_locationsによってインデックスを付けた場所に対応した結果を保つその後、画像全体にbwhitmissを実行し、することができます知っているが、画像が大きい場合、これは廃棄物と遅い(pix_locationsでインデックス付け場所がまばらです)。

bwhitmissをイメージ上の特定の場所に選択的に実行する方法はありますか?

答えて

1

空のパーティションにbwhitmissを使用するよりも、Kdツリーのように画像を分割することができますが、bwhitmissは単純なルックアップテーブル操作であるため、あなたが本当に巨大で疎な画像を持っていない限り、最適化します。

+1

BWHITMISSは、多くの形態操作と同様に、畳み込み(ルックアップテーブルではない)に基づいていると思います。グリッドアプローチは良いアドバイスですが、それには[qtdecomp](http://www.mathworks.com/help/toolbox/images/ref/qtdecomp.html)を使うことができます。 – Amro

+1

基本的にはyesですが、for小さな構造化要素(または小さな要素に分解することができる構造化要素)は、パフォーマンスが問題であれば(部分的または完全に)LUTに置き換えることができます。 http://www.mathworks.com/help/toolbox/images/f18-14868.html – WebMonster

+1

+1あなたは正しいです。そうでない場合でも、畳み込みはMATLABで高度に最適化されるべきです...興味のある人には、最近の[ブログ投稿]があります(http://blogs.mathworks.com/steve/2011/07/08/binary-image-hit-miss-operator /)をSteve Eddinsがヒットミスの操作について説明しています。 – Amro

関連する問題