1

I'm working on license plate recognition software. I have found following project: https://github.com/openalpr/openalpr The project itself is under AGPL-3.0

Part of this project is trained data for Tesseract OCR engine. I would like to use their trained data for my own application. But I'm not sure what are the conditions of using it?

I have read through the AGPL-3.0 and to me it seems that using the binary data, without modifying it means, there is no restrictions on the use of the data. The AGPL talks about source code, and object code form, but the trained model is neither.

I don't have any problem with admitting I used the data and providing the AGPL-3.0 license along with it. What I cannot do, is to provide source code of my own application.

2
  • 1
    Would you say that your program reads the model as input data? Or does the model contain executable code or is imported as an executable module by your code?
    – apsillers
    Sep 25, 2017 at 14:43
  • 1
    My program reads the model as input data, the trained model is not executable.
    – jnovacho
    Sep 26, 2017 at 8:23

1 Answer 1

1

The GPL FAQ is clear in several places that when a program reads and acts on GPL-licensed input, it does not create GPL obligations for the program reading the input. Most notably:

If a programming language interpreter has a license that is incompatible with the GPL, can I run GPL-covered programs on it? (#InterpreterIncompat).

When the interpreter just interprets a language, the answer is yes. The interpreted program, to the interpreter, is just data; the GPL doesn't restrict what tools you process the program with. [...]

While a trained model and an interpreted program are different things, this seems like a case where the model is similarly "just data," so (A)GPL copyleft does not extend to an processing program merely because it reads (A)GPL-licensed data as part of its operation.

However, if you use any AGPL-licensed executable code that links or combines with your code in a way that creates a derivative work, then your code will have to be distributed (or served over a network) in compliance with the AGPL. See the full FAQ item for more information

2
  • 1
    The first sentence is reversed. The FAQ entry is about GPL-licensed programs reading and acting on input
    – user253751
    Jul 3, 2020 at 16:17
  • 1
    @user253751 You are absolutely right; I quoted the wrong "just data" FAQ item that approaches the opposite question. I have edited to quote the correct, relevant FAQ item (which also deals with "just data" relationships).
    – apsillers
    Jul 3, 2020 at 16:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.