opencv用for循环创建滑动条调参数-createTrackbar、inRange函数

不需要写回调函数,可方便调节各种预处理API的参数

#include<opencv2/core.hpp>
#include<opencv2/highgui.hpp>
#include<opencv2/imgproc.hpp>
#include<iostream>
using namespace cv;
using namespace std;
int hmin=0,smin=0,vmin=0,hmax=0,smax=0,vmax=0;
int main()
{
    
    
    Mat src,src_hsv,src_gauss,dst;
    VideoCapture cap(0);
   for(;;)
   {
    
    
    cap.read(src);
    imshow("原视频",src);
    cvtColor(src,src_hsv,COLOR_BGR2HSV);
    GaussianBlur(src_hsv,src_gauss,Size(5,5),10,10);
    createTrackbar("hmin","w",&hmin,180,NULL);
    createTrackbar("smin","w",&smin,255,NULL);
    createTrackbar("vmin","w",&vmin,255,NULL);
    createTrackbar("hmax","w",&hmax,180,NULL);
    createTrackbar("smax","w",&smax,255,NULL);
    createTrackbar("vmax","w",&vmax,255,NULL);
    inRange(src_gauss,Scalar(hmin,smin,vmin),Scalar(hmax,smax,vmax),dst);
    imshow("w",dst);
    if(waitKey(10)==27){
    
    
        break;}
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/seniorc/article/details/112210841