This the basic approach of using the CAE to compress the image and recreate them again. We have used Python 3.6.5 :: Anaconda, Inc. to make the project. You can get it from here Anaconda
- Basic Python understanding
- Knowledge about the Machine learning algorithms
- Functioning of Convolutional Neural Networks
1. Install the necessary modules (Provided Below)
2. Go to "training_model.py" file and decrease the count=2000 in epoch section to 500/1000, cause your computer might not be able to handle such high processing.
3. Warning: Don't use Virutal box, minimum RAM=6GB is needed to such neural network.
4. Now run the "training_model.py" file and wait till the model gets trained.
5. Open the "Encoding.py" file and run it, input is already feeded to it, just run it in same directory in which i have provided.
6. Open the "Decoding.py" and run it, check for the reconstructed image, plot.
- Abstract of the Project can be found here Abstract
- Pipeline of the Project can be found here Pipeline
- Software and Algorithms used in the project can be found here DEV ALGO
- We were successfully able to produce the reconstructed image, with loss in range of 100 to 120.
- The standalone scripts to encode as well as decode your 28x28 images.
- The IEEE paper on image compression using CAE IMAGE_COMP
- Our model currently accepts only 28x28 images, so your image would be resized to 28x28 if it is greater than that.
- Our model is currently trained on only MNIST data set, so it might not perform as it was expected on real world images.
- The average loss over the period of 2000 is below 100, but we are yet to reach point of saturation.
- This project is the basic implemenation of Neural Network conceptualization and hence we have not yet considered the techniques like PCA , DenseNET and GAN to create better complex architecture.
- Reduce the average loss to below 50
- Make it available for all types of image sizes
- Use of denseNET to achieve the lossless image compression.
- Training model over real world dataset of low resolution images
- Tensorflow version 1.12.0
- Numpy version 1.14.3
- Open cv version 3.4.1
- Matplotlib version 2.2.2
- Huge vote of thanks to ExpertsHub for providing us the knowledge to explore field of Machine learning.
- Research paper from [Research gate ] (https://www.researchgate.net) really helped us to drive the project continiously.
- Great thanks to our Mentor Nimish Sir and Shubham Sir for helping us in project.