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

网站建设lieyanma关键词排名优化品牌

网站建设lieyanma,关键词排名优化品牌,南通网站建设方案,泉州网站建设+推广调试opencv源码的两种方式 上两篇我们分别讲了如何配置opencv环境,以及如何编译opencv源码方便我们阅读。但我们还是无法调试我们的代码,无法以我们的程序作为入口来一步一步单点调试看opencv是如何执行的。 【opencv源码解析0.1】VS如何优雅的配置ope…

调试opencv源码的两种方式

上两篇我们分别讲了如何配置opencv环境,以及如何编译opencv源码方便我们阅读。但我们还是无法调试我们的代码,无法以我们的程序作为入口来一步一步单点调试看opencv是如何执行的。

【opencv源码解析0.1】VS如何优雅的配置opencv环境
【opencv源码解析0.2】如何编译opencv库源码

为此我们介绍两种调试opencv的方法。

1、通过VS配置来调试

在上一篇文章中,我们生成了opencv源码工程,基于该工程,我们可以生成debug版本的动态链接库opencv_world460d.dll,以及调试信息文件opencv_world460d.pdb。

我们想要调试opencv的源码,只需要将这两个文件拷贝到我们自己项目的可执行文件的同级目录内即可。

例如我们一直在使用的test_link_opencv这个工程:

在这里插入图片描述

完成拷贝后,直接在工程中打断点进行单步调试,即可进入opencv源码内调试了。

2、通过在opencv源码内部进行调试

上面的方法可以使我们基于我们自己的项目,来调试opencv的源码。但上篇文章中我们已经构建了opencv源码工程了,如果仅仅是为了学习、阅读源码,我们可以在opencv源码工程内进行调试。

首先opencv提供了许多examples示例程序,我们在cmake-gui的options中,找到选项

  • BUILD_EXAMPLES:构建示例程序

并勾选,然后重新点击configure和Generate:

在这里插入图片描述

然后重新打开我们的VS工程,就可以找到官方提供的例程了:

在这里插入图片描述

我们可以将配置改为Debug x64模式,再将其中一个例程设为可执行程序,就可以直接调试了。

如果例程的内容不是你想调试的内容,那你也可以建一个自己的例程项目,然后在该项目里写自己想要调试的代码,这要怎么做到呢?

我们在opencv\sources\samples\cpp\CMakeLists.txt文件中,可以看到该cmake文件对该samples路径下的每一个.cpp文件,都应用了

ocv_define_sample(tgt ${sample_filename} ${package})

这个函数,这个函数位于opencv\sources\samples\samples_utils.cmake:

# Utility function: adds sample executable target with name "example_<group>_<file_name>"
# Usage:
#   ocv_define_sample(<output target> <relative filename> <group>)
function(ocv_define_sample out_target source sub)get_filename_component(name "${source}" NAME_WE)set(the_target "example_${sub}_${name}")if(OPENCV_DUMP_EXAMPLE_TARGET)message(STATUS "Example: ${the_target}    (${source})")endif()add_executable(${the_target} "${source}")if(TARGET Threads::Threads AND NOT OPENCV_EXAMPLES_DISABLE_THREADS)target_link_libraries(${the_target} PRIVATE Threads::Threads)endif()set_target_properties(${the_target} PROPERTIES PROJECT_LABEL "(sample) ${name}")if(ENABLE_SOLUTION_FOLDERS)set_target_properties(${the_target} PROPERTIES FOLDER "samples/${sub}")endif()if(WIN32 AND MSVC AND NOT BUILD_SHARED_LIBS)set_target_properties(${the_target} PROPERTIES LINK_FLAGS "/NODEFAULTLIB:atlthunk.lib /NODEFAULTLIB:atlsd.lib /DEBUG")endif()# Should be usable in stand-alone build scenarioif((NOT DEFINED INSTALL_BIN_EXAMPLES AND WIN32) OR INSTALL_BIN_EXAMPLES)if(NOT DEFINED OPENCV_SAMPLES_BIN_INSTALL_PATH)set(OPENCV_SAMPLES_BIN_INSTALL_PATH "samples")endif()install(TARGETS ${the_target} RUNTIME DESTINATION "${OPENCV_SAMPLES_BIN_INSTALL_PATH}/${sub}" COMPONENT samples)endif()# Add single target to build all samples in the group: 'make opencv_samples_cpp'set(parent_target opencv_samples_${sub})if(NOT TARGET ${parent_target})add_custom_target(${parent_target})if(TARGET opencv_samples)add_dependencies(opencv_samples ${parent_target})endif()endif()add_dependencies(${parent_target} ${the_target})set(${out_target} ${the_target} PARENT_SCOPE)
endfunction()

该函数将每一个samples路径下的.cpp文件,都单独生成为了一个exe可执行项目,因此呢,我们要往samples内添加我们自己的项目也很简单,只需要在路径

opencv\sources\samples\cpp\文件夹内添加一个.cpp文件即可。

我们添加一个sherad_opencv.cpp文件:

在这里插入图片描述

然后重新在cmake-gui内点击configure和Generate按钮,然后重新打开opencv的VS源码工程,就可以看到我们添加的shredOpencv项目了:

在这里插入图片描述
在这里插入图片描述

http://www.laogonggong.com/news/50414.html

相关文章:

  • 珠海专业网站制作公企业微信管理系统
  • 企业网站怎么建设google app下载
  • 万网注册域名做简单网站微营销平台有哪些
  • 用建设银行卡的借钱网站有哪些南通seo网站优化软件
  • 厦门建网站公司网站推广优化招聘
  • 宁波seo外包服务平台百度seo优化排名
  • 电子商务网站方案在线seo优化工具
  • 描述photoshop在网站建设中的作用与特点.广州品牌seo推广
  • 重庆时时彩做号网站宁波网络推广方法
  • vb.net做网站教程seo视频教程
  • 品牌搭建网站 官网开封网站推广公司
  • 正能量视频素材免费下载网站深圳网络推广哪家
  • 外贸网站建设原则营销策划主要做些什么
  • 做设计赚钱网站有哪些免费的短视频app大全
  • 龙岩网站建设专家产品市场营销策划书
  • 私服网站开发搜索软件排行榜前十名
  • 哈尔滨市信息网百度seo sem
  • 做电商要关注哪些网站百度文库登录入口
  • 咨询手机网站建设平台微营销
  • 怎样可以有自己的网站广州抖音推广公司
  • asp net网站开发语言的特点什么是互联网推广
  • 外贸公司网站建设费的会计科目北京seo报价
  • 服务器ecs可以做网站吗seo企业站收录
  • 网站放到iis如何做指向制作一个简单的html网页
  • 资料下载网站建设服务推广软文范例
  • 司法鉴定网站建设的内容网站推广公司哪家好
  • 网站怎么可以被收录推销
  • 整站seo运营百度竞价教程
  • 餐饮食材配送网站开发企划书网站怎么被百度收录
  • 国家建设部门三类人员官方网站郑州关键词排名顾问