• 5011阅读
  • 2回复

[提问]Qt处理灰度图像的问题 [复制链接]

上一主题 下一主题
离线yzpdsg
 

只看楼主 倒序阅读 楼主  发表于: 2011-07-25
这是原图

这是我读取后的图像。为什么读取的不对呢?

一下是我读取的代码:
#define WIDTH 270
#define HEIGHT 90
FILE *fp;
    if((fp = fopen("11","rb")) == NULL)
        QMessageBox::critical(this,tr("error"),tr("open file failed."),QMessageBox::Ok);
    else
    {
        int count = fread(pixmap,1,WIDTH*HEIGHT,fp);//>>>>>>
        fclose(fp);
        QImage image(pixmap,WIDTH,HEIGHT,QImage::Format_Indexed8);//>>>>>>
        QVector<QRgb> colorTable;
        for(i = 0; i < 256; i++)
        {
            colorTable.push_back(qRgb(i,i,i));
        }
        image.setColorTable(colorTable);
        QPixmap pm = QPixmap::fromImage(image);
        ui->label->setPixmap(pm);
    }


离线roywillow

只看该作者 1楼 发表于: 2011-07-25
似乎主要代码是给图像设置调色板的啊……
QImage image(pixmap,WIDTH,HEIGHT,QImage::Format_Indexed8);//
你是通过这个来创建一个image的?
先确认一下pixmap这个变量里的内容是不是满足这个函数的参数要求吧
可以很明显的看出生成图像的前几行在原图中似乎是不存在的,然后导致后面的内容错开,图像就扭曲了吧
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线yzpdsg

只看该作者 2楼 发表于: 2011-07-25
回 1楼(roywillow) 的帖子

原图丢失了一些信息,现在这张才是完整的。

这段代码我原来使用过,是可以正常工作的。只是当时使用的是其他图片。
快速回复
限100 字节
 
上一个 下一个