計算機視覺庫 OpenCV 2020 年技術委員會的會議記錄顯示,其中一項議程提到計劃將其開源許可協議從 BSD 變更為 Apache 2.0。
OpenCV 開發團隊目前正在討論變更開源許可協議的詳細問題,預計在6月29日進行第一次評估。
BSD 許可協議比較寬鬆,對於採用 BSD 的開源專案,開發者使可以自由使用、修改原始碼,也可以將修改後的程式碼作為開源或者專有軟體再發布,不過需要保留當前許可內容。根據維基百科的介紹,BSD 不像 GPL 那樣具有“傳染性”。
然而 BSD 許可協議在某些情況下(例如涉及到專利)卻無法保護使用者。引用OpenCV團隊舉的一個例子來進行說明:
某名為“發明”的公司為某演算法申請了專利,並發表了論文。因演算法效果優秀,某CV愛好者依論文編寫了程式碼,並以BSD協議將程式碼提交到OpenCV。這個過程中沒人知道演算法已申請專利,隱患便被埋下。
另一名為“發財”的公司將OpenCV中的這個演算法應用到其產品中。依照現有BSD協議,此公司可以商業銷售產品,只需註明產品使用了OpenCV,而無需對使用者開源。
“發明”發現“發財”使用了其專利技術,遂起訴“發財”要求賠償和停止侵權,並順帶起訴或要求開源社群停止侵權。一旦發生這樣的案例,“發財”肯定要破財。開源軟體聲譽也會受到負面影響。
OpenCV團隊表示這樣的案例在其他開源社群中發生過,但沒在 OpenCV 社群發生過,因為 OpenCV 不接收有專利的演算法。對於每個提交的新演算法,社群會確認是否有專利。若有,只能拒絕接收。
以上做法雖然保障了安全性,但也讓一些優秀演算法無法進入 OpenCV。
與 BSD 相比,Apache 2.0 是一個更規範和更詳細的開源許可協議,其第三條“Grant of Patent License”明確規定了專利所有人透過程式碼向使用者進行“永久性的、全球性的、非排他性的、免費的、免版稅的、不可撤銷的”授權。也就是說,專利所有人同意永久授權,不可再起訴使用者侵權。
參考:重大變動:OpenCV擬更改授權協議 作者:OpenCV團隊
[admin
]