The project is investigating methods to extract human-marked data from document forms such as surveys and tests.

Overview

Project to check multiple choice test with opencv and python

This project help teacher to check the students' answer faster and more exactly.

Report Bug · Request Feature

GitHub language count GitHub followers GitHub commit activity

Table of contents:

  1. About the project.

  2. Built with.

  3. Getting started.

    i. Installation.

    ii. Data.

  4. Usage.

  5. Instructors.

  6. Contact.

About the project:

Nowadays, teachers face a major challenge in ensuring that their students' answers are correct and on time. With this project, teachers will spend nearly one minute checking all of their students' answers with a high correct rate of over 99.9 percent, and this project will analyze and summarize all important information about wrong or right answers, which difficult questions have a high error rate.

Built with:

  • Python
  • Visual studio
  • Github

Getting started:

Installation:

Opencv:

   pip install opencv-python
   conda install opencv (if you use conda)

Numpy:

    pip install numpy
    conda install numpy (if you use conda)

Pandas:

    pip install pandas
    conda install pandas (if you use conda)

Regex:

    pip install regex
    conda install regex (if you use conda)

Data:

In this project, we used 50 photos-this is the student result in the answer sheet. You can find it in folder "Student".

Example data:

With these datas, we compares the students' answers with the our answer to find the students' result. Our anwser in folder "answer".

Usage:

1/ Move to folder: "OpticalMarkRecognition" (cd OpticalMarkRecognition)

2/ Start with file :"Student_info.py" to  handle the infomation of student'answer.

3/ Continue with file:"answer.py" to analyze the root answer.

4/ Finally, we use file:"student.py" to check the right answer, wrong answer, and the final score of each student. All of the information will be display in the terminal.

5/ We can read file csv in folder:"csv_files".

Instructors:

Thank you Mr. Vu and Mr. Thien for the support and give us a wonderful challenges to improve our coding skill and use the python library better. Thank you very much and we hope we can get more challenge to improve our coding more and more.

Contact:

1/ Vu Truong:

Email: vu[email protected]
Github: https://github.com/HarryxDD

2/ Bao Ngo:

Email: ba[email protected]
Github: https://github.com/ngobao2002
Owner
Harry
Software Developer
Harry
🚩 A simple and clean python banner generator - Banners

🚩 A simple and clean python banner generator - Banners

Kumar Vicku 12 Oct 09, 2022
utoken is a multilingual tokenizer that divides text into words, punctuation and special tokens such as numbers, URLs, XML tags, email-addresses and hashtags.

utoken utoken is a multilingual tokenizer that divides text into words, punctuation and special tokens such as numbers, URLs, XML tags, email-addresse

Ulf Hermjakob 11 Jan 05, 2023
Fuzzy String Matching in Python

FuzzyWuzzy Fuzzy string matching like a boss. It uses Levenshtein Distance to calculate the differences between sequences in a simple-to-use package.

SeatGeek 8.8k Jan 08, 2023
Free & simple way to encipher text

VenSipher VenSipher is a free medium through which text can be enciphered. It can convert any text into an unrecognizable secret text that can only be

3 Jan 28, 2022
You can encode and decode base85, ascii85, base64, base32, and base16 with this tool.

You can encode and decode base85, ascii85, base64, base32, and base16 with this tool.

8 Dec 20, 2022
Text Summarizationcls app with python

Text Summarizationcls app This is the repo for the Text Summarization AI Project. It makes use of pre-trained Hugging Face models Packages Used The pa

Edem Gold 1 Oct 23, 2021
Convert ebooks with few clicks on Telegram!

E-Book Converter Bot A bot that converts e-books to various formats, powered by calibre! It currently supports 34 input formats and 19 output formats.

Youssif Shaaban Alsager 45 Jan 05, 2023
Maiden & Spell community player ranking based on tournament data.

MnSRank Maiden & Spell community player ranking based on tournament data. Why? 2021 just ended and this seemed like a cool idea. Elo doesn't work well

Jonathan Lee 1 Apr 20, 2022
The project is investigating methods to extract human-marked data from document forms such as surveys and tests.

The project is investigating methods to extract human-marked data from document forms such as surveys and tests. They can read questions, multiple-choice exam papers, and grade.

Harry 5 Mar 27, 2022
Getting git-style versioning working on RDFlib

Getting git-style versioning working on RDFlib

Gabe Fierro 1 Feb 01, 2022
Convert English text to IPA using the toPhonetic

Installation: Windows python -m pip install text2ipa macOS sudo pip3 install text2ipa Linux pip install text2ipa Features Convert English text to I

Joseph Quang 3 Jun 14, 2022
Parse Any Text With Python

ParseAnyText A small package to parse strings. What is the work of it? Well It's a module to creates parser that helps to parse a text easily with les

Sayam Goswami 1 Jan 11, 2022
Little python script + dictionary to help solve Wordle puzzles

Wordle Solver Little python script + dictionary to help solve Wordle puzzles Usage Usage: ./wordlesolver.py [letters in word] [letters not in word] [p

Luke Stephens (hakluke) 4 Jul 24, 2022
Utility for Text Normalisation or Inverse Normalisation

Text Processor Text Normalisation or Inverse Normalisation for Indonesian, e.g. measurements "123 kg" - "seratus dua puluh tiga kilogram" Currency/Mo

Cahya Wirawan 2 Aug 11, 2022
An implementation of figlet written in Python

All of the documentation and the majority of the work done was by Christopher Jones ([emai

Peter Waller 1.1k Jan 02, 2023
Fuzzy string matching like a boss. It uses Levenshtein Distance to calculate the differences between sequences in a simple-to-use package.

Fuzzy string matching like a boss. It uses Levenshtein Distance to calculate the differences between sequences in a simple-to-use package.

SeatGeek 1.2k Jan 01, 2023
Fuzz a language by mixing up only few words.

afasi Fuzz a language by mixing up only few words. Status Beta. Note: The default branch is default. Use Examples Version General Help Translate Help

Stefan Hagen 2 Dec 14, 2022
WorldCloud Orçamento de Estado 2022

World Cloud Orçamento de Estado 2022 What it does This script creates a worldcloud, masked on a image, from a txt file How to run it? Install all libr

Jorge Gomes 2 Oct 12, 2021
Amazing GitHub Template - Sane defaults for your next project!

🚀 Useful README.md, LICENSE, CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md, GitHub Issues and Pull Requests and Actions templates to jumpstart your projects.

276 Jan 01, 2023
Fixes mojibake and other glitches in Unicode text, after the fact.

ftfy: fixes text for you print(fix_encoding("(ง'⌣')ง")) (ง'⌣')ง Full documentation: https://ftfy.readthedocs.org Testimonials “My life is li

Luminoso Technologies, Inc. 3.4k Jan 08, 2023