Мне нужно выполнить много операций над изображением. Поэтому я использовал OpenCV. OpenCV очень эффективен в обработке изображений, однако не слишком хорошо представить подходящий графический интерфейс. Поэтому я решил использовать PyQt для создания пользовательского графического интерфейса и OpenCV для обработки моего изображения.Как объединить OpenCV с PyQt для создания простого графического интерфейса?
Я создал очень простую программу, которую вы непосредственно выбрали из документации. Я просто прочитал изображение jpg
и сохранил его в формате png
, нажав клавишу s
.
Моя цель - заменить ключ s
нажатием кнопки для выполнения того же действия с использованием PyQt. Кроме того, я хочу, чтобы окно, отображаемое PyQt, имело то же поведение, что и OpenCV: в основном говоря, функция отображает окно, соответствующее размеру изображения.
Вот мой OpenCV простой код:
import numpy
import cv2
class LoadImage:
def loadImage(self):
img = cv2.imread('photo.jpg')
cv2.imshow('Image on a window',img)
k = cv2.waitKey(0)
if k == 27:
cv2.destroyAllWindows()
elif k == ord('s'):
cv2.imwrite('photopng.png',img)
cv2.destroyAllWindows()
if __name__=="__main__":
LI=LoadImage()
LI.loadImage()
Выход:
Вот простой PyQt код нарисовать простое окно:
import sys
from PyQt4 import QtGui
class DrawWindow:
def drawWindow(self):
app=QtGui.QApplication(sys.argv)
w=QtGui.QWidget()
#w.resize(250,250)
w.move(300,300)
w.setWindowTitle("Simple Window")
w.show()
sys.exit(app.exec_())
if __name__=="__main__":
DW=DrawWindow()
DW.drawWindow()
Как может Я смешиваю 2 кода, чтобы достичь своей цели?
Благодарим вас за попытку. Во-первых, мне действительно нужно использовать OpenCV для обработки изображений. Во-вторых, я получил несколько ошибок при компиляции вашего кода. +1 однако для усилий. –
Этот код кажется правильным. Обработка выполняется в OpenCV (например, посмотрите cv2.cvtColor), и только отображение обрабатывается с использованием Qt (QPixmap), который является прекрасным. Я делаю то же самое во многих сценариях. Будьте осторожны, хотя при конвертировании изображения с cv на qt (поиск в Интернете для конвертеров)! – Mailerdaimon