阿里云服务器OpenPoseDemo远程调用与运行

OpenPoseDemo运行环境

需要安装:

  1. CUDA,版本:11.2
  2. OpenPose 1.7.0 Release
  3. USB Network Gate,用于远程使用本地摄像头

1. 服务器

阿里云服务器GPU计算型gn5i,显卡为NVIDIA P4
镜像选择公共镜像Windows Server 2019数据中心版 64位
建议添加一个数据盘,实测装完软件后C盘会非常满

1.1 驱动安装

新的服务器是没有GPU驱动的,从设备管理器中也看不到显卡。
在安装CUDA时进行驱动安装

1.2 CUDA安装

CUDA各版本下载地址
选择11.2版本的CUDA下载,进行安装。选择自定义安装。由于新服务器没有驱动与Visual Studio,因此勾选所有选项。
安装建议使用默认路径。
安装完成后,添加环境变量。(前面路径可能不同,需要更改)

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\libnvvp
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\lib\x64
C:\Program Files\NVIDIA Corporation\NVSMI

1.3 检查CUDA是否安装成功

  1. cmd输入
nvcc -V

应输出驱动版本

  1. cmd输入
nvidia-smi

第一行应输出CUDA版本、驱动版本等信息。CUDA版本应为11.2,驱动版本应为460.1左右(大于460)

  1. 打开cmd,先定位到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\extras\demo_suite,再检查deviceQuery.exe,bandwidthTest.exe。
cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\extras\demo_suite
deviceQuery.exe
bandwidthTest.exe

在最后应输出Result=PASS

2. 下载OpenPose1.7.0

直接下载OpenPoseDemo文件与训练的模型。
首先到OpenPoseDemo Release网站下载压缩包。
建议下载openpose-1.7.0-binaries-win64-gpu-python3.7-flir-3d_recommended.zip
如果没有GPU或者GPU配置异常也可以下载CPU版本压缩包,但在服务器上实测十分卡顿。
下载并解压,进入models文件夹,双击getModels.bat,进行模型下载。

3. 下载USB Network Gate

该软件用于在使用远程桌面时共享使用USB设备。下载地址软件收费,但可通过邮箱申请14天免费使用。本地和服务器电脑上都要下载该软件,软件登录(激活码)只需在本地登录即可。详细使用方法见网站教程。
实测下载该软件后需要对电脑重启才能正常连接。
将USB摄像头接入电脑,或使用笔记本内置摄像头。通过远程桌面连接服务器电脑,在本地资源-详细信息中勾选视频捕获设备。
在这里插入图片描述
在这里插入图片描述

4. 运行OpenPoseDemo

打开cmd,将路径修改到openpose文件夹中,输入

bin\OpenPoseDemo

即可运行。可根据需要加入–face、–hand等参数。

5. 其他

  1. 查看自己是否有支持安装CUDA的NVIDIA显卡。显卡算力大于3才有对应版本的CUDA。支持CUDA的NVIDIA显卡
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,关于Windchill的远程调用方法服务器配置和测试类,我可以给你一些指导。 首先,你需要在Windchill中启用远程调用方法服务器。这可以通过Windchill管理员界面的“系统管理”>“远程调用方法服务器”选项来完成。在这里,你需要指定远程调用方法服务器的主机名和端口号等信息。 其次,你需要在Windchill中创建一个Java类,用于测试远程调用方法服务器是否正常工作。这个类需要实现Windchill提供的RemoteMethodServerTest接口,并重写其中的方法。在这个测试类中,你可以编写一些简单的测试方法,用于测试远程调用方法服务器是否能够正常响应请求。 最后,你可以在测试类中使用Windchill提供的RemoteMethodServer类来调用远程方法。具体来说,你可以使用RemoteMethodServer类的invoke方法来调用远程方法,并将方法名、参数类型和参数值作为参数传递给该方法。例如,以下代码片段演示了如何调用远程方法: ``` RemoteMethodServer rms = RemoteMethodServer.getDefault(); String method = "myRemoteMethod"; Class<?>[] argTypes = { String.class }; Object[] args = { "Hello, World!" }; String result = (String) rms.invoke(method, null, null, argTypes, args); System.out.println(result); ``` 这段代码将调用名为“myRemoteMethod”的远程方法,并将字符串“Hello, World!”作为参数传递给该方法。远程方法的返回值将被存储在result变量中,并打印到控制台上。 希望这些信息能对你有所帮助。如果你有其他问题,请继续提问。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值