Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrades for v2.0.0 #178

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
104 commits
Select commit Hold shift + click to select a range
a7bcc68
feat: add CropOnTimelineDots preprocessor; update pre-commit hooks; a…
Udayraj123 Jul 19, 2023
1fec368
fix: conflicts
Udayraj123 Jul 19, 2023
26d27b8
fix: wip confidence
Udayraj123 Feb 17, 2024
4ef22d2
fix: wip refactor logic for field_bubbles_detection
Udayraj123 Feb 17, 2024
21052f7
fix: remove whitespaces when reading csv
Udayraj123 Feb 18, 2024
416cdeb
fix: wip core code done for confidence
Udayraj123 Feb 20, 2024
c8855ac
fix: add algorithms folder; fix runtime issues; add debug catch block
Udayraj123 Feb 20, 2024
834ca20
fix: convert maps to list comprehensions
Udayraj123 Feb 20, 2024
6e6acf2
fix: runtime issues
Udayraj123 Feb 20, 2024
11f6086
fix: debugging help
Udayraj123 Feb 20, 2024
c841c86
fix: add calculations wip
Udayraj123 Feb 21, 2024
aefe516
fix: improved constants handling and more metrics added
Udayraj123 Feb 23, 2024
1cfc03c
fix: wip 3d plot
Udayraj123 Feb 23, 2024
58e59aa
fix: wip
Udayraj123 Feb 24, 2024
a57830f
fix: get more args to plotter
Udayraj123 Feb 25, 2024
d1f8042
feat: add json serialisers to classes; create js importable data for …
Udayraj123 Feb 25, 2024
c423c9c
fix: typo
Udayraj123 Feb 25, 2024
a24ac47
feat: support for image metrics export to js
Udayraj123 Feb 29, 2024
14a3434
fix: conflicts
Udayraj123 Feb 29, 2024
f11752e
fix: move local_threshold to field
Udayraj123 Mar 1, 2024
d57aaa5
fix: export bubbles_in_doubt data; move local_threshold to field; ut…
Udayraj123 Mar 2, 2024
ece923a
fix: threshold hack
Udayraj123 Mar 2, 2024
4335547
fix: update snapshot for ambiguous bubble
Udayraj123 Mar 2, 2024
2f7f8a6
fix: keep author details in algorithm folder
Udayraj123 Mar 16, 2024
a459da5
fix: remove whitespaces when reading csv
Udayraj123 Feb 18, 2024
d694307
fix: debugging help
Udayraj123 Feb 18, 2024
5065518
fix: wip add white padding for morphology
Udayraj123 Feb 18, 2024
d26d41f
fix: debugging help
Udayraj123 Feb 26, 2024
bb1865d
feat: support for answers_summary_string; add Verdict DotMap
Udayraj123 Feb 26, 2024
d2d21e4
fix: conflict issues
Udayraj123 Mar 23, 2024
df58b3d
feat: support colored images wip; refactor processing_width -> proces…
Udayraj123 Mar 23, 2024
559c5ba
feat: support colored images; refactor processing_width -> processing…
Udayraj123 Mar 23, 2024
583e46b
feat: defaults for evaluation; support answers_summary_format_string;…
Udayraj123 Mar 24, 2024
0a42d2d
feat: compress img
Udayraj123 Mar 24, 2024
ae3e991
feat: add pre-commit-images
Udayraj123 Mar 24, 2024
6bb668e
feat: add pre-commit-images
Udayraj123 Mar 24, 2024
9e2c480
feat: white padding support for morphology
Udayraj123 Feb 18, 2024
402f727
fix: conflict issues
Udayraj123 Mar 24, 2024
62a0764
fix: conflict issues
Udayraj123 Mar 24, 2024
79a90f3
fix: rename samples wip
Udayraj123 Mar 24, 2024
30695ed
fix: wip position support for draw_score, draw_answer_summary
Udayraj123 Mar 24, 2024
c7c6251
Updated output_configuration
palash018 Mar 26, 2024
ad91a4a
fix: wip rearrange samples; add docs for Crop on Timelines; add sampl…
Udayraj123 Mar 28, 2024
238582b
feat: add two-dots-one-line sample
Udayraj123 Mar 28, 2024
62af617
feat: add four-dots sample
Udayraj123 Mar 28, 2024
d336044
fix: wip rearrange samples; rename tests
Udayraj123 Mar 28, 2024
8b7bc75
fix: wip rearrange samples; remove AutoShiftFieldBlocks
Udayraj123 Mar 30, 2024
b7a5509
Removed comments
palash018 Mar 30, 2024
b61fa0a
fix: wip rearrange samples; add CropOnControlPoints and migrate inter…
Udayraj123 Mar 30, 2024
c562b34
fix: wip rearrange pre-processors
Udayraj123 Mar 30, 2024
e2be45e
fix: conflicts and sample
Udayraj123 Mar 30, 2024
961063d
fix: add contributor palash018
Udayraj123 Mar 30, 2024
e809a74
feat: wip support for edge_contours_map calculation
Udayraj123 Mar 31, 2024
7480f41
feat: wip support arc wise destination points
Udayraj123 Apr 1, 2024
32bf3a2
feat: wip add destination points support
Udayraj123 Apr 1, 2024
9caf74d
fix: testing and bugfixes
Udayraj123 Apr 1, 2024
41799e5
fix: remove edge_selectors code
Udayraj123 Apr 1, 2024
86f6412
fix: testing and bugfixes
Udayraj123 Apr 1, 2024
a2e831f
feat: wip refactor to support any scanAreas and custom markers
Udayraj123 Apr 2, 2024
362ee4d
feat: wip debug warping for CropPage and CropOnCustomMarker
Udayraj123 Apr 2, 2024
dce1e47
fix: working CropOnCustomMarkers
Udayraj123 Apr 2, 2024
fef40a3
fix: working CropOnDotLines
Udayraj123 Apr 2, 2024
8ea919d
fix: working FOUR_DOTS
Udayraj123 Apr 2, 2024
1eb8a0e
fix: support for inputImageShape and fix config low dimensions
Udayraj123 Apr 4, 2024
fdeff12
fix: template shallowcopy, deepcopy field_blocks; all tests passing
Udayraj123 Apr 4, 2024
7d78ec1
fix: working samples on TWO_LINES and sample 1 fixed again
Udayraj123 Apr 4, 2024
305fe95
fix: add warpMethod; update snapshots
Udayraj123 Apr 4, 2024
1418fe8
feature: visible verdict per question on output
palash018 Apr 5, 2024
86f73c7
feat: add resize image hook; update correct scanareas
Udayraj123 Apr 6, 2024
296cbbd
feat: update regex
Udayraj123 Apr 6, 2024
729af13
feat: update hook conditions
Udayraj123 Apr 6, 2024
8255dc1
feat: update evaluation schema
Udayraj123 Apr 6, 2024
8aae75d
fix: update samples
Udayraj123 Apr 6, 2024
dfe8361
fixed: applied suggested edits
palash018 Apr 6, 2024
f1b282a
fix: removed comments in evaluation_schema
palash018 Apr 6, 2024
d8fada9
removed debug logger
palash018 Apr 6, 2024
627b0ff
Merge branch 'feature/upgrade-crop-on-markers-colored-outputs' into f…
palash018 Apr 7, 2024
041d522
fix : conflict working version
palash018 Apr 7, 2024
b4a72a6
feat: update dependency versions; show counts in hook
Udayraj123 Apr 7, 2024
413b854
feat: support for REMAP warpMethod!
Udayraj123 Apr 8, 2024
f1508e9
fix: wip split contour; introduce shapely
Udayraj123 Apr 8, 2024
dd8de9b
fix: split contour wip;
Udayraj123 Apr 8, 2024
6805223
fix: move to CHAIN_APPROX_NONE
Udayraj123 Apr 8, 2024
b1cdbb7
fix: wip
Udayraj123 Apr 8, 2024
def4498
Merge branch 'feature/colored-evaluation-outputs' of github.com:palas…
Udayraj123 Apr 8, 2024
83f78cc
fix: conflicts
Udayraj123 Apr 8, 2024
cd229dd
fix: conflicts
Udayraj123 Apr 8, 2024
b4bb7a9
fix: conflicts
Udayraj123 Apr 8, 2024
9c7be0f
fix: remove convexHull from patch largest contour; homography working…
Udayraj123 Apr 9, 2024
63ee84e
fix: support answer_item
Udayraj123 Apr 9, 2024
ae779e8
fix: support answer_type
Udayraj123 Apr 9, 2024
76a90cd
feat: support for DOC_REFINE warpMethod!
Udayraj123 Apr 11, 2024
f87fe21
fix: update descriptions in template schema
Udayraj123 Apr 17, 2024
c8df2f6
fix: rename
Udayraj123 Apr 17, 2024
27f8eff
fix: add schema support for barcode and file sorting
Udayraj123 Apr 19, 2024
fc5cf0e
Update README.md (#181)
Udayraj123 Apr 13, 2024
f904f7e
fix: validation improvement
Udayraj123 Apr 19, 2024
c0d3779
fix: rename template schema; imporve debug output for PERSPECTIVE_TRA…
Udayraj123 Apr 19, 2024
95b3957
feat: custom log level from config
Udayraj123 Apr 19, 2024
eaef4e4
Merge branch 'master' of https://github.com/udayraj123/OMRChecker int…
Udayraj123 Apr 19, 2024
9fa31bb
fix: schema fix
Udayraj123 Apr 28, 2024
d612156
fix: schema fix; support customOptions in marker top level scan areas
Udayraj123 Apr 29, 2024
931f9f6
fix: restore fieldBlocks and add conditionalSets instead
Udayraj123 May 4, 2024
fde00d4
feat: add conditionalSets to evaluation schema
Udayraj123 May 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,5 +30,5 @@ If applicable, add screenshots to help explain your problem.

**Additional context**
Add any other context about the problem here.

Error Stack trace. Sample images used, etc
- Error Stack trace (using --debug flag).
- Sample images used, etc
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ outputs/*

# Misc
**/.DS_Store
**/__ignore__
**/__pycache__
venv/
OMRChecker.wiki/
57 changes: 53 additions & 4 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,17 +1,57 @@
exclude: "__snapshots__/.*$"
default_install_hook_types: [pre-commit, pre-push]
repos:
# Convert the pngs to jpgs inside samples folder
- repo: local
hooks:
- id: convert-images
name: Convert png to jpg in samples
entry: scripts/convert_images_hook.py
args: ["--trigger-size", "150"]
files: ^samples.*\.(png|PNG)$
pass_filenames: true
stages: [commit]
language: python
language_version: python3
additional_dependencies: [pillow]
always_run: true
fail_fast: true # Wait for user to remove the png files

# Run resize image before the compress image check
- repo: local
hooks:
- id: resize-images
name: Resize images
entry: scripts/resize_images_hook.py
args: ["--max-width", "1500", "--max-height", "1500", "--trigger-size", "150"]
files: \.(png|jpg|jpeg|PNG|JPG|JPEG)$
pass_filenames: true
stages: [commit]
language: python
language_version: python3
additional_dependencies: [pillow]
always_run: true
fail_fast: false

# Run image compressor before the large files check
- repo: https://github.com/boidolr/pre-commit-images
rev: v1.5.2
hooks:
- id: optimize-png
- id: optimize-jpg
args: ["--quality", "90"]

- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.4.0
hooks:
- id: check-yaml
stages: [commit]
- id: check-added-large-files
args: ['--maxkb=300']
args: ["--maxkb=300"]
fail_fast: false
stages: [commit]
- id: pretty-format-json
args: ['--autofix', '--no-sort-keys']
args: ["--autofix", "--no-sort-keys"]
- id: end-of-file-fixer
exclude_types: ["csv", "json"]
stages: [commit]
Expand All @@ -34,14 +74,23 @@ repos:
hooks:
- id: flake8
args:
- "--ignore=E501,W503,E203,E741,F541" # Line too long, Line break occurred before a binary operator, Whitespace before ':'
- "--ignore=E203,E501,E741,E731,F403,F405,F541,W503"
# https://www.flake8rules.com/
# E203: Whitespace before ':'
# E501: Line too long
# E731: do not assign a lambda expression, use a def
# E741: Do not use variables named 'I', 'O', or 'l'
# F403: unable to detect undefined names
# F405: 'Tuple' may be undefined, or defined from star imports
# F541: f-string without any placeholders
# W503: Line break occurred before a binary operator
fail_fast: true
stages: [commit]
- repo: local
hooks:
- id: pytest-on-commit
name: Running single sample test
entry: python3 -m pytest -rfpsxEX --disable-warnings --verbose -k sample1
entry: python3 -m pytest -rfpsxEX --disable-warnings --verbose -k test_run_omr_marker_mobile
language: system
pass_filenames: false
always_run: true
Expand Down
1 change: 1 addition & 0 deletions Contributors.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,3 +20,4 @@
- [aayushibansal2001](https://github.com/aayushibansal2001)
- [ShamanthVallem](https://github.com/ShamanthVallem)
- [rudrapsc](https://github.com/rudrapsc)
- [palash018](https://github.com/palash018)
17 changes: 10 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
# OMR Checker

Read OMR sheets fast and accurately using a scanner 🖨 or your phone 🤳.
Evaluate OMR sheets fast and accurately using a scanner 🖨 or your phone 🤳.

## What is OMR?

OMR stands for Optical Mark Recognition, used to detect and interpret human-marked data on documents. OMR refers to the process of reading and evaluating OMR sheets, commonly used in exams, surveys, and other forms.
OMR stands for Optical Mark Recognition, used to detect and interpret human-marked data on documents. OMR refers to the process of reading and evaluating OMR sheets, commonly used in exams, surveys, and other forms. The OMR sheet scanning is typically done using a scanner, but with OMRChecker it's supported from a mobile camera as well.

#### **Quick Links**

- [Installation](#getting-started)
- [User Guide](https://github.com/Udayraj123/OMRChecker/wiki)
- [Contributor Guide](https://github.com/Udayraj123/OMRChecker/blob/master/CONTRIBUTING.md)
Expand All @@ -33,9 +34,10 @@ A full-fledged OMR checking software that can read and evaluate OMR sheets scann
| Specs <img width=200/> | ![Current_Speed](https://img.shields.io/badge/Speed-200+_OMRs/min-blue.svg?style=flat-square) ![Min Resolution](https://img.shields.io/badge/Min_Resolution-640x480-blue.svg?style=flat-square) <img width=200/> |
| :--------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 💯 **Accurate** | Currently nearly 100% accurate on good quality document scans; and about 90% accurate on mobile images. |
| 💪🏿 **Robust** | Supports low resolution, xeroxed sheets. See [**Robustness**](https://github.com/Udayraj123/OMRChecker/wiki/Robustness) for more. |
| 💪🏿 **Robust** | Supports low resolution, xeroxed sheets as well as colored images. See [**Robustness**](https://github.com/Udayraj123/OMRChecker/wiki/Robustness) for more. |
| ⏩ **Fast** | Current processing speed without any optimization is 200 OMRs/minute. |
| ✅ **Customizable** | [Easily apply](https://github.com/Udayraj123/OMRChecker/wiki/User-Guide) to custom OMR layouts, surveys, etc. |
| ✅ **Colorful** | Supports Colored Outputs Since April 2024 |
| 📊 **Visually Rich** | [Get insights](https://github.com/Udayraj123/OMRChecker/wiki/Rich-Visuals) to configure and debug easily. |
| 🎈 **Lightweight** | Very minimal core code size. |
| 🏫 **Large Scale** | Tested on a large scale at [Technothlon](https://en.wikipedia.org/wiki/Technothlon). |
Expand Down Expand Up @@ -248,7 +250,6 @@ Standard Quality Dataset(For ML Based methods) (3 GB)
High Quality Dataset(For custom processing) (6 GB)
-->


## FAQ

<details>
Expand Down Expand Up @@ -328,23 +329,25 @@ Here's a snapshot of the [Android OMR Helper App (archived)](https://github.com/

[![Stargazers over time](https://starchart.cc/Udayraj123/OMRChecker.svg)](https://starchart.cc/Udayraj123/OMRChecker)

***
---

<h2 align="center">Made with ❤️ by Awesome Contributors</h2>

<a href="https://github.com/Udayraj123/OMRChecker/graphs/contributors">
<img src="https://contrib.rocks/image?repo=Udayraj123/OMRChecker" />
</a>

***
---

### License

[![GitHub license](https://img.shields.io/github/license/Udayraj123/OMRChecker.svg)](https://github.com/Udayraj123/OMRChecker/blob/master/LICENSE)

For more details see [LICENSE](https://github.com/Udayraj123/OMRChecker/blob/master/LICENSE).

### Donate
<a href="https://www.buymeacoffee.com/Udayraj123" target="_blank"><img src="https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png" alt="Buy Me A Coffee" style="height: 41px !important;width: 174px !important;box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;-webkit-box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;" ></a> [![paypal](https://www.paypalobjects.com/en_GB/i/btn/btn_donate_LG.gif)](https://www.paypal.me/Udayraj123/500)

<a href="https://www.buymeacoffee.com/Udayraj123" target="_blank"><img src="https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png" alt="Buy Me A Coffee" style="height: 41px !important;width: 174px !important;box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;-webkit-box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;" ></a> [![paypal](https://www.paypalobjects.com/en_GB/i/btn/btn_donate_LG.gif)](https://www.paypal.me/Udayraj123/500)

_Find OMRChecker on_ [**_Product Hunt_**](https://www.producthunt.com/posts/omr-checker/) **|** [**_Reddit_**](https://www.reddit.com/r/computervision/comments/ccbj6f/omrchecker_grade_exams_using_python_and_opencv/) **|** [**Discord**](https://discord.gg/qFv2Vqf) **|** [**Linkedin**](https://www.linkedin.com/pulse/open-source-talks-udayraj-udayraj-deshmukh/) **|** [**goodfirstissue.dev**](https://goodfirstissue.dev/language/python) **|** [**codepeak.tech**](https://www.codepeak.tech/) **|** [**fossoverflow.dev**](https://fossoverflow.dev/projects) **|** [**Interview on Console by CodeSee**](https://console.substack.com/p/console-140) **|** [**Open Source Hub**](https://opensourcehub.io/udayraj123/omrchecker)

Expand Down
21 changes: 14 additions & 7 deletions main.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
from pathlib import Path

from src.entry import entry_point
from src.logger import logger
from src.utils.logger import logger


def parse_args():
Expand Down Expand Up @@ -77,21 +77,28 @@ def parse_args():
args = vars(args)

if len(unknown) > 0:
logger.warning(f"\nError: Unknown arguments: {unknown}", unknown)
argparser.print_help()
exit(11)
raise Exception(f"\nError: Unknown arguments: {unknown}")
return args


def entry_point_for_args(args):
if args["debug"] is True:
# Disable tracebacks
sys.tracebacklimit = 0
# TODO: set log levels
for root in args["input_paths"]:
entry_point(
Path(root),
args,
)
try:
entry_point(
Path(root),
args,
)
except Exception:
if args["debug"] is True:
logger.critical(
f"OMRChecker crashed. add --debug and run again to see error details"
)
raise


if __name__ == "__main__":
Expand Down
13 changes: 7 additions & 6 deletions requirements.dev.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
-r requirements.txt
flake8>=6.0.0
freezegun>=1.2.2
pre-commit>=3.3.3
pytest-mock>=3.11.1
pytest>=7.4.0
syrupy>=4.0.4
flake8>=7.0.0
freezegun>=1.4.0
pre-commit>=3.7.0
pytest-mock>=3.14.0
pytest>=8.1.1
syrupy>=4.6.1
Pillow>=10.3.0
20 changes: 14 additions & 6 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,8 +1,16 @@
deepmerge>=1.1.0
deepmerge>=1.1.1
dotmap>=1.3.30
jsonschema>=4.17.3
matplotlib>=3.7.1
numpy>=1.25.0
pandas>=2.0.2
rich>=13.4.2
jsonschema>=4.21.1
matplotlib>=3.8.4
numpy>=1.26.4
pandas>=2.2.1
rich>=13.7.1
screeninfo>=0.8.1
# External deps
scipy>=1.12.0
shapely>=2.0.3
einops==0.7.0
# Note: opencv is excluded from requirements.txt because the installation steps
# may be different as per your OS. Windows/MacOS users can uncomment the following
# opencv-python>=4.9.0.80
# opencv-contrib-python>=4.9.0.80
Binary file added samples/1-mobile-camera/MobileCamera/sheet1.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions samples/1-mobile-camera/config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"outputs": {
"show_image_level": 0,
"show_colored_outputs": true
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"pageDimensions": [
"templateDimensions": [
1846,
1500
],
Expand Down Expand Up @@ -33,9 +33,38 @@
"q9_2"
]
},
"preProcessors": [
{
"name": "CropPage",
"options": {
"morphKernel": [
15,
15
]
}
},
{
"name": "CropOnMarkers",
"options": {
"type": "FOUR_MARKERS",
"referenceImage": "omr_marker.jpg",
"tuningOptions": {
"marker_rescale_range": [
80,
120
]
},
"markerDimensions": [
35,
35
]
}
}
],
"fieldBlocks": {
"Medium": {
"bubblesGap": 41,
"fieldType": "CUSTOM",
"bubbleValues": [
"E",
"H"
Expand Down Expand Up @@ -175,23 +204,5 @@
1195
]
}
},
"preProcessors": [
{
"name": "CropPage",
"options": {
"morphKernel": [
10,
10
]
}
},
{
"name": "CropOnMarkers",
"options": {
"relativePath": "omr_marker.jpg",
"sheetToMarkerWidthRatio": 17
}
}
]
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@
This sample demonstrates multiple things, namely -
- Running OMRChecker on images scanned using popular document scanning apps
- Using a common template.json file for sub-folders (e.g. multiple scan batches)
- Using evaluation.json file with custom marking (without streak-based marking)
- Using evaluation on custom labels
Binary file added samples/2-omr-marker/ScanBatch1/camscanner-1.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added samples/2-omr-marker/ScanBatch2/camscanner-2.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
5 changes: 5 additions & 0 deletions samples/2-omr-marker/config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"outputs": {
"show_image_level": 0
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,7 @@
"D",
"B",
"A"
],
"should_explain_scoring": true
]
},
"marking_schemes": {
"DEFAULT": {
Expand Down Expand Up @@ -89,5 +88,8 @@
"unmarked": 0
}
}
},
"outputs_configuration": {
"should_explain_scoring": true
}
}
File renamed without changes
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"pageDimensions": [
"templateDimensions": [
1846,
1500
],
Expand All @@ -11,8 +11,12 @@
{
"name": "CropOnMarkers",
"options": {
"relativePath": "omr_marker.jpg",
"sheetToMarkerWidthRatio": 17
"type": "FOUR_MARKERS",
"referenceImage": "omr_marker.jpg",
"markerDimensions": [
35,
35
]
}
}
],
Expand Down Expand Up @@ -44,6 +48,7 @@
},
"fieldBlocks": {
"Medium": {
"fieldType": "CUSTOM",
"bubbleValues": [
"E",
"H"
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading