Didn't work running it on mac due to minor changes
and an oversight with running the autocropper container.
Signed-off-by: Ethan Wellenreiter <ewellenreiter@gmail.com>
First implementation finished. Working on using it to crop.
Going to try using probabalistic hough lines and a bounding box
to pick out lines within a margin of the correct orientation (vertical)
and put a bounding box around these lines to try and approximate the
receipt.
Signed-off-by: Ethan Wellenreiter <ewellenreiter@gmail.com>
About to add search selection segmentation so that
I can have multiple processes since some fail to work
correctly while others do.
Signed-off-by: Ethan Wellenreiter <ewellenreiter@gmail.com>
saveaspng.ipynb: Saves the dataset as individual .jpg files
so that bad images can be more quickly seen using OS file
previews
dataset_viewer.ipynb: Let's you iterate through the individual
images of a dataset. A less helpful version of what saveaspng
and OS file previews would do
image_viewer.ipynb: Nearly identical to dataset_viewer.ipynb
manualrotationchecker.ipynb: First version of a manual (non-ML)
autorotater/deskewer
testcropper.ipynb: New version of a manual autocropper
manualcropandrotate.ipynb: Combining manual cropping and rotating
Also updated the training loop file and added a blacklist for when
making the dataset from the original dataset. Finally, the
dockerfile was updated to remove installation of some unused libraries
and added a library for the manual autorotator.
Signed-off-by: Ethan Wellenreiter <ewellenreiter@gmail.com>
Allowed it so I could have different containers for the
different branches so I could do the training for the autocropper
and also work on the app without any conflicts.
Signed-off-by: Ethan Wellenreiter <ewellenreiter@gmail.com>
Added a batch normalization layer and adjusted
the file to accomodate a restart in the training process.
Signed-off-by: Ethan Wellenreiter <ewellenreiter@gmail.com>
Tried training for a while with current state. Didn't show any
progress with training so I'm trying something else. Might also
just need fewer parameters but we'll see.
Signed-off-by: Ethan Wellenreiter <ewellenreiter@gmail.com>
Making the run and setup scripts executable so that when I clone
they are executable right away.
Signed-off-by: Ethan Wellenreiter <ewellenreiter@gmail.com>
Updating docker file and run script to use expo with nodejs
and hopefully end up using react native. Also updated it for
pytorch use to run pytorch in the docker container.
Signed-off-by: Ethan Wellenreiter <ewellenreiter@gmail.com>
Made it so that autocropper kept it's .vscode folder.
Might change it back in the future once I try working on a different system.
Signed-off-by: Ethan Wellenreiter <ewellenreiter@gmail.com>
Implemented the autocropper using the crop(...) function.
Also changed is to that .vscode properties get uploaded too to make
sure stuff like it should be for me (Ethan) in vscode even when on
a different system.
Signed-off-by: Ethan Wellenreiter <ewellenreiter@gmail.com>
Modified dockerfile so it's a little cleaner and smaller.
Also modified run and setup scripts so that they build and
run the docker containers with the stuff for windows/guis in the host system.
Signed-off-by: Ethan Wellenreiter <ewellenreiter@gmail.com>
First steps towards implementing the autocropper.
Current plan is to use OpenCV in C++.
There are remains of testing to use stb image manipulation
but reading them in disregarded image orientation (ie it would
rotate on it's own) which is unacceptable.
Signed-off-by: Ethan Wellenreiter <ewellenreiter@gmail.com>
As the title says. Changed it so I keep the .vscode folders.
Might need to change this later depending on if I want to keep the .vscode
folder across platforms or not.
Also removed test.cpp since it was just a test file.
Signed-off-by: Ethan Wellenreiter <ewellenreiter@gmail.com>
Setting up a run script so that you can easily call the script to
launch the dev environment docker with the correct flags and such.
It will also remove the container once complete.
Signed-off-by: Ethan Wellenreiter <ewellenreiter@gmail.com>