计算机视觉库 OpenCV 即将迎来 20 周年,其重要版本 OpenCV 5 也发布在即。OpenCV 官方宣布,随着此版本的推行,OpenCV 的开源许可协议将从 3-clause BSD 变更为 Apache 2。 自项目发布之初,OpenCV 就一直使用较为宽松的 BSD 协议。然而,BSD 协议已很难满足快速发展的计算机视觉领域,尤其因为该协议不涉及专利,而使用该协议的代码很有可能包含一些专利算法的实现。根据 OpenCV 的介绍,“从传统的视觉算法到深度学习拓扑网络以及两者的混合,越来越多的算法申请了专利”。但在 BSD 条款下,专利用户的权利难以得到保障。 此前的报道有提到过,为了避免这个问题,OpenCV 选择不接收有专利的算法。这样做虽然保障了安全性,但也让一些优秀算法无法进入 OpenCV。 经过考量,OpenCV 团队发现 Apache 2 是最为有效的解决方案。因为 “Apache 2 比 BSD 协议更新,提供了与 BSD 许可相同的免费使用特性,还包含有关专利的使用条款”。关于专利,Apache 2 中有两项条款做了大致说明:
OpenCV 表示,虽然这种专利保护不是绝对的,但 Apache 2 在这方面目前是最先进的,因此决定进行协议变更。 迁移将从 OpenCV 4.4 开始,考虑到原有许可和原有版权,该版本会在同一个仓库中复制分支。仍旧需要使用 BSD 许可证的用户,可以继续使用 OpenCV 2.x、OpenCV 3.x 和 OpenCV 4.x,以及最新的 OpenCV 4.4。 从 OpenCV pre-5.0(将在新创建的分支中开发)和 OpenCV pre-4.5(“master”分支)开始,许可证将正式更改为 Apache 2。所有新功能的贡献者都必须同意将他们的代码在 Apache 2 许可证下授权。 此次协议变更,对于 OpenCV 用户来说,并无太大变化,主要是需要增加针对专利诉讼的保护措施。Apache 2 许可下的 OpenCV 仍然可以自由地用于商业和非商业项目。 参考:OpenCV 开源协议将变更为 Apache 2 作者:OpenCV 团队 |