opencv创建进度条使用userdata

xiaoxiao2021-02-28  28

#include<iostream> #include<opencv2/highgui.hpp> #include<opencv2/core.hpp> #include<opencv2/imgproc.hpp> using namespace std; using namespace cv; int definePos=50; char str[]="Hello"; void onTrackbar_src(int pos, void *userdata) { imshow("src",*(Mat *)userdata*pos/100.0);//使用userdata,先强制转换格式,然后此函数要求传入内容,所以还要取内容符,第三步 } int main() { Mat src=imread("/home/shensy/图片/fangzi1.jpg",IMREAD_ANYCOLOR); if(!src.data) return -1; Mat *psrc=&src;//指针指向图片,第一步 namedWindow("src"); createTrackbar("亮度","src",&definePos,100,onTrackbar_src,psrc);//将图片指针传入userdata,第二步 putText(src,str,Point(100,100),FONT_HERSHEY_SIMPLEX,4,Scalar(0,0,255),3); imshow("src",src*getTrackbarPos("亮度","src")/100.0); waitKey(0); return 0; }
转载请注明原文地址: https://www.6miu.com/read-2629726.html

最新回复(0)