Logo Lanfrica

Peterase-1/Ge-ezVision-Amharic-Character-Recognition

Domain:

natural language processing

Record type:

project
Creator:
Pet
Host:
# Ge-ezVision: Amharic Character Recognition ## Overview This project is an end-to-end Machine Learning system designed to recognize handwritten Amharic characters. It processes raw images, trains a Deep Convolutional Neural Network (CNN), and provides tools for evaluation and prediction. ## Project Documentation Detailed documentation for each phase of the project is available here: * **Final Project Documentation (Full Report)**: The complete, professional documentation covering the entire lifecycle. * **Phase 1 Report**: Project Proposal and Data Collection. * **Phase 2 Report**: Baseline Modeling. * **Phase 3 Report**: Evaluation and Refinement. ## Key Features - **Dataset**: 37,652 images of 238 unique Amharic characters (Source: Fetulhak - Handwritten Amharic Character Dataset). - **Architecture**: Custom "DeepAmharicNet" (PyTorch) - 4-layer Deep CNN with Batch Norm and Dropout. - **Pipeline**: Automated scripts for data preprocessing, training (with Augmentation), and evaluation. ## Project Structure ``` ├── data/ # Raw and processed datasets ├── docs/ # Documentation │ ├── Phase 1 Report │ ├── Phase 2 Report │ ├── Phase 3 Report │ └── Final Project Documentation ├── models/ # Saved model artifacts (.pth) ├── notebooks/ # EDA and Evaluation notebooks ├── reports/ # Generated metrics (Confusion Matrix, etc.) ├── src/ # Source code │ ├── data/ # Processing scripts │ └── models/ # Model definition, training, loading └── README.md ``` ## Getting Started ### 1. Setup ```bash python -m venv venv venv\Scripts\activate pip install torch torchvision pandas pillow scikit-learn seaborn matplotlib tqdm ``` ### 2. Data Preparation ```bash # Processes raw data into data/processed/ python src/data/process_data.py ``` ### 3. Training ```bash # Trains for 20 epochs (Target >85%) and saves to models/amharic_cnn.pth # Note: Takes ~3-4 hours on CPU pytho …