OpenCV绘制雷达PPI图嵌入到pyqt5中,实现动态效果

自己先设计UI界面,我将opencv画的图放到Qlabel中

 差不多就这个意思。

弄了一个定时器实现循环

        i = 0
        i = self.plot()
        # 循环画图
        self.timer = QTimer(self)
        self.timer.start(10)
        # i = self.plot()
        self.timer.timeout.connect(self.plot)

画图代码, 画图函数是用的其他人的,链接

    def plot(self):
        self.ui.label_radar.clear()
        cv2.destroyAllWindows()

        # 生成一个700*700的空灰度图像
        canvas = np.zeros((700, 700, 3), np.uint8)

        point_size = 5
        white = (255, 255, 255)
        green = (0, 255, 0)
        blue = (0, 0, 255)
        red = (255, 0, 0)
        yellow = (0, 255, 255)

        # 绘制雷达显示器界面的同心圆
        cv.circle(canvas, (350, 350), 100, green, 2)
        cv.circle(canvas, (350, 350), 200, green, 2)
        cv.circle(canvas, (350, 350), 300, green, 2)

        # 绘制十字线
        cv.line(canvas, (50, 350), (650, 350), green, 2)
        cv.line(canvas, (350, 50), (350, 650), green, 2)
        start_point = (int(350 - 300 * np.sin(0.25 * np.pi)), int(350 - 300 * np.sin(0.25 * np.pi)))
        end_point = (int(350 + 300 * np.sin(0.25 * np.pi)), int(350 + 300 * np.sin(0.25 * np.pi)))

        # 绘制斜线
        cv.line(canvas, start_point, end_point, white, 1)
        start_point = (int(350 - 300 * np.sin(0.25 * np.pi)), int(350 + 300 * np.sin(0.25 * np.pi)))
        end_point = (int(350 + 300 * np.sin(0.25 * np.pi)), int(350 - 300 * np.sin(0.25 * np.pi)))
        cv.line(canvas, start_point, end_point, white, 1)

        # 添加正北指向和距离刻度文字
        font = cv.FONT_HERSHEY_SIMPLEX
        cv.putText(canvas, "0", (340, 40), font, 1, (255, 255, 255), 1)
        cv.putText(canvas, "1.2", (5, 360), font, 1, (255, 255, 255), 1)
        cv.putText(canvas, "1.2", (650, 360), font, 1, (255, 255, 255), 1)

        # 定义绘制扫描辉亮函数,ang为扫描线所在角度位置
        def drawScanner(ang):
            img = np.zeros((700, 700, 3), np.uint8)
            a = 255 / 60  # 将颜色值255等分60,60为辉亮夹角
            for i in range(60):
                # 逐次绘制1度扇形,颜色从255到0
                cv.ellipse(img, (350, 350), (300, 300), 1, ang - i, ang - i - 1,
                           (255 - i * a, 255 - i * a, 255 - i * a), -1)
            return img

        # 方位角度a,距离b
        a = math.pi * 3 / 4
        b = 400

        # 判断目标点的位置
        # 方位角大于0小于90°
        if math.pi/2 > a >=0 :
            pointStartX = int(350+b/4)
            pointStartY = int(350 - b*math.tan(a)/4)
        # 方位角大于90°小于180°
        elif math.pi> a >=math.pi/2:
            pointStartX = int(350-b/4)
            pointStartY = int(350 - b*math.tan(a - math.pi/2)/4)
        # 方位角大于180°小于270°
        elif math.pi*3/2 > a >=math.pi:
            pointStartX = int(350 - b/4)
            pointStartY = int(350 + b*math.tan(a - math.pi)/4)
        # 方位角大于270°小于360°
        else:
            pointStartX = int(350 + b/4)
            pointStartY = int(350 + b*math.tan(math.pi*2 - a))

        temp = np.copy(canvas)
        cv.circle(temp, (pointStartX, pointStartY), point_size, red, 6)  # 目标点

        scanImg = drawScanner(self.j)  # 绘制扫描辉亮
        blend = cv.addWeighted(temp, 1.0, scanImg, 0.6, 0.0)  # 将雷达显示与扫描辉亮混合

        _image = QtGui.QImage(blend[:], blend.shape[1], blend.shape[0], blend.shape[1] * 3,
                              QtGui.QImage.Format_RGB888)  # pyqt5转换成自己能放的图片格式
        jpg_out = QtGui.QPixmap(_image).scaled(self.ui.label_radar.width(), self.ui.label_radar.height())  # 设置图片大小

        self.ui.label_radar.setPixmap(jpg_out)
        self.j += 1
        print(self.j)
        return self.j

