OpenCVを商用利用したいんですが、ライセンスってどうなんですか?
少しややこしいが、
OpenCVはBSDラインセンスに基づく、無償使用可だ。
✔️ 本記事のテーマ
OpenCVライブラリのライセンスについて
✔️ 読者さんへの前置きメッセージ
結論から述べると、
OpenCVライブラリのライセンスは以下のような取り扱いになっています。
OpenCVはBSDラインセンスに基づき、商用/非商用問わず、無償で使用する事が可能です。
すなわち、明示的にOpenCVの著作権表示および免責事項を原文表示し、その内容に従う必要があります。
本記事は「OpenCVのライセンス」について書いています。
この記事を読むことで
「OpenCVのライセンスの概要 や OpenCVを二次利用する際の注意点」
について理解できます。
OpenCVは無料で使えるOSSですが、
商用利用や二次利用、二次配布する際には注意が必要です。
本記事では、そんなOpenCVのライセンスとそのライセンスに準拠する方法を解説します。
それでは、解説していきましょう。
※ 注意点
本記事の執筆者は法律や著作権の専門家ではありません。
また、本記事の内容はOpenCVやその他一切の公式情報ではありません。
さらに、OpenCVやOSSでは一部アルコリズムやソフトウェアに特記事項として制約や条件が付与されている場合があります。
これらを留意した上で、本記事の内容は参考情報に留めておいて下さい。
OpenCVとは?
OpenCV (Open Source Computer Vision Library) は、
画像処理に関する機能をまとめたライブラリです。
OSS(オープンソースソフトウェア)として提供されているため、
無料で手軽に使うことができます。
主に、画像中から人の顔を検出したり、
カラー画像を白黒画像に変換する場面で使われています。
OpenCVライブラリの関数一覧と使い方については
「【python】OpenCVの関数一覧と使い方」の記事で解説しています。
今では「画像処理」を用いたPythonプログラミングでは
必ずと言っていいほど使用されるほどに、メジャーなライブラリです。
インストール自体も簡単なので、趣味や個人開発にもオススメです。
なお、OpenCVのインストールについては
「【python】OpenCVのインストール方法」の記事で解説しています。
OSにもよりますが、
3ステップほどでサクッとインストールすることができます。
OpenCVのライセンスは?
まず、原則としてOpenCVは商用/非商用に関わらず、無償で使用することができます。
ただし、OpenCVはBSDライセンスを採用しています。
そのため、著作権およびライセンス条文の表示を再配布の条件としています。
公式のOpenCVライセンス文書はこちらから参照することができます。
→ https://github.com/opencv/opencv/blob/master/LICENSE
つまり、OpenCVライブラリを製品に組み込む、パッケージに同梱する、ビルド版として配布する…
など様々なケースにおいてOpenCVライブラリを二次利用(二次配布)する際にはライセンス文書の配布が必要となります。
なお、このライセンス文書ですが、原文のまま明示する必要があります。
OpenCVライセンスは英語で書かれているので、英語原文のまま明示する必要があります。
また、当然ですが、上記に加えてOpenCVライセンス文書の内容に従う必要もあります。
なお、BSDライセンスなので、
OpenCVライブラリが定めた特記事項がない限りは、ソースコードを公開する必要ありません。
OpenCVが基づくBSDライセンスとは?
では、OpenCVが採用しているBSDライセンスとは一体何なのでしょうか?
「無保証」であることの明記と著作権およびライセンス条文自身の表示を再頒布の条件とするライセンス規定である。この条件さえ満たせば、BSDライセンスのソースコードを複製・改変して作成したオブジェクトコードを、ソースコードを公開せずに頒布できる。
Wikipediaから引用するとこのようになります。
少しややこしいのでざっくり要点だけ整理すると以下の3点です。
- 自己責任で使うこと
- 著作権の表示は消さないこと(明示すること)
- 複製・改変・再配布・販売等は自由にして良い
つまり、「使用した結果に責任は持たないが、著作権表示を消さない限りは自由に使って良い」というライセンスですね。
ちなみに、BSDライセンスは歴史とともに変化しています。
(ここが最高にややこしいのですが…)
初期のBSDライセンスでは上記に加えて、初期開発者を明示することという条件がありました。
つまり、OpenCVの場合、開発元であるOpenCV Foundationを示す必要がありました。
ただし、その後、様々な経緯があり、
この条件が撤廃され現在のBSDライセンスではその必要がなくなりました。
その際に、初期ライセンスの定義は残して、
- 初期のBSD:オリジナルBSDライセンス
- 変更後のBSD:修正BSDライセンス
と表現するようになりました。
現在では、多くのBSDライセンスが修正BSDライセンスとなっていますが、
ものによっては初期BSDライセンスとなっていることがあるので注意しましょう。
※ なお、この観点については、法及び概念の解釈や言語解釈によって揺れが発生します。
※ 本記事では、なるべく一般的な箇所について、一般的なケースを想定して述べています。
OpenCVを個人利用する場合にライセンス周りで必要なこと
では、OpenCVを個人利用(趣味など)する場合、何がをする必要があるのでしょうか?
基本的には何の作業も必要ないです。
OpenCVは無償で使えるOSSなので、料金が発生することもないはずです。
さらに公開しないのであれば、
著作権について云々といった話もあまり気にする必要はないでしょう。
OpenCVを二次利用する場合にライセンス周りで必要なこと
問題はここからです。
先ほど述べたようにOpenCVはBSDライセンスに基づいているので、もしOpenCVを二次利用(二次配布)するのであれば、OpenCVのライセンスを明示する必要があります。
例えば、OpenCVを利用しているソフトウェアをOSSとして公開するのであれば、そのOSSの著作権表示に加えて、OpenCVのライセンスもパッケージに含める必要があるということです。
その際に、引用元のライセンスは原文(この場合であれば英語)で表示しましょう。
OpenCVを商用利用する場合にライセンス周りで必要なこと
次に、商用目的のソフトウェア、プロダクトでOpenCVをしようしている場合についてです。
こちらも二次利用する場合と同様です。
自身のプロダクトの中で、OpenCVのライセンスを明示する必要があります。
また、商用利用する場合に、大きな論点となるのがソースコードの公開義務の有無でしょう。
一般に公開されているソフトウェアの中には、そのソフトウェア(ライブラリ)を使用する場合、
組み込み元(この場合、自身のパッケージ)のソースコードの公開を義務付けるものもあります。
先に述べておくと、OpenCVはBSDライセンスなので、この公開義務はありません。
商用利用する場合、この公開義務はかなりの足枷になります。
ソースコードを公開することで、競合にコードを「パクられる」リスクが跳ね上がりますからね。
商用目的のソフトウェアを作る際は、使用するライブラリに気をつけましょう。
OpenCVやPythonについてもっとスキルをつけるなら
OpenCVのライセンスについて解説しました。
ライセンス周りのややこしさがあるとはいえ、
OpenCVは画像処理には欠かすことのできないライブラリです。
もし、OpenCVについて独学でスキルをつけるなら、以下の書籍がオススメです。
この書籍はOpenCVの基礎から応用までを
丁寧にかつ詳細に解説しています。
OpenCVのほぼ全てを網羅しているとも言えるほどの徹底ぶりなので、
関数のリファレンスとしても使用することができます。
エンジニアとしての自身の価値をチェックする(完全無料)
エンジニアとして、
自分の価値がどれくらいのものかご存知でしょうか?
エンジニアとしてIT業界に身を置いていると
今の会社でずっと働くのか、フリーランスとして独立するのか …
と様々な選択肢があります。
どの選択肢が正解なのかを見極めるためにも、選択肢を広げるためにも
自身の価値を知っておくことはとても重要です。
TechClips ME では、
職務経歴書をアップロードするだけで企業からのスカウトを受けることができます。
▼▼▼▼▼
▲▲▲▲▲
しかもTechClips MEでは想定年収を企業から提示してくれるので、
自身の価値を数字で分かりやすくたしかめることができます。
登録はもちろん完全無料なので、一度登録してみると良いかもしれません。
コメント