A pipeline of an ensemble of heterogeneous CNN models.
- Install Nvidia GPU driver etc, make sure
nvidia-smiis working properly.
- Install miniconda, then
pytorch(need to refer to its official site for guideline),scikit-learn,pandasandmatplotlibshould be enough.
- The inference daemon is developed in C++ to (hopefully) improve real-time performance
- Basically all the dependencies can be handled by vcpkg, except perhaps: cuda, OpenCV, FFmpeg and libtorch
-
Ubuntu 22.04 provides package
libtorch-devbut seems it doesn't work.- vcpkg also provides libtorch repo, but seems it doesnt work either.
-
We need to manually download the corresponding zip file from here then unzip it.
libtorchis just a bunch of .so and .h files, to make libtorch available to all users, including non-root users, and prevent system-level pollution, one may consider copying the ./libtorch to a new /apps/libtorch directory, if /apps is the directory that multiple users use to run apps- To make cmake aware of this location, set "-DCMAKE_PREFIX_PATH="/apps/libtorch/share/cmake/""
-
OpenCV(andFFmpegas its Video IO backend) is used to decode/manipulate images before sending to them tolibtorch, -
Refer to instructions here