Ejemplo n.º 1
0
    def initUI(self):
        self.setWindowTitle("标注工具")
        self.label_log.setText("")

        from mylabel import MyLabel, SemiLabel

        # 将响应函数绑定在按钮上
        self.btn_open.clicked.connect(self.on_open_dir)
        self.btn_next.clicked.connect(self.on_next_image)
        self.btn_pre.clicked.connect(self.on_pre_image)
        self.btn_save.clicked.connect(self.on_save)

        # 目录树
        self.model = QStandardItemModel(0, 1, self)
        self.model.setHeaderData(0, Qt.Horizontal, "文件路径")
        self.treeView.setModel(self.model)
        self.treeView.clicked.connect(self.tree_clicked)

        # 全手动
        self.lb = MyLabel(self.tab_manu)
        self.lb.setGeometry(QRect(10, 10, 760, 540))
        self.radio_poly.setChecked(True)
        self.button_group = QtWidgets.QButtonGroup(self)
        self.button_group.addButton(self.radio_rect)
        self.button_group.addButton(self.radio_poly)

        # 半自动
        self.mylabel_rgb_semi = SemiLabel(self.tab_semi)
        self.mylabel_rgb_semi.setGeometry(QRect(30, 150, 320, 240))
        self.label_rgb_semi.setText("")
        self.label_mask_semi.setText("")
        self.label_curmarker_semi.setText("current_marker: " + "1")

        # 全自动
        self.label_rgbtfusion_auto.setText("")
        self.label_registered_auto.setText("")
        self.label_mask_auto.setText("")
        self.mylabel_registered_auto = SemiLabel(self.tab_auto)
        self.mylabel_registered_auto.setGeometry(QRect(40, 290, 320, 240))
        self.label_curmarker_auto.setText("current_marker: " + "1")
        self.boundary_points = []

        # self.radio_semi_auto.setChecked(True)
        # self.group_auto = QtWidgets.QButtonGroup(self)
        # self.group_auto.addButton(self.radio_semi_auto)
        # self.group_auto.addButton(self.radio_auto_auto)

        self.cur_img_ann = {}
        self.show()
Ejemplo n.º 2
0
 def initUI(self):
     self.resize(675, 300)
     self.setWindowTitle('在label中绘制矩形')
     self.lb = MyLabel(self)  #重定义的label
     self.lb.setGeometry(QRect(30, 30, 511, 541))
     img = cv2.imread('back2.jpg')
     height, width, bytesPerComponent = img.shape
     bytesPerLine = 3 * width
     cv2.cvtColor(img, cv2.COLOR_BGR2RGB, img)
     QImg = QImage(img.data, width, height, bytesPerLine,
                   QImage.Format_RGB888)
     pixmap = QPixmap.fromImage(QImg)
     self.lb.setPixmap(pixmap)
     self.lb.setCursor(Qt.CrossCursor)
     self.show()
Ejemplo n.º 3
0
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(627, 527)
        Form.setMaximumSize(QtCore.QSize(16777215, 16777215))
        Form.setStyleSheet("background-color: rgb(0, 0, 0);")
        self.lb = QtWidgets.QLabel(Form)
        self.lb.setGeometry(QtCore.QRect(3, 1, 621, 421))
        self.lb.setObjectName("lb")
        self.label = MyLabel(self.lb)
        self.label.setGeometry(QtCore.QRect(3, 1, 621, 421))
        self.label.setPixmap(QtGui.QPixmap(file_path_masaike))
        self.label.setScaledContents(True)
        self.pushButton = QtWidgets.QPushButton(Form)
        self.pushButton.setGeometry(QtCore.QRect(50, 430, 90, 90))
        self.pushButton.setText("")
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap("E:/opencv_jk/添加.png"),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton.setIcon(icon)
        self.pushButton.setIconSize(QtCore.QSize(90, 90))
        self.pushButton.setObjectName("pushButton")
        self.pushButton_2 = QtWidgets.QPushButton(Form)
        self.pushButton_2.setGeometry(QtCore.QRect(500, 430, 90, 90))
        self.pushButton_2.setText("")
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap("E:/opencv_jk/删除.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_2.setIcon(icon1)
        self.pushButton_2.setIconSize(QtCore.QSize(90, 90))
        self.pushButton_2.setObjectName("pushButton_2")
        self.pushButton_3 = QtWidgets.QPushButton(Form)
        self.pushButton_3.setGeometry(QtCore.QRect(270, 430, 90, 90))
        self.pushButton_3.setText("")
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap("E:/opencv_jk/保存.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_3.setIcon(icon2)
        self.pushButton_3.setIconSize(QtCore.QSize(90, 90))
        self.pushButton_3.setObjectName("pushButton_3")

        self.retranslateUi(Form)
        self.pushButton.clicked.connect(self.tianjia)
        self.pushButton_3.clicked.connect(self.baocun)
        self.pushButton_2.clicked.connect(self.shanchu)
        QtCore.QMetaObject.connectSlotsByName(Form)
Ejemplo n.º 4
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.label = MyLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(40, 49, 601, 288))
        self.label.setObjectName("label")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 26))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
Ejemplo n.º 5
0
class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.label = MyLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(40, 49, 601, 288))
        self.label.setObjectName("label")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 26))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.label.setText(_translate("MainWindow", "TextLabel"))
Ejemplo n.º 6
0
    def setupUi(self, MainKdarts):
        MainKdarts.setObjectName("MainKdarts")
        MainKdarts.resize(806, 616)
        self.centralwidget = QtGui.QWidget(MainKdarts)
        self.centralwidget.setObjectName("centralwidget")
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.centralwidget)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.verticalLayout = QtGui.QVBoxLayout()
        self.verticalLayout.setObjectName("verticalLayout")
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        #self.label = MyLabel(self.centralwidget)
        self.label = MyLabel()
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label.sizePolicy().hasHeightForWidth())
        self.label.setSizePolicy(sizePolicy)
        self.label.setMinimumSize(QtCore.QSize(400, 400))
        self.label.setObjectName("label")
        self.horizontalLayout.addWidget(self.label)
        self.frame = QtGui.QFrame(self.centralwidget)
        self.frame.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame.setFrameShadow(QtGui.QFrame.Sunken)
        self.frame.setObjectName("frame")
        self.widget = QtGui.QWidget(self.frame)
        self.widget.setGeometry(QtCore.QRect(8, 8, 371, 33))
        self.widget.setObjectName("widget")
        self.horizontalLayout_5 = QtGui.QHBoxLayout(self.widget)
        self.horizontalLayout_5.setObjectName("horizontalLayout_5")
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.label_2 = QtGui.QLabel(self.widget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label_2.sizePolicy().hasHeightForWidth())
        self.label_2.setSizePolicy(sizePolicy)
        self.label_2.setMinimumSize(QtCore.QSize(30, 0))
        self.label_2.setObjectName("label_2")
        self.horizontalLayout_2.addWidget(self.label_2)
        self.lcdNumber = QtGui.QLCDNumber(self.widget)
        self.lcdNumber.setFrameShape(QtGui.QFrame.NoFrame)
        self.lcdNumber.setFrameShadow(QtGui.QFrame.Plain)
        self.lcdNumber.setProperty("intValue", QtCore.QVariant(501))
        self.lcdNumber.setObjectName("lcdNumber")
        self.horizontalLayout_2.addWidget(self.lcdNumber)
        self.horizontalLayout_5.addLayout(self.horizontalLayout_2)
        self.horizontalLayout_3 = QtGui.QHBoxLayout()
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_3.addItem(spacerItem)
        self.label_3 = QtGui.QLabel(self.widget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label_3.sizePolicy().hasHeightForWidth())
        self.label_3.setSizePolicy(sizePolicy)
        self.label_3.setObjectName("label_3")
        self.horizontalLayout_3.addWidget(self.label_3)
        self.pushButton = QtGui.QPushButton(self.widget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.pushButton.sizePolicy().hasHeightForWidth())
        self.pushButton.setSizePolicy(sizePolicy)
        self.pushButton.setObjectName("pushButton")
        self.horizontalLayout_3.addWidget(self.pushButton)
        self.horizontalLayout_5.addLayout(self.horizontalLayout_3)
        self.horizontalLayout.addWidget(self.frame)
        self.verticalLayout.addLayout(self.horizontalLayout)
        self.horizontalLayout_4 = QtGui.QHBoxLayout()
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem1)
        self.lineEdit = QtGui.QLineEdit(self.centralwidget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lineEdit.sizePolicy().hasHeightForWidth())
        self.lineEdit.setSizePolicy(sizePolicy)
        self.lineEdit.setMinimumSize(QtCore.QSize(700, 77))
        font = QtGui.QFont()
        font.setPointSize(32)
        self.lineEdit.setFont(font)
        self.lineEdit.setAlignment(QtCore.Qt.AlignCenter)
        self.lineEdit.setObjectName("lineEdit")
        self.horizontalLayout_4.addWidget(self.lineEdit)
        spacerItem2 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem2)
        self.verticalLayout.addLayout(self.horizontalLayout_4)
        self.verticalLayout_2.addLayout(self.verticalLayout)
        MainKdarts.setCentralWidget(self.centralwidget)
        self.menubar = QtGui.QMenuBar(MainKdarts)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 806, 28))
        self.menubar.setObjectName("menubar")
        MainKdarts.setMenuBar(self.menubar)
        self.statusbar = QtGui.QStatusBar(MainKdarts)
        self.statusbar.setObjectName("statusbar")
        MainKdarts.setStatusBar(self.statusbar)

        self.retranslateUi(MainKdarts)
        QtCore.QMetaObject.connectSlotsByName(MainKdarts)
