Я использую skimage для некоторых манипуляций с изображениями с помощью их манипуляций с numpy. Я могу посчитать свои пиксели, а затем показать результат, используя
def image_manip():
# do manipulations
return final_image
viewer = ImageViewer(image_manip())
viewer.show()
Параллельно в другом приложении я могу показать изображение в QT, используя:
self.pixmap = QtGui.QPixmap('ImagePath.jpg')
Так что в идеале я хотел бы объединить их во что-то вроде этого:
def image_manip():
# do manipulations
return final_image
self.pixmap = QtGui.QPixmap(image_manip())
Очевидно, это не работает. Я получаю сообщение об ошибке TypeError: QPixmap(): argument 1 has unexpected type 'numpy.ndarray'
Я предполагаю, что viewer = ImageViewer(image_manip())
и viewer.show()
обладают некоторой магией, позволяющей напрямую читать объекты skimage/numpy. В моем случае использования я не хочу сохранять файл из skimage (я хочу просто сохранить его в памяти), поэтому я полагаю, что его нужно «выпечь», чтобы Qt мог читать его как общий формат.
Как мне это сделать?