{"id":27137258,"url":"https://github.com/devsumanp/imageclassifier101","last_synced_at":"2025-08-05T18:06:41.800Z","repository":{"id":263567651,"uuid":"890800508","full_name":"DevSumanP/ImageClassifier101","owner":"DevSumanP","description":"🪟 A beginner-friendly project for image classification using Artificial Neural Networks (ANN) and Convolutional Neural Networks (CNN) with the CIFAR-10 dataset. Perfect for introducing neural networks and computer vision concepts.","archived":false,"fork":false,"pushed_at":"2024-11-19T08:06:58.000Z","size":50,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-19T09:19:11.945Z","etag":null,"topics":["cifar-10","cnn","deep-learning","image-classification","machine-learning","python","tenserflow-image-classifier"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DevSumanP.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-19T07:49:56.000Z","updated_at":"2024-11-19T08:08:31.000Z","dependencies_parsed_at":"2024-11-19T09:19:15.048Z","dependency_job_id":"f4630819-66b1-4f00-9dba-40d281aab709","html_url":"https://github.com/DevSumanP/ImageClassifier101","commit_stats":null,"previous_names":["devsumanp/imageclassifier101"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevSumanP%2FImageClassifier101","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevSumanP%2FImageClassifier101/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevSumanP%2FImageClassifier101/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevSumanP%2FImageClassifier101/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DevSumanP","download_url":"https://codeload.github.com/DevSumanP/ImageClassifier101/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247773740,"owners_count":20993633,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cifar-10","cnn","deep-learning","image-classification","machine-learning","python","tenserflow-image-classifier"],"created_at":"2025-04-08T03:55:24.097Z","updated_at":"2025-04-08T03:55:24.642Z","avatar_url":"https://github.com/DevSumanP.png","language":"Jupyter Notebook","readme":"\n# **🪟 Image Classification Using Neural Networks**\n\nThis project demonstrates image classification using **Artificial Neural Networks (ANN)** and **Convolutional Neural Networks (CNN)** with the **CIFAR-10 dataset**. It includes dataset preprocessing, model building, training, and evaluation.\n\n---\n\n## **✨ Table of Contents**\n\n1. [Introduction](#introduction)\n2. [Dataset](#dataset)\n3. [Technologies Used](#technologies-used)\n4. [Project Structure](#project-structure)\n5. [How to Run](#how-to-run)\n6. [Code Explanation](#code-explanation)\n7. [Results](#results)\n8. [Conclusion](#conclusion)\n\n---\n\n## **📝 Introduction**\nImage classification is the process of identifying and categorizing objects in an image. In this project, we use two types of neural networks:\n- **ANN** (Artificial Neural Network): A basic model for image classification.\n- **CNN** (Convolutional Neural Network): A more advanced model that captures image-specific features for better accuracy.\n\n---\n\n## **💾 Dataset**\nWe use the **CIFAR-10 dataset**, which contains:\n- 60,000 images divided into 10 categories: *airplane, automobile, bird, cat, deer, dog, frog, horse, ship, truck*.\n- Images are 32x32 pixels with 3 color channels (RGB).\n\n---\n\n## **💻 Technologies Used**\n- **Python**: Programming language.\n- **TensorFlow/Keras**: Framework for building and training neural networks.\n- **Matplotlib**: Library for data visualization.\n- **NumPy**: Library for numerical computations.\n\n---\n\n## **🗂️ Project Structure**\n```\n.\n├── README.md       # Documentation\n└── Image_Classification_(Cifar_10).ipynb         # Main script to execute the project\n```\n\n---\n\n## **⚡ How to Run**\n\n1. **Clone the repository**:\n   ```bash\n   git clone https://github.com/DevSumanP/ImageClassifier101.git\n   cd ImageClassifier101\n   ```\n\n2. **Install dependencies**:\n   ```bash\n   pip install tensorflow matplotlib numpy\n   ```\n\n3. **Run the script**:\n   ```bash\n   python main.py\n   ```\n\n4. **Expected Output**:\n   - Model training logs.\n   - Accuracy metrics for both ANN and CNN.\n   - Visualizations of predictions.\n\n---\n\n## **⚡ Code Explanation**\n\n1. **Data Preprocessing**:\n   - Normalize pixel values to range [0, 1] for faster and stable training.\n   - Reshape labels to make them compatible with the models.\n\n2. **ANN Model**:\n   - A simple architecture with fully connected layers.\n   - Output layer uses a `softmax` activation function to predict probabilities for 10 classes.\n\n3. **CNN Model**:\n   - Includes convolutional and pooling layers to extract features from images.\n   - Improves classification accuracy compared to ANN.\n\n4. **Evaluation**:\n   - Evaluate models using test data and generate classification reports.\n\n---\n\n## **😃 Results**\n\n| **Model**         | **Accuracy** |\n|--------------------|--------------|\n| **ANN**           | ~49%         |\n| **CNN**           | ~70%         |\n\n---\n\n## **Conclusion**\n\n- **ANN** is suitable for simple datasets but lacks accuracy for images.\n- **CNN** performs better due to its ability to extract spatial hierarchies (e.g., edges, textures).\n- Image classification is an essential task in AI, with applications in self-driving cars, medical diagnostics, and more.\n\n---\n\n## **Future Work**\n- Use data augmentation to improve accuracy.\n- Experiment with deeper networks or transfer learning using pre-trained models.\n- Apply this framework to a custom dataset for real-world applications.\n\n---\n\n## **🗒️ License**\nThis project is open-source under the [MIT License](LICENSE).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevsumanp%2Fimageclassifier101","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevsumanp%2Fimageclassifier101","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevsumanp%2Fimageclassifier101/lists"}