【学习笔记】pyQt5学习笔记(2)——第一个图像识别demo

最近做的任务是将图像识别一些列的东西进行封装,制作成GUI程序。目前使用的是Google开源的Object Detection API。

上手先实现一个简单的小程序,将上述API中的jupyter note book的识别代码进行封装。实现其实很简单,传递了文件地址,用户输入识别类目及识别图片总数。(这里因为官方的代码需要图片名称为image*.jpg的形式,且通过一个for循环遍历文件夹中的图片,因此需要用户每次都输入确切的图片数目)

软件的整体代码如下:

# -*- coding: utf-8 -*-
# @author:kangshifu
# 20181128版,用户指定欲识别图片数目即可开始识别
# 缺陷:1.对图片文件名称有要求 2.程序会自动运行,没有用户点选按钮的过程
# 3.目前只能读取本地图片,还不能调用摄像头实时识别
import numpy as np
import os
import six.moves.urllib as urllib
import sys
import tarfile
import tensorflow as tf
import zipfile
from distutils.version import StrictVersion
from collections import defaultdict
from io import StringIO
from matplotlib import pyplot as plt
from PIL import Image
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui import *

# Python 2.x与Python 3.x在定义类时的区别,Python2.x中()内有object
# 形如 class UiForm(object):
class UiForm():
    
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(600, 200)
        Form.setMinimumSize(QtCore.QSize(600, 200))
        Form.setMaximumSize(QtCore.QSize(600, 200))
        self.frame = QtWidgets.QFrame(Form)
        self.frame.setGeometry(QtCore.QRect(20, 20, 550, 100))
        self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame.setObjectName("frame")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.frame)
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        # 加载模型文件按钮
        self.btn_add_file = QtWidgets.QPushButton(self.frame)
        self.btn_add_file.setObjectName("btn_add_file")
        self.horizontalLayout_2.addWidget(self.btn_add_file)
        # 加载pbtxt文件按钮
        self.btn_add_pbtxt = QtWidgets.QPushButton(self.frame)
        self.btn_add_pbtxt.setObjectName("btn_add_pbtxt")
        self.horizontalLayout_2.addWidget(self.btn_add_pbtxt)
        # 打开图片所在文件夹按钮
        self.btn_open_cam = QtWidgets.QPushButton(self.frame)
        self.btn_open_cam.setObjectName("btn_open_cam")
        self.horizontalLayout_2.addWidget(self.btn_open_cam)
        # 输入检测类别数目按钮
        self.btn_enter = QtWidgets.QPushButton(s
  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值