解释下 self.j ,是用来循环的,每次数据加1实现循环

要在主函数中写入,不然会报属性错误。

self.j = 0

主程序

import math
import random

import cv2
import cv2 as cv
import matplotlib.pyplot as plt
from PyQt5 import QtCore, QtGui,QtWidgets
from PyQt5.QtCore import QTimer
from PyQt5.QtGui import QMovie, QPixmap
from PyQt5.QtWidgets import *
from matplotlib.backends.backend_template import FigureCanvas
from matplotlib.figure import Figure
from PyQt5.QtWidgets import QWidget
from main_ui1 import Ui_MainWindow
import threading
from control import Control
import numpy as np
import matplotlib
matplotlib.use(('Qt5Agg'))
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas
import matplotlib.pyplot as plt
import matplotlib.ticker as ticker
import matplotlib.image as img
import matplotlib as mpl
import sys


class MainWindow(QMainWindow,QWidget):
    def __init__(self):
        self.j = 0
        super(MainWindow,self).__init__()
        # 使用ui文件导入定义界面类
        self.ui = Ui_MainWindow()
        # 初始化界面
        self.ui.setupUi(self)

        # 所有按键与其函数绑定!!!
        self.ui.btn_left.clicked.connect(Control.left)
        self.ui.btn_right.clicked.connect(Control.right)
        self.ui.btn_down.clicked.connect(Control.down)
        self.ui.btn_up.clicked.connect(Control.up)
        self.ui.btn_stop.clicked.connect(Control.stop)
        self.ui.btn_open_wiper.clicked.connect(Control.open_wiper)
        self.ui.btn_close_wiper.clicked.connect(Control.close_wiper)
        self.ui.btn_open_fill.clicked.connect(Control.open_fill)
        self.ui.btn_close_fill.clicked.connect(Control.close_fill)
        self.ui.btn_open_light.clicked.connect(self.btn_open_light)
        self.ui.btn_close_light.clicked.connect(self.btn_close_light)
        self.ui.btn_open_red.clicked.connect(self.btn_open_red)
        self.ui.btn_close_red.clicked.connect(self.btn_close_red)

        # 定义标志位,通过标志位的改变来确定是否跳出循环
        self.stopEvent1 = threading.Event()  # event对象维护一个内部标志(标志初始值为False),通过set()将其置为True。isSet()用于查询标志位是否为True,Clear()则用于清除标志位(使之为False)。
        self.stopEvent1.clear()  # Event设置为False
        self.stopEvent2 = threading.Event()
        self.stopEvent2.clear()
        self.F = Myfigure(width=12,height=13,dpi=100)

        i = 0
        i = self.plot()
        # 循环画图
        self.timer = QTimer(self)
        self.timer.start(10)
        self.timer.timeout.connect(self.plot)

    def plot(self):
        self.ui.label_radar.clear()
        cv2.destroyAllWindows()

        # 生成一个700*700的空灰度图像
        canvas = np.zeros((700, 700, 3), np.uint8)

        point_size = 5
        white = (255, 255, 255)
        green = (0, 255, 0)
        blue = (0, 0, 255)
        red = (255, 0, 0)
        yellow = (0, 255, 255)

        # 绘制雷达显示器界面的同心圆
        cv.circle(canvas, (350, 350), 100, green, 2)
        cv.circle(canvas, (350, 350), 200, green, 2)
        cv.circle(canvas, (350, 350), 300, green, 2)

        # 绘制十字线
        cv.line(canvas, (50, 350), (650, 350), green, 2)
        cv.line(canvas, (350, 50), (350, 650), green, 2)
        start_point = (int(350 - 300 * np.sin(0.25 * np.pi)), int(350 - 300 * np.sin(0.25 * np.pi)))
        end_point = (int(350 + 300 * np.sin(0.25 * np.pi)), int(350 + 300 * np.sin(0.25 * np.pi)))

        # 绘制斜线
        cv.line(canvas, start_point, end_point, white, 1)
        start_point = (int(350 - 300 * np.sin(0.25 * np.pi)), int(350 + 300 * np.sin(0.25 * np.pi)))
        end_point = (int(350 + 300 * np.sin(0.25 * np.pi)), int(350 - 300 * np.sin(0.25 * np.pi)))
        cv.line(canvas, start_point, end_point, white, 1)

        # 添加正北指向和距离刻度文字
        font = cv.FONT_HERSHEY_SIMPLEX
        cv.putText(canvas, "0", (340, 40), font, 1, (255, 255, 255), 1)
        cv.putText(canvas, "1.2", (5, 360), font, 1, (255, 255, 255), 1)
        cv.putText(canvas, "1.2", (650, 360), font, 1, (255, 255, 255), 1)

        # 定义绘制扫描辉亮函数,ang为扫描线所在角度位置
        def drawScanner(ang):
            img = np.zeros((700, 700, 3), np.uint8)
            a = 255 / 60  # 将颜色值255等分60,60为辉亮夹角
            for i in range(60):
                # 逐次绘制1度扇形,颜色从255到0
                cv.ellipse(img, (350, 350), (300, 300), 1, ang - i, ang - i - 1,
                           (255 - i * a, 255 - i * a, 255 - i * a), -1)
            return img

        # 方位角度a,距离b
        a = math.pi * 3 / 4
        b = 400

        # 判断目标点的位置
        # 方位角大于0小于90°
        if math.pi/2 > a >=0 :
            pointStartX = int(350+b/4)
            pointStartY = int(350 - b*math.tan(a)/4)
        # 方位角大于90°小于180°
        elif math.pi> a >=math.pi/2:
            pointStartX = int(350-b/4)
            pointStartY = int(350 - b*math.tan(a - math.pi/2)/4)
        # 方位角大于180°小于270°
        elif math.pi*3/2 > a >=math.pi:
            pointStartX = int(350 - b/4)
            pointStartY = int(350 + b*math.tan(a - math.pi)/4)
        # 方位角大于270°小于360°
        else:
            pointStartX = int(350 + b/4)
            pointStartY = int(350 + b*math.tan(math.pi*2 - a))

        temp = np.copy(canvas)
        cv.circle(temp, (pointStartX, pointStartY), point_size, red, 6)  # 目标点

        scanImg = drawScanner(self.j)  # 绘制扫描辉亮
        blend = cv.addWeighted(temp, 1.0, scanImg, 0.6, 0.0)  # 将雷达显示与扫描辉亮混合

        _image = QtGui.QImage(blend[:], blend.shape[1], blend.shape[0], blend.shape[1] * 3,
                              QtGui.QImage.Format_RGB888)  # pyqt5转换成自己能放的图片格式
        jpg_out = QtGui.QPixmap(_image).scaled(self.ui.label_radar.width(), self.ui.label_radar.height())  # 设置图片大小

        self.ui.label_radar.setPixmap(jpg_out)
        self.j += 1
        print(self.j)
        return self.j

    def plotTimer(self):
        self.timer.start(1000)



