私は特別な機能を知らないが、溶液は非常に簡単である:上記溶液に
I = imread('sLUp2.png'); %Read source image.
%Initialize all destination pixels to 1
J = ones(size(I,1), size(I,2));
%Set to zero pixels which are gray in I (where Red==Green and Red==Blue).
J((I(:,:,1) == I(:,:,2)) & (I(:,:,1) == I(:,:,3))) = 0;
R = G = Bとすべてのソースグレースケール画素は、グレーであると考えられます。黒画素:例えば
(0,0,0)、白画素(255,255,255)と(X、X、X)グレーと考えられている...
あなただけ検索したい場合は単一の共通のグレーレベル(すべてではない「グレースケール」ピクセル)は、次のように(何かを)行うことができます:あなたのイメージで
R = I(:, :, 1); %Red color plane.
Gray = R((I(:,:,1) == I(:,:,2)) & (I(:,:,1) == I(:,:,3))); %All values in which R=G=B.
H = imhist(Gray, 256); %Collect histogram of Gray.
common_gray = find(H == max(H)) - 1; %Find the most common gray value in histogram.
%Now, set only common_gray pixels to zero in destination image J.
J = ones(size(I,1), size(I,2));
J(R == common_gray) = 0;
共通のグレーレベル(「グレーポイント」)に等しいです。

は、あなただけのグレー色の輝度値を見つけると、0と1の残りの部分にそれを設定することができませんか? – roni
確かに、彩度(灰色のピクセルではゼロになります)をゼロにして、グレーでないものをすべて白にします。 –