Ejemplo n.º 7
0
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(627, 600)
        Form.setStyleSheet("background-color: rgb(0, 0, 0);")
        self.lb = QtWidgets.QLabel(Form)
        self.lb.setGeometry(QtCore.QRect(0, 70, 621, 421))
        self.lb.setObjectName("lb")
        self.label = MyLabel(self.lb)
        self.label.setGeometry(QtCore.QRect(3, 1, 621, 421))
        self.label.setPixmap(QtGui.QPixmap(file_path_tianjiawenzi))
        self.label.setScaledContents(True)
        self.pushButton = QtWidgets.QPushButton(Form)
        self.pushButton.setGeometry(QtCore.QRect(50, 500, 90, 90))
        self.pushButton.setText("")
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap("E:/opencv_jk/添加.png"),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton.setIcon(icon)
        self.pushButton.setIconSize(QtCore.QSize(90, 90))
        self.pushButton.setObjectName("pushButton")
        self.pushButton_2 = QtWidgets.QPushButton(Form)
        self.pushButton_2.setGeometry(QtCore.QRect(260, 500, 90, 90))
        self.pushButton_2.setText("")
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap("E:/opencv_jk/保存.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_2.setIcon(icon1)
        self.pushButton_2.setIconSize(QtCore.QSize(90, 90))
        self.pushButton_2.setObjectName("pushButton_2")
        self.pushButton_3 = QtWidgets.QPushButton(Form)
        self.pushButton_3.setGeometry(QtCore.QRect(490, 500, 90, 90))
        self.pushButton_3.setText("")
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap("E:/opencv_jk/删除.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_3.setIcon(icon2)
        self.pushButton_3.setIconSize(QtCore.QSize(90, 90))
        self.pushButton_3.setObjectName("pushButton_3")
        self.textEdit = QtWidgets.QTextEdit(Form)
        self.textEdit.setGeometry(QtCore.QRect(0, 10, 281, 51))
        font = QtGui.QFont()
        font.setFamily("Adobe Arabic")
        font.setPointSize(22)
        font.setBold(True)
        font.setWeight(75)
        self.textEdit.setFont(font)
        self.textEdit.setStyleSheet("background-color: rgb(255, 255, 255);\n"
                                    "color: rgb(0, 0, 0);")
        self.textEdit.setObjectName("textEdit")
        self.pushButton_4 = QtWidgets.QPushButton(Form)
        self.pushButton_4.setGeometry(QtCore.QRect(550, 20, 71, 31))
        font = QtGui.QFont()
        font.setFamily("Adobe Arabic")
        font.setPointSize(18)
        font.setBold(True)
        font.setWeight(75)
        self.pushButton_4.setFont(font)
        self.pushButton_4.setStyleSheet("color: rgb(0, 255, 255);")
        self.pushButton_4.setObjectName("pushButton_4")
        self.comboBox = QtWidgets.QComboBox(Form)
        self.comboBox.setGeometry(QtCore.QRect(340, 20, 69, 31))
        self.comboBox.setStyleSheet("color: rgb(255, 255, 255);")
        self.comboBox.setObjectName("comboBox")
        tt = [['FZSTK'], ['simhei'], ['simsunb'], ['STCAIYUN'], ['STHUPO'],
              ['STLITI'], ['STXINGKA']]
        for i in tt:
            self.comboBox.addItem(i[0])
        self.comboBox_2 = QtWidgets.QComboBox(Form)
        self.comboBox_2.setGeometry(QtCore.QRect(470, 20, 69, 31))
        self.comboBox_2.setStyleSheet("color: rgb(255, 255, 255);")
        self.comboBox_2.setObjectName("comboBox_2")
        hh = [['10'], ['12'], ['14'], ['16'], ['18'], ['20'], ['22'], ['24'],
              ['26'], ['28'], ['30'], ['32'], ['34'], ['36'], ['38'], ['40'],
              ['42'], ['44'], ['46'], ['48'], ['50']]
        for i in hh:
            self.comboBox_2.addItem(i[0])
        self.label_2 = QtWidgets.QLabel(Form)
        self.label_2.setGeometry(QtCore.QRect(290, 20, 41, 31))
        font = QtGui.QFont()
        font.setFamily("Adobe Arabic")
        font.setPointSize(12)
        font.setBold(True)
        font.setWeight(75)
        self.label_2.setFont(font)
        self.label_2.setStyleSheet("color: rgb(255, 255, 255);")
        self.label_2.setObjectName("label_2")
        self.label_3 = QtWidgets.QLabel(Form)
        self.label_3.setGeometry(QtCore.QRect(420, 20, 41, 31))
        font = QtGui.QFont()
        font.setFamily("Adobe Arabic")
        font.setPointSize(12)
        font.setBold(True)
        font.setWeight(75)
        self.label_3.setFont(font)
        self.label_3.setStyleSheet("color: rgb(255, 255, 255);")
        self.label_3.setObjectName("label_3")

        self.retranslateUi(Form)
        self.pushButton.clicked.connect(self.tianjia)
        self.pushButton_2.clicked.connect(self.baocun)
        self.pushButton_3.clicked.connect(self.shanchu)
        self.pushButton_4.clicked.connect(self.queding)
        QtCore.QMetaObject.connectSlotsByName(Form)
Ejemplo n.º 8
0
class Ui_Form(object):
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(627, 600)
        Form.setStyleSheet("background-color: rgb(0, 0, 0);")
        self.lb = QtWidgets.QLabel(Form)
        self.lb.setGeometry(QtCore.QRect(0, 70, 621, 421))
        self.lb.setObjectName("lb")
        self.label = MyLabel(self.lb)
        self.label.setGeometry(QtCore.QRect(3, 1, 621, 421))
        self.label.setPixmap(QtGui.QPixmap(file_path_tianjiawenzi))
        self.label.setScaledContents(True)
        self.pushButton = QtWidgets.QPushButton(Form)
        self.pushButton.setGeometry(QtCore.QRect(50, 500, 90, 90))
        self.pushButton.setText("")
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap("E:/opencv_jk/添加.png"),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton.setIcon(icon)
        self.pushButton.setIconSize(QtCore.QSize(90, 90))
        self.pushButton.setObjectName("pushButton")
        self.pushButton_2 = QtWidgets.QPushButton(Form)
        self.pushButton_2.setGeometry(QtCore.QRect(260, 500, 90, 90))
        self.pushButton_2.setText("")
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap("E:/opencv_jk/保存.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_2.setIcon(icon1)
        self.pushButton_2.setIconSize(QtCore.QSize(90, 90))
        self.pushButton_2.setObjectName("pushButton_2")
        self.pushButton_3 = QtWidgets.QPushButton(Form)
        self.pushButton_3.setGeometry(QtCore.QRect(490, 500, 90, 90))
        self.pushButton_3.setText("")
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap("E:/opencv_jk/删除.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_3.setIcon(icon2)
        self.pushButton_3.setIconSize(QtCore.QSize(90, 90))
        self.pushButton_3.setObjectName("pushButton_3")
        self.textEdit = QtWidgets.QTextEdit(Form)
        self.textEdit.setGeometry(QtCore.QRect(0, 10, 281, 51))
        font = QtGui.QFont()
        font.setFamily("Adobe Arabic")
        font.setPointSize(22)
        font.setBold(True)
        font.setWeight(75)
        self.textEdit.setFont(font)
        self.textEdit.setStyleSheet("background-color: rgb(255, 255, 255);\n"
                                    "color: rgb(0, 0, 0);")
        self.textEdit.setObjectName("textEdit")
        self.pushButton_4 = QtWidgets.QPushButton(Form)
        self.pushButton_4.setGeometry(QtCore.QRect(550, 20, 71, 31))
        font = QtGui.QFont()
        font.setFamily("Adobe Arabic")
        font.setPointSize(18)
        font.setBold(True)
        font.setWeight(75)
        self.pushButton_4.setFont(font)
        self.pushButton_4.setStyleSheet("color: rgb(0, 255, 255);")
        self.pushButton_4.setObjectName("pushButton_4")
        self.comboBox = QtWidgets.QComboBox(Form)
        self.comboBox.setGeometry(QtCore.QRect(340, 20, 69, 31))
        self.comboBox.setStyleSheet("color: rgb(255, 255, 255);")
        self.comboBox.setObjectName("comboBox")
        tt = [['FZSTK'], ['simhei'], ['simsunb'], ['STCAIYUN'], ['STHUPO'],
              ['STLITI'], ['STXINGKA']]
        for i in tt:
            self.comboBox.addItem(i[0])
        self.comboBox_2 = QtWidgets.QComboBox(Form)
        self.comboBox_2.setGeometry(QtCore.QRect(470, 20, 69, 31))
        self.comboBox_2.setStyleSheet("color: rgb(255, 255, 255);")
        self.comboBox_2.setObjectName("comboBox_2")
        hh = [['10'], ['12'], ['14'], ['16'], ['18'], ['20'], ['22'], ['24'],
              ['26'], ['28'], ['30'], ['32'], ['34'], ['36'], ['38'], ['40'],
              ['42'], ['44'], ['46'], ['48'], ['50']]
        for i in hh:
            self.comboBox_2.addItem(i[0])
        self.label_2 = QtWidgets.QLabel(Form)
        self.label_2.setGeometry(QtCore.QRect(290, 20, 41, 31))
        font = QtGui.QFont()
        font.setFamily("Adobe Arabic")
        font.setPointSize(12)
        font.setBold(True)
        font.setWeight(75)
        self.label_2.setFont(font)
        self.label_2.setStyleSheet("color: rgb(255, 255, 255);")
        self.label_2.setObjectName("label_2")
        self.label_3 = QtWidgets.QLabel(Form)
        self.label_3.setGeometry(QtCore.QRect(420, 20, 41, 31))
        font = QtGui.QFont()
        font.setFamily("Adobe Arabic")
        font.setPointSize(12)
        font.setBold(True)
        font.setWeight(75)
        self.label_3.setFont(font)
        self.label_3.setStyleSheet("color: rgb(255, 255, 255);")
        self.label_3.setObjectName("label_3")

        self.retranslateUi(Form)
        self.pushButton.clicked.connect(self.tianjia)
        self.pushButton_2.clicked.connect(self.baocun)
        self.pushButton_3.clicked.connect(self.shanchu)
        self.pushButton_4.clicked.connect(self.queding)
        QtCore.QMetaObject.connectSlotsByName(Form)

    def retranslateUi(self, Form):
        _translate = QtCore.QCoreApplication.translate
        Form.setWindowTitle(_translate("Form", "Form"))
        self.textEdit.setHtml(
            _translate(
                "Form",
                "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
                "<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
                "p, li { white-space: pre-wrap; }\n"
                "</style></head><body style=\" font-family:\'Adobe Arabic\'; font-size:22pt; font-weight:600; font-style:normal;\">\n"
                "<p align=\"center\" style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:20pt;\"><br /></p></body></html>"
            ))
        self.pushButton_4.setText(_translate("Form", "确定"))
        self.label_2.setText(_translate("Form", "字体"))
        self.label_3.setText(_translate("Form", "大小"))

    def queding(self):
        global file_path_tianjiawenzi
        ziti = self.comboBox.currentText()
        daxiao = self.comboBox_2.currentText()
        size = int(daxiao)
        x = self.label.x0
        y = self.label.y0
        wenzi = self.textEdit.toPlainText()
        font = ImageFont.truetype('E:\opencv_jk\\' + ziti + '.ttf', size)
        # 使用自定义的字体,第二个参数表示字符大小
        im = Image.open(file_path_tianjiawenzi)
        # 生成空白图像
        draw = ImageDraw.Draw(im)
        # 绘图句柄
        draw.text((x, y), wenzi, font=font)
        im.save("E:/opencv_huancun/" + "tianjiawenzi" + ".jpg")
        self.label.setPixmap(
            QtGui.QPixmap("E:/opencv_huancun/tianjiawenzi.jpg"))

    def tianjia(self):
        global file_path_tianjiawenzi
        root = tk.Tk()
        root.withdraw()
        file_path_tianjiawenzi = filedialog.askopenfilename()
        self.label.setPixmap(QtGui.QPixmap(file_path_tianjiawenzi))

    def baocun(self):
        root = tk.Tk()
        root.withdraw()
        file_path_baocun = filedialog.asksaveasfilename(filetypes=[("picture",
                                                                    ".jpg")])
        dst = cv2.imread("E:/opencv_huancun/tianjiawenzi.jpg")
        cv2.imwrite(file_path_baocun + ".jpg", dst)

    def shanchu(self):
        self.label.clear()
Ejemplo n.º 9
0
    def setupUi(self, window, width=300, height=300):
        self.window = window
        window.setObjectName("window")
        window.resize(width, height)
        window.setWindowFlags(Qt.FramelessWindowHint | Qt.Tool)
        window.setAttribute(Qt.WA_TranslucentBackground)
        self.centralwidget = QtWidgets.QWidget(window)
        self.centralwidget.setStyleSheet("QWidget#centralwidget {\n"
                                         "background: #90202020;\n"
                                         "border-style: inset;\n"
                                         "border-width: 1px;\n"
                                         "border-color: #a0404050;\n"
                                         "border-radius: 10px;}")
        self.centralwidget.setObjectName("centralwidget")
        if window.__class__.__base__.__name__ == 'QMainWindow':
            window.setCentralWidget(self.centralwidget)
        else:
            self.windowLayout = QtWidgets.QVBoxLayout(self.window)
            self.windowLayout.setContentsMargins(0, 0, 0, 0)
            self.windowLayout.setSpacing(0)
            self.windowLayout.setObjectName("windowLayout")
            self.windowLayout.addWidget(self.centralwidget)

        self.mainlayout = QtWidgets.QVBoxLayout(self.centralwidget)
        self.mainlayout.setContentsMargins(0, 0, 0, 0)
        self.mainlayout.setSpacing(0)
        self.mainlayout.setObjectName("mainlayout")
        self.wcontent = QtWidgets.QWidget(self.centralwidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(1)
        sizePolicy.setHeightForWidth(
            self.wcontent.sizePolicy().hasHeightForWidth())
        self.wcontent.setSizePolicy(sizePolicy)
        self.wcontent.setObjectName("wcontent")
        self.contentlayout = QtWidgets.QHBoxLayout(self.wcontent)
        self.contentlayout.setContentsMargins(0, 0, 0, 0)
        self.contentlayout.setSpacing(0)
        self.contentlayout.setObjectName("contentlayout")
        self.wcenter = QtWidgets.QWidget(self.wcontent)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.wcenter.sizePolicy().hasHeightForWidth())
        self.wcenter.setSizePolicy(sizePolicy)
        self.wcenter.setMinimumSize(QtCore.QSize(1, 1))
        self.wcenter.setObjectName("wcenter")
        self.centerLayout = QtWidgets.QVBoxLayout(self.wcenter)
        self.centerLayout.setContentsMargins(4, 0, 0, 0)
        self.centerLayout.setSpacing(0)
        self.centerLayout.setObjectName("centerLayout")
        self.ltitle = MyLabel(self.wcenter)
        self.ltitle.setAlignment(QtCore.Qt.AlignCenter)
        self.ltitle.setObjectName("ltitle")
        self.ltitle.onMouseMove.connect(self.ltitleMouseMove)
        self.ltitle.onMouseRelease.connect(self.ltitleMouseRelease)
        self.ltitle.onMousePress.connect(self.ltitleMousePress)
        self.ltitle.setStyleSheet('padding-top :6px')
        self.centerLayout.addWidget(self.ltitle)
        #self.graphicsView = QtWidgets.QGraphicsView(self.wcenter)
        #self.graphicsView.setObjectName("graphicsView")
        #self.centerLayout.addWidget(self.graphicsView)
        self.contentlayout.addWidget(self.wcenter)
        self.wrborder = MyWidget(self.wcontent)
        self.wrborder.onMouseMove.connect(self.wrborderMouseMove)
        self.wrborder.onMouseRelease.connect(self.wrborderMouseRelease)
        self.wrborder.onMousePress.connect(self.wrborderMousePress)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.wrborder.sizePolicy().hasHeightForWidth())
        self.wrborder.setSizePolicy(sizePolicy)
        self.wrborder.setMinimumSize(QtCore.QSize(6, 0))
        self.wrborder.setCursor(QtGui.QCursor(QtCore.Qt.SizeHorCursor))
        self.wrborder.setStyleSheet("")
        self.wrborder.setObjectName("wrborder")
        self.contentlayout.addWidget(self.wrborder)
        self.mainlayout.addWidget(self.wcontent)
        self.wbottom = MyWidget(self.centralwidget)
        self.wbottom.setCursor(QtGui.QCursor(QtCore.Qt.SizeVerCursor))
        self.wbottom.setMouseTracking(True)
        self.wbottom.setObjectName("wbottom")
        self.wbottom.onMouseMove.connect(self.wbottomMouseMove)
        self.wbottom.onMouseRelease.connect(self.wbottomMouseRelease)
        self.wbottom.onMousePress.connect(self.wbottomMousePress)

        self.bottomLayout = QtWidgets.QHBoxLayout(self.wbottom)
        self.bottomLayout.setContentsMargins(0, 0, 0, 0)
        self.bottomLayout.setSpacing(0)
        self.bottomLayout.setObjectName("bottomLayout")
        spacerItem = QtWidgets.QSpacerItem(471, 6,
                                           QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Minimum)
        self.bottomLayout.addItem(spacerItem)
        self.lconner = MyLabel(self.wbottom)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lconner.sizePolicy().hasHeightForWidth())
        self.lconner.setSizePolicy(sizePolicy)
        self.lconner.setMinimumSize(QtCore.QSize(6, 6))
        self.lconner.setMaximumSize(QtCore.QSize(6, 6))
        self.lconner.setCursor(QtGui.QCursor(QtCore.Qt.SizeFDiagCursor))
        self.lconner.setMouseTracking(True)
        self.lconner.setText("")
        self.lconner.setObjectName("lconner")
        self.lconner.onMouseMove.connect(self.lconnerMouseMove)
        self.lconner.onMouseRelease.connect(self.lconnerMouseRelease)
        self.lconner.onMousePress.connect(self.lconnerMousePress)
        self.bottomLayout.addWidget(self.lconner)
        self.mainlayout.addWidget(self.wbottom)

        self.retranslateUi(window)
        QtCore.QMetaObject.connectSlotsByName(window)

        self.window.move(QApplication.desktop().screen().rect().center() -
                         self.window.rect().center())
Ejemplo n.º 10
0
    def setupUi(self, Main):
        Main.setObjectName("Main")
        Main.resize(910, 655)
        self.horizontalLayout_7 = QtWidgets.QHBoxLayout(Main)
        self.horizontalLayout_7.setObjectName("horizontalLayout_7")
        self.horizontalLayout_6 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_6.setObjectName("horizontalLayout_6")
        self.verticalLayout_3 = QtWidgets.QVBoxLayout()
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.label_r00 = MyLabel(Main)
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(30)
        self.label_r00.setFont(font)
        self.label_r00.setStyleSheet("border:1px solid black;border-radius:5px")
        self.label_r00.setAlignment(QtCore.Qt.AlignCenter)
        self.label_r00.setObjectName("label_r00")
        self.horizontalLayout.addWidget(self.label_r00)
        self.label_r01 = MyLabel(Main)
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(30)
        self.label_r01.setFont(font)
        self.label_r01.setStyleSheet("border:1px solid black;border-radius:5px")
        self.label_r01.setTextFormat(QtCore.Qt.AutoText)
        self.label_r01.setAlignment(QtCore.Qt.AlignCenter)
        self.label_r01.setObjectName("label_r01")
        self.horizontalLayout.addWidget(self.label_r01)
        self.label_r02 = MyLabel(Main)
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(30)
        self.label_r02.setFont(font)
        self.label_r02.setStyleSheet("border:1px solid black;border-radius:5px")
        self.label_r02.setTextFormat(QtCore.Qt.AutoText)
        self.label_r02.setAlignment(QtCore.Qt.AlignCenter)
        self.label_r02.setObjectName("label_r02")
        self.horizontalLayout.addWidget(self.label_r02)
        self.label_r03 = MyLabel(Main)
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(30)
        self.label_r03.setFont(font)
        self.label_r03.setStyleSheet("border:1px solid black;border-radius:5px")
        self.label_r03.setTextFormat(QtCore.Qt.AutoText)
        self.label_r03.setAlignment(QtCore.Qt.AlignCenter)
        self.label_r03.setObjectName("label_r03")
        self.horizontalLayout.addWidget(self.label_r03)
        self.label_r04 = MyLabel(Main)
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(30)
        self.label_r04.setFont(font)
        self.label_r04.setStyleSheet("border:1px solid black;border-radius:5px")
        self.label_r04.setTextFormat(QtCore.Qt.AutoText)
        self.label_r04.setAlignment(QtCore.Qt.AlignCenter)
        self.label_r04.setObjectName("label_r04")
        self.horizontalLayout.addWidget(self.label_r04)
        self.verticalLayout_3.addLayout(self.horizontalLayout)
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout()
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.label_r11 = MyLabel(Main)
        self.label_r11.setMinimumSize(QtCore.QSize(0, 0))
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(30)
        self.label_r11.setFont(font)
        self.label_r11.setStyleSheet("border:1px solid black;border-radius:5px")
        self.label_r11.setTextFormat(QtCore.Qt.AutoText)
        self.label_r11.setAlignment(QtCore.Qt.AlignCenter)
        self.label_r11.setObjectName("label_r11")
        self.verticalLayout_2.addWidget(self.label_r11)
        self.horizontalLayout_3.addLayout(self.verticalLayout_2)
        self.label = QtWidgets.QLabel(Main)
        self.label.setText("")
        self.label.setObjectName("label")
        self.horizontalLayout_3.addWidget(self.label)
        self.pushButton = QtWidgets.QPushButton(Main)
        self.pushButton.setMaximumSize(QtCore.QSize(500, 501))
        self.pushButton.setBaseSize(QtCore.QSize(200, 200))
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(42)
        self.pushButton.setFont(font)
        self.pushButton.setObjectName("pushButton")
        self.horizontalLayout_3.addWidget(self.pushButton)
        self.label_2 = QtWidgets.QLabel(Main)
        self.label_2.setText("")
        self.label_2.setObjectName("label_2")
        self.horizontalLayout_3.addWidget(self.label_2)
        self.verticalLayout = QtWidgets.QVBoxLayout()
        self.verticalLayout.setObjectName("verticalLayout")
        self.label_r05 = MyLabel(Main)
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(30)
        self.label_r05.setFont(font)
        self.label_r05.setStyleSheet("border:1px solid black;border-radius:5px")
        self.label_r05.setTextFormat(QtCore.Qt.AutoText)
        self.label_r05.setAlignment(QtCore.Qt.AlignCenter)
        self.label_r05.setObjectName("label_r05")
        self.verticalLayout.addWidget(self.label_r05)
        self.horizontalLayout_3.addLayout(self.verticalLayout)
        self.verticalLayout_3.addLayout(self.horizontalLayout_3)
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.label_r10 = MyLabel(Main)
        self.label_r10.setMinimumSize(QtCore.QSize(0, 0))
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(30)
        self.label_r10.setFont(font)
        self.label_r10.setStyleSheet("border:1px solid black;border-radius:5px")
        self.label_r10.setTextFormat(QtCore.Qt.AutoText)
        self.label_r10.setAlignment(QtCore.Qt.AlignCenter)
        self.label_r10.setObjectName("label_r10")
        self.horizontalLayout_2.addWidget(self.label_r10)
        self.label_r09 = MyLabel(Main)
        self.label_r09.setMinimumSize(QtCore.QSize(0, 0))
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(30)
        self.label_r09.setFont(font)
        self.label_r09.setStyleSheet("border:1px solid black;border-radius:5px")
        self.label_r09.setTextFormat(QtCore.Qt.AutoText)
        self.label_r09.setAlignment(QtCore.Qt.AlignCenter)
        self.label_r09.setObjectName("label_r09")
        self.horizontalLayout_2.addWidget(self.label_r09)
        self.label_r08 = MyLabel(Main)
        self.label_r08.setMinimumSize(QtCore.QSize(0, 0))
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(30)
        self.label_r08.setFont(font)
        self.label_r08.setStyleSheet("border:1px solid black;border-radius:5px")
        self.label_r08.setTextFormat(QtCore.Qt.AutoText)
        self.label_r08.setAlignment(QtCore.Qt.AlignCenter)
        self.label_r08.setObjectName("label_r08")
        self.horizontalLayout_2.addWidget(self.label_r08)
        self.label_r07 = MyLabel(Main)
        self.label_r07.setMinimumSize(QtCore.QSize(0, 0))
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(30)
        self.label_r07.setFont(font)
        self.label_r07.setStyleSheet("border:1px solid black;border-radius:5px")
        self.label_r07.setTextFormat(QtCore.Qt.AutoText)
        self.label_r07.setAlignment(QtCore.Qt.AlignCenter)
        self.label_r07.setObjectName("label_r07")
        self.horizontalLayout_2.addWidget(self.label_r07)
        self.label_r06 = MyLabel(Main)
        self.label_r06.setMinimumSize(QtCore.QSize(0, 0))
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(30)
        self.label_r06.setFont(font)
        self.label_r06.setStyleSheet("border:1px solid black;border-radius:5px")
        self.label_r06.setTextFormat(QtCore.Qt.AutoText)
        self.label_r06.setAlignment(QtCore.Qt.AlignCenter)
        self.label_r06.setObjectName("label_r06")
        self.horizontalLayout_2.addWidget(self.label_r06)
        self.verticalLayout_3.addLayout(self.horizontalLayout_2)
        self.horizontalLayout_5 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_5.setObjectName("horizontalLayout_5")
        self.label_p1 = QtWidgets.QLabel(Main)
        self.label_p1.setMaximumSize(QtCore.QSize(16777215, 40))
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(16)
        self.label_p1.setFont(font)
        self.label_p1.setObjectName("label_p1")
        self.horizontalLayout_5.addWidget(self.label_p1)
        self.label_p2 = QtWidgets.QLabel(Main)
        self.label_p2.setMaximumSize(QtCore.QSize(16777215, 40))
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(16)
        self.label_p2.setFont(font)
        self.label_p2.setObjectName("label_p2")
        self.horizontalLayout_5.addWidget(self.label_p2)
        self.label_p3 = QtWidgets.QLabel(Main)
        self.label_p3.setMaximumSize(QtCore.QSize(16777215, 40))
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(16)
        self.label_p3.setFont(font)
        self.label_p3.setObjectName("label_p3")
        self.horizontalLayout_5.addWidget(self.label_p3)
        self.verticalLayout_3.addLayout(self.horizontalLayout_5)
        self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        self.label_p4 = QtWidgets.QLabel(Main)
        self.label_p4.setMaximumSize(QtCore.QSize(16777215, 40))
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(16)
        self.label_p4.setFont(font)
        self.label_p4.setObjectName("label_p4")
        self.horizontalLayout_4.addWidget(self.label_p4)
        self.label_p5 = QtWidgets.QLabel(Main)
        self.label_p5.setMaximumSize(QtCore.QSize(16777215, 40))
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(16)
        self.label_p5.setFont(font)
        self.label_p5.setObjectName("label_p5")
        self.horizontalLayout_4.addWidget(self.label_p5)
        self.label_p6 = QtWidgets.QLabel(Main)
        self.label_p6.setMaximumSize(QtCore.QSize(16777215, 40))
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(16)
        self.label_p6.setFont(font)
        self.label_p6.setObjectName("label_p6")
        self.horizontalLayout_4.addWidget(self.label_p6)
        self.verticalLayout_3.addLayout(self.horizontalLayout_4)
        self.horizontalLayout_6.addLayout(self.verticalLayout_3)
        self.textEdit = QtWidgets.QTextEdit(Main)
        self.textEdit.setMaximumSize(QtCore.QSize(350, 16777215))
        font = QtGui.QFont()
        font.setFamily("仿宋")
        font.setPointSize(14)
        self.textEdit.setFont(font)
        self.textEdit.setObjectName("textEdit")
        self.horizontalLayout_6.addWidget(self.textEdit)
        self.horizontalLayout_7.addLayout(self.horizontalLayout_6)

        self.retranslateUi(Main)
        self.pushButton.clicked.connect(Main.lottery_start)
        self.label_r00.label_double_click.connect(Main.label_doubl_cleck)
        self.label_r01.label_double_click.connect(Main.label_doubl_cleck)
        self.label_r02.label_double_click.connect(Main.label_doubl_cleck)
        self.label_r08.label_double_click.connect(Main.label_doubl_cleck)
        self.label_r03.label_double_click.connect(Main.label_doubl_cleck)
        self.label_r05.label_double_click.connect(Main.label_doubl_cleck)
        self.label_r04.label_double_click.connect(Main.label_doubl_cleck)
        self.label_r06.label_double_click.connect(Main.label_doubl_cleck)
        self.label_r07.label_double_click.connect(Main.label_doubl_cleck)
        self.label_r08.label_double_click.connect(Main.label_doubl_cleck)
        self.label_r09.label_double_click.connect(Main.label_doubl_cleck)
        self.label_r10.label_double_click.connect(Main.label_doubl_cleck)
        self.label_r11.label_double_click.connect(Main.label_doubl_cleck)
        QtCore.QMetaObject.connectSlotsByName(Main)
Ejemplo n.º 11
0
    def setupUi(self, MainKdarts):
        MainKdarts.setObjectName("MainKdarts")
        MainKdarts.resize(806, 616)
        self.centralwidget = QtGui.QWidget(MainKdarts)
        self.centralwidget.setObjectName("centralwidget")
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.centralwidget)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.verticalLayout = QtGui.QVBoxLayout()
        self.verticalLayout.setObjectName("verticalLayout")
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        #self.label = MyLabel(self.centralwidget)
        self.label = MyLabel()
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label.sizePolicy().hasHeightForWidth())
        self.label.setSizePolicy(sizePolicy)
        self.label.setMinimumSize(QtCore.QSize(400, 400))
        self.label.setObjectName("label")
        self.horizontalLayout.addWidget(self.label)
        self.frame = QtGui.QFrame(self.centralwidget)
        self.frame.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame.setFrameShadow(QtGui.QFrame.Sunken)
        self.frame.setObjectName("frame")
        self.widget = QtGui.QWidget(self.frame)
        self.widget.setGeometry(QtCore.QRect(8, 8, 371, 33))
        self.widget.setObjectName("widget")
        self.horizontalLayout_5 = QtGui.QHBoxLayout(self.widget)
        self.horizontalLayout_5.setObjectName("horizontalLayout_5")
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.label_2 = QtGui.QLabel(self.widget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_2.sizePolicy().hasHeightForWidth())
        self.label_2.setSizePolicy(sizePolicy)
        self.label_2.setMinimumSize(QtCore.QSize(30, 0))
        self.label_2.setObjectName("label_2")
        self.horizontalLayout_2.addWidget(self.label_2)
        self.lcdNumber = QtGui.QLCDNumber(self.widget)
        self.lcdNumber.setFrameShape(QtGui.QFrame.NoFrame)
        self.lcdNumber.setFrameShadow(QtGui.QFrame.Plain)
        self.lcdNumber.setProperty("intValue", QtCore.QVariant(501))
        self.lcdNumber.setObjectName("lcdNumber")
        self.horizontalLayout_2.addWidget(self.lcdNumber)
        self.horizontalLayout_5.addLayout(self.horizontalLayout_2)
        self.horizontalLayout_3 = QtGui.QHBoxLayout()
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_3.addItem(spacerItem)
        self.label_3 = QtGui.QLabel(self.widget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_3.sizePolicy().hasHeightForWidth())
        self.label_3.setSizePolicy(sizePolicy)
        self.label_3.setObjectName("label_3")
        self.horizontalLayout_3.addWidget(self.label_3)
        self.pushButton = QtGui.QPushButton(self.widget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.pushButton.sizePolicy().hasHeightForWidth())
        self.pushButton.setSizePolicy(sizePolicy)
        self.pushButton.setObjectName("pushButton")
        self.horizontalLayout_3.addWidget(self.pushButton)
        self.horizontalLayout_5.addLayout(self.horizontalLayout_3)
        self.horizontalLayout.addWidget(self.frame)
        self.verticalLayout.addLayout(self.horizontalLayout)
        self.horizontalLayout_4 = QtGui.QHBoxLayout()
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem1)
        self.lineEdit = QtGui.QLineEdit(self.centralwidget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.lineEdit.sizePolicy().hasHeightForWidth())
        self.lineEdit.setSizePolicy(sizePolicy)
        self.lineEdit.setMinimumSize(QtCore.QSize(700, 77))
        font = QtGui.QFont()
        font.setPointSize(32)
        self.lineEdit.setFont(font)
        self.lineEdit.setAlignment(QtCore.Qt.AlignCenter)
        self.lineEdit.setObjectName("lineEdit")
        self.horizontalLayout_4.addWidget(self.lineEdit)
        spacerItem2 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem2)
        self.verticalLayout.addLayout(self.horizontalLayout_4)
        self.verticalLayout_2.addLayout(self.verticalLayout)
        MainKdarts.setCentralWidget(self.centralwidget)
        self.menubar = QtGui.QMenuBar(MainKdarts)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 806, 28))
        self.menubar.setObjectName("menubar")
        MainKdarts.setMenuBar(self.menubar)
        self.statusbar = QtGui.QStatusBar(MainKdarts)
        self.statusbar.setObjectName("statusbar")
        MainKdarts.setStatusBar(self.statusbar)

        self.retranslateUi(MainKdarts)
        QtCore.QMetaObject.connectSlotsByName(MainKdarts)
