The objective of this program was to identify boxes in grayscale images.
- Eddie Olson πΎ
- Guled Ahmed π¨
- Okusanya Damilola π
This is a tentative readme. Changes will be added at random and without warning. Use at your own risk!!!
If you are just stumbling on this repository, do this
git clone -b develop https://github.com/Somnibyte/IdentifyBox.git
That repository will have the latest commits.
If you want a more mature tested version of this
To run, do these steps:
compile: javac ImageProcessGUI.java
run: java ImageProcessGUI
The first screen is shown below:
-
The first button on the left("Load Initial Image") is to load an image from the input folder into the application. It loads the image into the empty Label. Note the image dimensions have been resized to 500 by 500px. When you select your image, the panel below shows the image path.
-
The second button on the right("Load Image to be Processed") is to load the image from the left or a new image to be processed by the operations associated with the radio buttons below it.
-
The extras panel contains the kernel in a n by n grid indicated by the number in the input box.("Enter n for an n by n kernel")
-
The ApplyOperation button applies the selected operation to the image and displays the output in another dialog. Then you are given a choice to save or to not save. If you save, the saved image goes to the output folder.
-
The UndoAllOperations button reverts all the operations on the image.
- Build an initial GUI.
- Implement simple operations: constrast, smoothing.
- Implement histogram equalization.
- Refactor initial GUI.
- Implement kirsch edge detection.
- Implement Hough transform.
- Implement Rosenfeld and Stefanelli's thining.
- Add modes to GUI(automatic and manual).
- Refactor GUI.
- Refactor GUI again.
- Write final README.
- Deploy as jar and Docker/Snap image.
Submit an issue and we would get to it as fast as possible.