* - Use staged container builds to improve caching and reduce size
- Image size reduced from 8 GB to 1.6ish
- Switched from Make to Ninja for faster builds that do not hog processor
- Removed unneded dependencies
- Added to .dockerignore
- Readme for docker stuff
- Staged Builds
- Docker's overlay FS means that `rm`ing files does not reduce size
- Once build artifacts are build, the build dependencies are no longer needed
- Both of these can be solved by building in a temporary image and copying
only the needed libraries in
- Leverages DESTDIR to generate a directory structure that can be just
copied onto the `/` of the filesystem
- Similarly, the data files (like models) can be downloaded ahead of time
into their own image and copied in. This saves on network IO.
- Anything in a RUN directive that is non-deterministic (e.g. downloading
a file from a link, the content of that link changes) does not cause a cache
miss, so if you need to update something RUN uses, either modify the
dockerfile or build with `--no-cache` to force a rebuild
- Switch to Ninja
- cmake can generate many types of build systems
- Ninja builds faster than GNU Make
- `make -j` has a tendency to lock up my system when building locally
- Do not need to tell ninja how many jobs to run
- .dockerignore
- Paths in .dockerignore are basically invisible to dockerd, so when dockerd
zips up the build context, all of the cruft can be ignored
- it is beneficial to docker build speed to add any large, unnecssary files
and directories to .dockerignore.
- Just remember they cannot be seen by dockerd
* removing cruft and some format fixes
* updated dockerfile to opencv 4.1.0
* Travis OpenCV4 update, testing Ubuntu with new OpenCV
* Fix to Ubuntu travis
* Another attempt at OpenCV 4.0 for Ubuntu
* And another OpenCV attempt.
* Simplifying the travis script
* Ubuntu OpenCV 4 support.
* Updating to OpenCV 4, for x64 windows.
* Fixes to move to OpenCV 4 on windows.
* Travis fix for OpenCV 4 on OSX
* Renaming a lib.
* Travis opencv4 fix.
* Building OpenCV4 versions using appveyor.
* Attempt mac travis fix.
* Small travis fix.
* Travis fix attempt.
* First iteration in boost removal and upgrade to C++17
* Test with ocv 4.0
* Moving filesystem out of stdafx
* Some more boost testing with cmake.
* More CMAKE options
* More compiler flag changes
* Another attempt at compiler options.
* Another attempt.
* More filesystem stuff.
* Linking to filesystem.
* Cmake fix with target linking.
* Attempting travis with g++-8
* Attempting to setup g++8 on travis linux.
* Another travis change.
* Adding OpenBLAS to travis and removing g++-8
* Fixing typo
* More travis experiments.
* More travis debugging.
* A small directory change.
* Adding some more travis changes.
* travis typo fix.
* Some reordering of travis, for cleaner yml
* Removing `using namespace std` in order to avoid clash with byte and to make the code more consistent.
* Working towards removing std::filesystem requirement, allow boost::filesystem as well.
* Making boost an optional dependency
* Fixing std issue.
* Fixing cmake issue.
* Fixing the precompiled header issue.
* Another cmake boost fix.
* Including missing files.
* Removing unnecessary includes.
* Removing more includes.
* Changes to appveyor build, proper removal of VS2015
* If boost is present, do not need to link to filesystem.
* Removing un-needed link library.
* oops
* Mac attempt at opencv4 travis.
* Upgrading OCV to 4.1 on VS2018
* Downloading OpenCV binaries through a script
* Triger an appveyor build.
* Upgrading VS version.
* Attempting VS2017 build
* Adding win-32 libraries for OpenCV 4.1
* Adding OpenCV 32 bit libraries.
* Removing code duplication and getting rid of some C++ warnings due to float/double and signed/unsigned mixing.
* Fixing the screenshot functionality.
* Feature/code cleanup (#573)
* Header guard cleanup (making sure naming is compliant with C++ standards and consistent).
* Removing un-needed nullptr checks.
* Removing SSE warnings for x64 builds (as SSE is enabled by default no need for a flag)
* Reverting Mat deletion
* Adding Visual Studio 2017 solution
* Feature/code cleanup (#580)
- name of revision
- better scripts for model download (not only in Dropbox also OneDrive)
* Update the OpenCV constants to the corresponding ones in cpp namespace. (#578)
Updating OpenCV macros.
* Slight change in packaging code (use a shared download script).
* Removing TBB dependency (#590)
Removing a TBB dependence for code parallelization (done through OpenCV's parralel_for_
* Updating OpenBLAS (#594)
Updating the 64 bit OpenBLAS version for Windows to 0.3.3 (50% perf improvement on certain machines)
* Ability to specify output image formats and removing unused quiet parameter.
* Update Windows download script (#608) (#610)
- Automatically choose correct path to the model files so that it works for both, source code compilation and binary use
- Use absolute paths in the system exists methods
* Updating version.
* Packaging code update.
- Automatically choose correct path to the model files so that it works for both, source code compilation and binary use
- Use absolute paths in the system exists methods
* Header guard cleanup (making sure naming is compliant with C++ standards and consistent).
* Removing un-needed nullptr checks.
* Removing SSE warnings for x64 builds (as SSE is enabled by default no need for a flag)
* Reverting Mat deletion