if __name__ == '__main__':

    app = QApplication([])
    mainw = MainWindow()
    mainw.show()

    mainw.ui.btn_open_light.setEnabled(False)
    mainw.ui.btn_open_red.setEnabled(False)
    th1 = threading.Thread(target=mainw.Display_light)
    th2 = threading.Thread(target=mainw.Display_red)
    th1.start()
    th2.start()

    th3 = threading.Thread(target=mainw.plot)
    th3.start()

    sys.exit(app.exec_())

 main_ui程序

# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'main_ui.ui'
#
# Created by: PyQt5 UI code generator 5.15.4
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again.  Do not edit this file unless you know what you are doing.


from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(1680, 941)
        MainWindow.setMinimumSize(QtCore.QSize(1680, 941))
        MainWindow.setMaximumSize(QtCore.QSize(1680, 941))
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.tabWidget = QtWidgets.QTabWidget(self.centralwidget)
        self.tabWidget.setGeometry(QtCore.QRect(0, 0, 1680, 935))
        self.tabWidget.setStyleSheet("")
        self.tabWidget.setObjectName("tabWidget")
        self.tab = QtWidgets.QWidget()
        self.tab.setObjectName("tab")
        self.label_back = QtWidgets.QLabel(self.tab)
        self.label_back.setGeometry(QtCore.QRect(0, 0, 1680, 901))
        self.label_back.setStyleSheet("border-image: url(:/icon/001.jpg);")
        self.label_back.setText("")
        self.label_back.setObjectName("label_back")
        self.label_light = QtWidgets.QLabel(self.tab)
        self.label_light.setGeometry(QtCore.QRect(1150, 160, 420, 315))
        self.label_light.setMinimumSize(QtCore.QSize(420, 315))
        self.label_light.setMaximumSize(QtCore.QSize(420, 315))
        self.label_light.setStyleSheet("")
        self.label_light.setText("")
        self.label_light.setObjectName("label_light")
        self.label_red = QtWidgets.QLabel(self.tab)
        self.label_red.setGeometry(QtCore.QRect(1150, 550, 420, 315))
        self.label_red.setMinimumSize(QtCore.QSize(420, 315))
        self.label_red.setMaximumSize(QtCore.QSize(420, 315))
        self.label_red.setStyleSheet("")
        self.label_red.setText("")
        self.label_red.setObjectName("label_red")
        self.label_gif = QtWidgets.QLabel(self.tab)
        self.label_gif.setGeometry(QtCore.QRect(150, 200, 331, 231))
        self.label_gif.setMinimumSize(QtCore.QSize(0, 0))
        self.label_gif.setMaximumSize(QtCore.QSize(999, 999))
        self.label_gif.setStyleSheet("")
        self.label_gif.setText("")
        self.label_gif.setObjectName("label_gif")
        self.wgt_rador = QtWidgets.QWidget(self.tab)
        self.wgt_rador.setGeometry(QtCore.QRect(110, 520, 420, 600))
        self.wgt_rador.setMinimumSize(QtCore.QSize(420, 600))
        self.wgt_rador.setMaximumSize(QtCore.QSize(420, 600))
        self.wgt_rador.setObjectName("wgt_rador")
        self.g_box = QtWidgets.QGroupBox(self.wgt_rador)
        self.g_box.setGeometry(QtCore.QRect(-20, 20, 461, 341))
        self.g_box.setAutoFillBackground(False)
        self.g_box.setStyleSheet("QGroupBox{border:none}")
        self.g_box.setTitle("")
        self.g_box.setObjectName("g_box")
        self.label_public = QtWidgets.QLabel(self.tab)
        self.label_public.setGeometry(QtCore.QRect(600, 180, 490, 370))
        self.label_public.setObjectName("label_public")
        self.label_back.raise_()
        self.label_red.raise_()
        self.label_light.raise_()
        self.label_gif.raise_()
        self.wgt_rador.raise_()
        self.label_public.raise_()
        self.tabWidget.addTab(self.tab, "")
        self.tab_2 = QtWidgets.QWidget()
        self.tab_2.setObjectName("tab_2")
        self.layoutWidget = QtWidgets.QWidget(self.tab_2)
        self.layoutWidget.setGeometry(QtCore.QRect(390, 150, 391, 124))
        self.layoutWidget.setObjectName("layoutWidget")
        self.gridLayout = QtWidgets.QGridLayout(self.layoutWidget)
        self.gridLayout.setContentsMargins(0, 0, 0, 0)
        self.gridLayout.setObjectName("gridLayout")
        self.btn_open_red = QtWidgets.QPushButton(self.layoutWidget)
        self.btn_open_red.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.btn_open_red.setObjectName("btn_open_red")
        self.gridLayout.addWidget(self.btn_open_red, 1, 1, 1, 1)
        self.btn_close_radar = QtWidgets.QPushButton(self.layoutWidget)
        self.btn_close_radar.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.btn_close_radar.setObjectName("btn_close_radar")
        self.gridLayout.addWidget(self.btn_close_radar, 2, 2, 1, 1)
        self.btn_close_red = QtWidgets.QPushButton(self.layoutWidget)
        self.btn_close_red.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.btn_close_red.setObjectName("btn_close_red")
        self.gridLayout.addWidget(self.btn_close_red, 1, 2, 1, 1)
        self.label_3 = QtWidgets.QLabel(self.layoutWidget)
        self.label_3.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.label_3.setObjectName("label_3")
        self.gridLayout.addWidget(self.label_3, 2, 0, 1, 1)
        self.btn_close_light = QtWidgets.QPushButton(self.layoutWidget)
        self.btn_close_light.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.btn_close_light.setObjectName("btn_close_light")
        self.gridLayout.addWidget(self.btn_close_light, 0, 2, 1, 1)
        self.btn_open_radar = QtWidgets.QPushButton(self.layoutWidget)
        self.btn_open_radar.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.btn_open_radar.setObjectName("btn_open_radar")
        self.gridLayout.addWidget(self.btn_open_radar, 2, 1, 1, 1)
        self.label_2 = QtWidgets.QLabel(self.layoutWidget)
        self.label_2.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.label_2.setObjectName("label_2")
        self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
        self.label = QtWidgets.QLabel(self.layoutWidget)
        self.label.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.label.setObjectName("label")
        self.gridLayout.addWidget(self.label, 0, 0, 1, 1)
        self.btn_open_light = QtWidgets.QPushButton(self.layoutWidget)
        self.btn_open_light.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.btn_open_light.setObjectName("btn_open_light")
        self.gridLayout.addWidget(self.btn_open_light, 0, 1, 1, 1)
        self.gridLayoutWidget = QtWidgets.QWidget(self.tab_2)
        self.gridLayoutWidget.setGeometry(QtCore.QRect(390, 440, 391, 181))
        self.gridLayoutWidget.setObjectName("gridLayoutWidget")
        self.gridLayout_3 = QtWidgets.QGridLayout(self.gridLayoutWidget)
        self.gridLayout_3.setContentsMargins(0, 0, 0, 0)
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.label_5 = QtWidgets.QLabel(self.gridLayoutWidget)
        self.label_5.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.label_5.setObjectName("label_5")
        self.gridLayout_3.addWidget(self.label_5, 0, 0, 1, 1)
        self.btn_close_wiper = QtWidgets.QPushButton(self.gridLayoutWidget)
        self.btn_close_wiper.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.btn_close_wiper.setObjectName("btn_close_wiper")
        self.gridLayout_3.addWidget(self.btn_close_wiper, 0, 2, 1, 1)
        self.btn_open_wiper = QtWidgets.QPushButton(self.gridLayoutWidget)
        self.btn_open_wiper.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.btn_open_wiper.setObjectName("btn_open_wiper")
        self.gridLayout_3.addWidget(self.btn_open_wiper, 0, 1, 1, 1)
        self.label_6 = QtWidgets.QLabel(self.gridLayoutWidget)
        self.label_6.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.label_6.setObjectName("label_6")
        self.gridLayout_3.addWidget(self.label_6, 1, 0, 1, 1)
        self.btn_open_fill = QtWidgets.QPushButton(self.gridLayoutWidget)
        self.btn_open_fill.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.btn_open_fill.setObjectName("btn_open_fill")
        self.gridLayout_3.addWidget(self.btn_open_fill, 1, 1, 1, 1)
        self.btn_close_fill = QtWidgets.QPushButton(self.gridLayoutWidget)
        self.btn_close_fill.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.btn_close_fill.setObjectName("btn_close_fill")
        self.gridLayout_3.addWidget(self.btn_close_fill, 1, 2, 1, 1)
        self.layoutWidget_2 = QtWidgets.QWidget(self.tab_2)
        self.layoutWidget_2.setGeometry(QtCore.QRect(390, 290, 391, 131))
        self.layoutWidget_2.setObjectName("layoutWidget_2")
        self.gridLayout_2 = QtWidgets.QGridLayout(self.layoutWidget_2)
        self.gridLayout_2.setContentsMargins(0, 0, 0, 0)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.btn_up = QtWidgets.QPushButton(self.layoutWidget_2)
        self.btn_up.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.btn_up.setObjectName("btn_up")
        self.gridLayout_2.addWidget(self.btn_up, 0, 2, 1, 1)
        self.label_4 = QtWidgets.QLabel(self.layoutWidget_2)
        self.label_4.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.label_4.setObjectName("label_4")
        self.gridLayout_2.addWidget(self.label_4, 1, 0, 1, 1)
        self.btn_left = QtWidgets.QPushButton(self.layoutWidget_2)
        self.btn_left.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.btn_left.setObjectName("btn_left")
        self.gridLayout_2.addWidget(self.btn_left, 1, 1, 1, 1)
        self.btn_stop = QtWidgets.QPushButton(self.layoutWidget_2)
        self.btn_stop.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.btn_stop.setObjectName("btn_stop")
        self.gridLayout_2.addWidget(self.btn_stop, 1, 2, 1, 1)
        self.btn_right = QtWidgets.QPushButton(self.layoutWidget_2)
        self.btn_right.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.btn_right.setObjectName("btn_right")
        self.gridLayout_2.addWidget(self.btn_right, 1, 3, 1, 1)
        self.btn_down = QtWidgets.QPushButton(self.layoutWidget_2)
        self.btn_down.setStyleSheet("font: 75 12pt \"微软雅黑\";")
        self.btn_down.setObjectName("btn_down")
        self.gridLayout_2.addWidget(self.btn_down, 2, 2, 1, 1)
        self.tabWidget.addTab(self.tab_2, "")
        MainWindow.setCentralWidget(self.centralwidget)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        self.tabWidget.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.label_public.setText(_translate("MainWindow", "TextLabel"))
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), _translate("MainWindow", "主界面"))
        self.btn_open_red.setText(_translate("MainWindow", "打开"))
        self.btn_close_radar.setText(_translate("MainWindow", "关闭"))
        self.btn_close_red.setText(_translate("MainWindow", "关闭"))
        self.label_3.setText(_translate("MainWindow", "雷达"))
        self.btn_close_light.setText(_translate("MainWindow", "关闭"))
        self.btn_open_radar.setText(_translate("MainWindow", "打开"))
        self.label_2.setText(_translate("MainWindow", "红外光相机"))
        self.label.setText(_translate("MainWindow", "可见光相机"))
        self.btn_open_light.setText(_translate("MainWindow", "打开"))
        self.label_5.setText(_translate("MainWindow", "雨刷:"))
        self.btn_close_wiper.setText(_translate("MainWindow", "关闭"))
        self.btn_open_wiper.setText(_translate("MainWindow", "打开"))
        self.label_6.setText(_translate("MainWindow", "补光灯:"))
        self.btn_open_fill.setText(_translate("MainWindow", "打开"))
        self.btn_close_fill.setText(_translate("MainWindow", "关闭"))
        self.btn_up.setText(_translate("MainWindow", "上"))
        self.label_4.setText(_translate("MainWindow", "控制区:"))
        self.btn_left.setText(_translate("MainWindow", "左"))
        self.btn_stop.setText(_translate("MainWindow", "停止"))
        self.btn_right.setText(_translate("MainWindow", "右"))
        self.btn_down.setText(_translate("MainWindow", "下"))
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), _translate("MainWindow", "控制区"))
import img_rc

有些程序没贴,这些应该能运行。只运行雷达部分

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值