Main Content

cmap2gray

RGB 컬러맵을 회색조 컬러맵으로 변환

R2020b 이후

    설명

    예제

    newmap = cmap2gray(map)은 RGB 컬러맵 map을 동일한 회색조 컬러맵 newmap으로 변환합니다.

    예제

    모두 축소

    컬러맵이 있는 인덱스 이미지를 작업 공간으로 불러옵니다. load 명령은 이미지 데이터와 컬러맵을 포함하는 구조체를 반환합니다. 이미지를 확인합니다.

    indImage = load('clown.mat');
    figure
    imshow(indImage.X,indImage.map)

    이미지와 함께 가져온 RGB 컬러맵을 회색조 컬러맵으로 변환합니다.

    newmap = cmap2gray(indImage.map);

    회색조 컬러맵을 사용하여 이미지를 표시합니다.

    figure;
    imshow(indImage.X,newmap)

    입력 인수

    모두 축소

    RGB 컬러맵으로, [0, 1] 범위의 값으로 구성된 c×3 숫자형 행렬로 지정됩니다. map의 각 행은 컬러맵의 하나의 색에 대한 빨간색, 녹색, 파란색 성분을 지정하는, 요소를 3개 가진 RGB 3색입니다.

    Parallel Computing Toolbox™가 설치되어 있으면 mapgpuArray 객체가 될 수도 있습니다.

    데이터형: double

    출력 인수

    모두 축소

    회색조 컬러맵으로, [0, 1] 범위의 값으로 구성된 c×3 숫자형 행렬로 반환됩니다. newmap의 세 열이 동일하므로 각 행은 하나의 농도값을 지정합니다.

    Parallel Computing Toolbox가 설치되어 있으면 newmapgpuArray 객체가 될 수도 있습니다.

    데이터형: double

    알고리즘

    cmap2gray 함수는 R, G, B 성분에 가중치를 적용하여 합을 만들어내는 방식으로 RGB 값을 회색조 값으로 변환합니다.

    0.298936021293775 * R + 0.587043074451121 * G + 114020904255103 * B 
    

    cmap2gray 함수에서 회색조 값을 계산하는 데 사용되는 계수는 소수점 이하 세 자리수로 반올림하면 Rec.ITU-R BT.601-7에서 휘도(E'y)를 계산하는 데 사용되는 값과 같습니다. Rec.ITU-R BT.601-7은 다음 식을 사용하여 E'y를 계산합니다.

    0.299 * R + 0.587 * G + 0.114 * B
    

    확장 기능

    C/C++ 코드 생성
    MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.

    버전 내역

    R2020b에 개발됨

    참고 항목

    | | | (Image Processing Toolbox)