여기서는 OpenCV를 사용하여 경과 시간을 계산하는 방법을 이해합니다.
다음 프로그램은 C++를 사용하여 OpenCV에서 경과 시간을 계산합니다.
예시
#include<opencv2/opencv.hpp>//OpenCV header to use VideoCapture class// #include<iostream> using namespace std; using namespace cv; int main() { Mat myImage;//Declaring a matrix to load the frames// namedWindow("Video Player");//Declaring the video to show the video// VideoCapture cap("video.mp4");//Declaring an object to load video from device// if (!cap.isOpened()){ //This section prompt an error message if no video stream is found// cout << "No video stream detected" << endl; system("pause"); return-1; } while (true){ //Taking an everlasting loop to show the video// cap >> myImage; int elapsed_time;//Declaring an integer variable to store the elapsed time// elapsed_time=cap.get(CAP_PROP_POS_MSEC);//Reading the elapsed time// cout << "Ellapsed time(in second):" << elapsed_time / 1000 << endl;//Showing the elapsed time in seconds// if (myImage.empty()){ //Breaking the loop if no video frame is detected// break; } imshow("Video Player", myImage);//Showing the video// char c = (char)waitKey(25);//Allowing 25 milliseconds frame processing time and initiating break condition// if (c == 27){ //If 'Esc' is entered break the loop// break; } } cap.release();//Releasing the buffer memory// return 0; }
이 프로그램은 비디오를 재생하고 콘솔 창에 경과 시간을 표시합니다.
출력