이미지 색 데이터로, 다음 형식 중 하나로 지정됩니다.
벡터 또는 행렬 — 이 형식은 인덱스 이미지 데이터를 정의합니다. C의 각 요소는 이미지의 한 픽셀에 대한 색을 정의합니다. 예를 들면 C = [1 2 3; 4 5 6; 7 8 9];와 같습니다. C의 요소는 연관 좌표축 컬러맵의 색에 매핑됩니다. CDataMapping 속성으로 매핑 방법을 제어합니다.
RGB 3색으로 구성된 3차원 배열 — 이 형식은 RGB 3색 값을 사용하여 트루컬러 이미지 데이터를 정의합니다. 각 RGB 3색은 이미지의 한 픽셀에 대한 색을 정의합니다. RGB 3색은 요소를 3개 가진 벡터로, 각 요소는 색을 구성하는 빨간색, 녹색, 파란색의 농도를 지정합니다. 3차원 배열의 첫 페이지에는 빨간색 성분이 포함되고, 두 번째 페이지에는 녹색 성분이 포함되며, 세 번째 페이지에는 파란색 성분이 포함됩니다. 이미지는 컬러맵 색 대신 트루컬러를 사용하기 때문에 CDataMapping 속성은 아무 영향을 미치지 않습니다.
C가 double형인 경우, RGB 3색 값 [0 0 0]은 검은색에 해당하고 [1 1 1]은 흰색에 해당합니다.
C가 정수형인 경우 이미지는 전체 데이터 범위를 사용하여 색을 지정합니다. 예를 들어, C가 uint8형인 경우, [0 0 0]은 검은색에 해당하고 [255 255 255]는 흰색에 해당합니다. CData가 int8형이면 [-128 -128 -128]이 검은색에 해당하고 [127 127 127]은 흰색에 해당합니다.
C가 logical형이면 [0 0 0]이 검은색에 해당하고 [1 1 1]은 흰색에 해당합니다.
다음 그림은 두 가지 색상 모델에 대한 C의 상대적 크기를 보여줍니다.
NaN 요소의 동작은 정의되어 있지 않습니다.
image 함수의 로우 레벨 버전을 대신 사용하려면 CData 속성을 이름-값 쌍으로 설정하십시오. 예를 들면 image('CData',C)와 같습니다.
double형과 정수 데이터형 간 변환
벡터 또는 2차원 행렬로 image 함수를 호출하고 디폴트 CDataMapping 값을 사용하는 경우, double 값과 정수형 간에 변환할 때 데이터 값을 1만큼 오프셋해야 합니다. CDataMapping이 'scaled'로 설정된 경우에는 이 오프셋이 필요하지 않습니다.
예를 들어, U8이 uint8형의 인덱스 이미지 데이터를 포함하는 경우 다음 식을 사용하여 double형으로 변환할 수 있습니다.
인덱스 이미지 데이터를 double형에서 정수형으로 변환하려면 1을 뺀 다음 round를 사용하여 모든 값이 정수가 되도록 해야 합니다. 예를 들어, D가 double형의 인덱스 이미지 데이터를 포함하는 경우 다음 식을 사용하여 uint8형으로 변환할 수 있습니다.
정규화된 double형과 트루컬러 값 간 변환
트루컬러 이미지 데이터를 정수형에서 double형으로 변환하려면 데이터를 다시 스케일링해야 합니다. 예를 들어, RGB8가 uint8형의 트루컬러 이미지 데이터인 경우 다음 식을 사용하여 double형으로 변환할 수 있습니다.
트루컬러 이미지 데이터를 double형에서 정수형으로 변환하려면 데이터를 다시 스케일링한 다음 round를 사용하여 모든 값이 정수가 되도록 해야 합니다. 예를 들어, RGB가 double형의 이미지 데이터인 경우 다음 식을 사용하여 uint8형으로 변환할 수 있습니다.
데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical