在pycharm中搭建yolo11分类检测系统--PyQt5学习(二)

第二部分  测试本地pycharm通过程序连接远程服务器autodl

模型的推理需要借助远程服务器autodl,但是界面的运行是在pycharm中,我的设想是按钮调用一个py文件就好了。

1. 本地运行PyQt5界面。

2. 当需要载入权重时,通过SSH连接到AutodL服务器,执行模型推理。

3. 服务器返回结果到本地,更新界面。

这样服务器只需要YOLOv11的环境,不需要PyQt5。因此,不需要在AutodL上配置PyQt5。

我首先在本地pycharm中配置了两个环境,一个有pyqt,一个通过SSH连接算力云,后来我发现我不会联合使用这两个环境,我跟着一些教程改了一些设置,也是没有成功,最后还是豆包解决的。豆包yyds!你一直问一直疑惑,他就会慢慢理解你的困惑了。

我现在的想法是先实现点击一个按钮就能执行云端相应的文件去调用权重,最终发现根本不需要创建SSH连接的环境,直接在pyqt那个环境中,写代码连接服务器。

以下是我本地pycharm连接autodl算力云的代码,给大家做一个参考:

import sys
import paramiko
from PyQt5.QtWidgets import QApplication, QMainWindow
from system_design_ui import Ui_MainWindowif __name__ == "__main__":###这里是我调用pyqt界面的代码try:ssh = paramiko.SSHClient()ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())# 替换为你的远程服务器连接信息sshssh.connect('服务器地址', username='名称', password='密码', port=编号)#这里就是SSH连接服务器的步骤# 先切换到你需要的目录,再执行你要执行的文件command = f"cd /root/xxx && /root/miniconda3/bin/python(这个大家应该都是一样的) jiance.py"print(f"即将执行命令: {command}")stdin, stdout, stderr = ssh.exec_command(command)result = stdout.read().decode('utf-8')error = stderr.read().decode('utf-8')print(f"命令执行结果:\n{result}")if error:print(f"执行 jiance.py 时出错: {error}")else:print("jiance.py 脚本执行成功,未发现错误信息。")ssh.close()except Exception as e:print(f"执行过程中发生错误: {e}")sys.exit(app.exec_())

因为这个代码是我一步一步试出来的,里面有很多输出信息来检查哪里发生了错误。

执行后观察输出信息,如果云端上找不到执行后生成的东西,比如我出现的问题就是本地通过 SSH 执行 jiance.py 时,当前工作目录是 /root ;而在云端直接执行时,当前工作目录是 /root/ultralytics-main 。工作目录的差异或许会影响到脚本里相对路径的解析,进而致使保存路径出现问题。 

修改本地代码和云端执行路径一致,当然不改也行,记住存放的路径方便后面用到的时候去找,再次运行本地代码,jiance.py 执行时的工作目录就和云端直接执行时一致了,已经成功连接服务器进行检测。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/902488.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端框架的“快闪“时代:我们该如何应对技术迭代的洪流?

引言:前端开发者的"框架疲劳" “上周刚学完Vue 3的组合式API,这周SolidJS又火了?”——这恐怕是许多前端开发者2023年的真实心声。前端框架的迭代速度已经达到了令人目眩的程度,GitHub每日都有新框架诞生,n…

基于YOLO11的遛狗牵绳识别预警系统

基于YOLO11的遛狗牵绳识别预警系统 【包含内容】 【一】项目提供完整源代码及详细注释 【二】系统设计思路与实现说明 【三】预训练模型与数据集说明 【四】需要列出所有的类别,并且加入识别的类别数量:4类 0: dog (狗) 1: leash (牵引绳) 2: person …

Spring MVC 一个简单的多文件上传

原始代码逐行解释 PostMapping("/uploads") // ① 声明处理POST请求,路径为"/uploads" ResponseBody // ② 直接返回数据到响应体,不进行视图解析 public String uploads(MultipartFile[] files, // …

C++继承(最详细)

目录 1.继承的概念以及定义 1.1 继承的概念 1.2 继承的定义 ​编辑 2.继承中的作用域 3.基类和派生类间的转换 4.派生类的默认成员函数 5.实现不被继承的类 6.継承与友元 ​编辑 7.继承与静态成员 8.多继承及其菱形继承问题 8.2 虚继承 8.3 来看一个小题 9.继承…

day35图像处理OpenCV

文章目录 一、图像预处理17 直方图均衡化17.1绘制直方图17.2直方图均衡化1. 自适应直方图均衡化2. 对比度受限的自适应直方图均衡化3. 示例 19 模板匹配 一、图像预处理 17 直方图均衡化 直方图:反映图像像素分布的统计图,横坐标就是图像像素的取值&…

【音视频】FFmpeg内存模型

FFmpeg内存模型 从现有的Packet拷贝一个新Packet的时候,有两种情况: 两个Packet的buf引用的是同一数据缓存空间,这时候要注意数据缓存空间的释放问题;两个Packet的buf引用不同的数据缓存空间,每个Packet都有数据缓存…

1.2软考系统架构设计师:系统架构的定义与作用 - 练习题附答案及超详细解析

系统架构定义与作用综合知识单选题 题目覆盖核心概念、发展历程、设计原则、评估标准及易混淆点,附答案解析: 1. 系统架构的标准定义源自于以下哪个标准? A. ISO/IEC 9126 B. IEEE 1471-2000 C. TOGAF 9.2 D. ITIL v4 答案:B 简…

go语言对http协议的支持

http:无状态协议,是互联网中使用http使用http实现计算机和计算机之间的请求和响应 使用纯文本方式发送和接受协议数据,不需要借助专门工具进行分析就知道协议中的数据 服务器端的几个概念 Request:用户请求的信息,用…

iscsi服务端安装及配置

1. 安装targetcli软件包 yum install -y targetcli 2. 启动target服务 systemctl start target systemctl enable target 3. 配置防火墙 firewall-cmd --add-port"3260/tcp" 3. 准备一个物理分区(或者逻辑分区)…

解决 MongoDB 查询中的 `InvalidMongoDbApiUsageException` 错误

您在使用 Spring Data MongoDB 时遇到了 InvalidMongoDbApiUsageException 异常,错误信息如下: “由于 com.mongodb.BasicDocument 的限制,您无法添加第二个 ‘null’ 条件。查询已经包含 ‘{ “KaTeX parse error: Expected }, got EOF at e…

一个关于相对速度的假想的故事-4

回到公式, 正写速度叠加和倒写速度叠加的倒写相等,这就是这个表达式所要表达的意思。但倒写叠加用的是减法,而正写叠加用的是加法。当然是这样,因为正写叠加要的是单位时间上完成更远的距离,而倒写叠加说的是单位距离需…

重学React(一):描述UI

背景:React现在已经更新到19了,文档地址也做了全面的更新,上一次系统性的学习还是在16-17的大版本更新。所以,现在就开始重新学习吧~ 学习内容: React官网教程:https://zh-hans.react.dev/lea…

AI大模型:(二)2.3 预训练自己的模型

目录 1.预训练原理 2.预训练范式 1.未标注数据 2.标注数据 3.有正确答案、也有错误答案 3.手撕transform模型 3.1.transform模型代码 3.2.训练数据集 3.3.预训练 3.4.推理 4.如何选择模型

gradle可用的下载地址(免费)

这几天接手一个老项目,想找gradle老版本的,但一搜,虽然在CSDN上搜索出来一堆,但都是收费,有些甚至要几十积分(吃相有点难看了)。 我找了一个能访问的地址,特地分享出来,有需要的自取&#xff01…

vue3新增特性

一、Vue 3 新增特性 1. Composition API 概述: Composition API 提供了一种更灵活和强大的方式来组织和复用逻辑。适用于复杂组件和逻辑复用场景。主要功能: setup 函数:组件的入口点,用于定义响应式数据、方法、生命周期钩子等。响应式 API:ref 和 reactive 提供更细粒度…

前端性能优化全攻略:JavaScript 优化、DOM 操作、内存管理、资源压缩与合并、构建工具及性能监控

1 为什么需要性能优化? 1.1 性能优化的核心价值:用户体验与业务指标 性能优化不仅是技术层面的追求,更是直接影响用户体验和业务成败的关键因素。 用户体验(UX): 响应速度:用户期望页面加载时…

【Unity笔记】Unity + OpenXR项目无法启动SteamVR的排查与解决全指南

图片为AI生成 一、前言 随着Unity在XR领域全面转向OpenXR标准,越来越多的开发者选择使用OpenXR来构建跨平台的VR应用。但在项目实际部署中发现:打包成的EXE程序无法正常启动SteamVR,或者SteamVR未能识别到该应用。本文将以“Unity OpenXR …

Curl用法解析

Curl 用法解析 简介 Curl 是一个强大的命令行工具,主要用于从服务器发送 HTTP 请求并获取数据。它广泛应用于调试 RESTful API、文件上传下载、模拟用户交互等多种场景。下面是一些基本用法及常见参数的分析: 基础用法 curl [options] [URL]其中最基…

C语言教程(十一):C 语言中四种主要作用域及作用域嵌套遮蔽

一、引言 在 C 语言里,作用域指的是程序中变量、函数、类型等标识符能够被使用的范围。C 语言里有四种主要的作用域:块作用域、函数作用域、文件作用域和原型作用域,下面为你展开介绍: 二、块作用域 定义:块作用域是 C…

初次尝试Ghidra

最近看京东读书上有本书叫《Ghidra权威指南》,竟然是美国国家安全局出品的逆向工具,我真是孤陋寡闻,第一次听说。赶紧试试。 Release Ghidra 11.3.2 NationalSecurityAgency/ghidra GitHub 最新版本竟然是上周发布的,看来很活…