代码拉取完成,页面将自动刷新
#主函数
import windows
import sys
import os
import cv2
from functools import partial
from PyQt5.QtWidgets import QApplication,QFileDialog,QListView, QMessageBox
from PyQt5.QtCore import QStringListModel
from PyQt5.QtGui import QPixmap,QStandardItem,QStandardItemModel,QIcon
import img
from PyQt5.QtCore import Qt
#获取图像
def imgfile(ex):
#一个打开文件夹的联接按钮
#没进行文件类型筛选,目前只允许图片文件夹
fname = QFileDialog.getExistingDirectory(None, "请选择样本文件夹...", "./")
if fname[0]:
global imglist
imglist = []
pic_list=os.listdir(fname)
ec=0
ex.model.clear()
for lst in pic_list:
imgdir=fname+"/"+lst
imglist.append(imgdir)
item_1 = QStandardItem(QIcon("C:\\Users\\Lenovo\\Pictures\\anset.png"),imgdir)
ex.model.appendRow(item_1)
ec=ec+1
number = str(ec)
ex.imgtext.setText(number)
ex.listView.clicked.connect(partial(doubleClicked, ex))
#下面几个函数链接了图像处理功能,将处理后的图片保存在D盘并显示在页面上
def doubleClicked(ex,index):
global nowdir
nowdir="D:\look.bmp"
src = cv2.imread(imglist[index.row()])
nowdir=imglist[index.row()]
picture=img.imgprocess()
contours = picture.img_preprocessing(src)
rect_ploy = picture.pushploy(contours)
if (picture.contours_distinguish(src, rect_ploy) == 1):
str = 'lallalalallalllallal'
elif (picture.contours_distinguish(src, rect_ploy) == 2):
str = 'lalalalalallalalllala'
picture.draw_rect(src, rect_ploy)
cv2.imwrite("D:/look.bmp", src)
ex.lbo.setPixmap(QPixmap("D:/look.bmp"))
cd_draw(ex)
def cd_draw(ex):
ex.cb.stateChanged.connect(partial(chageTitle,ex))
def chageTitle(ex, state):
if state == Qt.Checked:
ex.lbo.setPixmap(QPixmap("D:/look.bmp"))
else:
ex.lbo.setPixmap(QPixmap(nowdir))
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = windows.Example()
ex.btn5.clicked.connect(partial(imgfile, ex))
sys.exit(app.exec_())
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。