Chris Pollett > Students >
Deshmukh

    ( Print View)

    [Bio]

    [Blog]

    [CS 297 Proposal]

    [Deliverable 1]

    [Deliverable 2]

    [Deliverable 3]

    [Deliverable 4]

    [End to End Image Compression - PDF]

    [Image file formats - PDF]

    [DeepN-JPEG - PDF]

    [Image compression using RNN - PDF]

    [CS 297 Report - PDF]

    [CS 298 Proposal]

    [CS 298 report]

















Deliverable 1: Implement end-to-end image compression architecture in PyTorch

Description:

This is my implementation of end to end image compression framework[1] .

This code used following python libraries :
image==1.5.25
numpy==1.14.5
Pillow==5.2.0
python-dateutil==2.7.3
pytorch==0.1.12
torchvision=0.1.12



Google colab is used for implementation. The framework is implemented in pytorch.

Below are the results obtained after training the network on CIFAR10 dataset. I used 20 epochs with the batch size of 16.

Inference results are as below :

Original and Final images :

original and final images

Compact representation

compact representation

All input images are of size 32 x 32.

This architecture uses two separate networks - comCNN for compression and recCNN for reconstruction. Residual learning is used in recCNN for faster learning process.

Network


comCNN gives satisfactory results with 10 layers. Hence, in my openion additional layers were not required.


Download source code

References :

[1] Jiang Feng, Et al. (August 2017). An End-to-End Compression Framework Based on Convolutional Neural Networks. IEEE Transactions on Circuits and Systems for Video Technology.. Harbin, China. arxiv e-archive.

[2] Caltech 101 dataset : http://www.vision.caltech.edu/Image_Datasets/Caltech101/