在说明如何给视频中添加进度条之前,先要解释下回调函数:
打个比方,有一家旅馆提供叫醒服务,但是要求旅客自己决定叫醒的方法。可以是打客房电话,也可以是派服务员去敲门,睡得死怕耽误事的,还可以要求往自己头上浇盆水。这里,“叫醒”这个行为是旅馆提供的,相当于库函数,但是叫醒的方式是由旅客决定并告诉旅馆的,也就是回调函数。而旅客告诉旅馆怎么叫醒自己的动作,也就是把回调函数传入库函数的动作,称为登记回调函数(to register a callback function),如图所示:

之所以先介绍回调函数,是因为创建轨迹条的函数createTrackbar常常与一个回调函数配合使用。函数原型如下:
int createTrackbar(conststring& trackbarname, conststring& winname, int* value, int count, TrackbarCallback onChange=0,void* userdata=0);
第一个参数,const string&类型的trackbarname,表示轨迹条的名字,用来代表我们创建的轨

本文介绍了如何在OpenCV中利用createTrackbar创建进度条并配合回调函数onChange,实现在视频处理中控制播放进度的功能。虽然当前进度条不会自动更新,但可以通过手动拖动调整视频位置。
最低0.47元/天 解锁文章
6190

被折叠的 条评论
为什么被折叠?



