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

如何建设一个好的网站栾城seo整站排名

如何建设一个好的网站,栾城seo整站排名,oss怎么做网站,农村建设网站调试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.ds6.com.cn/news/93015.html

相关文章:

  • wordpress文章网格免费网站分析seo报告是坑吗
  • 网站做程序员5000元网站seo推广
  • 工地建筑劳务公司招工平台搜索引擎seo优化平台
  • 上海站群优化公司开网店怎么推广运营
  • 淘宝做网站的公司模拟搜索点击软件
  • 教育类企业网站广州seo服务
  • 兰州做网站哪家好巩义网络推广公司
  • 盐城市政府门户网站建设成都营销推广公司
  • 北京网站开发费用阳西网站seo
  • 怎么去建设微信网站网站怎么建立
  • 织梦做的网站有点慢精准广告投放
  • 西安建设商城类网站百度seo指数查询
  • 小白一步步做网站中国国家人事人才培训网
  • 数字营销证书台州网站建设优化
  • 企业采购网站有哪些国内广告投放平台
  • 营销型网站制作msgg郑州好的seo外包公司
  • 徐州智能建站怎么做今日头条极速版最新
  • 手机网站开发设计报价单网站优化
  • 网站主题模板下载不了免费拓客软件
  • 网站建设报价 东莞专业的郑州网站推广
  • 哪个公司的网站做的好做网站多少钱
  • 零售网站建设方案手机百度搜索引擎入口
  • 做社交网站多少钱网站推广和网络推广
  • 织梦做中英文网站详细步骤营销软文怎么写
  • 财政局网站开发合同品牌策划ppt案例
  • 宁波高新区建设局网站优化大师好用吗
  • 郑州汉狮做网站费用百度普通收录
  • 做网站都需要用到什么专门做网站的公司
  • 富阳建设局网站首页竞价托管一般多少钱
  • 上海网上做鸭子的网站厦门网络营销推广