当前位置: 首页 > news >正文

国内开源网站电商网站运营流程

国内开源网站,电商网站运营流程,房产网签合同平台,wordpress标签小工具本教程使用的是Pyside6 1、安装PySide6模块 pip install pyside6 安装完成之后#xff0c;会有一个designer.exe可执行文件#xff0c;打开之后#xff0c;我们可以通过拖拉拽的方式来布局我们的界面。 designer.exe文件位置#xff0c;一般位于当前虚拟环境下面的路径… 本教程使用的是Pyside6 1、安装PySide6模块 pip install pyside6 安装完成之后会有一个designer.exe可执行文件打开之后我们可以通过拖拉拽的方式来布局我们的界面。 designer.exe文件位置一般位于当前虚拟环境下面的路径。 虚拟环境---Lib---site-packages--PySide6---designer.exe文件 建议发送桌面快捷方式便于下次查找起来更方便 2、界面布局 主要使用的控件是 QTabWiget  容器布局 Qlabel   图片和视频显示区域 QPushButton 按钮 Line 画线 使用背景色主要是好区分哪一个组件功能完成之后可以再做调整 3、图片检测功能 需要用到的技术就是插槽和信号 将ui文件转换为python文件这是第一步 将生成好ui文件导入到项目中执行以下命令。 pyside6-uic project_ui.ui -o main.py 基础UI界面封装好的大家可以使用第二步这里面调用上面生成好的main.py模块注意命名和引入第四行代码 # -*- coding: utf-8 -*- # Auther : qiutiejun # Date : 2024/6/2 13:35 # File : main_project_ui.py # 主界面基础ui import torch import sys from PySide6.QtWidgets import QApplication,QMainWindow,QFileDialog from main import Ui_MainWindow from PySide6.QtGui import QPixmap,QImageclass MainWindow(QMainWindow,Ui_MainWindow):def __init__(self):super(MainWindow, self).__init__()self.setupUi(self)if __name__ __main__:app QApplication(sys.argv)window MainWindow()window.show()app.exec() 运行次模块你会看到以下界面 需要注意的几个地方 1、控价摆放好之后一定要给控件进行重命名操作 2、对于显示图片的lable来说需要勾选自适应的标识。 编码 可参考官网 https://docs.ultralytics.com/modes/predict/#__tabbed_1_2 ps:需要大家有一点QT编码知识点也不要求太多。只需要掌握插槽和信号这两个概念就行。 简单来讲就是信号就是当有什么事件发生时会触发的。比如常见的点击事件。插槽就是信号接收器当某一个信号发出后我们需要做什么的应对处理。 代码如下 1、信号处理(点击选择图片是触发) self.select_img.clicked.connect(self.detect_img_methods) 我是把图片按钮和视频按钮的信号放置在一个方法中在初始化的过程中就会调用 def btn_slot(self):print(按钮触发事件)self.select_img.clicked.connect(self.detect_img_methods)self.select_video.clicked.connect(self.detect_video_methods) 接下来就是处理信号信息的插槽自己也是通过方法来处理的。 第一种方式 # 检测图片按钮的功能def detect_img_methods(self):print(图片检测)files QFileDialog.getOpenFileName(dirui_information,filter*.jpg)print(路径,files)if files[0]:# 显示图片self.old_img.setPixmap(QPixmap(files[0]))# 获取文件名file_info QFileInfo(files[0])# 获取文件名file_name_only file_info.fileName()change_img self.make_detect_image_name(files[0],file_name_only)self.detect_img.setPixmap(QPixmap(change_img)) def make_detect_image_name(self,filepath,filename):results self.model.predict(sourcefilepath, showFalse, saveTrue)curr_path os.getcwd()result_path for result in results:result_path result.save_dirreturn os.path.join(curr_path, result_path, filename) 思路分析 1、原始图片显示 QFileDialog.getOpenFileName() 方法可以获取文件的路径返回值是一个元组我们可以获取第一个元素就是flies[0],通过setPixmap将原始图片显示处理。 2、识别图片结果显示 思路分析。通过调用model.predict()方法每次运行成功之后就会在runs/detect-----目录下面 predict存放识别结果的图片。 有了这个思路之后我们只需要获取对应的路径就能拿到识别图片。然后同样的方式显示处理。这里通过result.save_dir获取识别的结果路径通过os来拼接完成的路径最终图片就会显示处理。结果如下 样式大家下去可以自行调整 弊端需要准确到找到路径位置 第二种实现思路 我们可以通过调用model(frame)来训练模型会生成识别图像的向量数据然后我们通过该方法将对应的向量转换为图像也可以做到以下效果。 核心代码如下 4、下一张图片功能 思路分析 获取当前目录的所有文件图片列表格式获取选取到的图片对应的下标下标1往后移动一个下标-1往前移动对应的就是下一张或者上一张需要增加最小值和最大的值判断。 代码如下下 初始化的代码 # 批量识别图片的下标self.current_image_index -1# 存放所有的图片self.all_images[] def next_img_methods(self):if self.current_image_index -1:print(请先选择图片)QMessageBox.critical(None,error,请先选择图片)returnprint(下一张图片)# 识别结果complox_path os.path.join(self.root_path,self.all_images[self.current_image_index1])# 显示self.old_img.setPixmap(QPixmap(complox_path))results self.model(complox_path)[0].plot()# for result in results:# print(result.orig_img)change_img conver2Qimage(results)self.detect_img.setPixmap(QPixmap.fromImage(change_img))# 增加1self.current_image_index 1print(最大下标,self.current_image_index,len(self.all_images))# 最大值if self.current_image_index len(self.all_images)-1:self.current_image_index len(self.all_images)-2 5、上一张图片功能 思路分析主要是想办法知道当前显示图片的下标上一页减少下标上一页增加下标。注意控制边界就行代码和下一张图片功能类似。 6、视频检测功能 思路分析其实视频的每一帧就是一张图片所以其实跟检测图片的功能类似可以使用opencv解析视频获取每一张图片然后就跟图片的检测逻辑差不多。 思路二视频解析如果放在主线程中会影响其他业务的操作可以考虑放到线程中去检测视频。 放入主要代码作为参考 # 开启视频处理独立线程Thread(targetself.video_detail,daemonTrue).start() # 视频处理流程def video_detail(self):while True:if not self.frameToAnalyze:time.sleep(0.01)continueframe self.frameToAnalyze.pop(0)result self.model(frame)[0].plot()qimage conver2Qimage(result)if self.stop_flagFalse:self.detect_video.setPixmap(QPixmap.fromImage(qimage))# 写入表格数据self.detect_video_jianche_result(frame)# 获取检测结果self.show_table_data()# 休眠0.3秒time.sleep(0.3) def display_origin_video_image(self,frame):frame cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)qImage conver2Qimage(frame)# 往显示视频的Label里 显示QImageself.old_video.setPixmap(QPixmap.fromImage(qImage))# 如果当前没有处理任务if not self.frameToAnalyze:self.frameToAnalyze.append(frame) 7、效果展示 程序没什么难度对于视频检测来说不仅是实现功能还需要考虑性能的问题 补充知识 修改TabWidget的选项样式字体大小放大选项 参考代码 self.tabWidget.setStyleSheet(QTabBar::tab { font-size: 12px;width:100px;height:50px;})
http://www.zqtcl.cn/news/111165/

