* Adding the crop function implementation
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Remove debugging symbols
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Add another two sheeps photos
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Adding tests for cropping the images
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Adding documentation of CropResize
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Improve the imeplementation according to what is mentioned
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Adding images to make it easier to understand
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Update src/mlpack/core/data/image_resize_crop.hpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update doc/user/load_save.md
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/core/data/image_resize_crop.hpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/core/data/image_resize_crop.hpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/core/data/image_resize_crop.hpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Fix Ryan proposal
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix the docs
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Remove the test regarding checking of the dimension are identical
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Add a pixel-level sanity check test.
* Update documentation; slight wording cleanup, add a clear example.
* Add a test for the case where we upscale.
* Use different filenames.
* Prevent resize if the user did not ask for it
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Remove unused variables.
* Change && to ||
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix style, and function name
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix the other style issues
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Add a note to HISTORY.md.
---------
Signed-off-by: Omar Shrit <omar@avontech.fr>
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Add a first attempt at explicitly using Jenkinsfiles.
* A first attempt...
* Put code in a script block.
* Add first attempt at link check job pipeline.
* Hopefully correct shell block.
* Install git.
* Install packages as root.
* Use custom image that already has dependencies installed.
* Try processing the JUnit results.
* Fix syntax (hopefully).
* Try to get the build to set its status on Github.
* Try and see if I can get the snippet build to run too.
* A first attempt at reviving the static code analysis build.
* Refactor style check job a bit.
* Try to clean up other files and have them set statuses.
* Set status in script blocks.
* Fix directory (this may not fix my problem).
* Should I load in the script step?
* Maybe I can just load it without a name.
* Maybe I have my path wrong.
* Will this work? Just a test...
* Try using a plugin instead.
* And if I define the function manually at the top?
* Maybe this will fix the load.
* Try to turn unstable into failed.
* Hopefully fix documentation builds.
* Fix script blocks.
* Maybe fix static code analysis job.
* Try to adapt PR number variable.
* First attempt at cross-compilation job.
* Try to fix some syntax.
* Clean workspaces after build.
* Try to put the matrix in the right place.
* Another attempt at the matrix configuration.
* Maybe I have to nest it deeper.
* Maybe I have to clean always?
* What we need is more tabbing.
* Use try/catch to handle failed junit processing.
* Better handling of environment variables.
* Try a differernt approach than try/catch.
* Try to get some more information about ccache.
* Is it possible we could store the ccache at a higher level?
* Maybe I have the variable name wrong.
* Clean the cross-compilation workspace.
* Try mounting the ccache so it can be shared across multiple jobs.
* Always pull images.
* We need to run on the same node.
* Run on only one core.
* Try building in the Docker container in a different way.
* Do I have the order backwards?
* Can I run anything at all in the container?
* The static code analysis job isn't helpful.
* Try to set the user of the docker container.
* Rebuild the Docker container instead.
* Always pull an updated image.
* Download any necessary dependencies too.
* Oops, use the correct CMake options.
* Fix line break in the wrong place.
* Make sure to use the correct architecture.
* We can't use MATCHES, that is a regex.
* Oops, we need to use STREQUAL.
* Bump to an older version since newer versions don't have gfortran.
* Try to run the tests on the target.
* Correct syntax.
* Okay, I'm not allowed to generate a stage name.
* Try cleaning the workspace at the start of the build.
* Okay, so I just can't depend on the workspace cleaning job, wonderful.
* Try and add the passphrase correctly.
* Fix path for memory checks.
* Fix path to test.
* Fix PR number variable.
* Try to fix path for test copying.
* Try to get the PR number correct.
* Try and centralize where the link cache is stored.
* Why is it being printed strangely?
* Is there some weird restriction where this all has to be on one line?
* Always publish the HTML, and fix a link.
* Try to fix SSH host key check.
* Make the reports directory.
* Try to fix file parsing.
* Try to enable ccache.
* Try to set ccache directory correctly.
* Try to get the full pipeline set up correctly for cross-compilation.
* Fix path to test data.
* Allow debug builds when cross-compiling.
* Remember to unpack all the test data!
* Fail tests when the data isn't there.
* Maybe I can use find instead.
* Double escape for backslash?
* What if we just run the test?
* Port Catch2 improvement for junit runner.
See https://github.com/catchorg/Catch2/commit/c29e198eab0ccdb190495397854b937677385e2e.
* Re-enable junit testing (hopefully it will work now).
* Output directly to the xml file.
* Try to clean up regex.
* Try to set IN PROGRESS status.
* Could it be called RUNNING?
* I guess I don't get access to set jobs in progress through this API.
* Fix regex for test name extraction.
* Try to clean up Jenkinsfiles.
* Fix parameter name.
* Maybe fix syntax?
* Does it work without keyword arguments?
* Correctly accept named parameters.
* Abort previous builds to reduce load on Jenkins.
* Use optimization when compiling.
* Fix syntax for abortPrevious.
* Fix missing closing brace...
* Update links in CI documentation and try to fix memory check job.
* Add Docker deployment page.
* Fix link.
* Fix missing link in pipeline.
* Apply suggestions from code review
Co-authored-by: Dirk Eddelbuettel <edd@debian.org>
* Try to get some more information on the build failure.
* Fix link that now redirects.
* Try to get some more information about why we are not linking against OpenBLAS.
* I think the variable name was wrong, we will see...
* Clean things up since the build should work now.
---------
Co-authored-by: Dirk Eddelbuettel <edd@debian.org>
* Add a first attempt at explicitly using Jenkinsfiles.
* A first attempt...
* Put code in a script block.
* Add first attempt at link check job pipeline.
* Hopefully correct shell block.
* Install git.
* Install packages as root.
* Use custom image that already has dependencies installed.
* Try processing the JUnit results.
* Fix syntax (hopefully).
* Try to get the build to set its status on Github.
* Try and see if I can get the snippet build to run too.
* A first attempt at reviving the static code analysis build.
* Refactor style check job a bit.
* Try to clean up other files and have them set statuses.
* Set status in script blocks.
* Fix directory (this may not fix my problem).
* Should I load in the script step?
* Maybe I can just load it without a name.
* Maybe I have my path wrong.
* Will this work? Just a test...
* Try using a plugin instead.
* And if I define the function manually at the top?
* Maybe this will fix the load.
* Try to turn unstable into failed.
* Hopefully fix documentation builds.
* Fix script blocks.
* Maybe fix static code analysis job.
* Try to adapt PR number variable.
* First attempt at cross-compilation job.
* Try to fix some syntax.
* Clean workspaces after build.
* Try to put the matrix in the right place.
* Another attempt at the matrix configuration.
* Maybe I have to nest it deeper.
* Maybe I have to clean always?
* What we need is more tabbing.
* Use try/catch to handle failed junit processing.
* Better handling of environment variables.
* Try a differernt approach than try/catch.
* Try to get some more information about ccache.
* Is it possible we could store the ccache at a higher level?
* Maybe I have the variable name wrong.
* Clean the cross-compilation workspace.
* Try mounting the ccache so it can be shared across multiple jobs.
* Always pull images.
* We need to run on the same node.
* Run on only one core.
* Try building in the Docker container in a different way.
* Do I have the order backwards?
* Can I run anything at all in the container?
* The static code analysis job isn't helpful.
* Try to set the user of the docker container.
* Rebuild the Docker container instead.
* Always pull an updated image.
* Download any necessary dependencies too.
* Oops, use the correct CMake options.
* Fix line break in the wrong place.
* Make sure to use the correct architecture.
* We can't use MATCHES, that is a regex.
* Oops, we need to use STREQUAL.
* Bump to an older version since newer versions don't have gfortran.
* Try to run the tests on the target.
* Correct syntax.
* Okay, I'm not allowed to generate a stage name.
* Try cleaning the workspace at the start of the build.
* Okay, so I just can't depend on the workspace cleaning job, wonderful.
* Try and add the passphrase correctly.
* Fix path for memory checks.
* Fix path to test.
* Fix PR number variable.
* Try to fix path for test copying.
* Try to get the PR number correct.
* Try and centralize where the link cache is stored.
* Why is it being printed strangely?
* Is there some weird restriction where this all has to be on one line?
* Always publish the HTML, and fix a link.
* Try to fix SSH host key check.
* Make the reports directory.
* Try to fix file parsing.
* Try to enable ccache.
* Try to set ccache directory correctly.
* Try to get the full pipeline set up correctly for cross-compilation.
* Fix path to test data.
* Allow debug builds when cross-compiling.
* Remember to unpack all the test data!
* Fail tests when the data isn't there.
* Maybe I can use find instead.
* Double escape for backslash?
* What if we just run the test?
* Port Catch2 improvement for junit runner.
See https://github.com/catchorg/Catch2/commit/c29e198eab0ccdb190495397854b937677385e2e.
* Re-enable junit testing (hopefully it will work now).
* Output directly to the xml file.
* Try to clean up regex.
* Try to set IN PROGRESS status.
* Could it be called RUNNING?
* I guess I don't get access to set jobs in progress through this API.
* Fix regex for test name extraction.
* Try to clean up Jenkinsfiles.
* Fix parameter name.
* Maybe fix syntax?
* Does it work without keyword arguments?
* Correctly accept named parameters.
* Abort previous builds to reduce load on Jenkins.
* Use optimization when compiling.
* Fix syntax for abortPrevious.
* Fix missing closing brace...
* Update links in CI documentation and try to fix memory check job.
* First attempt at documenting the RectangleTree.
* Add Insert() and Delete() to RectangleTree; they have a nicer user interface than what was previously there.
* Add R-tree documentation.
* Fix default arguments for RectangleTree typedefs.
* Fix some minor documentation display issues.
* Fix link.
* Fix links.
* Try to clarify what trees are a little bit.
* Apply suggestions from code review
Co-authored-by: Dirk Eddelbuettel <edd@debian.org>
* Update doc/user/core/trees/r_tree.md
Co-authored-by: Dirk Eddelbuettel <edd@debian.org>
---------
Co-authored-by: Dirk Eddelbuettel <edd@debian.org>
* Move STB internally, comment functions if not
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Comment for now STB including macros
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Modify CMake and tests accordingly
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix the license and update the date.
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Move STB to its own directory
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Adding the functrions of image resize and crop
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Update the API not finished yet
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Start adding tests
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Add flowers images for test
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Bring image from the coco dataset
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Include all of STB header in this file
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix STB configs
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Clean CMakeLists and look for stb_resize
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Make it compile with STB integrated
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix stb path
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix the endif at the end of the file
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Update LICENSE.txt
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update CMakeLists.txt
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/config.hpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Adding the function and test, not finished
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Remove crop from this PR, and add tests
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Update LICENSE.txt
Co-authored-by: Dirk Eddelbuettel <edd@debian.org>
* Update CMakeLists.txt
Co-authored-by: Dirk Eddelbuettel <edd@debian.org>
* merge master
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Add @rcutin suggestion for stb
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Improve the logic to include edge cases
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix the bundle that if we are using system stb
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Make it possible to disable the entire build with STB
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix the else if condition
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix the else condition
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix the tests accordindly
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Add dummpy functions and complete the Resize function
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Reorder to see if this fix the problem
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix the resize for a set of images
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Add STATIC for resize and write
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix all the problem with this function
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Be able to resize N images easily
Signed-off-by: Omar Shrit <omar@shrit.fr>
* Add the tests, already passing
Signed-off-by: Omar Shrit <omar@shrit.fr>
* Use sheep instead of Umbrella
Signed-off-by: Omar Shrit <omar@shrit.fr>
* Fix STB directory
Signed-off-by: Omar Shrit <omar@shrit.fr>
* Fix Cmake and docs
Signed-off-by: Omar Shrit <omar@shrit.fr>
* Apply comments from @rcurtin
Signed-off-by: Omar Shrit <omar@shrit.fr>
* Integrate @rcurtin comments
Signed-off-by: Omar Shrit <omar@shrit.fr>
* Fix tests and remove generated images
Signed-off-by: Omar Shrit <omar@shrit.fr>
* Add docs
Signed-off-by: Omar Shrit <omar@shrit.fr>
* Update the API with new resize version
Signed-off-by: Omar Shrit <omar@shrit.fr>
* Fix to resize2
Signed-off-by: Omar Shrit <omar@shrit.fr>
* Adding resize2
Signed-off-by: Omar Shrit <omar@shrit.fr>
* Add the necessary fix to avoid linker errors
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Add configs to allow correct repacking
Signed-off-by: Omar Shrit <omar@shrit.fr>
* Redo the ResizeImages function
Signed-off-by: Omar Shrit <omar@shrit.fr>
* Pack the images as tzr.bz2
Signed-off-by: Omar Shrit <omar@shrit.fr>
* Fix the function calls and create an internal one
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Make the message shorter to have under 80 chars
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Solve linter errors
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Solve linter error
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix linter issues
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Update doc/user/load_save.md
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/tests/image_test.cpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/core/data/image_resize_crop.hpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/core/data/image_resize_crop.hpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update doc/user/load_save.md
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update doc/user/load_save.md
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/tests/image_test.cpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/tests/image_test.cpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/tests/image_test.cpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/tests/image_test.cpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/core/data/image_resize_crop.hpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Apply @rcurtin comments
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Add an example usage of these two functions
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Apply @rcurtin comments
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Re-organize directories for STB
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Apply rcurtin comments
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Merge two resize functions into one
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Get rid of MLPACK_DISABLE_STB
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix forgetting docs
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Update CMake/FindStbImage.cmake
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update CMake/FindStbImage.cmake
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update doc/user/install.md
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update doc/user/compile.md
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/core/data/image_resize_crop.hpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update doc/user/load_save.md
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update doc/user/load_save.md
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update doc/user/load_save.md
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update doc/user/load_save.md
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/core/data/image_resize_crop.hpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/core/data/image_resize_crop.hpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update src/mlpack/core/data/image_resize_crop.hpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update doc/user/load_save.md
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Apply comments from @rcurtin
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Adding the test to test if it is identical
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix image tests
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix the example
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Add the link and the patch to download the images
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Fix the script and make all of them green
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Remove wget not needed
Signed-off-by: Omar Shrit <omar@avontech.fr>
* Minor style fixes.
* Avoid temporary matrices, and test with multiple different types.
* Update src/mlpack/config.hpp
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Update HISTORY.md
Co-authored-by: Ryan Curtin <ryan@ratml.org>
* Fix R build by including bundled STB headers in package.
---------
Signed-off-by: Omar Shrit <omar@avontech.fr>
Signed-off-by: Omar Shrit <omar@shrit.fr>
Co-authored-by: Ryan Curtin <ryan@ratml.org>
Co-authored-by: Dirk Eddelbuettel <edd@debian.org>
* A first attempt at overhauling the documentation job with a cache.
* Actually remove files we don't need anymore.
* Fix output from local link checks to give it all at once.
* Add sparse matrices to the set of detected matrix types.
* Fix comparison condition.
* Make a pass to try and re-validate cached links that have not yet expired.
* Compile and link separately so that ccache can take effect.
* Be a little bit smarter about caching.
* Ensure libicu$SO is installed so 'stringi' can be used
Also collapse to remotes calls into one
* Fix style issues that cpplint 2 found (#3884)
* Try to workaround the libicu issue for now.
* Mention new dependency.
---------
Co-authored-by: Dirk Eddelbuettel <edd@debian.org>
* Update documentation and CI configurations to work around OpenBLAS OpenMP thrashing issue.
* Update out-of-date link.
* Clarify the situation on Ubuntu and Debian.
* Clarify about pthread compilation.
* Add a bit about the OpenMP variant.
* Make the verbiage consistent everywhere.
* Try to see if the fix works on macOS too.
* Homebrew packages OpenBLAS 0.3.28, so no workaround is needed.
* Add pipeline to documentation homepage.
* Fix for mobile devices.
* Add little pipelines to go at the top of each page.
* Overhaul index page.
* Overhaul README to remove redundant material.
* Add installation documentation.
* Update pipelines.
* Allow nesting of deeper details.
* Add a pipeline to the top of the load/save page.
* Add prerequisites link to main pipeline.
* Add better but not finished sidebar.
* Add a couple new documentation pages.
* Fix URLs in svg.
* Incremental checkin.
* Fix Youtube URLs.
* Incremental checkin.
* Minor fixes.
* Add first pass at evaluation/deployment pages.
* Minor spacing and link fixes.
* Flesh out a number of additional pages and write basic compilation documentation.
* Fix some minor issues, and add Docker deployment page (not totally finished yet).
* Add developer documentation landing page.
* Hopefully getting close to the final set of changes here.
* Remove this documentation for now.
* Fix a few links, and the size of the sidebar.
* Fix some additional links.
* Fix a bunch more links.
* Fix another link that now has a better place.
* Refactor test-docs.sh to handle documentation that is a standalone program.
* Fix file exclusions.
* Fully qualify typename.
* Update name of file.
* Fix syntax error.
* Remove files that are not meant to be compiled.
* Also skip the quickstart.
* Move quickstart entry to the top.
* Remove gray coloring of binding documentation.
* Update name of sidebar link.
* Update to working link.
* Fix Wikipedia anchor.
With newer standards the readability of template heavy code can
be improved a lot by using a form with trailing _t for ::type and
_v for ::value respectively. Especially for ::type it also makes
the additional typename before the trait dispensable.
This PR combines multiple commits that modernize the traits,
starting with what clang-tidy could achieve while analyzing test files
and continuing by regex replaces with few manual corrections.
While it does not guarantee that all current occurrences are modernized,
it moves the codebase considerably into the modern direction. Note that
also before this PR both notations were used, so missing a few should
be acceptable.