PyECVL uses the binder tool to generate pybind11 bindings. The resulting files are committed to the repository, and can be regenerated with:
bash generate_bindings.sh
Note that the above script uses the ecvl Docker image to get the opencv
includes needed for bindings generation. Therefore, if you don't have it,
build the ecvl image before running generate_bindings
:
docker build -t ecvl-cpu -t ecvl -f Dockerfile.ecvl-cpu .
Regenerating the bindings can be necessary after updating the reference ECVL
revision or after making changes to the code generation setup (configuration
and include list). Note that add-ons are often necessary to complete the
bindings (see codegen/config.cfg
).
To test the bindings on Docker, build the PyECVL image with:
docker build -t pyecvl-cpu -t pyecvl -f Dockerfile.cpu .
Then you can run tests and/or examples on Docker, e.g.:
docker run --rm -it pyecvl bash
pytest tests