3

こんにちは、私は現在、Dorini で論文「Multiscale Morphological Image Simplification」の SMMT オペレーターを使用しようとしています。購読しないとページにアクセスできないため、関連する詳細をここに投稿します。

ここに画像の説明を入力 ここに画像の説明を入力 ここに画像の説明を入力

関連記事の一部を画像として掲載していますのでご了承ください。stackoverflow.com での方程式の書き方がわかりません。この SMMT 演算子を画像処理の前処理ステップとして使用したいと考えています。私が書き留めたコードを以下に示します。

clc;clear all;close all;
tic
I=imread('handwritten.jpg');
I=I(:,:,1);

dim=11 ;
HEIGHT=zeros(dim,dim);
sigma=1/10;
for i=-floor(dim/2):floor(dim/2)
    for j=-floor(dim/2):floor(dim/2)
       HEIGHT(i+ceil(dim/2),j+ceil(dim/2))=-(1/sigma).*max(abs(i),abs(j));
    end
end
NHOOD=ones(dim,dim);
se = strel('arbitrary',NHOOD,HEIGHT);
se

IM1 = imdilate(I,se,'same');
IM2 = imerode(I,se,'same');
figure;
subplot(2,2,1),imshow(I)
subplot(2,2,2),imshow(IM1)
subplot(2,2,3),imshow(IM2)

II = I;
for i=1:1
    phi1 = imdilate(II,se,'same');
    phi2 = imerode(II,se,'same');
    for j=1:size(I,1)
        for k=1:size(I,2)
            if ((phi1(j,k)-II(j,k))<(II(j,k)-phi2(j,k)))
                II(j,k) = phi1(j,k);
            elseif ((phi1(j,k)-II(j,k))==(II(j,k)-phi2(j,k)))                
                II(j,k) = II(j,k);
            else
                II(j,k) = phi1(j,k);
            end
        end
    end
end
IM3=II;
subplot(2,2,4),imagesc(IM3,[0 255]);colormap('gray');axis off;
toc

コードの結果は次のようになります: (紙から): ここに画像の説明を入力

私の結果はこれです:- ここに画像の説明を入力.

私の実装は正しいですか?? さらに改善できますか?? どんな提案も役に立ちます。助けてくれてありがとう!! 詳細については、Dorini Free Accessを参照してください。

4

1 に答える 1

0

実装はグローバルに問題ないように見えますが、少し説明があります。

if ((phi1(j,k)-II(j,k))<(II(j,k)-phi2(j,k)))
                II(j,k) = phi1(j,k);

IIここでは、 とを比較しながらphi1変数の画像値を変更したいと思いますI

if ((phi1(j,k)-I(j,k))<(I(j,k)-phi2(j,k)))
                II(j,k) = phi1(j,k);
于 2014-01-06T00:59:30.223 に答える