Уведомления

Группа в Telegram: @pythonsu

#1 Март 14, 2015 14:41:53

DrZugrik
Зарегистрирован: 2015-03-14
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите вывести изображение с web-камеры на QGraphicsView

Здравствуйте, в Python я совсем новичек, да и в программировании в целом очень плох, пишу программу для анализа спектра излучения (моя научная работа).
Суть программы в следующем - форму создал в QDesigner, камера захватывает изображение через opencv, выводит его в QGraphicsView, дальше идут преобразования и математика (это будет потом? сначала с основами надо справиться). Насколько я понимаю для QGraphicsView надо организовать сцену. В QDesigner для QGraphicsView я поставил размер сцены по размеру QGraphicsView. Запускаю - изображение с вебкамеры выводится в отдельном окне (по коду правильно), закрываю и после этого выводится форма. Для начала решил выводить в QGraphicsView простую картинку, но и это мне никак не удается. Читал доки и примеры, в том числе на этом форуме, никак не могу понять в чем ошибка… Буду благодарен за любые конструктивные советы и помощь

#!/usr/bin/python
# -*- coding: utf-8 -*-
from PyQt4 import QtCore, QtGui, QtOpenGL
from Webcam import Ui_MainWindow
import sys, cv, cv2, numpy
class Web(QtGui.QMainWindow, Ui_MainWindow):
    def __init__(self, parent = None):
        QtGui.QMainWindow.__init__(self, parent)
        self.setupUi(self)
class MyView(QtGui.QGraphicsView):
    def __init__(self,*args):
        QtGui.QGraphicsView.__init__(self,*args)
        self.scene = QtGui.QGraphicsScene()
        self.scene.addPixmap('1.png')
        view = MyView(self.scene)  
capture = cv.CaptureFromCAM(-1)
while True:
    img = cv.QueryFrame(capture)
    cv.ShowImage("WEB-camera", img)
    if cv.WaitKey(10) == 27:
        break
cv.DestroyWindow("WEB-camera")
if __name__ == '__main__':
    app = QtGui.QApplication(sys.argv)
    MainApp = Web()
    
    
    MainApp.show()
    sys.exit(app.exec_())

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version