4

スキャンしたテキスト ドキュメントを、テキストの線がぼやけて黒くなるまでぼやけさせようとしています。つまり、テキストが互いに混ざり合って、黒い線しか見えません。

私は MATLAB を初めて使用し、基本を知っていても、画像を適切にぼかすことができません。私はこれを読みました:Gaussian Blurrによると、ぼかしはシグマ関数によって管理/決定されます。しかし、それは私が書いたコードでどのように機能するかではありません。

Matlab でガウスぼかしを学習しようとしているときに、この関数を使用して達成されることがわかりました。fspecial('gaussian',hsize,sigma);

hsizeそのため、関数の行または列の数を指定する2つの変数sigmaがあり、標準偏差があります。

ここの重要性hsizeと、それが結果にさらに深い影響を与える理由を説明してくださいsigma

sigma非常に高い値に上げてもぼかしには影響しないのに、値を大きくすると画像が大きく歪むのはなぜですか?hsize

ここに私のコードがあります:

img = imread('c:\new.jpg');

h = fspecial('gaussian',hsize,sigma);

out = imfilter(img,h);

imshow(out);

そして結果が添付されています:

によってのみ制御されないのはなぜsigmaですか?どのような役割を果たしhsizeますか? 画像全体をゆがめるのではなく、テキストだけをぼかすことができないのはなぜですか?

ありがとうございました

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

4

2 に答える 2

1

Fspecialのマニュアル

h = fspecial('gaussian', hsize, sigma) は、標準偏差 sigma (正) のサイズ hsize の回転対称ガウス ローパス フィルターを返します。hsize は、h の行数と列数を指定するベクトルにするか、スカラーにすることができます。この場合、h は正方行列です。hsize のデフォルト値は [3 3] です。シグマのデフォルト値は 0.5 です。推奨されません。代わりに imgaussfilt または imgaussfilt3 を使用してください。

彼らが言うところでは、それfspecial - gaussianお勧めできません。標準偏差 (シグマ) を決定する際には、ぼかしに影響を与えるhsizeを決定する必要があります。ではimgaussfilt、標準偏差を決定すると、残りはシステムによって考慮されます。Matlab 2016a のシステムで、より優れた許容レベルを得ることができます。出力例imgaussfiltは本文あります。imgaussfilt3

im = im2double( imgGray ); 
sigma = 5;
simulatedPsfImage = imgaussfilt(im, sigma); 
simulatedPsfImage = im2double( simulatedPsfImage );
[ measuredResolution, standardError, bestFitData ] = ...
    EstimateResolutionFromPsfImage( simulatedPsfImage, [1.00 1.00] );

の許容レベルはデフォルトfspecialで高いことに注意してください。[0.70 1.30]

于 2016-03-21T07:29:32.827 に答える