Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > Python
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.06.2018, 01:06   #1
danapetrakova
Новичок
Джуниор
 
Регистрация: 08.06.2018
Сообщений: 1
По умолчанию Не могу связать QT и python

Здравствуйте, я начала делать программу для распознавания лиц и не могу понять, как связать интерфейс QT с кодом питона(то есть, связать кнопки "dwnlphoto" с кодом другого файла, так же, как к питону прикрепить БД.
Большое спасибо за помощь.

Код от QT

Код:
import sys
from PyQt5 import QtCore, QtGui, QtWidgets

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(530, 338)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(False)
        font.setWeight(50)
        MainWindow.setFont(font)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.horizontalLayout = QtWidgets.QHBoxLayout(self.centralwidget)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.groupBox_2 = QtWidgets.QGroupBox(self.centralwidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.groupBox_2.sizePolicy().hasHeightForWidth())
        self.groupBox_2.setSizePolicy(sizePolicy)
        self.groupBox_2.setObjectName("groupBox_2")
        self.horizontalLayout.addWidget(self.groupBox_2)
        self.groupBox = QtWidgets.QGroupBox(self.centralwidget)
        self.groupBox.setObjectName("groupBox")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.groupBox)
        self.verticalLayout.setObjectName("verticalLayout")
        self.dwnlphoto = QtWidgets.QPushButton(self.groupBox)
        self.dwnlphoto.setObjectName("dwnlphoto")
        self.verticalLayout.addWidget(self.dwnlphoto)
        self.dwnlphoto_2 = QtWidgets.QPushButton(self.groupBox)
        self.dwnlphoto_2.setObjectName("dwnlphoto_2")
        self.verticalLayout.addWidget(self.dwnlphoto_2)
        spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
        self.verticalLayout.addItem(spacerItem)
        self.horizontalLayout.addWidget(self.groupBox)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 530, 21))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        self.dwnlphoto.clicked.connect(self.groupBox_2.show)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "Program interface"))
        self.groupBox_2.setTitle(_translate("MainWindow", "Результат работы"))
        self.groupBox.setTitle(_translate("MainWindow", "Обработка данных"))
        self.dwnlphoto.setText(_translate("MainWindow", "Загрузка 1 фотографии"))
        self.dwnlphoto_2.setText(_translate("MainWindow", "Загрузка 2 фотографии"))


if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()
    ui = Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())
Код приложения
Код:
 import dlib
from skimage import io
from scipy.spatial import distance

sp = dlib.shape_predictor('shape_predictor_68_face_landmarks.dat')
facerec = dlib.face_recognition_model_v1('dlib_face_recognition_resnet_model_v1.dat')
detector = dlib.get_frontal_face_detector()
img = io.imread('')
win1 = dlib.image_window()
win1.clear_overlay()
win1.set_image(img)

dets = detector(img, 1)
for k, d in enumerate(dets):
    print("Detection {}: Left: {} Top: {} Right: {} Bottom: {}".format(
        k, d.left(), d.top(), d.right(), d.bottom()))
    shape = sp(img, d)
    win1.clear_overlay()
    win1.add_overlay(d)
    win1.add_overlay(shape)

    face_descriptor1 = facerec.compute_face_descriptor(img, shape)

print(face_descriptor1)

img = io.imread('')
win2 = dlib.image_window()
win2.clear_overlay()
win2.set_image(img)
dets_webcam = detector(img, 1)
for k, d in enumerate(dets_webcam):
    print("Detection {}: Left: {} Top: {} Right: {} Bottom: {}".format(
        k, d.left(), d.top(), d.right(), d.bottom()))
    shape = sp(img, d)
    win2.clear_overlay()
    win2.add_overlay(d)
    win2.add_overlay(shape)
face_descriptor2 = facerec.compute_face_descriptor(img, shape)

a = distance.euclidean(face_descriptor1, face_descriptor2)
print(a)
danapetrakova вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу связать DBLookupComboBox с DataSource ((( apple66 БД в Delphi 6 31.03.2012 00:58
Не могу связать DBLookupComboBox с DataSource ((( apple66 Помощь студентам 0 29.03.2012 22:24
Не могу связать диалоговое окно с [x] Tema_Crazzzy Qt и кроссплатформенное программирование С/С++ 8 06.04.2011 16:12
Не могу связать 3 таблицы SweetLan Общие вопросы C/C++ 0 22.04.2010 16:30
Не могу связать DBLookupComboBox Inbox БД в Delphi 8 15.06.2007 19:29