✅作者简介:热爱科研的算法开发者,Python、Matlab项目可交流、沟通、学习。
????个人主页:算法工程师的学习日志
今天在做项目的时候,遇到一个参数的选择,需要实时看参数变化对结果影响,查阅资料看到OpenCV的滑动条,故分享一篇文章
滑动条(Trackbar)是一种可以动态调节参数的工具,它依附于窗口而存在。
createTrackbar() 这个函数用于创建一个可以调整数值的滑动条,并将滑动条附加到指定的窗口上。
函数功能:创建trackbar并添加到指定窗口
函数原型:
intcvCreateTrackbar( const char* trackbar_name, const char* window_name, int* value, intcount, CvTrackbarCallback on_change );
函数说明:
第一个参数表示该trackbar的名称。
第二个参数表示窗口名称,该trackbar将显示在这个窗口内。
第三个参数表示创建时滑块的位置。
第四个参数表示滑块位置的最大值,最小值固定为0。
第五个参数表示回调函数。当滑块位置有变化时,系统会调用该回调函数。
注:被创建的trackbar默认显示在指定窗口的顶端,可以通过函数cvGetTrackbarPos()来获取trackbar显示的位置信息,以及通过函数cvSetTrackbarPos()来重新设置trackbar的显示位置。
CvTrackbarCallback
函数功能:cvCreateTrackbar()函数所使用的回调函数
函数定义:
typedef void (CV_CDECL *CvTrackbarCallback)(int pos)
函数说明:
当trackbar位置被改变的时,系统会调用这个回调函数,并将参数pos设置为表示trackbar位置的数值。
在这里通过一个Canny算子参数作为例子分享。