import sys
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QMessageBox, QDesktopWidget, QGraphicsPixmapItem, QFileDialog, QGraphicsScene, QApplication
from PyQt5.QtGui import QPixmap, QImage, QPainter
from Image import *
import cv2
import numpy as np
from graphics import GraphicsView, GraphicsPixmapItem
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.setWindowTitle("垃圾图片分类识别")
MainWindow.setFixedSize(825, 570)
center = QDesktopWidget().screenGeometry()
MainWindow.move((center.width() - 825) / 2, (center.height() - 570) / 2)
MainWindow.resize(825, 617)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
self.verticalLayoutWidget_2 = QtWidgets.QWidget(self.centralwidget)
self.verticalLayoutWidget_2.setGeometry(QtCore.QRect(670, 190, 151, 341))
self.verticalLayoutWidget_2.setObjectName("verticalLayoutWidget_2")
self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.verticalLayoutWidget_2)
self.verticalLayout_2.setContentsMargins(0, 0, 0, 0)
self.verticalLayout_2.setObjectName("verticalLayout_2")
self.pushButton_3 = QtWidgets.QPushButton(self.verticalLayoutWidget_2)
self.pushButton_3.setObjectName("pushButton_3")
self.verticalLayout_2.addWidget(self.pushButton_3)
self.pushButton_2 = QtWidgets.QPushButton(self.verticalLayoutWidget_2)
self.pushButton_2.setObjectName("pushButton_2")
self.verticalLayout_2.addWidget(self.pushButton_2)
self.pushButton = QtWidgets.QPushButton(self.verticalLayoutWidget_2)
self.pushButton.setObjectName("pushButton")
self.verticalLayout_2.addWidget(self.pushButton)
self.graphicsView = GraphicsView(self.centralwidget)
self.graphicsView.setEnabled(True)
self.graphicsView.setGeometry(QtCore.QRect(10, 180, 652, 352))
self.graphicsView.setObjectName("graphicsView")
self.textEdit = QtWidgets.QTextEdit(self.centralwidget)
self.textEdit.setGeometry(QtCore.QRect(10, 30, 502, 52))
self.textEdit.setObjectName("textBrowser")
self.textEdit.setFontPointSize(15)
#self.label = QtWidgets.QLabel(self.centralwidget)
#self.label.setGeometry(QtCore.QRect(10, 100, 500, 50))
#self.label.setObjectName("label")
#self.radioButton = QtWidgets.QRadioButton(self.centralwidget)
#self.radioButton.setGeometry(QtCore.QRect(550, 150, 112, 23))
#self.radioButton.setObjectName("radioButton")
MainWindow.setCentralWidget(self.centralwidget)
self.menubar = QtWidgets.QMenuBar(MainWindow)
self.menubar.setGeometry(QtCore.QRect(0, 0, 825, 28))
self.menubar.setObjectName("menubar")
MainWindow.setMenuBar(self.menubar)
self.statusbar = QtWidgets.QStatusBar(MainWindow)
self.statusbar.setObjectName("statusbar")
MainWindow.setStatusBar(self.statusbar)
self.action = QtWidgets.QAction(MainWindow)
self.action.setObjectName("action")
self.action_2 = QtWidgets.QAction(MainWindow)
self.action_2.setObjectName("action_2")
self.retranslateUi(MainWindow)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
#MainWindow.setStyleSheet("QMainWindow{background:#66B3FF}")
self.textEdit.setStyleSheet("QGraphicsView{background:#66B3FF}")
# self.textEdit.setStyleSheet("QGraphicsView{background:#66B3FF}")
self.pushButton_3.setText(_translate("MainWindow", "打开图片"))
self.pushButton_3.setIcon(QtGui.QIcon("icons/open.svg"))
self.pushButton_3.setIconSize(QtCore.QSize(40, 20))
self.pushButton_3.setStyleSheet("QPushButton{background:#16A085;border:none;color:#000000;font-size:15px;}"
"QPushButton:hover{background-color:#008080;}")
self.pushButton_2.setText(_translate("MainWindow", "图片识别"))
self.pushButton_2.setIcon(QtGui.QIcon("icons/locate.svg"))
self.pushButton_2.setIconSize(QtCore.QSize(40, 20))
self.pushButton_2.setStyleSheet("QPushButton{background:#FFA500;border:none;color:#000000;font-size:15px;}"
"QPushButton:hover{background-color:#D26900;}")
self.pushButton.setText(_translate("MainWindow", "退出"))
self.pushButton.setIcon(QtGui.QIcon("icons/close_.svg"))
self.pushButton.setIconSize(QtCore.QSize(20, 20))
self.pushButton.setStyleSheet("QPushButton{background:#CE0000;border:none;color:#000000;font-size:15px;}"
"QPushButton:hover{background-color:#8B0000;}")
#self.label.setText(_translate("MainWindow"))
self.pushButton.clicked.connect(self.close)
#打开图片
self.pushButton_3.clicked.connect(self.clickOpen)
#加载图片
self.pushButton_2.clicked.connect(self.predict)
#self.label.setText(_translate("MainWindow", "TextLabe1"))
self.messageBox = QMessageBox()
self.messageBox.setStyleSheet("QMessageBox{background-color:#CE0000;border:none;color:#000000;font-size:15px;}")
def close(self):
reply = self.messageBox.question(None, "Quit", "确定要关闭该程序?", QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
if reply == QMessageBox.Yes:
sys.exit()
c=''
def clickOpen(self):
imgName, imgType = QFileDialog.getOpenFileName(None, "打开图片", "",
"All Files(*)") # "*.jpg;;*.png;;*.jpeg;;All Files(*)"
img = cv2.imread(imgName)
global c
c=imgName
self.image = Image(img)
H, W, C = self.image.img.shape
P = 3 * W
qimage = QImage(self.image.img.data, W, H, P, QImage.Format_RGB888).rgbSwapped()
pixmap = QPixmap.fromImage(qimage)
self.graphicsView.setSceneRect(0, 0, 650, 350)
self.graphicsView.setItem(pixmap)
self.graphicsView.Scene()
self.graphicsView.setStyleSheet("QGraphicsView{background-color:#66B3FF}")
#if self.radioButton.isChecked() == True:
#self.graphicsView.image_item.setStart(True)
'''def clickLocation(self):
if self.radioButton.isChecked() == False:
self.graphicsView.viewport().setProperty("cursor", QtGui.QCursor(QtCore.Qt.ArrowCursor))
Img = self.image.pos_img
Img = cv2.resize(Img, (500, 50), cv2.INTER_NEAREST)
H, W, _ = Img.shape
P = 3 * W
Img = QImage(Img.data, W, H, P, QImage.Format_RGB888).rgbSwapped()
pixmap = QPixmap.fromImage(Img)
Item = QGraphicsPixmapItem(pixmap)
self.graphicsView_3Scene = QGraphicsScene()
self.graphicsView_3Scene.addItem(Item)
self.graphicsView_3.setSceneRect(0, 0, 500, 50)
self.graphicsView_3.setStyleSheet("QGraphicsView{background-color:#66B3FF}")
self.graphicsView_3.setScene(self.graphicsView_3Scene)
backImg = self.image.remove_back_img.copy()
cv2.rectangle(backImg, (self.image.W_start, self.image.H_start), (self.image.W_end, self.image.H_end),
(0, 0, 255), 2)
backImg = cv2.resize(backImg, (650, 350), cv2.INTER_NEAREST)
H, W, _ = backImg.shape
P = 3 * W
backImg = QImage(backImg.data, W, H, P, QImage.Format_RGB888).rgbSwapped()
pixmap = QPixmap.fromImage(backImg)
self.g
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
GarbageClassify.zip (67个子文件)
毕设程序
GarbageClassify
models
resnetxt_wsl.py 4KB
__pycache__
resnet_cbam.cpython-37.pyc 10KB
resnetxt_wsl.cpython-37.pyc 3KB
__init__.cpython-37.pyc 329B
resnet_cbam.py 12KB
__init__.py 214B
Res.py 11KB
view.py 2KB
build_net.py 1KB
yuancheng.py 18KB
train.py 9KB
__pycache__
Image.cpython-37.pyc 4KB
yuancheng.cpython-37.pyc 14KB
args.cpython-37.pyc 3KB
graphics.cpython-37.pyc 3KB
view.cpython-37.pyc 5KB
dataset.cpython-37.pyc 3KB
transform.cpython-37.pyc 3KB
visa.cpython-37.pyc 10KB
build_net.cpython-37.pyc 1KB
pachong.py 4KB
dataset.py 3KB
predict
resnetxt_wsl.py 4KB
__pycache__
predict.cpython-37.pyc 5KB
resnet_cbam.cpython-37.pyc 10KB
resnetxt_wsl.cpython-37.pyc 3KB
__init__.cpython-37.pyc 135B
predict.py 6KB
resnet_cbam.py 12KB
__init__.py 0B
Res.py 11KB
visa.py 15KB
.idea
GarbageClassify.iml 291B
misc.xml 201B
modules.xml 289B
workspace.xml 12KB
inspectionProfiles
profiles_settings.xml 174B
Image.py 5KB
args.py 5KB
preprocess.py 4KB
transform.py 3KB
graphics.py 2KB
utils
eval.py 577B
visualize.py 4KB
utils.py 4KB
logger.py 4KB
__pycache__
utils.cpython-37.pyc 4KB
__init__.cpython-37.pyc 451B
eval.cpython-37.pyc 817B
radam.cpython-37.pyc 6KB
misc.cpython-37.pyc 5KB
visualize.cpython-37.pyc 3KB
logger.cpython-37.pyc 4KB
misc.py 5KB
radam.py 8KB
progress
MANIFEST.in 27B
README.rst 3KB
test_progress.py 1KB
demo.gif 903KB
progress
bar.py 3KB
helpers.py 3KB
__init__.py 3KB
spinner.py 1KB
counter.py 1KB
LICENSE 776B
setup.py 843B
__init__.py 317B
共 67 条
- 1
资源评论
- ZXKI2021-04-04那个是启动程序?
- 涂漾图森魄2020-11-30可以发一下训练好的模型吗?双人-工作室2020-12-06这个需要你自己跑啦,我的已经没了
双人-工作室
- 粉丝: 87
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功