用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法

Part II

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part I_松下J27的博客-CSDN博客

在上一篇文章中,我用cmake成功的生成了opencv.sln,后面都不会再用cmake了,直接在VS中操作。


1,用VS打开OpenCV.sln,并编译该项目

1.1,打开后,确认当前的运行环境为Debug+x64模式,然后依次点击生成——>生成解决方案

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第1张图片

实际上在你打开opencv.sln后不做任何选择的话,系统默认是在生成“ALL_BUILD”的解决方案。

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第2张图片

 耐心等待VS编译,编程成功后系统会有提示。

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第3张图片

编译成功后,在opencv480_build里的lib和bin这两个文件夹中会分别新增出两个“Debug”文件夹。

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第4张图片

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第5张图片

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第6张图片

 用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第7张图片

1.2  ALL_BUILD生成好以后,再生成下面的INSTALL,鼠标右键单击INSTALL选择生成。

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第8张图片

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第9张图片

编译成功后会在我们自己创建的 “opencv480_build”文件夹中,新增一个文件夹“install”。

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第10张图片

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第11张图片 

        这一步的目的是把我们未来调用opencv库时所需要的所有文件都一并放到这个文件夹中,方便将来使用。

1.3, 把前面的1.1和1.2再来一遍,之前我们都是debug+x64模式下生成的,这一步改成release+x64模式。

1.3.1此处选择Release

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第12张图片

1.3.2 此处选择Release选择生成——>生成解决方案。 

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第13张图片

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第14张图片

 1.3.3 用同样的方式再次生成“INSTALL”。 

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第15张图片

这一步也完成后,在我们自创的opencv480_build中的lib和bin文件中,会新增出两个“Release”文件夹。

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第16张图片

 用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第17张图片

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第18张图片

 用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第19张图片

 release和debug模式下所生成的文件都是同名文件,唯一的区别就是在debug模式下所生成的文件的文件名会多个d以示区别。

 8,查看Opencv源码

        前面的编译全都完成了,这个时候,我们就可以在VS中查看openCV的源码了。(只是到目前为止我都还没有介绍如何在自己的项目中调用Opencv库,这个后面会讲)

        举个例子,在我们的打开的opencv.sln中,搜索(记得在“整个解决方案”中搜)我们想查看源码的函数名,比如说imread。

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第20张图片

        只要能找到任何一处的引用,按住control然后单击鼠标左键,不断的往底层查看,就能看到imread这个函数的源代码了。

 这是上图函数的下一层,同时我们看到他被保存在“imgcodecs.hpp”中。

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第21张图片

 再下一层,我们找到了imread的具体实现函数,他在loadsave.cpp中。同时,我们还看到了imread所调用的底层子函数也是核心函数imread_()。

用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第22张图片

 继续跟进到“imread_()”函数中,我们就能看到opencv的imread函数究竟是如何实现的了。用Cmake build OpenCV后,在VS中查看OpenCV源码的方法(环境VS2022+openCV4.8.0) Part II_第23张图片

 

        小结:opencv作为Intel公司的开源代码,编码风格非常专业,而且里面实现的底层算法也非常的易读,同时还配有opencv的官方说明文档,是学习用C语言实现的各种图像算法的绝佳资料。无奈,鄙人最近才开始接触,之前一直成迷于matlab,感觉错过了一个世纪。

        问了周围的一些同事,有些人在上大学的时候就已经开始学习opencv了。。。哎。后面的文章我接着介绍如在自己的库中调用OpenCV的库,并同样能够在debug的时候,查看opencv的底层代码。


  (全文完)

作者 --- 松下J27

参考文献(鸣谢):

        1,Download | CMake

        2,OpenCV - Open Computer Vision Library

 版权声明:文中的部分图片,文字或者其他素材,可能来自很多不同的网站和说明,在此没法一一列出,如有侵权,请告知,立即删除。欢迎大家转载,但是,如果有人引用或者COPY我的文章,必须在你的文章中注明你所使用的图片或者文字来自于我的文章,否则,侵权必究。 ----松下J27 

你可能感兴趣的:(Coding,opencv,计算机视觉,vs编辑器,VS2022,编译错误,cmake,visualstudio)