def imageHandling(self, pos): filePath = self.loadData() if filePath is None: return pointPath = filePath + ".txt" image = imageio.imread(filePath) shaped = image.shape tester = QtGui.QPixmap(filePath) if pos == 0: leftScene = Qt.QGraphicsScene() leftScene.addPixmap(tester) self.leftImg = image self.imagesLoaded[0] = True if self.imagesLoaded[0] and self.imagesLoaded[1]: self.enableButtons() self.leftTri = pointPath if os.path.isfile(pointPath): with open(pointPath) as file: data = file.readlines() for point in data: xc, yc = point.split() self.pointAdd(leftScene, int(float(xc)) - 11.5, int(float(yc)) - 11.5, 0) leftScene.setSceneRect(0, 0, shaped[1], shaped[0]) self.grphStart.setScene(leftScene) self.grphStart.fitInView(leftScene.sceneRect(), QtCore.Qt.KeepAspectRatio) self.grphStart.show() else: rightScene = Qt.QGraphicsScene() rightScene.addPixmap(tester) self.grphEnd.setScene(rightScene) self.grphEnd.show() self.rightImg = image self.imagesLoaded[1] = True if self.imagesLoaded[0] and self.imagesLoaded[1]: self.enableButtons() self.rightTri = pointPath if os.path.isfile(pointPath): with open(pointPath) as file: data = file.readlines() for point in data: xc, yc = point.split() self.pointAdd(rightScene, int(float(xc)) - 11.5, int(float(yc)) - 11.5, 0) rightScene.setSceneRect(0, 0, shaped[1], shaped[0]) self.grphEnd.setScene(rightScene) self.grphEnd.fitInView(rightScene.sceneRect(), QtCore.Qt.KeepAspectRatio) self.grphEnd.show()
def _init_images(self): A, = 'A'.encode('ascii') gs = Qt.QGraphicsScene() sti = Qt.QGraphicsSimpleTextItem() sti.setFont(Qt.QFont('Courier', pointSize=24, weight=Qt.QFont.Bold)) gs.addItem(sti) self.images = [] for char in range(A, A + 26): for i in range(0, 10): text = bytes([char]).decode('ascii') + str(i) sti.setText(text) scene_rect_f = gs.itemsBoundingRect() scene_rect = Qt.QRect( 0, 0, math.ceil(scene_rect_f.width()), math.ceil(scene_rect_f.height())) gs.setSceneRect(scene_rect_f) buffer = numpy.empty((scene_rect.height(), scene_rect.width(), 4), dtype=numpy.uint8) buffer[:] = 255 qimage = Qt.QImage(sip.voidptr(buffer.ctypes.data), scene_rect.size().width(), scene_rect.size().height(), Qt.QImage.Format_RGBA8888) qpainter = Qt.QPainter() qpainter.begin(qimage) qpainter.setRenderHint(Qt.QPainter.Antialiasing) qpainter.setRenderHint(Qt.QPainter.HighQualityAntialiasing) gs.render(qpainter) qpainter.end() self.images.append(Image(buffer.copy(), shape_is_width_height=False, name=text))
def __init__(self): super().__init__() uic.loadUi('unled.ui', self) self.setWindowTitle('Кружочки') self.scene = Qt.QGraphicsScene() self.graphicsView.setScene(self.scene) self.pushButton.clicked.connect(self.run)
def __init__(self) -> None: from qdarkstyle import load_stylesheet_pyqt5 super().__init__() # logging logging.basicConfig(format='{asctime}: {levelname}: {message}', style='{', level=self.LOG_LEVEL) logging.Formatter.default_msec_format = '%s.%03d' # ??? self.app = Qt.QApplication.instance() if self.DARK_THEME: self.app.setStyleSheet( self.patch_dark_stylesheet(load_stylesheet_pyqt5())) self.ensurePolished() self.display_scale = self.app.primaryScreen().logicalDotsPerInch( ) / self.BASE_PPI self.setWindowTitle('VSPreview') self.move(400, 0) self.setup_ui() # global self.clipboard = self.app.clipboard() self.external_args: List[str] = [] self.script_path = Path() self.save_on_exit = True self.script_exec_failed = False # graphics view self.graphics_scene = Qt.QGraphicsScene(self) self.graphics_view.setScene(self.graphics_scene) self.opengl_widget = None if self.OPENGL_RENDERING: self.opengl_widget = Qt.QOpenGLWidget() self.graphics_view.setViewport(self.opengl_widget) self.graphics_view.wheelScrolled.connect(self.on_wheel_scrolled) # timeline self.timeline.clicked.connect(self.switch_frame) # init toolbars and outputs self.toolbars = Toolbars(self) self.main_layout.addWidget(self.toolbars.main) for toolbar in self.toolbars: self.main_layout.addWidget(toolbar) self.toolbars.main.layout().addWidget(toolbar.toggle_button) set_qobject_names(self) self.setObjectName('MainWindow')
def __init__(self): super().__init__() self.scene = Qt.QGraphicsScene() self.graphics_view = Qt.QGraphicsView() self.graphics_view.setScene(self.scene) self.setCentralWidget(self.graphics_view)
def process_image(self): print("Model loading starts: ", datetime.datetime.now().time()) model = load_model("D:/Nadenenko/POKAZ/model_31k_params_v2.h5") print("Model loading ends: ", datetime.datetime.now().time()) image = cv2.imread(self.filename[0]) height, width, channels = image.shape nearest_x = width // 256 * 256 nearest_y = height // 128 * 128 resized = cv2.resize(image, (nearest_x, nearest_y), interpolation=cv2.INTER_AREA) dataset = np.zeros(shape=(int(resized.shape[0] / 128 * resized.shape[1] / 256), 128, 256, 3), dtype=np.float32) #dataset = np.ndarray(shape=(int(resized.shape[0]/128*resized.shape[1]/256), #128, 256,3), dtype=np.float32) counter = 0 print(dataset.size) for j in range(0, resized.shape[0], 128): for i in range(0, resized.shape[1], 256): cropped = np.array(resized[j:j + 128, i:i + 256]) dataset[counter] = cropped counter += 1 print("Preprocessing ended at: ", datetime.datetime.now().time()) print(dataset.size) pred = model.predict(dataset) print("Preds done at: ", datetime.datetime.now().time()) blank_image = np.zeros(shape=(resized.shape[0], resized.shape[1], 3)) count = 0 for j in range(0, resized.shape[0], 128): for i in range(0, resized.shape[1], 256): blank_image[j:j + 128, i:i + 256] = pred[count] count += 1 #cv2.imwrite("D:/Nadenenko/POKAZ/from_gui.png", blank_image) blank_image = (blank_image * 255).round().astype(np.uint8) blank_image = cv2.cvtColor(blank_image, cv2.COLOR_BGR2GRAY) ret, thresh = cv2.threshold(blank_image, 50, 255, 0) contours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_NONE) imgcopy = image.copy() z = cv2.fillPoly(imgcopy, contours, color=(250, 0, 0)) #blank_image = cv2.imread("D:/Nadenenko/POKAZ/image1.png") #self.frame = QtGui.QImage(blank_image.data, blank_image.shape[0], blank_image.shape[1], 256*3, QtGui.QImage.Format_RGB888) #self.scene.addPixmap(QtGui.QPixmap.fromImage(self.frame)) #self.scene.update() #self.graphicsView.setScene(self.scene) #image = cv2.imread("D:/Nadenenko/POKAZ/image1.png") #image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) height, width = blank_image.shape[:2] self.scene = Qt.QGraphicsScene() self.scene.clear() self.frame = QtGui.QImage(z.data, width, height, QtGui.QImage.Format_RGB888) self.scene.addPixmap(QtGui.QPixmap.fromImage(self.frame)) self.scene.update() self.graphicsView.setScene(self.scene)
def __init__(self, viewWin, parent=None): Qt.QGraphicsView.__init__(self, parent) self.scene = Qt.QGraphicsScene() self.grview = viewWin dir = "frames" self.listFiles = os.listdir(dir) self.timer = Qt.QTimer(self) self.n = 0 self.timer.timeout.connect(self.on_timeout) self.timer.start(100) self.grview.show()
def __init__(self,parent,wii): screenGeom = QtWidgets.QDesktopWidget().screenGeometry() self.wdt = screenGeom.width() self.hgt = screenGeom.height() # Thanks, Pietro Pilolli!! QtWidgets.QWidget.__init__(self, parent, QtCore.Qt.FramelessWindowHint | QtCore.Qt.WindowStaysOnTopHint | QtCore.Qt.X11BypassWindowManagerHint ) self.setGeometry(0, 0, self.wdt, self.hgt) self.wii = wii self.setContentsMargins(0,0,0,0) sh = QtWidgets.QShortcut(self) sh.setKey("Esc") sh.activated.connect(self.close) sh = QtWidgets.QShortcut(self) sh.setKey("Down") sh.activated.connect(self.decCrosses) sh = QtWidgets.QShortcut(self) sh.setKey("Up") sh.activated.connect(self.incCrosses) self.scene = qt.QGraphicsScene() self.scene.setSceneRect(0,0, self.wdt, self.hgt) self.gv = QtWidgets.QGraphicsView() self.gv.setScene(self.scene) self.gv.setStyleSheet( "QGraphicsView { border-style: none; }" ) self.layout = QtWidgets.QVBoxLayout() self.layout.setContentsMargins(0,0,0,0) self.layout.setSpacing(0) self.layout.addWidget(self.gv) self.setLayout(self.layout) self.CalibrationPoints = [ [40,40], [self.wdt-40,40], [self.wdt-40,self.hgt-40], [40,self.hgt-40] ] self.clock = clock() self.mutex = qt.QMutex() self.updateCalibrationPoints(0) self.wii.putCallbackIR(self.makeWiiCallback()) self.wii.enable() self.timer = qt.QTimer(self) self.timer.setInterval(70) self.timer.timeout.connect(self.doWork) self.timer.start() self.wiiCallback.connect(self._wiiCallback)
def __init__(self, viewWin, dirName, st, slider, parent=None): Qt.QGraphicsView.__init__(self, parent) self.scene = Qt.QGraphicsScene() self.grview = viewWin self.timer = Qt.QTimer(self) self.n = 0 self.timer.timeout.connect(self.on_timeout) self.timer.start(300) self.grview.show() self.dirname = dirName self.st = st self.slider = slider
def browse_folder(self): #выбор изображения + его отображение self.filename = QtWidgets.QFileDialog.getOpenFileName( self, "Выбор изображения", "D:/Nadenenko/POKAZ", "Image Files (*.png *.jpg *.PNG *.jpeg)") #"Выберите изображение") if self.filename: print(self.filename[0]) self.scene = Qt.QGraphicsScene() pixmap = QPixmap(self.filename[0]) item = Qt.QGraphicsPixmapItem(pixmap) #self.graphicsView.setTransformationAnchor(QGraphicsView.AnchorUnderMouse) self.scene.addItem(item) self.graphicsView.setScene(self.scene)
def drawScreenGraphic(self): max_x = self.wiiScreen.geometry().width() max_y = self.wiiScreen.geometry().height() self.scene = qt.QGraphicsScene() self.scene.setSceneRect(0, 0, max_x, max_y) quad = QtGui.QPolygonF() for p in self.wii.calibrationPoints: x = max_x * p[0] / Wiimote.MAX_X y = max_y * (1 - old_div(float(p[1]), Wiimote.MAX_Y)) quad.append(qt.QPointF(x, y)) self.scene.addPolygon(quad) self.wiiScreen.setScene(self.scene) self.wiiScreen.show()
def blendImage(self): lt, rt = loadTriangles(self.leftTri, self.rightTri) morphingTime = Morpher(self.leftImg, lt, self.rightImg, rt) imgArray = morphingTime.getImageAtAlpha( float(self.txtAlpha.displayText())) imageio.imwrite("aq1234q.png", imgArray) newPath = os.getcwd() + "/aq1234q.png" tester = QtGui.QPixmap(newPath) testing = Qt.QGraphicsScene() tester = tester.scaled(self.grphBlended.size()) testing.addPixmap(tester) self.grphBlended.setScene(testing) self.grphBlended.show() os.remove("aq1234q.png")
def __init__(self,parent,wii): QtWidgets.QWidget.__init__(self,parent) self.wii = wii self.ui = uic.loadUi("calibration2.ui",self) screenGeom = QtWidgets.QDesktopWidget().screenGeometry() wdt = screenGeom.width()-2 hgt = screenGeom.height()-2 viewport = [ self.ui.graphicsView.maximumViewportSize().width(), self.ui.graphicsView.maximumViewportSize().height() ] self.scene = qt.QGraphicsScene() self.scene.setSceneRect(0,0, viewport[0], viewport[1]) self.ui.graphicsView.setScene(self.scene) self.smallScreen = SmallScreen(viewport[0], viewport[1], self.scene) self.sandclock = SandClock(self.scene,old_div(viewport[0],2),old_div(viewport[1],2)) self.CalibrationPoints = [ [0,0], [wdt,0], [wdt,hgt], [0,hgt] ] self.wiiPoints = [] self.textMessages = [ self.tr("TOP-LEFT"), self.tr("TOP-RIGHT"), self.tr("BOTTOM-RIGHT"), self.tr("BOTTOM-LEFT") ] self.ui.label.setText(self.textMessages.pop(0)) self.ui.but_cancel.clicked.connect(self.close) self.shcut1 = QtWidgets.QShortcut(self) self.shcut1.setKey("Esc") self.shcut1.activated.connect(self.close) self.mutex = qt.QMutex() self.wii.disable() self.wii.putCallbackIR(self.makeWiiCallback()) self.wii.enable() self.timer = qt.QTimer(self) self.timer.setInterval(70) self.timer.timeout.connect(self.doWork) self.timer.start() self.wiiCallback.connect(self._wiiCallback)
def _show_dot_graph(self, dot, name): import io import pygraphviz gs = Qt.QGraphicsScene(self) gv = GV(gs) im = Qt.QImage.fromData( pygraphviz.AGraph(string=dot, directed=True).draw(format='png', prog='dot'), 'png') gs.addPixmap(Qt.QPixmap.fromImage(im)) gv.setDragMode(Qt.QGraphicsView.ScrollHandDrag) gv.setBackgroundBrush(Qt.QBrush(Qt.Qt.black)) gv.setWindowTitle(name) gv.show() return gv
def plot(self): self.scene = Qt.QGraphicsScene() self.graphics_view = Qt.QGraphicsView() self.graphics_view.setScene(self.scene) self.setCentralWidget(self.graphics_view) diameter = randint(0, 300) rect = Qt.QRectF(0, 0, diameter, diameter) colorlist = [ Qt.Qt.yellow, Qt.Qt.red, Qt.Qt.blue, Qt.Qt.green, Qt.Qt.black, Qt.Qt.gray, Qt.Qt.darkCyan ] color = colorlist[randint(0, 6)] self.scene.addEllipse(rect, Qt.QPen(color), Qt.QBrush(color))
def __init__(self, viewWin, signal_dir, parent=None): Qt.QGraphicsView.__init__(self, parent) # 1. Window settings self.grview = viewWin self.signal_dir = signal_dir self.scene = Qt.QGraphicsScene() # print(viewWin.rect()) # 2. Place the matplotlib figure # Todo: x_len is the length of the data # Todo: y_range should be adjust itself, x should be change with timer, interval should be adjust with video self.myFig = [] self.myFig.append( MyFigureCanvas(fcode=fcode_left, x_len=300, y_range=[-1200, 1200], interval=20, signal_dir=self.signal_dir)) self.myFig.append( MyFigureCanvas(fcode=fcode_right, x_len=300, y_range=[-1200, 1200], interval=20, signal_dir=self.signal_dir)) # self.scene.setSceneRect(QtCore.QRectF(viewWin.rect())) # self.grview.fitInView(self.scene.itemsBoundingRect()) self.layout = QHBoxLayout(self) self.layout.addWidget(self.myFig[0]) self.layout.addWidget(self.myFig[1]) self.grview.setLayout(self.layout) # self.grview.setScene(self.scene) # 3. Show # print(self.grview.mapToScene(self.grview.rect()).boundingRect()) # self.grview.fitInView(self.grview.mapToScene(self.grview.rect()).boundingRect()) self.grview.fitInView(0, 0, 115, 200) self.grview.show() return