どのように私は、カラー画像は、MATLABでグレースケールに変換することができますか?
-
21-09-2019 - |
質問
私はコンピュータビジョンでアルゴリズムを実装しようとしていると私は写真のセットでそれを試してみたいです。写真は、色のすべてのですが、私はそれに対処する必要はありません。私はアルゴリズムをテストするために十分であるグレースケールに変換します。
私は、グレースケールにカラー画像を変換できますか?
私はそれを読んでいます:
x = imread('bla.jpg');
私はグレースケールとしてそれを読むためにimread
に追加することができます任意の引数がありますか?グレースケールにどのような方法のI変更x
はありますの後にのそれを読んだ?
解決
ストリップの色相と彩度を
使用rgb2gray
(グレースケールにすなわち、変換)。 ドキュメントの
他のヒント
x = imread('bla.jpg');
k = rgb2gray(x);
figure(1),imshow(k);
私は、このリンクが見つかりました: http://blogs.mathworks.com/steve/2007/ 7月20日/ imoverlayアンド関数imagesc / の それが動作します。
それが言うます:
im=imread('your image');
m=mat2gray(im);
in=gray2ind(m,256);
rgb=ind2rgb(in,hot(256));
imshow(rgb);
あなたはこのコードを使用することができます:
im=imread('your image');
k=rgb2gray(im);
imshow(k);
MATLAB
を使用して
I=imread('yourimage.jpg');
p=rgb2gray(I)
を使用imread()
とrgb2gray()
機能グレースケール画像を取得する。
例:
I = imread('input.jpg');
J = rgb2gray(I);
figure, imshow(I), figure, imshow(J);
あなたは、カラーマップ画像を持っている場合は、以下のように行う必要があります:
[X,map] = imread('input.tif');
gm = rgb2gray(map);
imshow(X,gm);
独自の実装のためのrgb2gray
アルゴリズムがあります:
f(R,G,B) = (0.2989 * R) + (0.5870 * G) + (0.1140 * B)
所属していません StackOverflow