将色彩映射应用于单色QImage(pyqt5)

时间:2018-06-07 10:49:21

标签: python pyqt qgraphicsscene qimage colormap

我尝试创建一个简单的GUI,通过使用色彩图将单个带图像(在我的特定情况下为DEM - 数字地形模型)显示为彩色图像。我使用python3,pyqt5,gdal和numpy。通过使用 qimage2ndarray 模块将numpy数组转换为QImage,实际显示单色图像相对容易。有没有办法将色彩图添加到此QImage中,因此添加到Qgraphicscene时是否以灰度显示? (就像matplotlib能做的那样)

我使用的代码(加载器功能和显示功能)

def ofdlgDEM(self): #open a DEM with the GUI
    DEMname = str(QtWidgets.QFileDialog.getOpenFileName(None, "Open Data File", '.', "(*.tif)")[0])
    self.demPathText.setText(DEMname)
    self.demholder=gdal.Open(DEMname, gdal.GA_ReadOnly)
    self.demdata=self.demholder.ReadAsArray() # the DEM is a numpy array now

def showdemfun(self): # Display the DEM in the GUI
    self.demQImage=qimage2ndarray.array2qimage(self.demdata, normalize=(0, self.demdata.max()))
    self.newscene=NewScene() # A class that simply initializes a new QGraphicsScene
    self.newscene.addPixmap(QtGui.QPixmap.fromImage(self.demQImage)) # I think this is where the colormap should be introduced
    self.graphview.setScene(self.newscene)

0 个答案:

没有答案