Ask Your Question

Commercial Use and Licensing

asked 2017-07-25 01:09:21 -0600

way1000 gravatar image

Hello everyone, and sorry in advance, if this particular question was already asked (please note me to the question, I could not find a sufficient answer):

Currently I am developing a CV Algorithm, that utilizes OpenCV. This algorithm will be implemented in C++ and should later be used in Android. My goal to compile OpenCV3.2.0 with NDK and use the libraries in my own Native Android Class is already achieved. Now we want to use this in a commercial application and therefore I studied the questions, but I am still insecure about some licenses.

First of: Some third party libraries included in /opencvroot/3rdparty/ have a notice, that they use GNU 2.1, so a different license than OpenCV. Namely: ffmpeg and dshow.

1) What about those third party libraries. Is there a way to exclude these from my compilation of OpenCV and would this be sufficient. (Are there any important dependencies?) Or are they somewhat different licensed in the OpenCV package? I know, that I would not use ffmpeg on Android, but still asking, because they seem to be included in the binaries?

2) For ippicv and traincascade I was not able to find any copyright notice. What about those 3rd party libraries?

3) I excluded the doc, data, apps and samples folder, because on first look, I did not see any dependencies and I did not want to extract all license files from these folders. Would it be sufficient for commercial use, if I excluded them?

4)In the following question: it is stated, that the SIFT and SURF features are not free of use (I am aware of that). Are they hardcoded in OpenCV? Would it be sufficient if I did not use them, or do they have to be excluded from the binaries we are providing in our application?

If there are any questions, that I may have overseen and that answer any of my questions, I would be happy, if you give me a notice.

Thank you in advance for you answers and the time you take to.

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted

answered 2017-07-25 12:01:06 -0600

OpenCV needs a number of 3rd party libraries to work. For example, opencv_highgui works on top of GTK, which in turn runs on top of glib (among many others), and so on. I'm far from knowing all dependencies, but the good thing is that, to my knowledge, other then SURF and SIFT (as you mentioned) there are no constraints in using all of opencv stuff commercially, and there is no need for licensing anything.

All, other then SURF and SIFT is open and free to use.

edit flag offensive delete link more



Actually this is not completely true. If you have ffmpeg backend and you ship it with your app and opencv, then that is not allowed by 3rd party license. So before including any 3rd party software, you need to be sure that it is allowing it in its license, else you need to built opencv without that

StevenPuttemans gravatar imageStevenPuttemans ( 2017-07-27 03:41:48 -0600 )edit

Thanks for the clarificatin Steven. Didn't know that

Pedro Batista gravatar imagePedro Batista ( 2017-07-27 04:22:24 -0600 )edit

I thank you very much for you reply and the time you took, to view my question. So it means, that for the 3rd party software I have to make sure, that the license allows commercial use in style of OpenCV license and if it does not the secure way is to exclude it from compilation if not used? Edit: Sorry for my late reply, I have my examns incoming and was a little busy =). But your answers are all appreciated and viewed by me =)

way1000 gravatar imageway1000 ( 2017-08-01 01:10:11 -0600 )edit

Another question that arises: When I am using a library (like OpenCV) that is under BSD license and is seemingly to be okay to use in commercial apps, what is the case for libraries that are included by the lib I am using. For example: OpenCV has BSD, but in 3rd party there is ffmpeg and dshow, which are both licensed under GNU 2.1.

My first thought was, that I have to respect the license of GNU 2.1 since even though OpenCV is under BSD, the license of the other libs still holds.

And another thing: I found that states, that ippicv can be used free in opencv. even commercially. Is there any hint to a license file where I can verify this statement? It seems, that this page does not provide a sufficient license for ippicv

way1000 gravatar imageway1000 ( 2017-08-01 03:00:21 -0600 )edit

Basically you have to either buy a license for ffmpeg if you want to use it OR remove ffmpeg from OpenCV, which is a compilation flag and use a free to use video backend. Ippicv is a free limited part of ippicv primitives given by Intel. It is not explicitly in a license header, but it was announced by Intel themselves a year ago.

StevenPuttemans gravatar imageStevenPuttemans ( 2017-08-01 04:09:28 -0600 )edit

Thank you very much, can you hint me to the announcement?

way1000 gravatar imageway1000 ( 2017-08-01 04:12:02 -0600 )edit

Question Tools

1 follower


Asked: 2017-07-25 01:09:21 -0600

Seen: 7,061 times

Last updated: Jul 25 '17