Ejemplo n.º 12
0
class MainCode(QMainWindow, main_ui.Ui_MainWindow):
    def __init__(self):
        QMainWindow.__init__(self)
        main_ui.Ui_MainWindow.__init__(self)
        self.setupUi(self)
        self.initUI()

    def initUI(self):
        self.setWindowTitle("标注工具")
        self.label_log.setText("")

        from mylabel import MyLabel, SemiLabel

        # 将响应函数绑定在按钮上
        self.btn_open.clicked.connect(self.on_open_dir)
        self.btn_next.clicked.connect(self.on_next_image)
        self.btn_pre.clicked.connect(self.on_pre_image)
        self.btn_save.clicked.connect(self.on_save)

        # 目录树
        self.model = QStandardItemModel(0, 1, self)
        self.model.setHeaderData(0, Qt.Horizontal, "文件路径")
        self.treeView.setModel(self.model)
        self.treeView.clicked.connect(self.tree_clicked)

        # 全手动
        self.lb = MyLabel(self.tab_manu)
        self.lb.setGeometry(QRect(10, 10, 760, 540))
        self.radio_poly.setChecked(True)
        self.button_group = QtWidgets.QButtonGroup(self)
        self.button_group.addButton(self.radio_rect)
        self.button_group.addButton(self.radio_poly)

        # 半自动
        self.mylabel_rgb_semi = SemiLabel(self.tab_semi)
        self.mylabel_rgb_semi.setGeometry(QRect(30, 150, 320, 240))
        self.label_rgb_semi.setText("")
        self.label_mask_semi.setText("")
        self.label_curmarker_semi.setText("current_marker: " + "1")

        # 全自动
        self.label_rgbtfusion_auto.setText("")
        self.label_registered_auto.setText("")
        self.label_mask_auto.setText("")
        self.mylabel_registered_auto = SemiLabel(self.tab_auto)
        self.mylabel_registered_auto.setGeometry(QRect(40, 290, 320, 240))
        self.label_curmarker_auto.setText("current_marker: " + "1")
        self.boundary_points = []

        # self.radio_semi_auto.setChecked(True)
        # self.group_auto = QtWidgets.QButtonGroup(self)
        # self.group_auto.addButton(self.radio_semi_auto)
        # self.group_auto.addButton(self.radio_auto_auto)

        self.cur_img_ann = {}
        self.show()

    def on_open_dir(self):
        data_dir = QFileDialog.getExistingDirectory(self, "选取文件夹", "./")
        self.data_dir = data_dir

        test_data = os.listdir(data_dir)
        test_data.sort()
        self.test_data = test_data
        self.num_data = len(test_data)
        self.image_ids = list(range(self.num_data))
        self.image_id = 0
        self.label_img_info.setText("image_id: {}\nname: {}".format(
            self.image_id, self.test_data[self.image_id]))

        # 目录树显示
        path_data_name = self.model.invisibleRootItem()
        for i in range(len(test_data)):
            gos_data = QStandardItem(test_data[i])
            path_data_name.setChild(i, gos_data)

    def on_next_image(self):
        if self.image_id == self.num_data - 1:
            self.image_id = 0
        else:
            self.image_id += 1
        self.label_img_info.setText("image_id: {}\nname: {}".format(
            self.image_id, self.test_data[self.image_id]))

    def on_pre_image(self):
        if self.image_id == 0:
            self.image_id = self.num_data - 1
        else:
            self.image_id -= 1
        self.label_img_info.setText("image_id: {}\nname: {}".format(
            self.image_id, self.test_data[self.image_id]))

    def tree_clicked(self):
        index = self.treeView.currentIndex()
        self.image_id = index.row()
        self.label_img_info.setText("image_id: {}\nname: {}".format(
            self.image_id, self.test_data[self.image_id]))
        self.boundary_points = []
        if self.tabWidget.currentIndex() == 0:  # 全手动处理
            self.show_image_manu()
        elif self.tabWidget.currentIndex() == 1:  # 半自动处理
            self.show_image_semi()
        elif self.tabWidget.currentIndex() == 2:  # 全自动处理
            self.show_image_auto()

    # 全手动标注的处理函数
    def show_image_manu(self):
        self.lb.refresh()
        rgb_path = os.path.join(self.data_dir, self.test_data[self.image_id])
        rgb_image = cv.imread(rgb_path)
        # height, width = img.shape[:2]
        # max_edge_scale = min(self.lb.width() / width, self.lb.height() / height)
        # height_scale, width_scale = height * max_edge_scale, width * max_edge_scale
        # img = cv.resize(img, (int(width_scale), int(height_scale)))
        # img = image_pad(img, 540, 760)
        # img = img[..., ::-1]
        # img = PI.fromarray(img)
        # img = img.toqpixmap()
        #
        # self.lb.setPixmap(img)
        # self.lb.set_parameters(img, self.radio_rect, self.radio_poly)
        # self.lb.setAlignment(QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop)
        # self.lb.setCursor(Qt.CrossCursor) # 改变鼠标箭头形式

        rgb_pix_map = display_image_on_label(rgb_image, self.lb)
        self.lb.set_parameters(rgb_pix_map, self.radio_rect, self.radio_poly,
                               self.cur_img_ann, self.boundary_points)
        self.lb.setCursor(Qt.CrossCursor)  # 改变鼠标箭头形式

    # 半自动标注的处理函数
    def show_image_semi(self):
        # 获取待显示结果的路径
        rgb_path = os.path.join(self.data_dir, self.test_data[self.image_id])
        rgb_image = cv.imread(rgb_path)
        rgb_pix_map = display_image_on_label(rgb_image, self.mylabel_rgb_semi)
        _ = display_image_on_label(rgb_image, self.label_mask_semi)
        self.mylabel_rgb_semi.set_parameters(
            rgb_image,
            rgb_pix_map,
            self.label_mask_semi,
            label_curmarker=self.label_curmarker_semi,
            mask=self.boundary_points)  # 前景分割设置

    # 全自动标注的处理函数
    def show_image_auto(self):
        # 获取待显示结果的路径
        data_dir = self.data_dir.split('/')[:-1]
        result_dir = '/'.join(data_dir) + "/registration_results/"
        rgb_t_fusion_path = result_dir + "rgb_t_fusion/" + self.test_data[
            self.image_id]
        registered_path = result_dir + "registered/" + self.test_data[
            self.image_id]

        # 显示rgb_t_fusion图像和配准后的红外图像
        rgb_t_fusion_image = cv.imread(rgb_t_fusion_path)
        registered_image = cv.imread(registered_path)
        # if self.radio_semi_auto.isChecked():
        # 	_ = display_image_on_label(rgb_t_fusion_image, self.label_rgbtfusion_auto)
        # 	registered_pix_map = display_image_on_label(registered_image, self.mylabel_registered_auto)
        # 	_ = display_image_on_label(registered_image, self.label_mask_auto)
        # 	self.mylabel_registered_auto.set_parameters(registered_image, registered_pix_map,
        #                                                 self.label_mask_auto,
        #                                                 label_curmarker=self.label_curmarker_auto,
        #                                                 mask = self.boundary_points)   # 前景分割设置
        # elif self.radio_auto_auto.isChecked():
        _ = display_image_on_label(rgb_t_fusion_image,
                                   self.label_rgbtfusion_auto)
        registered_pix_map = display_image_on_label(
            registered_image, self.mylabel_registered_auto)
        mask, self.boundary_points = watershed.App(
            registered_image.copy()).start()
        _ = display_image_on_label(mask, self.label_mask_auto)

        self.mylabel_registered_auto.set_parameters(
            registered_image,
            registered_pix_map,
            self.label_mask_auto,
            label_curmarker=self.label_curmarker_auto,
            mask=self.boundary_points)  # 前景分割设置

        # 添加先验标记和分水岭
        def pre_process():
            gray = cv.cvtColor(registered_image, cv.COLOR_BGR2GRAY)

    def on_save(self):
        # 是否进行了标注
        if self.boundary_points == []:
            print("请先进行标注")
            self.label_log.setText("Tip: " + "请先进行标注!")
            return

        # 转换标注的格式
        regions = []
        regions_item = {}
        name_shape_attributes = "polygon"
        regions_item["shape_attributes"] = {}
        regions_item["shape_attributes"]["name"] = name_shape_attributes
        regions_item["shape_attributes"][
            "all_points_x"] = self.boundary_points[0]
        regions_item["shape_attributes"][
            "all_points_y"] = self.boundary_points[1]
        category = self.test_data[self.image_id].split("_")[0]
        category_label = '0'
        if category == "box":
            category_label = '1'
        elif category == "cabinet":
            category_label = '2'
        elif category == "insulator":
            category_label = '3'
        elif category == "transformor":
            category_label = '4'
        region_attributes = {"label": category_label}
        regions_item["region_attributes"] = region_attributes
        regions.append(regions_item)

        img_name = self.test_data[self.image_id]
        self.cur_img_ann["filename"] = img_name
        self.cur_img_ann["size"] = random.randint(0, 1000)
        self.cur_img_ann["file_attributes"] = {}
        self.cur_img_ann["regions"] = regions

        # 保存标注结果
        save_path = "./results/"
        j = json_lib.JSON()
        j.JSONWrite(save_path + img_name[:-4] + ".json", self.cur_img_ann)
        log = img_name + "的标注已保存到" + save_path + img_name[:-4] + ".json"
        self.label_log.setText("Tip: " + log)
        print(log)

    def water_shed(self, img):
        self.markers_vis = watershed.App(img).run()

    def keyPressEvent(self, event):
        ch = event.key()
        cur_marker = ch - ord('0')
        if 0 < cur_marker < 7:
            if self.tabWidget.currentIndex() == 1:
                self.label_curmarker_semi.setText("current_marker: " +
                                                  str(cur_marker))
            elif self.tabWidget.currentIndex() == 2:
                self.label_curmarker_auto.setText("current_marker: " +
                                                  str(cur_marker))
