Search
Duplicate

OpenCV로 배우는 영상 처리 및 응용/ OpenCV 인터페이스 기초/ 사용자 인터페이스 및 I/O 처리

윈도우 창 제어

Search
반환형
이름
파라미터
내용
void
const string& winname, int floats = WINDOW_AUTOSIZE
윈도우의 이름을 설정하고 해당 이름으로 윈도우를 생성한다.<윈도우의 크기 조정 옵션>WINDOW_NORMAL – 0 – 윈도우의 크기 재조정 가능WINDOW_AUTOSIZE – 1 – 표지될 행렬의 크기에 맞춰 자동 설정WINDOW_OPENGL – 8 – OpenGL을 지원하는 윈도우 생성
void
imshow()
Open
const string& winname, InputArray mat
Winname 이름의 윈도우에 mat 행렬을 영상으로 표시한다.해당 이름의 윈도우가 없으면 winname 이름으로 창을 생성하고, 영상을 표시한다.
void
destroyWindow()
Open
const string& winname
인수로 지정된 타이틀의 윈도우를 파괴한다.
void
destroyAllWindows()
Open
HighGUI로 생성된 모든 윈도우를 파괴한다.
void
moveWindow()
Open
const string& winname, int x, int y
Winname 이름의 윈도우를 지정된 위치(x, y)로 이동시킨다. 이동되는 윈도우의 기준 위치는 좌상단이다.
void
resizeWindow()
Open
const string& winname, int width, int height
윈도우의 크기를 재설정한다.

이벤트 처리 함수

Search
반환형
이름
파라미터
내용
int
waitKey
Open
int delay = 0
delay(ms) 시간만큼 키 입력 대기하고, 키 이벤트가 발생하면 해당 키 값을 반환한다.
void
setMouseCallback()
Open
const string& winname, MouseCallback onMouse, void* userdata = 0
사용자가 정의한 마우스 콜백함수를 시스템에 등록하는 함수
void
(*MouseCallback)()
Open
발생한 마우스 이벤트에 대해서 처리 및 제어를 구현하는 콜백 함수이다.setMouseCallback() 함수의 두 번째 인수(함수포인터)의 구현 부이기 때문에 함수명이 인수명과 같아야 한다typedef 통해서 함수포인터로 정의되어 있어 인수의 구조를 유지해야 함
int
createTrackbar()
Open
const string& trackbarname, const string& winname, int value, int count, TrackarCallback onChange = 0, Void* userdata = 0
트랙바를 생성하고, 그것을 지정된 윈도우 창에 추가하는 함수
int
getTrackbarPos()
Open
지정된 트랙바의 슬라이더 위치를 반환 받는다
void
setTrackbarPos()
Open
지정된 트랙바의 슬라이더 위치를 설정한다.

그리기 함수

Search
반환형
이름
파라미터
내용
void
line
Open
Mat& img, Point pt1, Point pt2, const Scalar& color, int thickness = 1, int lineType = 8, int shift = 0
선 그리기
void
rectangle
Open
Mat& img, Point pt1, Point pt2, const Scalar color, int thickness = 1, int lineType = 8, int shift = 0
사각형 그리기
void
rectangle
Open
Mat& img, Rect rec, const Scalar color, int thickness = 1, int lineType = 8, int shift = 0
사각형 그리기
void
putText
Open
Mat& img, const string& text, Point org, Int fontFace, double fontSacle, Sclar color, int thickness = 1, int lineType = 8, bool bottomLeftOrigin = false
글자 쓰기
void
circle
Open
Mat& img, Point center, int radius, const Scalar& color, int thickness = 1, int lineType = 8, int shift = 0
원 그리기
void
ellipse
Open
Mat& img, Point center, Size axes, double angle, double startAngle, double endAngle, const Scalar& color, int thickness = 1, int lineType = 8, int shift = 0
타원 그리기
void
ellipse
Open
Mat& img, const RotatedRect& box, const Scalar& color, int thickness = 1, int lineType = 8, int shift = 0
타원 그리기

이미지 파일 처리

Search
반환형
이름
파라미터
내용
Mat
Open
imread()
const string& filename, int flags = 1
지정된 파일로부터 영상을 로드하여 Mat 클래스로 반환한다
bool
Open
imwrite()
const string* filename, InputArray img, const vector<int>& params = vector<int>()
지정된 파일에 img 행렬을 영상으로 저장한다.

비디오 처리

VideoCapture

Search
반환형
이름
파라미터
내용
Open
VideoCapture()
생성자
bool
Open
open()
동영상 캡쳐를 위한 동영상 파일 혹은 캡쳐 장치를 개방한다.
bool
Open
isOpened()
캡쳐 장치의 연결 여부를 반환한다.
bool
Open
release()
동영상 파일이나 캡쳐 장치를 해제한다.
double
Open
get()
비디오 캡쳐의 속성 식별자로 지정된 속성의 값을 반환한다. 캡쳐 장치가 제공하지 않는 속성은 0을 반환한다.
bool
Open
set()
지정된 속성식별자로 비디오캡쳐의 속성을 설정한다.
bool
Open
grab()
캡쳐 장치나 동영상 파일로부터 다음 프레임을 잡는다.
bool
Open
retrieve()
grab()으로 잡은 프레임을 디코드해서 image 행렬로 전달한다.
bool
Open
read(), >>
다음 동영상 프레임을 잡아서 디코드하고 image 행렬로 전달한다. 즉, grab()과 retrieve()를 동시에 수행한다.

VideoWriter

Search
반환형
이름
파라미터
내용
Open
VideoWriter
생성자
bool
Open
open()
영상을 동영상 파일의 프레임으로 저장하기 위해 동영상 파일을 개방한다.
bool
Open
isOpened()
동영상 파일 저장을 위해 VideoWriter 객체의 개방 여부를 확인한다.
void
Open
write(), <<
image 행렬(프레임)을 동영상 파일로 저장한다.

데이터의 파일 저장 및 읽기

FileStorage

Search
반환형
이름
파라미터
내용
Open
FileStorage()
생성자
bool
Open
open()
파일 열기
bool
Open
isOpened()
클래스에 지정된 파일이 열려 있는지 확인.
bool
Open
release()
파일을 닫고 모든 메모리 버퍼를 해제한다.
void
Open
writeRaw()
다중의 숫자들을 저장한다. 데이터를 raw 파일로 저장한다.

FileNode

Search
반환형
이름
파라미터
내용
Open
FileNode()
생성자
string
Open
name()
노드 이름을 반환한다.
size_t
Open
size()
노드에서 원소의 개수를 반환한다.
bool
Open
empty()
노드가 비어있는지 확인한다.
bool
Open
isNamed()
노드가 이름이 있는지 확인한다.
bool
Open
isNone()
노드가 “none” 객체인지 확인한다.
bool
Open
isInt() isReal()
노드타입이 정수형, 실수형인지 확인한다.
bool
Open
isString()
노드타입이 문자열형인지 확인한다.
bool
Open
isMap(), isSeq()
노드의 종류가 매핑인지 시퀀스인지 확인한다.