- Refactor data saving to only save important information.
- Combine OpenCV and Tesseract into single file, ImageFacade.
- ConfigFacade updated to explicitly state image save locations.
- implement ImageFacade force save
- Modified output to be `.txt`, rather than `.xls`, for compatibility
- Minimised r/w operations to filesystem down to only necessary inputs
(Sample images, bad images, text file containing serial, total
iterations, pass iterations, std.dev, and median)
Data-saving at high cycle count takes too long, causing the DUT to fall
asleep. Data-saving has been extracted into its own thread.
Additionally, Run/pause switch has been re-threaded using synchronized
statements, rather than lock statements, making the run switch work
properly (finally).
Data is now saved in the new Cycle object, rather than passing around
multiple maps, hopefully improving memory footprint.
- Update all classes to more verbosely log what's going on.
- Update readme and udev rule for automatic camera checking
- Add dependency-checking plugin to pom.xml
- Add GPIO check on initialisation, and override to not drive GPIO if
not plugged in
- Continue updating functions to be closer and more accurate to
documentation
- Update OpenCV to 4.6.0 (Bytedeco API v1.5.8)
- Remove extra debug image saves to minimise storage space used
- minor version bump
- update final formula in DataSaving to be correct
Cropping is now done using OpenCV's region detection (selectROI).
This window currently crashes, but this does not effect overall runtime
of the package as a whole.
runScript updated to mute System.err messages, as they are handled
properly at this point in development.
Also added a run script, to be copied with the JAR file to the Pi being
imaged. (Stored in main git folder so that it can be version controlled
with the rest of the repo, and not get deleted by Maven on `mvn clean
package`)
- Found and resolved issue with random file organisation.
This was a rather heavy undertaking, resulting in the changes to
DataSaving, OpenCVFacade, and TesseractFacade. See API for
specifics.
- Start debugging GUI.
Start currently only runs one iteration, and does not save final
information out. Start/Stop button needs refining, and user
feedback needs to be improved.
Major rework of OpenCV, Config, ErrorLogging, and CLI.
Major changes:
- Started debug of image processing. (Currently still nonfunctional)
- Added a PrintWriter.flush() call to ErrorLogging, to force errors to
be written to log file.
- Cli.main now will always close GPIO and Logs.
- Config properties now have safe names for config files.
- Started removal of null.equals(null) calls, which result in
NullExceptionErrors. (These have not all been confidently caught.)