Ejemplo n.º 13
0
 def initUI(self):
     self.lb = MyLabel(self)  # 重定义的label
     print(self.lb.x0, self.lb.y0, self.lb.x1, self.lb.y1)
Ejemplo n.º 14
0
    def setupUi(self, Tracker):
        Tracker.setObjectName("Tracker")
        Tracker.setWindowModality(QtCore.Qt.NonModal)
        Tracker.resize(803, 644)
        palette = QtGui.QPalette()
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.WindowText,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(170, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Button, brush)
        brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Light, brush)
        brush = QtGui.QBrush(QtGui.QColor(212, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Midlight, brush)
        brush = QtGui.QBrush(QtGui.QColor(85, 127, 127))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Dark, brush)
        brush = QtGui.QBrush(QtGui.QColor(113, 170, 170))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Mid, brush)
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Text, brush)
        brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.BrightText,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.ButtonText,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Base, brush)
        brush = QtGui.QBrush(QtGui.QColor(170, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Window, brush)
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Shadow, brush)
        brush = QtGui.QBrush(QtGui.QColor(212, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.AlternateBase,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(255, 255, 220))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.ToolTipBase,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.ToolTipText,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0, 128))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.PlaceholderText,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.WindowText,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(170, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Button, brush)
        brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Light, brush)
        brush = QtGui.QBrush(QtGui.QColor(212, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Midlight,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(85, 127, 127))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Dark, brush)
        brush = QtGui.QBrush(QtGui.QColor(113, 170, 170))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Mid, brush)
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Text, brush)
        brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.BrightText,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.ButtonText,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Base, brush)
        brush = QtGui.QBrush(QtGui.QColor(170, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Window, brush)
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Shadow, brush)
        brush = QtGui.QBrush(QtGui.QColor(212, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.AlternateBase,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(255, 255, 220))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.ToolTipBase,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.ToolTipText,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0, 128))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Inactive,
                         QtGui.QPalette.PlaceholderText, brush)
        brush = QtGui.QBrush(QtGui.QColor(85, 127, 127))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.WindowText,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(170, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Button, brush)
        brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Light, brush)
        brush = QtGui.QBrush(QtGui.QColor(212, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Midlight,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(85, 127, 127))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Dark, brush)
        brush = QtGui.QBrush(QtGui.QColor(113, 170, 170))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Mid, brush)
        brush = QtGui.QBrush(QtGui.QColor(85, 127, 127))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Text, brush)
        brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.BrightText,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(85, 127, 127))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ButtonText,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(170, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Base, brush)
        brush = QtGui.QBrush(QtGui.QColor(170, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Window, brush)
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Shadow, brush)
        brush = QtGui.QBrush(QtGui.QColor(170, 255, 255))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.AlternateBase,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(255, 255, 220))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ToolTipBase,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ToolTipText,
                         brush)
        brush = QtGui.QBrush(QtGui.QColor(0, 0, 0, 128))
        brush.setStyle(QtCore.Qt.SolidPattern)
        palette.setBrush(QtGui.QPalette.Disabled,
                         QtGui.QPalette.PlaceholderText, brush)
        Tracker.setPalette(palette)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap("1234.png"), QtGui.QIcon.Normal,
                       QtGui.QIcon.Off)
        Tracker.setWindowIcon(icon)
        Tracker.setTabShape(QtWidgets.QTabWidget.Triangular)
        self.centralwidget = QtWidgets.QWidget(Tracker)
        self.centralwidget.setObjectName("centralwidget")
        self.btn_open = QtWidgets.QPushButton(self.centralwidget)
        self.btn_open.setGeometry(QtCore.QRect(30, 480, 90, 30))
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap("123.png"), QtGui.QIcon.Normal,
                        QtGui.QIcon.Off)
        self.btn_open.setIcon(icon1)
        self.btn_open.setObjectName("btn_open")
        self.btn_play = QtWidgets.QPushButton(self.centralwidget)
        self.btn_play.setGeometry(QtCore.QRect(220, 480, 90, 30))
        self.btn_play.setIcon(icon1)
        self.btn_play.setObjectName("btn_play")
        self.btn_gray = QtWidgets.QPushButton(self.centralwidget)
        self.btn_gray.setGeometry(QtCore.QRect(650, 480, 90, 30))
        self.btn_gray.setIcon(icon1)
        self.btn_gray.setObjectName("btn_gray")
        self.btn_cap = QtWidgets.QPushButton(self.centralwidget)
        self.btn_cap.setGeometry(QtCore.QRect(440, 480, 90, 30))
        self.btn_cap.setIcon(icon1)
        self.btn_cap.setObjectName("btn_cap")
        self.wgt_video = MyLabel(self.centralwidget)
        self.wgt_video.setGeometry(QtCore.QRect(0, 80, 400, 340))
        self.wgt_video.setLayoutDirection(QtCore.Qt.LeftToRight)
        self.wgt_video.setTextFormat(QtCore.Qt.AutoText)
        self.wgt_video.setAlignment(QtCore.Qt.AlignCenter)
        self.wgt_video.setIndent(-1)
        self.wgt_video.setObjectName("wgt_video")
        self.wgt_picture = MyLabel(self.centralwidget)
        self.wgt_picture.setGeometry(QtCore.QRect(400, 80, 401, 170))
        self.wgt_picture.setAlignment(QtCore.Qt.AlignCenter)
        self.wgt_picture.setObjectName("wgt_picture")
        self.wgt_gray = MyLabel(self.centralwidget)
        self.wgt_gray.setGeometry(QtCore.QRect(400, 250, 401, 170))
        self.wgt_gray.setAlignment(QtCore.Qt.AlignCenter)
        self.wgt_gray.setObjectName("wgt_gray")
        Tracker.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(Tracker)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 803, 26))
        self.menubar.setObjectName("menubar")
        self.menu = QtWidgets.QMenu(self.menubar)
        self.menu.setObjectName("menu")
        self.menu_2 = QtWidgets.QMenu(self.menubar)
        self.menu_2.setObjectName("menu_2")
        Tracker.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(Tracker)
        self.statusbar.setObjectName("statusbar")
        Tracker.setStatusBar(self.statusbar)
        self.action = QtWidgets.QAction(Tracker)
        self.action.setObjectName("action")
        self.action_2 = QtWidgets.QAction(Tracker)
        self.action_2.setObjectName("action_2")
        self.action_3 = QtWidgets.QAction(Tracker)
        self.action_3.setObjectName("action_3")
        self.menu.addAction(self.action_2)
        self.menu.addAction(self.action_3)
        self.menu_2.addAction(self.action)
        self.menubar.addAction(self.menu.menuAction())
        self.menubar.addAction(self.menu_2.menuAction())

        self.retranslateUi(Tracker)
        self.btn_open.clicked.connect(Tracker.btn_Open_Clicked)
        self.btn_play.clicked.connect(Tracker.btn_Play_Clicked)
        self.btn_cap.clicked.connect(Tracker.btn_Cap_Clicked)
        self.btn_gray.clicked.connect(Tracker.btn_Gray_Clicked)
        QtCore.QMetaObject.connectSlotsByName(Tracker)
