This project aims to provide a solution for checking plagiarism in handwritten assignments submitted by students. The system combines digital pattern analysis and text content comparison between submission files to identify potential instances of plagiarism.
- Introduction
- Features
- Requirements
- Installation
- Usage
- Methodology
- Background Model
- Results
- Contributing
- License
Considering the advancements in interpersonal communication technologies today that bridge the most distant humans, it has never been easier to plagiarize handwritten assignments. A simple photograph of a person’s assignment can spread in seconds to the Deepest reaches of the globe. Online learning has exacerbated this practice to a great extent. Handwritten assignments shared among peers further undermine the prospects of acquiring the quality of learning that is achieved only when assignments are completed by the individual. It would be very simple to prevent plagiarism by accepting typed assignments and running a plagiarism check on them; however, many regions do not have access to computers, so accepting typed assignments in such situations would be impossible. Moreover, deciphering who copied from whom is a very time-consuming and difficult task for teachers. This is a situation which can be remedied by deploying a set of robust plagiarism detection algorithms in a model. The system uses a combination of digital pattern analysis through generating the UDP (Unique Digital Pattern) and text content comparison for each pair of submission to provide a comprehensive approach to plagiarism detection.
- Digital Pattern Analysis: Generates digital patterns from handwritten images using Histogram of Oriented Gradients (HOG).
- Text Content Comparison: Utilizes Optical Character Recognition (OCR) to extract text from images and compares the content for similarity.
- Multi-level Detection: Implements a multi-level detection approach to identify complete plagiarism and potential plagiarism with varying similarity scores.
- Python (>=3.6)
- Required Python Packages:
numpy
PIL
scipy
scikit-image
os
requests
sentence-transformers==2.2.2
openai==1.3.3
-
Clone the repository:
git clone https://github.com/GunalGupta/Academic-Plagiarism-Checker---For-Handwritten-Submissions.git
-
Install the required packages:
pip install -r requirements.txt
-
Replace
{Your API Key}
in the code with your actual API key for OCR functionality. The API can be found after creating an account at : (https://apilayer.com/marketplace/image_to_text-api) -
Replace
{Your API Key}
in the code with your actual API key for Open AI functionality.
streamlit run streamlit.py
The output will include filenames of the detected plagiarism pairs, helping you identify instances of complete and potential academic misconduct in the submissions.
This project was developed as part of an academic Design Project, and contributions specific to the project's goals are appreciated. While external contributions may not align with the project's immediate scope, feedback and suggestions for improvement are welcome.
If you have feedback, suggestions, or ideas for improvement, please feel free to open an issue. While external code contributions might not be part of the immediate evaluation criteria, constructive feedback that enhances the project's design, functionality, or documentation is highly valued.
-
Open an Issue: Clearly describe the feedback or suggestion in a new issue. Include details about the specific area or aspect you are addressing.
-
Discussion: Engage in discussions on the opened issue to further elaborate on the feedback or suggestion. This collaborative approach ensures a better understanding of the proposed changes.
-
Documentation: If the feedback relates to documentation improvements, please specify the section or details that need clarification or enhancement.
Remember, your input contributes to the continuous improvement of the project, and thoughtful feedback is essential for its success.
1. Gunal Gupta
2. Ved Vekhande
3. Anubhav Dubey
4. Govind Garg
5. Apurva Bajaj
This project is licensed under the MIT License. You are free to use, modify, and distribute the code as per the terms of the license.