Convolutional Neural Networks for Image Processing

Download Report

Transcript Convolutional Neural Networks for Image Processing

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
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.
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.
Types of layers
• Convolutional layers
▫
▫
Feature Map or filter
Shared weights
• Subsampling or Max pooling
• Full connected layer (classification)
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
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
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 onedimensional)
• Therefore, no convolutional layers after fully
connected layer
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
A six-layer convolutional neural network
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
• Because of low number of free parameters,
training of CNN requires far less computational
effort than training multilayer perceptron
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
Example input and target images for large
cracks on a concrete pipe
• Horizontal feature – pipe joint
• Significant challenges for filtering system
▫ Differentiating between pipes and joints
▫ Accounting for shadows and lighting effects
• 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’
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.
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.
• In the present system, CNNs are expected to
achieve better results than standard feed
forward tasks.
Thank you