Skip to content

NoamAtias/Images-Classification-and-AutoEncoder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 

Repository files navigation

Deep Learning Final Project - Images Classification and AutoEncoder

This repository contains the code and documentation for my final project on deep learning. The project focuses on two main parts: image classification using convolutional neural networks (CNNs) and denoising images using convolutional autoencoders.

This project was done together with Chanel Michaeli.

Table of Contents

Introduction

In this project, we explore the applications of deep learning in image analysis. Our goal is to develop models that can accurately classify images into six different categories: buildings, streets, forests, mountains, glaciers, and the sea. Additionally, we investigate the use of convolutional autoencoders for denoising images.

Image Classification

CNN Model

To perform image classification, we built our own convolutional neural network (CNN) model. The architecture of the CNN consists of multiple convolutional layers, followed by pooling layers to extract important features from the input images. We also incorporated batch normalization and dropout regularization techniques to enhance the model's performance and prevent overfitting.

Comparison with ResNet18

To evaluate the performance of our CNN model, we compared it with the widely used ResNet18 model. We trained both models on a labeled dataset of images from the six categories mentioned earlier. We measured the accuracy and other performance metrics to assess the effectiveness of our custom CNN model compared to ResNet18.

Convolutional Autoencoder

Encoder and Decoder

In addition to image classification, we explored the use of convolutional autoencoders for denoising images. We implemented an encoder-decoder architecture using convolutional layers to learn a compressed representation (latent space) of the input images. The decoder component then reconstructs the denoised image from the learned representation.

Denoising Images

To evaluate the performance of our convolutional autoencoder, we introduced noise to a set of images and fed them into the autoencoder. The model was trained to reconstruct the original, noise-free images from the noisy inputs. We assessed the quality of the denoised images using various metrics and visually compared the results.

Usage

To use the code in this repository, follow these steps:

  1. Clone the repository: git clone https://github.com/NoamAtias/Images-Classification-and-AutoEncoder.git
  2. Install the required dependencies: pip install -r requirements.txt
  3. Run the image classification or denoising scripts: python classification.py or python denoising.py
  4. Explore the results and modify the code as needed for your experiments.

Contributing

Contributions to this project are welcome. If you find any issues or have suggestions for improvements, please open an issue or submit a pull request.


Feel free to customize the Readme file according to your specific project details, such as adding a section on dataset description, training process, or evaluation results.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors