void OpenCVStudy::slot_ProcessImage()
{
Mat ResImg;
cvtColor(srcimg, ResImg, COLOR_BGR2GRAY);
Mat dstImage = ResImg.clone();
for (int k = 0; k < 500; k++)
{
//随机取值行列
int i = rand() % dstImage.rows;
int j = rand() % dstImage.cols;
int m = rand() % dstImage.rows;
int n = rand() % dstImage.cols;
//图像通道判定
if (dstImage.channels() == 1)
{
//添加灰度值为255的噪声点
dstImage.at<uchar>(i, j) = 255;
//添加灰度值为0的噪声点
dstImage.at<uchar>(m, n) = 0;
}
else
{
dstImage.at<Vec3b>(i, j)[0] = 255;
dstImage.at<Vec3b>(i, j)[1] = 255;
dstImage.at<Vec3b>(i, j)[2] = 255;
dstImage.at<Vec3b>(m, n)[0] = 0;
dstImage.at<Vec3b>(m, n)[1] = 0;
dstImage.at<Vec3b>(m, n)[2] = 0;
}
}
QImage disImage;
matToQImage(dstImage, disImage);
ui.labelResult->setPixmap(QPixmap::fromImage(disImage));
ui.labelResult->setScaledContents(true);
}
关注公众号,更多知识内容