OpenCV open source protocol will be changed from BSD to Apache 2

The computer vision library OpenCV is about to usher in the 20th anniversary, and its important version OpenCV 5 will be released soon. OpenCV officially announced that with the implementation of this version, OpenCV’s open source license agreement will be changed from 3-clause BSD to Apache 2.

Since the beginning of the project, OpenCV has been using the looser BSD protocol. However, the BSD protocol has been difficult to meet the rapidly developing field of computer vision, especially because the protocol does not involve patents, and the code that uses the protocol is likely to contain the implementation of some proprietary algorithms. According to the introduction of OpenCV, “From traditional vision algorithms to deep learning topology networks and a mixture of the two, more and more algorithms have applied for patents.” However, under the terms of BSD, the rights of patent users are difficult to be guaranteed.

As mentioned in previous reports , in order to avoid this problem, OpenCV chose not to accept the patented algorithm. Although this ensures security, it also prevents some excellent algorithms from entering OpenCV.

After consideration, the OpenCV team found that Apache 2 was the most effective solution. Because “Apache 2 is newer than the BSD agreement and provides the same free-use features as the BSD license, and also contains terms of use for patents.” Regarding patents, there are two provisions in Apache 2 that provide a general description:

  1. If an individual or entity provides code under the Apache 2 agreement, the user cannot be sued for violating the entity’s patent in the code or a patent in a work derived from the code because the contained patent is granted an implicit license .
  2. If an individual or entity (A) decides to sue someone or an entity (B) and the indicted (B) creates a work derived from the code in (1) covered by (A)’s patent, then (A ) Will lose all their Apache 2 patent litigation protection, which may expose them to other legal attacks.

OpenCV said that although this kind of patent protection is not absolute, Apache 2 is currently the most advanced in this regard, so it decided to change the agreement.

The migration will start from OpenCV 4.4, taking into account the original license and original copyright, this version will copy the branch in the same warehouse. Users who still need to use the BSD license can continue to use OpenCV 2.x, OpenCV 3.x and OpenCV 4.x, and the latest OpenCV 4.4.

Starting with OpenCV pre-5.0 (to be developed in the newly created branch) and OpenCV pre-4.5 (“master” branch), the license will be officially changed to Apache 2. All new feature contributors must agree to license their code under the Apache 2 license.

This change of agreement has not changed much for OpenCV users, mainly because of the need to increase protection measures against patent litigation. OpenCV under the Apache 2 license can still be used freely for commercial and non-commercial projects.

Reference: OpenCV open source license will change to Apache 2 Author: OpenCV team

Click to rate this post!
[Total: 45 Average: 4.9]

Leave a Comment