class MainView(ZApplicationView): def __init__(self, title, x, y, width, height): super(MainView, self).__init__(title, x, y, width, height) filename = "../images/flower.png" # 1 Create an imageview in the main_widget self.image_view = ZOpenCVImageView(self) # 2 Load opencv image into the imageview. self.image_view.load_opencv_image(filename) # 3 Add the imageview to the main_layout self.add(self.image_view) self.set_filenamed_title(filename) self.show() # Default file_open method to read an image file by using ZOpenCVImageReader # and set the image read to the first area of ZDrawingArea. def file_open(self): options = QFileDialog.Options() filename, _ = QFileDialog.getOpenFileName( self, "FileOpenDialog", "", "All Files (*);;Image Files (*.png;*jpg;*.jpeg)", options=options) if filename: self.image_view.load_opencv_image(filename) self.set_filenamed_title(filename)
import traceback import cv2 import errno from PyQt5.QtWidgets import * from PyQt5.QtGui import * from PyQt5.QtCore import * sys.path.append('../') from SOL4Py.opencv.ZOpenCVImageView import ZOpenCVImageView #--------------------------------------------------------------------- # Unit test # if __name__ == '__main__': try: applet = QApplication(sys.argv) image_view = ZOpenCVImageView(parent=None) image_view.load_opencv_image("../images/flower.png", cv2.IMREAD_GRAYSCALE) image_view.setGeometry(40, 40, 400, 300) image_view.show() applet.exec_() except: traceback.print_exc()