画像に関するコントラスト マップを作成する必要があります。方法は簡単です。5x5 (スライディング) ウィンドウでコントラスト (C=SD/Mean) を推定します。画像全体をピクセル単位でウィンドウを移動し、結果を新しいマトリックスに保存します。
この問題を解決するためにこのスクリプトを作成しましたが、遅すぎます。ベース画像は 1024x1024 の 16 ビット .tif 画像です。このプロセスには 40 ~ 50 秒かかりますが、他のプログラムでは 3 秒以内に解決されます。スクリプトを高速化するにはどうすればよいですか?
私の元のスクリプト:
M=imread('image.tif');
for S=1:2 SM1_b=size(M,1); SM2_b=size(M,2);
M(:,SM2_b+1)=M(:,SM2_b);
M(SM1_b+1,:)=[M(SM1_b,1:SM2_b) M(SM1_b,SM2_b)];
end
M=[M(1,1:SM2_b+1);M(1,1:SM2_b+1);M]; M=[M(1:(size(M,1)),1) M(1:(size(M,1)),1) M]; clear S SM1_b SM2_b
KPic=zeros(1024);
for i=1:1024 for j=1:1024
KPic(i,j)=std2(M(i:i+4,j:j+4))/mean2(M(i:i+4,j:j+4));
end
end