-
[OpenCV]_4. OpenCV 이미지 Processingprogramming/Python 2021. 2. 7. 01:25
Digital Image
디지털 영상은 2차원 행렬의 형태로 표현이 됩니다. 각 격자가 하나의 pixel이 됩니다. 이를 bitmap image라고 합니다.
우리가 흔이 알고있는 .jpg, .jpeg, .png, .gif 가 비트맵방식입니다.
각 pixel의 위치는 2가지 형태로 표현을 할 수가 있는데. 영상좌표와 행렬 위치로 표현이 됩니다.
영상 좌표는 좌측 상단의 꼭지점을 중심으로 (x,y)로 표현을 합니다. 행렬 위치는 (r,c)로 표현을 합니다. OpenCV에서 영상좌표와 행렬 위치 2가지 형태가 사용되기 때문에 유의해야 합니다.
Digital Image의 유형
Binary Image
Binary Image는 pixel당 1bit로 표현하는 영상을 의미합니다. 즉 흰색과 검은색으로만 표현이 되는 영상입니다.
Binary Image
원본 이미지를 thresholding처리를 하여 binary image로 변환한 이미지 입니다.
Grayscale Image
Grayscale Image는 Pixel당 8bit, 즉 256단계의 명암(빛의 세기)을 표현할 수 있는 이미지입니다.
Color Image
Color 이미지는 pixel의 색을 표현하기 위해서 pixel당 24bit를 사용합니다. 총 16,777,216 가지의 색을 표현할 수 있습니다. 이것을 일반적으로 True color image라고 합니다. pixel은 RGB 각각을 위해서 8bit를 사용하게 됩니다. OpenCV에서는 BGR로 표현을 하기 때문에 Blue->(255,0,0), Green->(0,255,0), Red->(0,0,255), White->(255,255,255), Black->(0,0,0)으로 표현할 수 있습니다.
각 pixel당 3Byte를 사용하기 때문에 용량이 큽니다. 이를 해결하기 위해서 lookup table을 사용하여, 해당 pixel에는 index만 을 저장하기도 합니다.
Indexed Color Image
RGB Color-space
RGB 모델은 빛의 삼원색인 빨간색, 초록색, 파란색을 기본 색으로 사용을 합니다. 정육면체 모델 형태로 표현할 수 있습니다.
HSV Color-space
이미지 처리에서 가장 많이 사용되는 형태의 Color 모델입니다. 하나의 모델에서 색과 채도, 명도를 모두 알 수 있습니다. 원뿔 형태의 모델로 표현이 됩니다.
HSV 모델
HSV의 의미는 다음과 같습니다.
- H(ue) : 색상. 일반적인 색을 의미함.
- S(aturation) : 채도. 색읜 순수성을 의미하며 일반적으로 짙다, 흐리다로 표현이 됨. 중심에서 바깥쪽으로 이동하면 채도가 높음.
- V(alue) : 명도. 색의 밝고 어두운 정도. 수직축의 깊이로 표현. 어둡다 밝다로 표현이 됨.
'programming > Python' 카테고리의 다른 글
[자료구조]배열(Array), 큐(Queue), 스택(Stack) (2) 2021.05.20 [자료구조]Hash, Hashing, Hash Table (4) 2021.05.05 [OpenCV]_3. OpenCV 도형 그리기 (0) 2021.02.06 [OpenCV]_2. OpenCV 이미지 다루기 (0) 2021.01.26 [OpenCV]_1. OpenCV 시작하기 (0) 2021.01.25