Ejemplo n.º 15
0
class Ui_Form(object):
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(627, 527)
        Form.setMaximumSize(QtCore.QSize(16777215, 16777215))
        Form.setStyleSheet("background-color: rgb(0, 0, 0);")
        self.lb = QtWidgets.QLabel(Form)
        self.lb.setGeometry(QtCore.QRect(3, 1, 621, 421))
        self.lb.setObjectName("lb")
        self.label = MyLabel(self.lb)
        self.label.setGeometry(QtCore.QRect(3, 1, 621, 421))
        self.label.setPixmap(QtGui.QPixmap(file_path_masaike))
        self.label.setScaledContents(True)
        self.pushButton = QtWidgets.QPushButton(Form)
        self.pushButton.setGeometry(QtCore.QRect(50, 430, 90, 90))
        self.pushButton.setText("")
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap("E:/opencv_jk/添加.png"),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton.setIcon(icon)
        self.pushButton.setIconSize(QtCore.QSize(90, 90))
        self.pushButton.setObjectName("pushButton")
        self.pushButton_2 = QtWidgets.QPushButton(Form)
        self.pushButton_2.setGeometry(QtCore.QRect(500, 430, 90, 90))
        self.pushButton_2.setText("")
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap("E:/opencv_jk/删除.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_2.setIcon(icon1)
        self.pushButton_2.setIconSize(QtCore.QSize(90, 90))
        self.pushButton_2.setObjectName("pushButton_2")
        self.pushButton_3 = QtWidgets.QPushButton(Form)
        self.pushButton_3.setGeometry(QtCore.QRect(270, 430, 90, 90))
        self.pushButton_3.setText("")
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap("E:/opencv_jk/保存.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_3.setIcon(icon2)
        self.pushButton_3.setIconSize(QtCore.QSize(90, 90))
        self.pushButton_3.setObjectName("pushButton_3")

        self.retranslateUi(Form)
        self.pushButton.clicked.connect(self.tianjia)
        self.pushButton_3.clicked.connect(self.baocun)
        self.pushButton_2.clicked.connect(self.shanchu)
        QtCore.QMetaObject.connectSlotsByName(Form)

    def retranslateUi(self, Form):
        _translate = QtCore.QCoreApplication.translate
        Form.setWindowTitle(_translate("Form", "Form"))

    def mosaic(self, selected_image, nsize=3):
        rows = self.label.x1 - self.label.x0
        cols = self.label.y1 - self.label.y0
        dist = selected_image.copy()
        # 划分小方块,每个小方块填充随机颜色
        for y in range(0, rows, nsize):
            for x in range(0, cols, nsize):
                dist[y:(y + nsize),
                     x:(x + nsize)] = (np.random.randint(0, 255),
                                       np.random.randint(0, 255),
                                       np.random.randint(0, 255))
        return dist

    def tianjia(self):
        global file_path_masaike
        root = tk.Tk()
        root.withdraw()
        file_path_masaike = filedialog.askopenfilename()
        self.label.setPixmap(QtGui.QPixmap(file_path_masaike))

    def baocun(self):
        global file_path_masaike
        root = tk.Tk()
        root.withdraw()
        file_path_baocun = filedialog.asksaveasfilename(filetypes=[("picture",
                                                                    ".jpg")])
        rect = {}
        rect['x'] = self.label.x0
        rect['y'] = self.label.y0
        width = self.label.x1 - self.label.x0
        height = self.label.y1 - self.label.y0
        rect['width'] = width
        rect['height'] = height
        img = cv2.imread(file_path_masaike)
        img_cpy = img.copy()
        select_image = img_cpy[rect['y']:(rect['y'] + rect['height']),
                               rect['x']:(rect['x'] + rect['width'])]
        result = self.mosaic(select_image)
        # 将处理完成的区域合并回原图像
        img_cpy[rect['y']:(rect['y'] + rect['height']),
                rect['x']:(rect['x'] + rect['width'])] = cv2.addWeighted(
                    result, 0.65, select_image, 0.35, 0)
        cv2.imwrite(file_path_baocun + ".jpg", img_cpy)

    def shanchu(self):
        self.label.clear()
Ejemplo n.º 16
0
class Ui_Form(object):
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(629, 528)
        Form.setStyleSheet("background-color: rgb(0, 0, 0);")
        self.lb = QtWidgets.QLabel(Form)
        self.lb.setGeometry(QtCore.QRect(3, 1, 621, 421))
        self.lb.setObjectName("lb")
        self.label = MyLabel(self.lb)
        self.label.setGeometry(QtCore.QRect(3, 1, 621, 421))
        self.label.setPixmap(QtGui.QPixmap(file_path_caijian))
        self.label.setScaledContents(True)
        self.pushButton = QtWidgets.QPushButton(Form)
        self.pushButton.setGeometry(QtCore.QRect(50, 430, 91, 91))
        self.pushButton.setText("")
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap("E:/opencv_jk/添加.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton.setIcon(icon)
        self.pushButton.setIconSize(QtCore.QSize(90, 90))
        self.pushButton.setObjectName("pushButton")
        self.pushButton_2 = QtWidgets.QPushButton(Form)
        self.pushButton_2.setGeometry(QtCore.QRect(270, 430, 91, 91))
        self.pushButton_2.setText("")
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap("E:/opencv_jk/保存.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_2.setIcon(icon1)
        self.pushButton_2.setIconSize(QtCore.QSize(90, 90))
        self.pushButton_2.setObjectName("pushButton_2")
        self.pushButton_3 = QtWidgets.QPushButton(Form)
        self.pushButton_3.setGeometry(QtCore.QRect(490, 430, 91, 91))
        self.pushButton_3.setText("")
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap("E:/opencv_jk/删除.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_3.setIcon(icon2)
        self.pushButton_3.setIconSize(QtCore.QSize(90, 90))
        self.pushButton_3.setObjectName("pushButton_3")

        self.retranslateUi(Form)
        self.pushButton.clicked.connect(self.tianjia)
        self.pushButton_2.clicked.connect(self.baocun)
        self.pushButton_3.clicked.connect(self.shanchu)
        QtCore.QMetaObject.connectSlotsByName(Form)

    def retranslateUi(self, Form):
        _translate = QtCore.QCoreApplication.translate
        Form.setWindowTitle(_translate("Form", "Form"))

    def tianjia(self):
        global file_path_caijian
        root = tk.Tk()
        root.withdraw()
        file_path_caijian = filedialog.askopenfilename()
        self.label.setPixmap(QtGui.QPixmap(file_path_caijian))

    def baocun(self):
        global file_path_caijian
        root = tk.Tk()
        root.withdraw()
        file_path_baocun = filedialog.asksaveasfilename(filetypes=[("picture", ".jpg")])
        img = cv2.imread(file_path_caijian)
        # [y: y + h, x: x + w]
        dst = img[self.label.y0:self.label.y1, self.label.x0:self.label.x1]
        cv2.imwrite(file_path_baocun + ".jpg", dst)

    def shanchu(self):
        self.label.clear()
Ejemplo n.º 17
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(900, 600)
        MainWindow.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.bottomWidget = QtWidgets.QWidget(self.centralwidget)
        self.bottomWidget.setGeometry(QtCore.QRect(60, 540, 771, 41))
        self.bottomWidget.setStyleSheet("background-color: rgb(109, 255, 93);")
        self.bottomWidget.setObjectName("bottomWidget")
        self.gridLayout = QtWidgets.QGridLayout(self.bottomWidget)
        self.gridLayout.setContentsMargins(0, 0, 0, 0)
        self.gridLayout.setObjectName("gridLayout")
        spacerItem = QtWidgets.QSpacerItem(10, 20,
                                           QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Minimum)
        self.gridLayout.addItem(spacerItem, 0, 10, 1, 1)
        spacerItem1 = QtWidgets.QSpacerItem(10, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout.addItem(spacerItem1, 0, 0, 1, 1)
        self.bindPhone = MyLabel(self.bottomWidget)
        self.bindPhone.setObjectName("bindPhone")
        self.gridLayout.addWidget(self.bindPhone, 0, 7, 1, 1)
        self.regOrLogin = MyLabel(self.bottomWidget)
        self.regOrLogin.setObjectName("regOrLogin")
        self.gridLayout.addWidget(self.regOrLogin, 0, 5, 1, 1)
        self.bindWechat = MyLabel(self.bottomWidget)
        self.bindWechat.setObjectName("bindWechat")
        self.gridLayout.addWidget(self.bindWechat, 0, 3, 1, 1)
        spacerItem2 = QtWidgets.QSpacerItem(206, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout.addItem(spacerItem2, 0, 2, 1, 1)
        spacerItem3 = QtWidgets.QSpacerItem(205, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout.addItem(spacerItem3, 0, 8, 1, 1)
        self.addKnowlege = MyLabel(self.bottomWidget)
        self.addKnowlege.setObjectName("addKnowlege")
        self.gridLayout.addWidget(self.addKnowlege, 0, 9, 1, 1)
        self.versionInfo = QtWidgets.QLabel(self.bottomWidget)
        self.versionInfo.setObjectName("versionInfo")
        self.gridLayout.addWidget(self.versionInfo, 0, 1, 1, 1)
        spacerItem4 = QtWidgets.QSpacerItem(20, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout.addItem(spacerItem4, 0, 4, 1, 1)
        spacerItem5 = QtWidgets.QSpacerItem(20, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout.addItem(spacerItem5, 0, 6, 1, 1)
        self.gridLayout.setColumnStretch(2, 1)
        self.gridLayout.setColumnStretch(8, 1)
        self.middleWidget = QtWidgets.QWidget(self.centralwidget)
        self.middleWidget.setGeometry(QtCore.QRect(130, 190, 571, 61))
        self.middleWidget.setStyleSheet("background-color: rgb(170, 85, 0);")
        self.middleWidget.setObjectName("middleWidget")
        self.gridLayout_2 = QtWidgets.QGridLayout(self.middleWidget)
        self.gridLayout_2.setContentsMargins(0, 0, 0, 0)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.searchText = QtWidgets.QLineEdit(self.middleWidget)
        self.searchText.setObjectName("searchText")
        self.gridLayout_2.addWidget(self.searchText, 0, 0, 1, 1)
        self.searchBtn = MyLabel(self.middleWidget)
        self.searchBtn.setObjectName("searchBtn")
        self.gridLayout_2.addWidget(self.searchBtn, 0, 2, 1, 1)
        spacerItem6 = QtWidgets.QSpacerItem(10, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_2.addItem(spacerItem6, 0, 1, 1, 1)
        spacerItem7 = QtWidgets.QSpacerItem(10, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_2.addItem(spacerItem7, 0, 3, 1, 1)
        self.gridLayout_2.setColumnStretch(0, 1)
        self.topWidget = QtWidgets.QWidget(self.centralwidget)
        self.topWidget.setGeometry(QtCore.QRect(40, 20, 801, 41))
        self.topWidget.setStyleSheet("background-color: rgb(255, 255, 127);")
        self.topWidget.setObjectName("topWidget")
        self.gridLayout_3 = QtWidgets.QGridLayout(self.topWidget)
        self.gridLayout_3.setContentsMargins(0, 0, 0, 0)
        self.gridLayout_3.setObjectName("gridLayout_3")
        spacerItem8 = QtWidgets.QSpacerItem(10, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_3.addItem(spacerItem8, 0, 0, 1, 1)
        spacerItem9 = QtWidgets.QSpacerItem(20, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_3.addItem(spacerItem9, 0, 7, 1, 1)
        spacerItem10 = QtWidgets.QSpacerItem(20, 20,
                                             QtWidgets.QSizePolicy.Expanding,
                                             QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_3.addItem(spacerItem10, 0, 5, 1, 1)
        self.orgLogo = MyLabel(self.topWidget)
        self.orgLogo.setObjectName("orgLogo")
        self.gridLayout_3.addWidget(self.orgLogo, 0, 1, 1, 1)
        spacerItem11 = QtWidgets.QSpacerItem(540, 20,
                                             QtWidgets.QSizePolicy.Expanding,
                                             QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_3.addItem(spacerItem11, 0, 3, 1, 1)
        self.hiddenLab = MyLabel(self.topWidget)
        self.hiddenLab.setObjectName("hiddenLab")
        self.gridLayout_3.addWidget(self.hiddenLab, 0, 4, 1, 1)
        self.closeLab = MyLabel(self.topWidget)
        self.closeLab.setObjectName("closeLab")
        self.gridLayout_3.addWidget(self.closeLab, 0, 6, 1, 1)
        self.titleName = QtWidgets.QLabel(self.topWidget)
        self.titleName.setObjectName("titleName")
        self.gridLayout_3.addWidget(self.titleName, 0, 2, 1, 1)
        self.gridLayout_3.setColumnStretch(2, 1)
        self.org_logo = MyLabel(self.centralwidget)
        self.org_logo.setGeometry(QtCore.QRect(370, 140, 54, 12))
        self.org_logo.setObjectName("org_logo")
        MainWindow.setCentralWidget(self.centralwidget)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)