동영상에서 에지 검출하기
c++)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | #include <opencv/cv.h> #include <opencv/highgui.h> void main() { IplImage *frame = 0; IplImage *edge = 0; //cvCaptureFromFile(파일명) : 동영상 파일 불러오기 CvCapture *video = cvCaptureFromFile("D:/study/su.avi"); cvNamedWindow("edge", CV_WINDOW_NORMAL); while (1) { //cvGrabFrame(동영상) : 하나의 프레임을 잡음 cvGrabFrame(video); //cvRetrieveFrame(동영상) : 잡은 프레임으로부터 이미지를 구함 frame = cvRetrieveFrame(video); if (!frame || cvWaitKey(10) >= 0) { break; } //에지 이미지객체 생성 edge = cvCreateImage(cvGetSize(frame), IPL_DEPTH_8U, 3); //에지(edge) : 밝기가 낮은값에서 높은값으로, 높은값에서 낮은값으로 변화하는 경계에 해당되는 부분 //cvSobel(원본이미지, 에지이미지, x방향 미분, y방향 미분, 커널크기) : 에지검출함수 cvSobel(frame, edge, 1, 1, 3); //이미지 보여주기 cvShowImage("edge", edge); } //cvReleaseCapture(해제할 동영상) : 메모리에서 동영상 해제 cvReleaseCapture(&video); //이미지 해제 cvReleaseImage(&frame); cvReleaseImage(&edge); //윈도우 해제 cvDestroyWindow("edge"); } | cs |
결과
에지형태의 동영상이 보여진다
'IT > - 프로그래밍' 카테고리의 다른 글
OpenCV 동영상에 자막 넣기 (0) | 2017.05.15 |
---|---|
OpenCV 동영상 저장하기 (0) | 2017.05.14 |
OpenCV 컬러영상을 흑백영상으로 변환하기 (0) | 2017.05.12 |
OpenCV 동영상 재생하기 (0) | 2017.05.11 |
OpenCV 침식연산, 팽창연산의 확장 (0) | 2017.05.10 |