12 方向のガボール フィルタの可視化出力があります。可視化画像を網膜の画像に重ね合わせて血管を抽出したいのですが、どのようにすればよいですか?以下の方法を試しました。重ね合わせを実行する他の方法はありますか? matlabの画像の。
ここに私のコードがあります
I = getimage();
I=I(:,:,2);
lambda = 8;
theta = 0;
psi = [0 pi/2];
gamma = 0.5;
bw = 1;
N = 2;
img_in = im2double(I);
%img_in(:,:,2:3) = []; % discard redundant channels, it's gray anyway
img_out = zeros(size(img_in,1), size(img_in,2), N);
for n=1:N
gb = gabor_fn(bw,gamma,psi(1),lambda,theta)...
+ 1i * gabor_fn(bw,gamma,psi(2),lambda,theta);
% gb is the n-th gabor filter
img_out(:,:,n) = imfilter(img_in, gb, 'symmetric');
% filter output to the n-th channel
%theta = theta + 2*pi/N
%figure;
%imshow(img_out(:,:,n));
imshow(img_in); hold on;
h = imagesc(img_out(:,:,n)); % here i am getting error saying CDATA must be size[M*N]
set( h, 'AlphaData', .5 ); % .5 transparency
figure;
imshow(h);
theta = 15 * n; % next orientation
end
これが私の元の画像です
これは、向きを使用してガボール フィルターによって取得された視覚化された画像です。これは、視覚化 に関して取得する必要がある画像の種類/タイプです。つまり、元の画像に視覚化された画像を課す必要があり、このタイプの画像を取得する必要があります。