日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

qimage加载jpg失败_QImage基本api

發布時間:2023/12/20 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 qimage加载jpg失败_QImage基本api 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

QImage這個類之前用過,無外乎是加載一個圖片文件顯示出來,并沒有做過多的研究,目前工作中用到了灰度圖以及圖片的像素操作,重新學習了下,記錄記錄。

一些基本操作方法

  • 獲取圖像的首地址:
const uchar *QImage::bits() const
  • 獲取圖像的總字節數
int QImage::byteCount() const
  • 獲取圖像每行字節數
int QImage::bytesPerLine() const 還可以這樣計算(width:圖像寬度,img.depth是圖圖像深度):int bytePerLine = (width * img.depth() + 31) / 32 * 4;
  • 存入圖像,格式為R,G,B,A(0,1,2,3)
QImage::Format_RGB32
  • 存入圖像,格式為R,G,B(0,1,2)
QImage::Format_RGB888
  • 存入圖像,此時需要設定一張顏色表QVector,如下
QImage::Format_Indexed8 灰度顏色表:QVector vtrColor;for(int k = 0;k < 256;++k){` vtrColor.push_back( qRgb(k,k,k) );}

相關概念

灰度圖

普通彩色圖片中每個像素中有R、G、B三個分量,而每個分量有256種(0~255)值可以選擇,這樣一個像素點就可以有1600多萬(255255255)的顏色變化范圍。

而灰度圖就是R、G、B三分分量的值相同的一種特殊彩色圖像。即R=G=B.

位深

位深是指存儲每個像素所用的位數.

如上面介紹的QImage方法,img.depth(),該方法可以返回當前圖像的位深.

處理算法

  • 常規處理
unsigned char *grayData; QImage img; img.load (m_strPath+"/2.jpg"); QPixmap pixmap(QPixmap::fromImage (img)); ui->label->setPixmap (pixmap); unsigned char *data = img.bits (); int w = img.width (); int h = img.height (); int bytePerLine = (w * 24 + 31) / 8; //存儲處理后的數據 grayData = new unsigned char [bytePerLine * h]; unsigned char r,g,b; for ( int i = 0; i < h; i++ ) { for ( int j = 0; j < w; j++ ) { r = *(data + 2); g = *(data + 1); b = *data; grayData[i * bytePerLine + j * 3] = (r * 30 + g*59 +b*11)/100; grayData[i*bytePerLine+j*3+1]=(r*30+g*59+b*11)/100; grayData[i*bytePerLine+j*3+2]=(r*30+g*59+b*11)/100; data+=4; //ui->textEdit->append (QString("%1 %2 %3").arg (r).arg (g).arg (b)); } } QImage grayImage(grayData,w,h,bytePerLine,QImage::Format_RGB888); QPixmap pixmap2(QPixmap::fromImage (grayImage)); ui->label_2->setPixmap (pixmap2);

最終效果

總結

以上是生活随笔為你收集整理的qimage加载jpg失败_QImage基本api的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。