Main Content

이미지 그래픽 또는 데이터형 변환하기

데이터형 간에 변환하면 이미지 데이터의 해석 방식이 변경됩니다. 결과로 생성된 배열이 이미지 데이터로 적절하게 해석되도록 하려면 데이터를 변환할 때 다시 스케일링하거나 오프셋해야 합니다. (오프셋에 대한 자세한 내용은 이전 섹션인 이미지 유형인덱스 이미지를 참조하십시오.)

특정 작업의 경우 이미지를 다른 이미지 유형으로 변환하는 것이 도움이 됩니다. 예를 들어, 인덱스 이미지로 저장된 컬러 이미지를 필터링하려면 이를 먼저 RGB 형식으로 변환해야 합니다. 이 작업을 효율적으로 수행하려면 ind2rgb 함수를 사용하십시오. 필터를 RGB 이미지에 적용하는 경우 이미지의 농도값이 적절하게 필터링됩니다. 인덱스 이미지를 필터링하려고 시도하면 필터가 인덱스 이미지 행렬의 인덱스에 적용되고 의미 없는 결과가 생성될 수 있습니다.

MATLAB® 구문을 사용하여 특정 변환을 수행할 수도 있습니다. 예를 들어, 회색조 이미지를 RGB로 변환하려면 세 번째 차원을 따라 원본 행렬의 3개 복사본을 결합(Concatenate)합니다.

RGB = cat(3,I,I,I);

결과로 생성된 RGB 이미지는 빨간색, 녹색 및 파란색 평면에 대해 동일한 행렬을 가지므로 이미지가 회색 음영으로 나타납니다.

다른 소프트웨어 제품과의 호환성 등을 위해 이미지의 그래픽스 형식을 변경하는 것은 매우 간단합니다. 예를 들어, BMP 형식의 이미지를 PNG로 변환하려면 imread를 사용하여 BMP를 불러오고, 데이터형을 uint8, uint16, double 중 하나로 설정한 후 대상 형식으로 'PNG'를 지정한 상태로 imwrite를 사용하여 이미지를 저장합니다. 그래픽스 형식별로 지원되는 비트 심도(Bit Depth)에 대한 세부 정보와 이미지를 파일에 쓸 때 형식 유형을 지정하는 방법을 보려면 imreadimwrite를 참조하십시오.