OpenCV其实就是一对C和C++语言的源代码文件,这些源代码文件中实现了许多常用的计算机视觉算法。例如C借口函数cvCanny()实现了Canny边缘提取算法。可以直接将这些源代码添加到我们自己的项目当中,而不需要自己去手动实现cvCanny算法。
由于OpenCV中源代码巨多,根据算法的功能,将这些源代码分到多个模块当中:core,imgproc,highgui等。将每个模块中的源代码编译成一个库文件。用户在使用的过程中只需要将库文件添加到自己的代码当中即可。
OpenCV采用BSD协议,这是一个非常宽松的协议。简言之,用户可以修改OpenCV的源代码可以将OpenCV嵌入到自己的软件中,可以包含将OpenCV的软件发售,可以用作商业产品,也可以用做科研领域,但是OpenCV不具有传染性,也就是说,如果你的软件用了OpenCV你也不用将你的源代码开放。协议的唯一要求就是在软件的文档说明中著名使用了OpenCV,并且附上OpenCV的协议