《Opencv 入门教程》

来源:互联网 发布:网络经常被攻击 编辑:程序博客网 时间:2024/06/05 22:55

很多初学者希望快速掌握opencv,但是会遇到很多困难,总结起来有两种:

1c/c++编程基础不过关。提升编程能力,多练习编程。

2)不了解算法原理。提升理论知识。系统学习《数字图像处理》《计算机视觉》《模式识别》等

opencv是一个计算机视觉库。

1.1 编程的流程

一个编程的基本流程:编辑,编译,连接。

编辑即:编写代码。

编译:将某种语言写成的源代码转换成目标文件(包含着可以直接被计算机中央处理器执行的机器代码以及代码在运行时使用的数据)  生成.obj

编译器是实现这一目的的软件。

连接:将多个目标文件,以及库文件生成可执行的文件(或静态库、或动态库)的过程

链接器是实现这一目的的软件。  生成.exe

所以,综上,一个编程的流程是:编辑->编译->连接->运行

这四步,如果只有一个源代码文件还是可以的,但是如果有几十个甚至几百个源文件,如没有其他关键辅助,非常难。

则需要集成开发环境(IDE)。常用的有VSVCEclipse等,所以我们平时所说的VC,其实并不是编程语言或者编译器,只是一个IDE

头文件。库文件。

头文件:在编程过程中,程序代码会被拆成很多部分,每部分在一个独立的源文件中,而不是所有的都在一个源文件中。但是在编译阶段,由于编译是对单个文件进行,所以,编译器不知道主函数调用的某个不在主文件里的函数是否正确,所以,需要头文件辅助。

库函数:当我们需要将某个函数提供给客户,但是不希望客户看到算法源代码的时候,就将其编译成库文件,库文件是二进制,在库文件中是看不到原始的源代码的。

库和可执行文件的区别是:库不是独立程序,他们是向其他程序提供服务的代码。

使用库文件的好处:对源代码进行保密。减少重复编译的时间,增强程序的模块化。

将库文件连接到程序中,方式两种,一:静态链接库,二:动态链接库

Opencv:

Opencv其实是一堆cc++语言的源代码文件,这些源代码文件实现了很多常见的计算机视觉算法。

因为opencv中源代码巨多,根据算法的功能将这些源文件分到多个模块中:core,imgproc,highgui等,将每个模块中的源文件变异成一个库文件(.lib),所以

0 0
原创粉丝点击