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"))
class Example(QWidget): def __init__(self): super().__init__() i = 5 while (i < 100): self.initUI() ++i 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()
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()
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()
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()
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))
class Ui_Tracker(object): 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) def retranslateUi(self, Tracker): _translate = QtCore.QCoreApplication.translate Tracker.setWindowTitle(_translate("Tracker", "MainWindow")) self.btn_open.setText(_translate("Tracker", "打开")) self.btn_play.setText(_translate("Tracker", "播放")) self.btn_gray.setText(_translate("Tracker", "灰度图")) self.btn_cap.setText(_translate("Tracker", "提取图片")) self.wgt_video.setText(_translate("Tracker", "视频")) self.wgt_picture.setText(_translate("Tracker", "图片")) self.wgt_gray.setText(_translate("Tracker", "灰度图")) self.menu.setTitle(_translate("Tracker", "菜单")) self.menu_2.setTitle(_translate("Tracker", "帮助")) self.action.setText(_translate("Tracker", "关于")) self.action_2.setText(_translate("Tracker", "开始")) self.action_3.setText(_translate("Tracker", "打开")) def paintEvent(self, event): painter = QPainter(self) painter.setBrush(Qt.green) painter.drawRect(self.rect()) pixmap = QPixmap("back.jpg") painter.drawPixmap(self.rect(), pixmap)
class Ui_MainWindow(object): 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) def retranslateUi(self, MainWindow): _translate = QtCore.QCoreApplication.translate MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow")) self.bindPhone.setText(_translate("MainWindow", "TextLabel")) self.regOrLogin.setText(_translate("MainWindow", "TextLabel")) self.bindWechat.setText(_translate("MainWindow", "TextLabel")) self.addKnowlege.setText(_translate("MainWindow", "TextLabel")) self.versionInfo.setText(_translate("MainWindow", "TextLabel")) self.searchBtn.setText(_translate("MainWindow", "TextLabel")) self.orgLogo.setText(_translate("MainWindow", "TextLabel")) self.hiddenLab.setText(_translate("MainWindow", "TextLabel")) self.closeLab.setText(_translate("MainWindow", "TextLabel")) self.titleName.setText(_translate("MainWindow", "TextLabel")) self.org_logo.setText(_translate("MainWindow", "TextLabel"))