在Qt中使用OpenCV库,下面是轮廓处理的程序
void SecondWindow::on_pushButton_4_clicked()
{
Mat showMat(frame); //frame是视频取到一帧的图像
Mat imgHSV;
IplImage *gray; //申请IplImage类型指针
gray = cvCreateImage(cvGetSize(frame),IPL_DEPTH_8U, 1);
cvtColor(showMat, imgHSV, COLOR_BGR2HSV); //BGR->HSV
GaussianBlur( imgHSV, imgHSV, Size( 5, 5 ), 0, 0 ); //图像进行高斯滤波
for(int i=0;i<imgHSV.rows;i++) //提取需要的颜色
{
for(int j=0;j<imgHSV.cols;j++)
{
int H = imgHSV.at<Vec3b>(i,j)[0] ;
int S = imgHSV.at<Vec3b>(i,j)[1];
int V = imgHSV.at<Vec3b>(i,j)[2];
if((H>15