环境

WIN10系统,联想Y7000配置,8G内存

  • VS2019
  • cuda10
  • cudnn10
  • opencv4.11没有扩展库
  • 显卡 1050TI

用到的库(提前下载好的模型,依赖库,user_code是自己新添加的开发样例)

隐患

我的系统默认还有cuda8(已经被10的系统环境替代)

还有VS2015 ,VS2019与其共存极其容易带来环境问题,造成后面的编译调试失败。

1下载源码

https://github.com/CMU-Perceptual-Computing-Lab/openpose

我的此时此刻最新的1.5.1

2开始编译

2-1第一次编译,直接翻墙,手机流量,高速下载让他自动安装caffe和openc4.11和模型文件

(如果是第二次编译,为了加快速度可以把之前下载好的caffe和opencv4.11库预先复制出来,给以后重复编译用)

直接解压到工程文件对应目录

库模型也可以直接解压避免重新下载

2-2 创建bulid文件夹开始编译

选择vs2019- 64位

3 生成generate

4 vs2019打开生成的vs工程

5 VS生成文件

环境配置什么都没有,默认cmake时候有了caffe库和opencv4.11库

漫长等待生成。

我们运行一个

正常因该出画面

报了个错,程序中断了,感觉是cuda问题我来看看。

双击对勾,点击加载

一直在那加载,我等里一段时间,他应该加载了很多默认的东西,包括出错的那个东西也应该自动加载了,点击取消,直接成功

直接运行生成的EXE会报错

我们需要去之前下载的cafe和opencv4.11库复制过来

还有生成的模型,相对路径

全部复制到exe的生成文件夹下

重新运行就可以了。

这样就可以执行CMD输入参数

6 如何创建自己的新工程

自己要改写一个程序做一个开发

来到

这个cpp是来自于样例16的开发直接拷贝过来。

cmake改写后的内容、

# Uncomment these lines with your custom file names
set(USER_CODE_FILES
# ADD_HERE_YOUR_FILE1.cpp
# ADD_HERE_YOUR_FILE1.hpp
# ADD_HERE_YOUR_FILE2.cpp
# # ...
synchronous_custom_output.cpp) foreach(USER_CODE_FILE ${USER_CODE_FILES}) get_filename_component(SOURCE_NAME ${USER_CODE_FILE} NAME_WE) if (UNIX OR APPLE)
set(EXE_NAME "${SOURCE_NAME}.bin")
elseif (WIN32)
set(EXE_NAME "UserCustomCode")
endif () message(STATUS "Adding Example ${EXE_NAME}")
add_executable(${EXE_NAME} ${USER_CODE_FILE})
target_link_libraries(${EXE_NAME} openpose ${examples_3rdparty_libraries}) if (WIN32)
set_property(TARGET ${EXE_NAME} PROPERTY FOLDER "User Code")
configure_file(${CMAKE_SOURCE_DIR}/cmake/OpenPose${VCXPROJ_FILE_GPU_MODE}.vcxproj.user
${CMAKE_CURRENT_BINARY_DIR}/${EXE_NAME}.vcxproj.user @ONLY)
# Properties->General->Output Directory
set_property(TARGET ${EXE_NAME} PROPERTY RUNTIME_OUTPUT_DIRECTORY_RELEASE ${PROJECT_BINARY_DIR}/$(Platform)/$(Configuration))
set_property(TARGET ${EXE_NAME} PROPERTY RUNTIME_OUTPUT_DIRECTORY_DEBUG ${PROJECT_BINARY_DIR}/$(Platform)/$(Configuration))
endif (WIN32) endforeach()

 重新cmake一下

打开vs可以看见多一个项目

重新VS编译一下

 

设为启动项目,运行调试

