// learningOpenCV_4_4.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include<highgui.h>
#include<cv.h>
CvCapture* g_capture=NULL;
int g_frame_count=0;
int g_slider_pos=0;
int g_slider_pos1=0;
bool t=true;
void on_TrackbarSlider(int pos)
{
cvSetCaptureProperty(g_capture,CV_CAP_PROP_POS_FRAMES,pos);
g_frame_count=pos;
}
void switch_callback(int position)
{
if(position==0)
t=false;
else
t=true;
}
int _tmain(int argc, _TCHAR* argv[])
{
cvNamedWindow("show");
g_capture=cvCreateFileCapture("E:\\数字信号处理\\1离散时间信号与系统.flv");
int frames=0;
frames=(int)cvGetCaptureProperty(g_capture,CV_CAP_PROP_FRAME_COUNT);
if(frames!=0)
{
cvCreateTrackbar("trackbar","show",&g_slider_pos,frames,on_TrackbarSlider);
cvCreateTrackbar("trackbar1","show",&g_slider_pos1,1,switch_callback);
}
cvSetTrackbarPos("trackbar","show",1);
cvSetTrackbarPos("trackbar1","show",1);
IplImage* frame;
while(1)
{
frame=cvQueryFrame(g_capture);
if(frame==0)
break;
char c=cvWaitKey(33);
if(c==27)
break;
if(t)
{
cvShowImage("show",frame);
cvSetTrackbarPos("trackbar","show",g_frame_count);
g_frame_count++;
}
else
{
cvSetCaptureProperty(g_capture,CV_CAP_PROP_POS_FRAMES,g_frame_count);
}
}
cvReleaseCapture(&g_capture);
cvDestroyAllWindows();
return 0;
}
学习OpenCV第四章第四题答案
最新推荐文章于 2022-11-01 19:29:37 发布