为什么在OpenCV 3.x中有一个opencv2文件夹?

man*_*ver 2 opencv

这是否只是为了向后兼容,对于已经使用OpenCV 2进行了多年开发,然后又想使用OpenCV 3而不需要重写所有旧代码的人?还是这与OpenCV 3的创建者选择的基本设计决策有关?例如,当我查找OpenCV 3的未读示例时,它们具有#include "opencv2/imgproc.hpp"。这仅仅是您在OpenCV 3中引用某些文件/功能的方式,还是因为许多人都喜欢旧的语法/样式(而不是各种操作)而有很多人不使用的“ OpenCV 3方式”?

w-m*_*w-m 5

包含路径中的版本号是指API版本。基于C的OpenCV是API v1,基于C ++的OpenCV是API v2。

库版本现在为3.x,但它们仍使用相同的基于C ++的API。因此,OpenCV构建仍将其头文件保存在opencv2文件夹中。