Qt图片的显示示例

QPixmap OpenCV40_VC14_Qt58::ImageToPixmap(const Mat cvimage)
{
	QPixmap pixmap;
	QImage *qimage = NULL;

	if (1 == cvimage.channels())
	{
		uchar *imgData = (uchar *)cvimage.data;
		qimage = new QImage(imgData, cvimage.cols, cvimage.rows, cvimage.step
			, QImage::Format_Indexed8);
		pixmap = QPixmap::fromImage(*qimage);
	}
	else if (3 == cvimage.channels())
	{
		Mat img(cvimage.cols, cvimage.rows, cvimage.depth());
		cvtColor(cvimage, img, COLOR_BGR2RGB);
		uchar *imgData = (uchar *)img.data;
		qimage = new QImage(imgData, cvimage.cols, cvimage.rows, cvimage.step
			, QImage::Format_RGB888);
		pixmap = QPixmap::fromImage(*qimage);
	}

	return pixmap;
}

void OpenCV40_VC14_Qt58::ShowImage(cv::Mat color_img)
{
	// Judge the if the image is empty.
	if (color_img.empty())
	{
		return;
	}
	QLabel *lbl_show_img = NULL;
	lbl_show_img = ui.label_show;
	lbl_show_img->setPixmap(ImageToPixmap(color_img));
	lbl_show_img->setScaledContents(true);
	lbl_show_img->show();


}

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值