相关文章:

  • 网站不备案做优化小程序开发前景怎么样
  • 美丽说网站优化百度关键词优化
  • 同性男做的视频网站赶集网招聘最新招聘附近找工作
  • 做挖机配件销售的网站oa办公系统软件哪家好
  • 聊城设计网站商务网站的特点
  • 厦门做个网站多少钱工程建设范围
  • 百度推广官方网站在哪里制作网页
  • 济南集团网站建设方案沈阳手机网站制作
  • 网站备案号注销的结果做网站的外包能学到什么
  • 在线购物网站开发项目网站建设电话推广话术
  • 网站主体信息太原站扩建
  • 西平县住房和城乡建设局网站空间商网站
  • p2p网站建设cms一键生成图片
  • 甘肃省第八建设集团公司网站能够做物理题的网站
  • 团购网站建设方案建筑工程网校官网
  • 佛山建站网站模板小公司管理方法
  • 常德住房和城乡建设局网站做风险代理案源的网站
  • 手机网站开发人员选项wordpress加载媒体库
  • 做钓鱼网站用哪种编程语言张家界有实力seo优化费用
  • 如何做一个主题网站做网站必须有框架么
  • 建设网站需要什么知识上海高端网页设计
  • 电子商务网站建设基本流程公司网站建设平台
  • 域名没过期 网站打不开怎么办素马设计顾问讲解价格
  • 怎么做非法彩票网站贵州网站开发哪家便宜
  • 青岛市医疗保险网站wordpress七牛云
  • 哪个浏览器可以做网站查询网站的外链
  • 浅析社区网站的建设有了网站源码 怎么建设网站
  • 苏州网站排名优化系统网页设计师
  • 网站开发定制推广杭州河南省的网页制作
  • 北京随喜设计网站国内好的seo网站