Multiple center points are known in qt, and the center point is passed into a two-dimensional vector, and the hsv value and rgb value near the center point (including the center point rectangle) are traversed

Multiple center points are known in qt, and the center point is passed into a two-dimensional vector, and the hsv value and rgb value near the center point (including the center point rectangle) are traversed

vector<int> vec10;//用于存放中心x
vector<int> vec11;//用于存放中心y
vector< vector<int> > centers;

centers.push_back(vec10);//将一维vector推入二维vector centers
centers.push_back(vec11);//将一维vector推入二维vector  centers

qDebug()<< "vector的个数:" <<centers.size()<< Qt::endl; //其实就是2,因为是两个vector组成  [vec10] [vec11]] //打印出vector的个数

 qDebug()<< "第一个中心x:" <<centers[0][0]<< Qt::endl;
 qDebug()<< "第一个中心y:" <<centers[1][0]<< Qt::endl;
         
 for (int i = 0; i < centers.size(); i++)
              {
            for(int j = 0; j < centers[0].size(); j++){
                qDebug()<< "中心x:" <<centers[0][j]<< Qt::endl;
                qDebug()<< "中心y:" <<centers[1][j]<< Qt::endl;
                for (int k =centers[0][j]-100; k <=centers[0][j]+100; k++)
                            {
                                for (int f = centers[1][j]-100; f <=centers[1][j]+100; f++)
                                {
                                    Point p;
                                    p.x = k;
                                    p.y = f;
     qDebug()<<" hsv像素检测:"<<  hsv_img.at<Vec3b>(k,f)[0]*1 << "-"<<hsv_img.at<Vec3b>(k,f)[1]/1<<"-"<<hsv_img.at<Vec3b>(k,f)[2]/1<<"-----";//hsv_img为mat存储的hsv格式图像  打印出某个点hsv像素
     qDebug()<<" rgb像素检测:"<< rgb_img.at<Vec3b>(k,f)[0]*1 << "-"<<rgb_img.at<Vec3b>(k,f)[1]/1<<"-"<<rgb_img.at<Vec3b>(k,f)[2]/1<<"-----";//hsv_img为mat存储的rgb格式图像  打印出某个点rgb像素
     }
     }

Guess you like

Origin blog.csdn.net/qq_43207709/article/details/112577474