适合的QImage格式

时间:2013-05-13 11:50:12

标签: c++ visual-studio-2010 qt opencv

我有一个频道图片,想要在QImage中显示

IplImage *img=cvCreateImage(cvSize(640, 480), IPL_DEPTH_8U, 1);

知道从IplImage *转换为QImage时,我做了以下内容:

uchar* img_d=(uchar*) img->imageData;
    QImage img_direction((uchar*)img_d, img->width, img->height, QImage::Format_Mono);

我不太确定我设置的Mono格式,即使显示的QImage也会被打乱!

对于B& W图像的情况,合适的QImage格式是什么?

1 个答案:

答案 0 :(得分:2)

Qt的Mono格式是每像素1位。

唯一的8位格式为QImage::Format_Indexed8,因此您需要创建一个包含256个灰色的颜色表并将其传递给QImage::setColorTable

表格可以这样填写:

QVector<QRgb> colorTable;
for(int i=0; i<256; ++i)
   colorTable << qRgb(i,i,i);