2012-04-09 17 views
1
RGB = imread('image.jpg'); 
GRAY = rgb2gray(RGB); 

threshold = graythresh(GRAY); 
BWW = im2bw(GRAY, threshold); 

BWW = bwareaopen(BWW,250); 

動作しませんか?
(どのように私はBWWの代わりにイムを書き込もうとしましたが、それは)のでrgb2grayの(動作しません

'イム=' の行を完了する必要があります。MATLAB私のコードは、私が「イム」は、次の行が動作させるための「BWW」にさせることができますどのように

im = 
im1 = rgb2gray(im); 
im1 = medfilt2(im1,[15 15]); 
BW = edge(im1,'sobel'); 

ありがとう!

答えて

1

あなたはおそらくrgb2gray(im)をスキップしてim1 = medfilt2(BWW, [15 15])を実行します。そうしないと、黒色の&が白くRGBに変換されてからグレースケールに変換されますが、グレースケール画像には0と1の間のピクセル値が含まれていると思います。&白はグレースケール画像です0または1だけです。したがって、RGBに変換してから、グレースケールwイメージを変更しないでください。