The document discusses several projects and implementations done by Karishma Jain related to computer vision and deep learning. These include visual question answering using CNNs and RNNs, parallelizing an ADABOOST classifier on different platforms, designing a lane departure warning system using monocular camera, and implementing various CNN architectures for MNIST classification achieving up to 97.74% accuracy.
2. The VQA task seeks to solve the problem of
automatically generating answers to
questions of images – an important problem
in realizing Artificial Intelligence.
Images were fed through a CNN, questions
and answers through a RNN to a :
◦ Conditional GAN setting
◦ Co-Attention setting
Used tensorflow for the implementation.
3.
4. Parallelized the serial ADABOOST
classification algorithm to be implemented on
three platforms(Distributed memory, Shared
memory and GPU)
Evaluated performance, scaling and speedup
on all the three systems.
5. Designed an intelligent lane departure
warning and vehicle collision avoidance
system using monocular camera.
By using Hard Negative Mining precision
improved by 20% and overall accuracy by
32%.
6.
7.
8. Designed a convolution Neural Network from scratch to
classify MNIST dataset. Coded each layer in the
architecture
Tried three different architectures and the one that gave
really good accuracy is described below
CONV[3 1 3] POOL[2 2] CONV[3 3 8] POOL[2 2] RELU[]
FLATTEN[4] LINEAR[5 5 8] SOFTMAX[]
Initial Learning Rate: 0.25
Weight Decay:0.0005
Batch Size: 128
450 iteration: Accuracy-95.94%
900 iteration Accuracy-97%
1350 iteration Accuracy-97.37%
1800 Accuracy-97.59%
2250 iterations Accuracy-97.74%
9. Implemented video Motion Segmentation
using GPCA technique for all possible affine
motions in MATLAB.
Studied the concepts of power factorization,
dimensionality reduction and implemented
them in a unified framework.
Obtained accurate segmentation results for
different input videos.
10.
11. Designed a game 'SPOT-IT' by implementing
Feature Matching and Foreground separation
in MATLAB.
Implemented Feature matching using Harris
Operator, Histogram of Gradient Descriptors,
and Foreground and Background separation
using SLIC (Simple Linear Iterative Clustering)
and max-flow-min-cut graphing technique.
12. Detected Harris Corners and using Histogram of
Gradients, found feature descriptors and matched
them using Euclidean distance. Since Question
mark appears twice in the two images, maximum
number of matched features correspond to it.
Hence, the similar object between the two images
13. Now aim is to separate any object from its
background. Using SLIC(Simple Linear Iterative
Clustering), superpixels are found and then using
maxflow/mincut algorithm foreground (cheese) can
be separated from the backgound.
14. Implemented Panorama PhotoStitching in MATLAB.
Features Detected using Harris Corner Detector and
described by using SIFT (Scale Invariant Feature
Transform).
Used RANSAC to filter the inliers from all the
matched putative matches while computing the
Homography Matrix.
15.
16.
17. Imager(millimetre sized camera) in the world's
smallest computer 'The Michigan Micro Mote'
produces noisy low resolution images of size
160x160.
Implemented the technique of Delaunay
Triangulation to obtain a single high Resolution
Image from multiple low resolution images
produced by multiple Imagers displaced and
oriented by a fixed amount with respect to
each other.
Results will be available by the end of this
month.
18. Implemented Adaptive Filter using LMS (Least Mean
Square) technique on SPARTAN 3 FPGA using
Verilog.
Used fixed-point arithmetic and techniques of
parallel processing which reduced the complexity
and data loss.
Compared the results obtained for signals with
different signal-to-noise ratio and tested for
accuracy in MATLAB.
19. Used 5 tap filter whose weights were updated until the noisy signal
adapts itself to the desired signal. As seen above the training period is
inversely proportional to the added noise in the signal.
20. Hardware No of Blocks used
Multipliers 10
Adders/Subtractors 12
Counters 4
Flip-Flops 15
21. Clock Negative Edge Values Updated
1st Input x comes
2nd Y = w*x is calculated
3rd Y from all taps is added
4th Desired signal (d) comes and error
(emu) is generated and d remains
constant for 5 clock cycles
5th To update coefficients (w)
6th New sample of x comes. Till then x
remains constant.
7th Again Y is generated
8th Y from taps are added
9th Again new sample of d comes and
error is generated.
22. Implemented Proximity Sensor using cypress
Programmable System on Chip and ARM
mbed FRDM KL25z board during Summer
Industrial Training at Eduvance, Mumbai.