win10+opencv4.0+CMake3.11.1+opencv_contrib-4.0.0+cuda9.0+vs2015+TBB配置/重编译

继2015年的opencv3.0出来后,3.5年时候后opencv 4.0出现了。

那么opencv4.0做了些什么新的功能呢?

  • OpenCV现在是C ++ 11库,需要符合C ++ 11标准的编译器。所需的最低CMake版本已提升至3.5.1。
  • 很多来自OpenCV 1.x的C API已被删除。
  • 核心模块中的持久性(在XML,YAML或JSON中存储和加载结构化数据)已在C ++中完全重新实现,并且也丢失了C API。
  • 添加了新的模块G-API,它可以作为非常有效的基于图形的图像处理流水线的引擎,这个就是类型用tensoflow的方式去布局网络。
  • dnn模块现在包括实验性Vulkan后端,并支持ONNX格式的网络,它支持各种分类网络,如AlexNet,Inception v2,Resnet,VGG等。还支持微小的YOLO v2对象检测网络。性能更加好,加了mask-rcnn这些咯。使用英特尔推理引擎(英特尔OpenVINO的一部分)时更快的对象检测。
  • 流行的Kinect Fusion算法已针对CPU和GPU(OpenCL)实施和优化。
  • QR码检测器和解码器已添加到objdetect模块中(二维码的识别)
  • 非常高效且高质量的DIS密集光流算法已从opencv_contrib转移到视频模块。
  • 更多细节可以在之前的宣布中找到:4.0-alpha,4.0-beta,4.0-rc和更新日志

需要注意:

  1. 需要TBB,没有的话会错,这是我的尝试过的。
  2. 认真看下博客就可完成安装。
  3. cuda9.0是为了加速,但是DNN模块不支持cuda编程,就算可以也需要用到一个插件且只支持inter的GPU。尴尬吧!
  4. 用的不好,会觉得GPU比CPU还慢,只是部分计算GPU快,很多时候需要把结果从GPU传回CPU计算,其实快不了什么,而且是比较对cuda编程很熟悉的工程师才能驾驭的,如果工作需要你可以尝试,否则我觉得这个坑还是不要跳了,选择传统方法去做分割、识别、检测好啦。

本篇做整理用:

可参考:

WIN10 + OpenCV3.4 + CUDA8.0 + Cmake3.9.0 + TBB + VS2015配置/重编译

https://blog.csdn.net/gggttt222/article/details/79482033

cmake编译opencv3:opencv3.3.1+contrib+cuda8.0+vs2013(2015)+cmake3.10.1

https://blog.csdn.net/luqiang6q/article/details/78887670

CMake3.11.1+Opencv3.4.0+opencv_contrib3.4+VS2015(vc14)+Win10配置成功https://blog.csdn.net/qq_37791134/article/details/80739395

你可能感兴趣的:(环境配置)