Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi...

20
Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola

Transcript of Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi...

Page 1: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics

By, Sruthi Moola

Page 2: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

Convolution

•Convolution is a common image processing technique that changes the intensities of a pixel to reflect the intensities of the surrounding pixels. A common use of convolution is to create image filters

Page 3: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

Convolutional neural network

• Type of feed-forward MLP. • Conv. Nets are inspired by biological

processes in visual cortex. • So it is used in image recognition and

handwritten recognition. • high performance in MNIST database. • Designed by Yann Lecun.

Page 4: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

Convolutional neural network

•Architecture of applying neural networks

to 2-D arrays (usually images), based on spatially localized neural input.

•Technique of sharing weights or receptive fields.

Page 5: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

Types of layers

• Convolutional layers ▫ Feature Map or filter▫ Shared weights

• Subsampling or Max pooling • Full connected layer (classification)

Page 6: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

Convolutional layer

•Rectangular grid of neurons•Input from a rectangular section of

previous layer•Weights are same for each neuron•Image convolution of previous layer•Weights specify convolutional filters•Several grids in each layer, each grid

takes inputs from all layers using different filters

Page 7: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

Max pooling layer

•Takes smaller blocks from convolutional layer

•Subsamples to produce single output from that block

•Several ways- average or maximum or learned linear combination of neurons

•Max pooling layers take maximum out of that block

Page 8: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

Full-connected layer

•High level reasoning in NN•Takes all neurons from previous layer and

connects it to every single neuron it has•These are not spatially located (visualize

as one-dimensional)•Therefore, no convolutional layers after

fully connected layer

Page 9: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

Convolutional neural network

•Network structure designed extracts relevant features, restricting neural weights of one layer to a local perceptive field in previous layer. Thus, feature map obtained in second layer

•The degree of shift and distortion variance is achieved by reducing the spatial resolution of the feature map

Page 10: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

A six-layer convolutional neural network

Page 11: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

Training

•Back propagation•In feature map, all neurons share the

same weight and bias, the number of parameters is smaller than in fully connected multilayer perceptron, leading to a reduction in gap

•Subsampling/pooling layers have one trainable weight and one trainable bias, so number of free parameters is even lower when compared

Page 12: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

•Because of low number of free parameters, training of CNN requires far less computational effort than training multilayer perceptron

Page 13: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

Applying CNN to real-world problems

•Image processing system on mobile robot•Task – detect and characterize cracks and

damage in sewer pipe walls.•Uses monochrome CCD camera•Task of CNN-

▫filter raw data▫Identify spatial location of cracks▫Enable characterization of length, width of

damage

Page 14: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

Example input and target images for large cracks on a concrete pipe

Page 15: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

•Horizontal feature – pipe joint•Significant challenges for filtering system

▫Differentiating between pipes and joints▫Accounting for shadows and lighting effects

Page 16: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

•Training was conducted using standard weight updates rules and approximately 93% of pixels in the validation set were correctly classified

•Not every pixel was used for training▫Computational expense▫Low proportion of ‘crack’ to ‘clean’ training

samples tended to bias the network towards classifying all samples as ‘clean’

Page 17: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

Example input and CNN output frames

Three frames including Crack present, no crack and pipe joint, and crack and joint together represent the data set.

Using a subsequent crack detection algorithm, the network ignores the presence of joints and attenuated lighting effects while enhancing the cracks.

Page 18: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

Conclusion• Issues- Training uses bitmap type images that

results in over abundance of training sample points.

•Key characteristics like sharing weights are appropriate when input data is spatially distributed.

•Concept of CNNs and weight sharing not only reduces the need for computation, but also offers a satisfying degree of noise resistance and invariance to various forms of distortion.

Page 19: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

•In the present system, CNNs are expected to achieve better results than standard feed forward tasks.

Page 20: Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.

Thank you