Skip to content
udayraj123 edited this page Aug 3, 2019 · 3 revisions

Interesting tasks available in the whole range from Beginner to Advanced level. Looking for computer vision enthusiasts to take this project to the next level!

Project Progress

Current Goals Progress :

🔲🔲🔲🔲🔲⏹⏹⏹⏹⏹

Legend:

📝 Beginner Quests

🏆 Intermediate Challenges

🎓 Advanced Experiments

The tasks are ordered in increasing levels of difficulty below.

ToDos:

📝 Run code on your own images and add it to samples

📝 Generate your own code-in-action gifs on those images

📝 Use cv2.putText to add appropriate labels to all output images

📝 Add validation checks for configuration

📝 Implement Accuracy evaluation

There are 5-6 popular methods of evaluation available. We will be implementing all of them. See this link. From above link, "Exact match" method is implemented in main.py (look for 'TEST_FILE'). Need help in implementing any of the remaining methods. The ultimate plan is to create a reliable benchmark score for evaluating future algorithms. For any discussion/doubts, ask on discord.

📝 Contribute to Mobile images dataset using the Android App(Contact on discord)

📝 Add coloroma to output texts

📝 Product comparision articles: Review and Compare with Existing OMR Softwares with this free software. For a start, see Auto Multiple Choices

🏆 Generate Template Layout directly from blank OMR image.

Use methods like morphology and then blob detection to find presence of bubbles in a good quality image of a blank OMR Sheet like this one. Illustrative image coming soon.

🏆 Auto Rotating the OMR sheet

🏆 Calculate confidence using data

Count times when only localTHR was used vs globalTHR over localTHR. Image contrast levels score.

🏆 Extract code snippets which may be re-usable in other projects and add them to gist

🏆 Put explanatory text on output images

Show QBlock Labels and Column Orientations for template in the setLayout mode

🏆 Improve page boundary detection : Defeat the bossbg.jpg

🎓 Refactor code to a software design pattern

🎓 Faster Speeds : parallelization, pyrDowns, etc

🎓 Making more visualizations from available data. See Visualization Ideas for ideas on Flow diagrams, Animations and 3D outputs.

🎓 Explore methods to find global threshold more accurately(perhaps using ML)

🎓 Introduce git submodules