applylut
ルックアップ テーブルを使用したバイナリ イメージの近傍演算
applylut は推奨されません。代わりに bwlookup を使用してください。
説明
例
ルックアップ テーブルを作成します。
lutfun = @(x)(sum(x(:))==4); lut = makelut(lutfun,2);
イメージをワークスペースに読み取って、ルックアップ テーブルをイメージに適用します。出力ピクセルは、4 つの入力ピクセルの近傍ピクセルすべてが on となる場合にのみ、on となります。
BW1 = imread("text.png");
BW2 = applylut(BW1,lut);元のイメージと収縮されたイメージを表示します。
imshow(BW1)

imshow(BW2)

入力引数
入力イメージ。2 次元バイナリ イメージとして指定します。数値入力の場合、非ゼロのピクセルは 1 (true) であると見なされます。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
出力ピクセル値のルックアップ テーブル。makelut によって返される 16 要素または 512 要素のベクトルとして指定します。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
出力引数
アルゴリズム
applylut は、インデックスの配列を lut に生成してそのインデックスを lut の実際値に置き換えることにより、バイナリ イメージに対して近傍演算を実行します。使用する特定のアルゴリズムは、2 行 2 列と 3 行 3 列のどちらの近傍を使用するかによって決まります。
2 行 2 列近傍の場合、length(lut) は 16 となります。各近傍には 4 つのピクセルがあり、また、各ピクセルには 2 つの取りうる状態があります。よって、順列の合計は 24 = 16 となります。
インデックス行列を生成するため、applylut は、バイナリ イメージ BW とこの行列を畳み込みます。
8 2 4 1
得られる畳み込みには、[0, 15] の範囲の整数値が含まれています。applylut は、BW と同じサイズの畳み込みの中心部分を使用し、各値に 1 を追加して範囲を [1, 16] にシフトします。その後、関数は、インデックス行列のセル内の値をインデックスが示す lut 内の値に置き換えることで A を構築します。
3 行 3 列近傍の場合、length(lut) は 512 となります。各近傍には 9 つのピクセルがあり、また、各ピクセルには 2 つの取りうる状態があります。よって、順列の合計は 29 = 512 となります。
インデックス行列を生成するため、applylut は、バイナリ イメージ BW とこの行列を畳み込みます。
256 32 4 128 16 2 64 8 1
得られる畳み込みには、[0, 511] の範囲の整数値が含まれています。applylut は、BW と同じサイズの畳み込みの中心部分を使用し、各値に 1 を追加して範囲を [1, 512] にシフトします。そして、インデックス行列のセル内の値をインデックスが示す lut 内の値に置き換えることで A を構築します。
バージョン履歴
R2006a より前に導入参考
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)