Anaconda上为何存在多版本OpenCV包?应选择哪款安装?
Anaconda中OpenCV包的版本选择问题
一、Anaconda官网为啥有不同的OpenCV包?该选哪个?
Anaconda里的OpenCV包主要分几种,各自定位不一样:
opencv:是conda官方维护的版本,和conda环境里的其他包兼容性更好,适合需要和conda生态里的工具(比如numpy、pandas)深度配合的场景opencv-python:本质是PyPI上的官方OpenCV包同步到conda仓库的版本,和你用pip install opencv-python装的是同一个东西,适合习惯用这个版本但想在conda环境里安装的人opencv-contrib-python:包含了OpenCV的扩展模块(像SIFT、SURF这类带专利的算法,基础版里没有),如果你的项目要用到这些特殊功能,直接选这个就行
选的时候看需求:
- 普通图像处理、学习练手,选
opencv或者opencv-python都可以,优先挑和你conda环境Python版本匹配的最新稳定版 - 要用到扩展算法模块,直接冲
opencv-contrib-python
二、OpenCV为啥有不同版本?该选哪个?
OpenCV的版本迭代主要是为了修bug、加新功能、优化性能,主要分两类:
- 稳定版:比如4.5.x、4.8.x这类,经过充分测试,bug少,稳定性拉满,不管是学习还是生产环境都能用
- 开发版:比如带
-dev后缀的版本,里面有最新的功能,但可能存在未修复的bug,一般只有尝新或者参与OpenCV开发的人才会用
选择建议:
- 学习、日常项目、生产环境:优先选最新的稳定版,兼容性和稳定性都有保障
- 如果你的老代码依赖某个旧版本的特定功能,或者要兼容老项目,就选对应的旧稳定版
- 没特殊需求别碰开发版,不然遇到bug麻烦

内容的提问来源于stack exchange,提问作者VK_1
相关产品推荐
相关产品推荐

