본문 바로가기

분류 전체보기144

[openCV] 메모리 관리 및 픽셀 엑세스 openCV상에서 메모리 관리 방법은 두 가지가 있다. 1. shallow copy Mat은 header와 data 부분으로 구성되는데 shallow copy의 경우는 header에 포함되어 있는 데이터의 주소값만이 copy된다. ‘=’이라는 등호를 사용하여 copy copyTo라는 함수 사용 가능하다. (입력 매트릭스와 결과 매트릭스의 데이터 타입과 크기가 같으면 주소값만이 복사가 이루어지고 아니면 deep copy) 2. deep copy Clone() 함수를 사용하여 copy 데이터 변경 시 shallow copy와 다르게 deep copy를 수행하면 변경되지 않는다. 픽셀 접근 방법은 4가지가 있다. 1. by using at operator Image.at (WANT_ROW,WANT_COL) 안.. 2020. 1. 11.
[openCV] Drawing함수 Rectangle 사각형을 그리는 함수 Void rectangle(Mat &img,point pt1,point pt2,const scalar& color, int thickness=1,int lineType=8,int shift=0) -> 사각형의 양 꼭짓점의 좌표를 넣어준다 Shift : 보다 사각형을 정교하게 그리고 싶을 때 사용, 중요하지 않음 Void rectangle(Mat &img,Rect rec ,const scalar& color, int thickness=1,int lineType=8,int shift=0) Rect라는 데이터 구조 활용하여 사각형 정의 Rect(x_Lt,y_LT,width,height) Line/Circle Void line(Mat& img, Point pt1, Poin.. 2020. 1. 11.
[openCV] Mat연산자 컬러 공간 변환 void cvtColor(Mat src, Mat dst, int code, int dstCn=0) src는 입력 영상, dst는 출력 영상, code는 컬러 변환 코드, dstCn은 출력 영상의 채널 수이다. code는 CV_BGR2GRAY,VB_BGR2HSV,CV_BGR2YCrCb… 등으로 아래 표가 주요 컬러 변환 코드이다. 입력 영상(src) 변환 코드(code) 출력 영상(dst) BGR cv2.COLOR_BGR2GRAY GRAY GRAY cv2.COLOR_GRAY2BGR BGR BGR cv2.COLOR_BGR2HSV HSV HSV cv2.COLOR_HSV2BGR BGR BGR cv2.COLOR_BGR2YCrCb YCrCb YCrCb cv2.COLOR_YCrCb2BGR BGR im.. 2020. 1. 11.
[openCV] openCV기초 Mat - 영상을 표현하기 위한 기본 데이터 타입 - 행렬의 약어 Matrix - 영상은 픽셀로 표현하는데 2차원 배열로 표현 가능 4가지 옵션 - Mat(int rows, int cols, int type) 행의 개수, 열의 개수, 데이터 타입 - Mat(Size size, int type) 매트릭스 크기, 각 픽셀의 크기 - Mat(const Mat & m) 이미 선언되어 있는 m크기를 가지는 매트릭스를 복사해오는 매트릭스 선언 - Mat (Size size, int type, const Scalar&s) 매트릭스 크기, 각 픽셀의 크기, 각 픽셀에 할당 값 가장 많이 쓰이는 픽셀 타입 CV_8U/ CV_8UC3 - CV : 컴퓨터 비전 약어 - 8 : 하나의 픽셀의 값을 표현하기 위한 비트 수가 8.. 2020. 1. 7.
[openCV] 색공간의 이해 영상에서 색상을 표현하는데에 빛의 삼원색 (green,red,blue) 을 사용한다. - 색의 삼원색 (magenta, yellow, cyan) - 무채색 (색상정보가 존재하지 않은 컬러, 각각 색상 구성요소의 비율이 같은 색) 1. RGB [0,255]로 색상 표현이 가능 red (255,0,0) / openCV에서는 bgr순서 white (255,255,255) black (0,0,0) =>흰색과 검정색을 잇는 직선 사이의 색상들이 무채색 2. HSI Hue, Saturation, Intensity 모델로 정의 intensity - 색상 정보가 아닌 밝기의 세기 Hue - 색조, 가장 결정적인 색상의 파장 saturation - 상대적인 색상의 순도 HSI=HSV S가 크면 선명하고 I가 크면 밝다. 0 2020. 1. 6.
[openCV] 디지털 영상과 디지털 비디오 1. 디지털 이미지/영상 - 디지털 영상은 픽셀로 이루어진다. *픽셀(picture element) : 영상 사진에 대한 정보를 담고 있는 가장 작은 단위 - 픽셀은 여러 개의 값을 가질 수 있고 픽셀의 위치는 2차원 자표로 표현된다. - 영상은 빛의 삼원색으로 색상을 표현 (RGB) =>컬러 영상일 경우 세 개의 값을 가짐 / 단, 흑백 영상의 경우 하나의 값 - 픽셀 좌표는 (0,0)부터 시작하고 아래 방향이 (0,1), 오른쪽 방향이 (1,0) 2. 디지털 비디오 - 비디오는 영상들의 집합으로 이루어진다. - 영상은 짧은 간격으로 촬영이 된다 (일반적으로 33밀리 세컨드) frame rate = 1초에 촬영된 영상의 수 / 1초에 60개이면 frame rate는 60fps(frame per sceo.. 2020. 1. 6.