C++ openCV 이미지, 비디오 읽기
2019. 10. 20. 14:40ㆍ임베디드/opencv
이미지를 읽는 방법은 아래 코드와 같다. 반드시 파일은 프로젝트와 같은 디렉토리에 있어야 한다
Mat img = imread("ss.jpg"); // 두번째 인자에 0을 넣으면 grayscale 채널 하나로 읽음
namedWindow("img", 0); // make window, 두번째 인자가 0이면 사이즈가 조절 가능 1이면 불가능
imshow("img", img); // window 이름을 써준다
waitKey(0); // ms 단위로 대기한다. 0이면 무한대기
콘솔창이 아닌 img 창을 활성화하고 key를 눌러야 한다
//file load
VideoCapture capture(".\\video.avi");
Mat frame;
//check
if( !capture.isOpened() )
{
printf("AVI file can not open.\n");
return;
}
//create window
namedWindow("w");
while(1)
{
//grab frame from file & throw to Mat
capture >> frame;
if(frame.empty() ) //Is video end?
break;
//processing example
Sobel(frame,frame,frame.depth(),1,0);
////////////////////
//display and delay
imshow("w", frame);
if(waitKey(10) > 0)
break;
}
[소스코드 출처] http://study.marearts.com/2013/09/opencv-video-file-load-and-display.html
waitKey의 반환값은 누르는 키 값에 따라서 달라진다
[출처] http://study.marearts.com/2016/11/keycode-and-ascii-code.html
'임베디드 > opencv' 카테고리의 다른 글
histogram이 중요한 이유 (0) | 2019.10.20 |
---|---|
영상 이진화를 하는 이유 (0) | 2019.10.20 |
opencv 4.1.1 사용하기 (0) | 2019.10.18 |
matplotlib RGB 변환을 해야하는 이유 (0) | 2019.08.29 |
opencv-python 영상파일 읽기 및 화면 표시 (0) | 2019.08.29 |