基于Yolov5+Deepsort+Pyqt的单目标跟踪器设计UI设计:

  • PyQt5:
    总界面:

    QLabel:主题:基于Yolov5+Deepsort的单目标跟踪器设计
    QLabel:显示:label_video,作为识别显示区域
    QTextBrowser:模拟终端:显示识别数据
    QHBoxLayout:布局:COM、Start、Close、Stop四个按键水平布局
    Spacer:水平分割符
    QPushButton:按键
    QRadioButton:Stop可选择按键
    Line:边框线
  • 优化

    选中mainWindow,在属性栏中的windowTitle中更改显示界面左上角名称;windowIcon可选择图片文件更改显示框左上角标识。

    选中label_theme,右击鼠标,选择改变样式表,添加颜色中选择添加background-color可改变背景颜色,选择添加字体可改变字体。

    选中QLabel,在右侧属性栏里找到alignment,选择AlignHCenter水平居中,AlignVCenter垂直居中。
    其他窗口通过调整大小放置在合适的位置。

    选中PushButton,在属性栏中找到cursor,可修改选中按钮后鼠标箭头的显示状态,同理,将Start、Close按键的显示状态均改为指向手势。

    点击Edit,选中编辑信号部件,选择Close按键,拖动出来。

    选中下面显示从QWidget继承的信号和槽。左边选择clicked(),右边选择close()
    右边最下面的信号、槽编辑器会显示一个pushButton_close()

    编辑完后可按键F3退出信号槽编辑状态。
    点击左上角窗体预览可进行预览界面。
    保存.ui文件,回到pycharm,选中.ui文件,右击鼠标,选择外部工具,点击PYUIC,会在本地目录生成与.ui同名的.py文件。

    新建run_ui.py文件,导入.ui同名的.py文件,下图为显示程序。

    运行run_ui.py文件

    在.py文件中class Ui_mainWindow类下,

    可用connect()进行按键功能的写定。

    如图,将def open_com()函数写在class Ui_mainWindow类下,即可设定按键按下的功能。
    self.textBrowser_terminal.append('OPEN COM: ')可换行并且刷新到最新显示
    在模拟终端添加数据输出,textBrowser添加输出的程序有多种:
    self.textBrowser_terminal.setText('OPEN COM: ')添加文字但不换行不刷新
    self.textBrowser_terminal.insertPlainText('OPEN COM: ')插入文字不换行

    if not self.radioButton.isChecked():如果radioButton没有选中,执行下述程序,若选中则停止。

    执行label_video显示程序,并且可调整显示大小至适合label_video框大小。
    最终效果图:
赞赏