본문 바로가기

온라인 멘토와 함께하는 공부/OpenCV로 배우는 영상처리10

디지털 영상의 구조 디지털 영상의 구조 디지털 영상 처리에서 많이 사용되는 영상 파일 포맷들은 아래와 같다. RAW 영상 영상 구성에 대한 헤더 정보를 포함하지 않고 영상의 픽셀값만을 가지고 있는 파일이다. 따라서 영상을 처리하기 위해서는 사전에 영상의 가로 및 세로의 크기를 알고 있어야 한다. 무손실 저장 방식이며 확장자는 '.raw'이다. BMP(bitmap 영상) MS에서 윈도즈 기반 운영체제에서 사용할 목적으로 만든 무손실 영상 저장 방식이다. 이 방식은 영상의 픽셀값을 그대로 저장하는 방식이다. 이 방식은 영상의 픽셀값을 그대로 저장하는 방식이다. 이 방식은 헤더(header), 팔레트(palette), 픽셀값으로 구성된다. JPEG(Joint Photographic Cxperts Group) JPEG 영상 저장 .. 2022. 3. 24.
2_4 YIQ 색상 모델 YIQ 색상 모델 YIQ 색상 모델은 미국 및 한국 등지에서 사용하는 NTSC(National Television Standards Committee) TV 표준에서 사용하는 색상 표현 방식으로 밝기를 나타내는 Y(휘도, Luminance)와 색상 정보를 나타내는 I와 Q로 구성된다. I는 주황-청색(Orange-Blue) 값을, Q는 자주-녹색(Purple-Green)을 나타낸다. RGB 색상 모델을 YIQ 색상 모델로 바꾸는 식은 다음과 같다. Y = 0.299*R + 0.587*G + 0.114*B I = 0.596*R - 0.275*G - 0.321*B Q = 0.212*R - 0.523*G + 0.311B 아쉽게도 OpenCV에서 모든 색상 채널 변환을 지원하지 않는다. YIQ 색상 모델 실습 .. 2022. 3. 24.
2_3 YCrCb 색상 모델 YCrCb 색상 모델 YCrCb은 영상 시스템에서 사용되는 색공간의 일종이다. Y는 휘도(luminance) 성분이며 Cr, Cb는 색상의 붉은 정도(red)와 푸른(blue) 정도를 나타내는 색차 성분이다. YCrCb 색상 모델은 주로 동영상 압축 표준인 MPEG과 정지 영상 압축 표준인 JPEG에서 주로 사용되는 색상이다. OpenCV에서는 색상 변환 함수를 제공하고 있어서 쉽게 변환이 가능하다. 영상 실습 영상 읽기와 출력 코드는 거의 동일하다. 변수만 다를 뿐. 2022. 3. 24.
2_2 HSV 색상 모델 HSV 색상 모델 RGB 모델이 인간의 색상 정보 체계와는 다르다는 문제점을 해결하고, 인간이 인식하는 색상과 흡사한 색상 모델을 만들기 위해 고안된 색상 모델이다. H는 색상, S는 채도, V는 명도를 의미한다. Hue, Saturation, Value의 머리글자를 따서 HSV 색상 모델이라고 한다. 색상(Hue)은 색의 원색을 나타내며 원뿔 둘레를 따라 0~360도의 각도로 표현된다. 0도는 빨간색, 120도는 녹색, 2240도는 파란색을 나타낸다. 채도(Saturation)는 색의 순수도 또는 순수한 색의 흰빛에 의해 희석된 정도의 척도를 0~1 사이의 값으로 나타낸다. 명도(Value)는 색의 밝기를 나타내며 역시 0~1 사이의 값을 갖는다. 명도는 원뿔에서 세로축에 해당되며 가장 아래쪽이 0으로.. 2022. 3. 24.
2_1 RGB 컬러 영상을 R G B로 분리하기 컬러 분리 origin_img = cv2.imread('lena2.jpg') RGB_img = cv2.cvtColor(origin_img, cv2.COLOR_BGR2RGB) Red_img, Green_img, Blue_img = cv2.split(RGB_img) R채널만 출력 G채널만 출력 B채널만 출력 실제 표현되는 색상과 유사하게 보려면 Blue채널 이외는 0 으로 바꾼다. 2022. 3. 23.
1_5 Colab에서 영상 불러오기 영상 불러오기 구글 코랩에서 기본 작업 후, 영상을 구글 드라이브에 올리고 새파일로 복사하는 과정이다. 구글드라이브 마운트 from google.colap import drive drive.mount('/content/drive') 또는 이렇게해도 된다. drive.mount('drive') 영상 올리기 from Google.colab.patches import cv2_imshow import cv2 img = cv2.imread('./lena.jpg') cv2_imshow(img) 이미지 새 이름으로 복사하기 cv2.imwrite('/lena2.jpg', img) 같은 디렉터리에 두 파일이 있다. 원본 'Lena.jpg', 사본 'lena2.jpg'. 2022. 3. 23.