Qt与OpenCV图像的压缩与传输

本文详细介绍了如何使用Qt和OpenCV进行图像压缩和传输。通过QImage和QBuffer实现Qt版本的图像压缩,然后在接收方解压并保存。OpenCV方面,利用imencode和imdecode进行JPEG质量压缩和解码。实验结果显示,Qt能够将图像从6.2MB压缩到170KB,压缩比高达49倍。
摘要由CSDN通过智能技术生成

1、Qt版本: 6.2MB 压缩成 170KB,  49倍
(1)、发送方
QImage image("/home/maya/Desktop/image/IMG00054.BMP");
QBuffer buf;
buf.open(QIODevice::ReadWrite);
image.save(&buf,"JPG");  //用于直接将 image 压缩后 保存在 QByteArray 中

QByteArray ba = buf.data(); //发送出去
buf.close();
qDebug() << image.byteCount() << ba.size() << image.byteCount() / ba.size();

(2)、接收方
QPixmap pix;
pix.loadFromData(ba, "JPG");
pix.save("/home/maya/Desktop/image/111.jpg");

QImage img;
img.loadFromData(ba, "JPG");
img.save("/home/maya/Desktop/image/222.jpg");

2、OpenCV版本:

(1)、发送方
Mat mat1 = imread("/home/maya/Desktop/image/IMG00054.BMP", CV_LOAD_IMAGE_COLOR);
vector<int> param = {C

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mark-puls

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值