4

グレースケール画像があるとします。各ピクセルの周りに円形の近傍ウィンドウがあるとします。各ピクセルの周囲の円形の近傍のカラー ヒストグラムを取得する必要があります。

MatLab でこの問題に対して循環近傍演算を効率的に実装するにはどうすればよいですか?

4

1 に答える 1

2

すべてを提供するわけではありませんが、これは大いに役立つと思います。

さて、あなたは次のようなことをしている人の輪を作ることができます

h = fspecial('disk',rad);
h = h>0;

次に、次のようなことを行う大きなマトリックスのどこにでも置くことができます

h2 = zeros(N,M);
h2(c_offset-rad:c_offset+rad,r_offset-rad:r_offset+rad) = h;

これで、画像と同じサイズ (列/行サイズ) のマトリックスが作成されました。これは、マトリックスからデータを取得するための参照テーブルとして使用できます。これは、次のように言って 0.5 を超える値のみを返すことができるのとほぼ同じです。

r = rand(10);
d = r(r>0.5);

編集:

また、MATLAB を満足させるために、いくつかの場所でデータ型をいじる必要があります。たとえば、h2 を別のマトリックスの参照テーブルとして使用するには、論理値である必要があります。また、適切な型がないと hist も機能しません。

于 2012-11-05T16:58:20.123 に答える