Releases: ShaunHowell/py-omrx
Bump pillow dependency, get CI working
bump pillow and fix travis (#32) * bump pillow version * bump python version in travis.yml * try removing wx install * install dev stuff * omit wxpython from travis pip install * tests and lint * test_cli paths * add space in test_cli * skip cli test on travis for now * cleanup * add reason for skipif
Improve readme
Added instructions on running gui whilst avoiding the .exe approach
Improved build script by bundling zip into dist/
Build script works with python3.7
The executable should work again now. Also fixed a bug in app.py where a path was being stored as a Path() object but used like a string.
bugfix numpy isnan to is None
change isnan to is None (#30) * change isnan to is None * bump version
Add examples
Add attendance register and exam score form examples.
Also fixes a bug where desired index name would be ignored if no files failed in the processed folder
Exectuable works again
exe file now inlcuded again and should work on windows 10
Parameter and robustness improvements
Various improvements throughout the codebase to improve robustness. All circle groups now have an 'omr_error' column.
More precise circle answers and other improvements
- duplicate error column fix in exam forms
- all circles can now abstain from declaring as filled or unfilled
- this means attendance forms can have NaNs now
- misc robustness improvements and bugfixes
- circles on generated forms will be slightly grey to improve detection of marks
- circles now get some of the image around the circle and they look for marks overlapping the circle, not just exactly within the circle
Exam forms supported again
Release notes:
- now supports exam style forms (circles above-below with one filled per row)
-- support portrait metadata fields
-- support 'one per row' circle groups
-- support multiple sub forms per form - circle group index can be named by adding 'index name' to comments of circle group named range
- final csv output contains the following columns: omr_error, marker_error (error columns only in exam forms), file (path), sub_form (number)
- better exception handling
- more tests
- arabic packages removed from requirements
Number rows & cols from 1 and new circle grid fitting algorithm
The output csv should now have columns with suffix numbers which start at 1 instead of 0, and the row numbers should start at 1.
The previous approach to locating a grid of circles was slow and difficult to debug as it had too many quirky bits. The new approach is to start with an expected grid of circles and some circles extracted fromt he image via cv2.HoughCircles, then optimise the parameters of a transformation function (x shift, y shift, grow x, grow y, rotate), so as to minimise the average distance from each circle in the transformed grid to the nearest observed circle. This may still break down in some edge cases. We'll see. As this new approach is all just matrix operations with fewer nested loops, it's much faster, which is an added bonus.