Skip to content

CNN Encoder- RNN Decoder network to generate captions for input images

Notifications You must be signed in to change notification settings

msv19/Image-Captioning

Repository files navigation

CVND---Image-Captioning-Project

Instructions

  1. Clone this repo: https://github.com/cocodataset/cocoapi
git clone https://github.com/cocodataset/cocoapi.git  
  1. Setup the coco API (also described in the readme here)
cd cocoapi/PythonAPI  
make  
cd ..
  1. Download some specific data from here: http://cocodataset.org/#download (described below)
  • Under Annotations, download:

    • 2014 Train/Val annotations [241MB] (extract captions_train2014.json and captions_val2014.json, and place at locations cocoapi/annotations/captions_train2014.json and cocoapi/annotations/captions_val2014.json, respectively)
    • 2014 Testing Image info [1MB] (extract image_info_test2014.json and place at location cocoapi/annotations/image_info_test2014.json)
  • Under Images, download:

    • 2014 Train images [83K/13GB] (extract the train2014 folder and place at location cocoapi/images/train2014/)
    • 2014 Val images [41K/6GB] (extract the val2014 folder and place at location cocoapi/images/val2014/)
    • 2014 Test images [41K/6GB] (extract the test2014 folder and place at location cocoapi/images/test2014/)
  1. The project is structured as a series of Jupyter notebooks that are designed to be completed in sequential order (0_Dataset.ipynb, 1_Preliminaries.ipynb, 2_Training.ipynb, 3_Inference.ipynb).

Dataset

COCO Dataset by Microsoft

Network Architecture

  1. CNN Encoder which finds the patterns in images and encodes them into embedded feature vectors.

encoder

  1. RNN Decoder which consists of single LSTM unit followed by a Fully connected layer (Linear layer) that generates image captions.

decoder

About

CNN Encoder- RNN Decoder network to generate captions for input images

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published