Projects

Mini Projects:

  • Title: Face Recognition System [CodeAndDoc]

    • This project aims to develop a Face Recognition System which will classify the face images. For the implementation of this project, all the codes have been written in the Matlab2017a environment. This project is consisting of three phases: Feature Extraction from face Image using Linear Binary Pattern, Dimensionality reduction using PCA algorithm and Classify using K-Nearest Neighbors (KNN) and Naive Bayes classifier. For feature extraction divide the image 8*8 block, and from each block select 59 uniform features using extractLBPFeatures() Matlab function.These results are obtained using LFWCropped20 face image data set. From this results, it was observed that the Naive Bayes classifier perform better than KNN classifier.

  • Title: Rainfall Prediction [CodeAndData]

  • Rainfall prediction for India based on previous 115 years data. The project focused on to build a neural network based prediction model for forecast rainfall of India. All the experiments of this project are conducted in the Matlab framework.

  • Title: Bag of visual words model with nearest neighbor and svm classifier [Code&Data]

    • Implement K-means cluster algorithm to compute visual word dictionary. The feature dimension of SIFT features is 128.

    • Use the included SIFT word descriptors included in "train_sift_features" and "test_sift_features" to build bag of visual words as your image representation.

    • Use nearest neighbor classifier (kNN) to categorize the test images.

      • Work with the different number of visual words.

      • Display the confusion matrix and categorization accuracy.

    • Replace the nearest neighbor classifier with SVM classifier. Use 1 vs. all SVM for training the multi-class classifier.

      • Display the confusion matrix and categorization accuracy

    • Dataset: In the supplemental material, an outdoor scene database is supplied with images from the 8 categories: coast, mountain, forest, open country, street, inside city, tall buildings and highways. The dataset has been split into a train set (1888 images) and test set (800 images), placed in train and test folders separately. The associated labels are stored in "train_labels.csv" and "test_labels.csv", for example, label id of 42.jpg in the training folder corresponds to 42nd entry in "train_labels.csv". The SIFT word descriptors are also included in "train_sift_features" and "test_sift_features" directories. For each image there is a separate .csv file. For example, the file "1_train_sift.csv" has the SIFT descriptors for 1st image of training set. The row in this file corresponds to the different SIFT keypoints (i.e. no. of row = no. of detected regions using SIFT detector). The last 128 values in ith row is the SIFT descriptor for ith region. The first four values in a row correspond to the center of the region, scale of region and orientation of region

Digital Image Processing Programming Assignments

Assignments - I: [Solutions]

    1. Write a program to implement histogram equalization. Capture a photograph in dark. No light (or less light) should be visible in the photograph. Then, apply your histogram equalization program on all the 3 channels (R,G,B) of your dark image, and show the result.

    2. Write a program to take the same image as input, and apply gamma transformation on all the 3 channels. Show the results for taking (a) gamma as 5 and (b) gamma as 0.2.

    3. Write a program to smoothen a greyscale image by a 3X3 smoothing filter, which emphasizes on the current pixel value, gives lesser weightage to its 4-neighbors and much lesser weightage to the 8-neighbor pixels. Compare the result with median filter.

    4. Write a program to sharpen the same image by (a) gradient and (b) Laplacian and compare the results.

    5. Write a program to transform a greyscale image to frequency domain by Fourier transform. Apply any three low-pass filters on it and transform back each of the results to spatial domain and display the result images.

    6. Write a program to transform a greyscale image to frequency domain by Fourier transform. Apply any three high-pass filters on it and transform back each of the results to spatial domain and display the result images.

Assignments - II: [Solutions]

    1. Take an RGB color image and obtain the histograms of the image separately in Hue, Saturation and Intensity channels.

    2. Take a grayscale image and map the image by applying run-length encoding technique to reduce the spatial redundancy. Then apply modified Huffman coding technique (column-wise) to compress the image. Apply reverse procedure to get back the image and display the difference image.

    3. Take a grayscale image and apply Haar transform. For ease in computation resize the input image by downsampling.

Presentations:

  1. Combining Feature Selection and Feature Extraction for Dimensionality Reduction. [pdf]