10

私はコンピューター ビジョンにアルゴリズムを実装しようとしています。一連の画像で試してみたいと思います。写真はすべてカラーですが、私はそれを扱いたくありません。アルゴリズムをテストするのに十分なグレースケールに変換したいと思います。

カラー画像をグレースケールに変換するにはどうすればよいですか?

私はそれを読んでいます:

x = imread('bla.jpg');

imreadグレースケールとして読み取るために追加できる引数はありますか? 読んだxにグレースケールに変更する方法はありますか?

4

7 に答える 7

25

rgb2gray色相と彩度を取り除く (つまり、グレースケールに変換する) ために 使用します。ドキュメンテーション

于 2009-11-22T19:17:46.370 に答える
8
x = imread('bla.jpg');
k = rgb2gray(x);
figure(1),imshow(k);
于 2009-12-27T12:05:37.197 に答える
2

このコードを使用できます:

im=imread('your image');
k=rgb2gray(im);
imshow(k);

matlab への使用

于 2012-11-11T19:54:33.853 に答える
2

このリンクを見つけました: http://blogs.mathworks.com/steve/2007/07/20/imoverlay-and-imagesc/ 動作します。

それは言います:

im=imread('your image');
m=mat2gray(im);
in=gray2ind(m,256);
rgb=ind2rgb(in,hot(256));
imshow(rgb);
于 2011-06-29T07:21:10.167 に答える
1

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)
于 2017-06-14T14:34:35.300 に答える