openpose开发(1)官方1.5版本源码编译的更多相关文章

  1. HAProxy-1.8.x版本源码编译

    源码编译HAProxy:  官网下载HAProxy包,并解压包,切换到haproxy包目录下 [root@centos17haproxy-1.8.20]#tar xvf haproxy-1.8.20. ...

  2. spring各个版本源码

    各版本源码下载地址 http://maven.springframework.org/release/org/springframework/spring/

  3. Spring各版本源码下载

    spring framework 各版本源码下载地址 现在spring的源码下载地址真是不好找,这次终于找到了.记录一下,以帮助需要的朋友. https://github.com/spring-pro ...

  4. [转帖]nginx1.17.2版本源码安装

    nginx1.17.2版本源码安装 原创: 沧海书生 Ansible爱好者 昨天 公众号里面的内容 这里简单测试了下 在x86的虚拟机里面编译安装 nginx 仅make make install n ...

  5. Kafka 0.10.1版本源码 Idea编译

    Kafka 0.10.1版本源码 Idea编译 1.环境准备 Jdk 1.8 Scala 2.11.12:下载scala-2.11.12.msi并配置环境变量 Gradle 5.6.4: 下载Grad ...

  6. 任务驱动,Winform VS WEB对比式学习.NET开发系列第一篇------身份证解析(不断更新的WEB版本及Winform版本源码)

    一 本系列培训随笔适用人群 1. 软件开发初学者 2. 有志于转向Web开发的Winform程序员 3. 想了解桌面应用开发的Web程序员 二 高效学习编程的办法 1 任务驱动方式学习软件开发 大部分 ...

  7. Res-net 标准版本源码差异-官方源码示例

    # resnet https://github.com/tensorflow/models/blob/master/research/slim/nets/resnet_v1.py https://gi ...

  8. 《k8s-1.13版本源码分析》-测试环境搭建(k8s-1.13版本单节点环境搭建)

    本文原始地址(gitbook格式):https://farmer-hutao.github.io/k8s-source-code-analysis/prepare/debug-environment. ...

  9. 《k8s-1.13版本源码分析》- Scheduler启动前逻辑

    本文原始地址(gitbook格式):https://farmer-hutao.github.io/k8s-source-code-analysis/core/scheduler/before-sche ...

随机推荐

  1. 使用WCF-SQL一次Insert多个表

    在Visual Studio中新增生成项目     选择适配器类型     选择WCF-SQL适配器   创建连接选项   选择相应的存储过程   生成相应的消息架构  

  2. (十一)golang--键盘输入

    两种方式:fmt.Scanln()和fmt.Scanf() (1)fmt.Scanln package main import "fmt" func main() { //获取一行 ...

  3. sprintboot+mybatis+@Mapper中in的使用方法

    错误的使用方法: @Select("select goods_sn from ${tableName} where goods_sn in (#{skuStr})") public ...

  4. 修改Yarn的全局安装和缓存位置

    在CMD命令行中执行 #1.改变 yarn 全局安装位置 yarn config set global-folder "你的磁盘路径" #2.然后你会在你的用户目录找到 `.yar ...

  5. 【More Effective C++ 条款1】仔细区别pointers和references

    1)操作符的差别 指针使用"*"和"->"操作符,而引用使用"."操作符 2)初始化的差别 有空指针,但是没有空引用,和const对象 ...

  6. 被synchronized修饰的方法调用了没有被synchronized修饰的方法,是否是线程安全

    1 被synchronized修饰的方法调用了没有被synchronized修饰的方法,是否线程安全? /** * (1)被synchronized修饰的方法调用了没有被synchronized修饰的 ...

  7. springboot+RabbitMQ 问题 RabbitListener 动态队列名称:Attribute value must be constant

    因为多机环境fanout广播模式,每台机器需要使用自己的队列接受消息 所以尝试使用以下的方案 private static final String QUEUE_NAME="foo.&quo ...

  8. scala基础题--面向对象1

    练习1 编写computer类,包含CPU.内存.硬盘等属性,getDetails方法用于返回computer的详细信息. 编写PC子类,继承computer类,添加特有属性[品牌brand] 编写n ...

  9. ionic4 页面跳转传值和新页面取值

    页面跳转 : <ion-row *ngFor="let item of aboutData.stockData" [routerLink]="[ '/stock-d ...

  10. Git 快速极简图文教程 第一篇

    Git简介 Git 是目前使用最广泛,最著名的工具.据了解,目前绝大部分互联网公司都已经全部切入到git作为版本管理工具,尤其是bat等头部公司,这是一个标准的技能. Git 最早是有linux之父, ...