Character Recognition Using Neural Networks

28
Character Recognition Using Neural Networks Topics in Signal Processing, BGU, Winter 2003.

description

Character Recognition Using Neural Networks. Topics in Signal Processing, BGU, Winter 2003. References. Background: A Brief Introduction to Neural Networks. (R.D. De Veaux & L.H. Ungar) Simulations: - PowerPoint PPT Presentation

Transcript of Character Recognition Using Neural Networks

Page 1: Character Recognition Using Neural Networks

Character Recognition Using Neural Networks

Topics in Signal Processing, BGU, Winter 2003.

Page 2: Character Recognition Using Neural Networks

References

โ€ข Background:โ€“ A Brief Introduction to Neural Networks. (R.D. De Veaux & L.H. Ungar)

โ€ข Simulations:โ€“ Methods for Enhancing Neural Network Handwritten Character

Recognition. (M.D. Garris, R.A. Wilkinson, & C.L. Wilson)โ€“ OCR: Neural Network Analysis of Hand-Printed Characters. (A. Amin & S.

Singh)โ€“ A Neural Network For Recognizing Characters Extracted from Moving

Vehicles. (Jang-Hee Yoo, Byung-Tae Chun, & Dong-Pil Shin)โ€“ Applying Neural Networks To Character Recognition. (Eric W. Brown)

Page 3: Character Recognition Using Neural Networks

ื ื•ืฉืื™ื

ืจืฉืชื•ืช ื ื•ื™ืจื•ื ื™ื โ€“ ืžื” ื–ื”?โ€ขืžื•ื“ืœื™ื ื‘ืจืฉืชื•ืช ื ื•ื™ืจื•ื ื™ื.โ€ขืœื™ืžื•ื“/ืื™ืžื•ืŸ.โ€ขืืœื’ื•ืจื™ืชื ื‘ืกื™ืกื™.โ€ขืกื™ืžื•ืœืฆื™ื•ืช.โ€ข

Page 4: Character Recognition Using Neural Networks

ืžื‘ื•ื ืœืจืฉืชื•ืช ื ื•ื™ืจื•ื ื™ื

ื ื™ืกื™ื•ืŸ ืœื—ืงื•ืช ืืช ื™ื›ื•ืœื•ืช ื”ืขื™ื‘ื•ื“ ืฉืœ ื”ืžื•ื—.โ€ขืžื•ื“ืœ ืœืขื™ื‘ื•ื“ ืžื™ื“ืข.โ€ขืžื•ืจื›ื‘ ืžืจื›ื™ื‘ื™ ืขื™ื‘ื•ื“ ืžืงื•ืฉืจื™ื.โ€ขืฉื™ืžื•ืฉ ื‘ืžืงืจื™ื ืฉืœ ืขื™ื‘ื•ื“ "ืžืกื•ื‘ืš" ืžื“ื™ โ€ข

ืœืื“ื ืื• ืœืžื›ื•ื ื”.

Page 5: Character Recognition Using Neural Networks

ืžื‘ื•ื ืœืจืฉืชื•ืช ื ื•ื™ืจื•ื ื™ื - ื”ืžืฉืš

ื™ืชืจื•ื ื•ืช:โ€ขื‘ื™ื ื” ืžืœืื›ื•ืชื™ืช.โ€“ื™ื›ื•ืœืช ืœื™ืžื•ื“.โ€“"ื”ืชืžื—ื•ืช" ื‘ื ื•ืฉื ืืฉืจ ืขืœื™ื• ืžืชืืžื ืช ื”ืจืฉืช.โ€“ื“ื™ื ืžื™ื•ืช ื‘ืžื‘ื ื” ื”ืจืฉืช.โ€“ืขื‘ื•ื“ื” ื‘ื–ืžืŸ ืืžืช. )ืื™ืŸ ืฆื•ืจืš ืœื”ื›ื™ืจ ืืช ื”ื‘ืขื™ื”(โ€“ื™ื›ื•ืœืช "ืฉื™ืงื•ื" ื—ืœืงื™ืช.โ€“

Page 6: Character Recognition Using Neural Networks

ืžื‘ื•ื ืœืจืฉืชื•ืช ื ื•ื™ืจื•ื ื™ื - ื”ืžืฉืš

ื—ืกืจื•ื ื•ืช:โ€ขืชื•ืฆืื•ืช ืœื ืฆืคื•ื™ื•ืช.โ€“ื™ื•ื“ืขื•ืช ืœืคืชื•ืจ ืจืง ืžื” ืฉืื•ืžื ื• ืขืœื™ื”.โ€“

Page 7: Character Recognition Using Neural Networks

ืžื•ื“ืœื™ื ื‘ืจืฉืชื•ืช ื ื•ื™ืจื•ื ื™ื

ืื™ืš ืขื•ื‘ื“ื•ืช ืจืฉืชื•ืช ื ื•ื™ืจื•ื ื™ื ื‘ื™ื•ืœื•ื’ื™ื•ืช?โ€ขื ื•ื™ืจื•ืŸ )ืชื ืขืฆื‘(.โ€“ื›ื ื™ืกื•ืช )ื“ื ื“ืจื™ื˜ื™ื(.โ€“ื™ืฆื™ืื” ืื—ืช ืœืืงืกื•ืŸ.โ€“ืกื™ื ืคืกื™ื ื‘ืงืฆื•ืช ืืงืกื•ื ื™ื.โ€“ื’ื™ืจื•ื™ ืžืกืคืง ืžืŸ ื”ืกื™ื ืคืกื™ื ื’ื•ืจื ืœืื•ืช ื—ืฉืžืœื™ ื”ื™ื•ืฆื โ€“

ืžืชื•ืš ื”ื ื•ื™ืจื•ื ื™ื.ื”ืคืขื•ืœื•ืช ื”ืžืชืจื—ืฉื•ืช ื‘ืกื™ื ืคืกื™ื ื ื™ืชื ื•ืช ืœืฉื™ื ื•ื™. )ืœื™ืžื•ื“(โ€“

Page 8: Character Recognition Using Neural Networks

ืžื•ื“ืœื™ื ื‘ืจืฉืชื•ืช ื ื•ื™ืจื•ื ื™ื โ€“ ื”ืžืฉืš

ืžื•ื“ืœ ืžืœืื›ื•ืชื™ ืžื ื•ื•ืŸ ืžืงื‘ื™ืœ:โ€ข

ื”ืžื•ืจื›ื‘ื•ืช ื”ืœื ื™ื“ื•ืขื” ืฉืœ ืชืื™ ื”ืขืฆื‘ โ€ขื”ื‘ื™ื•ืœื•ื’ื™ื ืžืชื•ืจื’ืžืช ืœืžื•ื“ืœ ืคืฉื•ื˜ ืœืžื™ืžื•ืฉ.

Page 9: Character Recognition Using Neural Networks

ืžื•ื“ืœื™ื ื‘ืจืฉืชื•ืช ื ื•ื™ืจื•ื ื™ื - ื”ืžืฉืš

"ืจื›ื™ื‘ื™ ื”ื™ืกื•ื“" ืฉืœ โ€ขื”ืžื•ื“ืœ:

ื›ื ื™ืกื•ืช ืืœ ื”ืจืฉืช ื•ื™ืฆื™ืื” โ€“ืžืžื ื”.

,Input ืฉื›ื‘ื•ืช ื ื•ื™ืจื•ื ื™ื : 3โ€“Hidden, Output.

ืžื˜ืจื™ืฆื•ืช ืžืฉืงืœื™ื ื‘ื™ืŸ โ€“ื”ืฉื›ื‘ื” ื”ืจืืฉื•ื ื” ืœืฉื ื™ื™ื”,

ื•ื‘ื™ืŸ ื”ืฉื ื™ื™ื” ืœืฉืœื™ืฉื™ืช.

Page 10: Character Recognition Using Neural Networks

ืžื•ื“ืœื™ื ื‘ืจืฉืชื•ืช ื ื•ื™ืจื•ื ื™ื - ื”ืžืฉืš

Page 11: Character Recognition Using Neural Networks

ืžื•ื“ืœื™ื ื‘ืจืฉืชื•ืช ื ื•ื™ืจื•ื ื™ื โ€“ ื”ืžืฉืš

ืงื‘ื™ืขืช ืกืฃ ื’ื™ืจื•ื™ ื‘ื ื•ื™ืจื•ืŸ:โ€ขืกืฃ ื”ืชื’ื•ื‘ื” ื”ืจืืฉื•ื ื™ ืฉืœ ื ื•ื™ืจื•ืŸ ื”ื•ื ืืงืจืื™. )ืชื—ืช โ€“

ืžื’ื‘ืœื•ืช(ืžื›ื™ื•ื•ืŸ ืฉืžืฉืงืœ ื”"ื“ื ื“ืจื™ื˜ื™ื" ืžืฉืชื ื” ืขื ื–ืžืŸ โ€“

ื”ืœื™ืžื•ื“, ื ื™ืชืŸ ืœื ืจืžืœ ืืช ื”ืžืฉืงืœื™ื, ืœืœื ืฉื™ื ื•ื™ ื‘ืกืฃ ื”ื’ื™ืจื•ื™.

Page 12: Character Recognition Using Neural Networks

ืœื™ืžื•ื“/ืื™ืžื•ืŸ

ื‘ืจืฉืช ื ื•ื™ืจื•ื ื™ื, ืœื™ื—ื™ื“ื” ื”ื‘ืกื™ืกื™ืช )ื ื•ื™ืจื•ืŸ( ื™ืฉ:โ€ขื™ืฆื™ืื” ืื—ืชโ€“ื›ื ื™ืกื•ืช ืžืจื•ื‘ื•ืช.โ€“

ืงื™ื™ืžื™ื ืฉื ื™ ืžืฆื‘ื™ ืฉื™ืžื•ืฉ : ืื™ืžื•ืŸ/ืฉื™ืžื•ืฉ.โ€ขื‘ืžืฆื‘ ืฉืœ ืœื™ืžื•ื“ ื ื™ืชืŸ ืœืืžืŸ ืืช ื”ื ื•ื™ืจื•ืŸ ืœื”ื’ื™ื‘ )ืื• โ€ข

ืœื( ืขื‘ื•ืจ ืฆื™ืจื•ืคื™ ื›ื ื™ืกื” ืฉื•ื ื™ื..LUTื›ืš ื ื•ืฆืจืช ื‘ื ื•ื™ืจื•ืŸ โ€ขืœื’ื‘ื™ ืฆื™ืจื•ืคื™ื ืœื ืžื•ื›ืจื™ื ื‘ื›ื ื™ืกื”, ืžื•ืคืขืœ ืฉื™ืงื•ืœ โ€ข

(MSEืื—ืจ. )ืœืจื•ื‘ ืžื•ื‘ื ื”

Page 13: Character Recognition Using Neural Networks

Back PropogationBack Propogation

ื—ื–ืจื” ื ืฉื ื™ืช ืขืœ ืื•ืช ื›ื ื™ืกื” ืžืกื•ื™ื, โ€ขื•ื‘ื™ืฆื•ืข ืฉื™ื ื•ื™ื™ื ื‘ืžืขืจื›ืช, ืขื“ ืœืงื‘ืœืช

output.ืจืฆื•ื™

Page 14: Character Recognition Using Neural Networks

ืœื™ืžื•ื“/ืื™ืžื•ืŸ - ื”ืžืฉืš

ืงืฆื‘ ืœื™ืžื•ื“:โ€ขื”ืฉื™ื ื•ื™ ื‘ืžืฉืงืœื™ื ื”ื ืฉืžืจื™ื ื‘ืจืฉืช ื ืขืฉื” ื‘ืฆื•ืจื” โ€“

ืื™ื˜ืจื˜ื™ื‘ื™ืช.ื”ืคืงื˜ื•ืจ ืืฉืจ ืงื•ื‘ืข ืืช ื’ื•ื“ืœ ื”ื”ืฉืคืขื” )ื’ื•ื“ืœ ื”ืชื ื•ื“ื•ืช โ€“

(Learning Rate)ื‘ืื™ื˜ืจืฆื™ื”( ื”ื•ื ืงืฆื‘ ื”ืœื™ืžื•ื“. .[0,1]ืขืจืš ื”ืคืงื˜ื•ืจ ื‘ืชื—ื•ื โ€“ืฉื™ืงื•ืœื™ื :โ€“

ืงืฆื‘ ืœื™ืžื•ื“ ืื™ื˜ื™ โ€“ ืžืฉืื‘ื™ื.โ€ขืงืฆื‘ ืœื™ืžื•ื“ ืžื”ื™ืจ โ€“ ืกื›ื ืช "ื”ืชื‘ื“ืจื•ืช". โ€ข

Page 15: Character Recognition Using Neural Networks

ืœื™ืžื•ื“/ืื™ืžื•ืŸ - ื”ืžืฉืš

ืžื•ืžื ื˜ื•ื:โ€ขืžืขืฉื™ืช : ืงื™ื™ืžืช ืงื•ืจืœืฆื™ื” ื‘ื™ืŸ ื”ืฉื™ื ื•ื™ ื‘ืžืฉืงืœื™ื โ€“

ื‘ืื™ื˜ืจืฆื™ื” ื›ืœืฉื”ื™ ื•ื‘ื™ืŸ ื”ืฉื™ื ื•ื™ ื‘ืื™ื˜ืจืฆื™ื” ืืฉืจ ืงื“ืžื” ืœื”.

ืื ืจื•ืฆื™ื ืœืฉืžืจ ืืช ื”ืงื•ืจืœืฆื™ื”, ื ื™ืชืŸ ืœื”ื’ื“ื™ืจ ืคืงื˜ื•ืจ โ€“ืžื•ืžื ื˜ื•ื.

Page 16: Character Recognition Using Neural Networks

Back propogation โ€“ Cont.

ืฉื™ืงื•ืœื™ื:โ€ขืกื•ื’ ื”ืžื™ื“ืข.โ€“ืงืจื™ื˜ืจื™ื•ืŸ ืœืฉื™ื ื•ื™ ื”ืžืฉืงืœื™ื.โ€“ื—ื–ืจื•ืช.โ€“ืจื™ืฆื•ืช.โ€“ืกื™ื›ื•ื ื™ื.โ€“

Page 17: Character Recognition Using Neural Networks

ืกื™ื›ื•ื ื™ื

.local minimaื”ืชื›ื ืกื•ืช ืœ-โ€ขืœื™ืžื•ื“ ืืจื•ืš ืžื“ื™:โ€ข

ื™ืฆื™ืจืช ืชืœื•ืช ื’ื“ื•ืœื” ืžื“ื™ ืฉืœ ื”ืจืฉืช ื‘ืกื“ืจืช ื”ืœื™ืžื•ื“.โ€“ื”ืจืฉืช ืชื“ืข ืœื–ื”ื•ืช ืจืง ืืช ื”ืกื“ืจื” ืขืœื™ื” ื”ืชืœืžื“ื”.โ€“

ืœื™ืžื•ื“ ืงืฆืจ ืžื“ื™:โ€ขื—ื•ืกืจ ื ื™ืกื™ื•ืŸ.โ€“ืžื˜ืจื™ืฆื•ืช ืžืฉืงืœื™ื ืœื "ืžื›ื•ื ืกื•ืช". )ืื™ื˜ืจื˜ื™ื‘ื™ืช(โ€“

Page 18: Character Recognition Using Neural Networks

ืืœื’ื•ืจื™ืชื ื‘ืกื™ืกื™

.hidden layer, ื—ืฉื‘ ืืช ื™ืฆื™ืื•ืช ื”-inputื‘ื”ื™ื ืชืŸ โ€ข.output layerื‘ืขื–ืจืช ื”ื "ืœ, ื—ืฉื‘ ืืช ื™ืฆื™ืื•ืช ื”-โ€ข.outputื—ืฉื‘ ืืช ื•ืงื˜ื•ืจ ื”ืžืจื—ืง ื‘-โ€ขื—ืฉื‘ ืžื˜ืจื™ืฆื•ืช ืžืฉืงืœื™ื ืžื—ื“ืฉ ื‘ืขื–ืจืช ื”ื "ืœ.โ€ข ื‘ืชื•ืš ื”ื ื•ื™ืจื•ืŸ ื‘ื”ืชืื ืœื "ืœ.offsetื”ืชืื โ€ข

ื”ืžืฉืš ืขื“ ื•ืงื˜ื•ืจ ืžืจื—ืง ืงื˜ืŸ ื›ืจืฆื•ื ืš.โ€ข

Page 19: Character Recognition Using Neural Networks

ืืœื’ื•ืจื™ืชื ื‘ืกื™ืกื™ - ื”ืžืฉืš

ืื•... ื‘ืขื‘ืจื™ืช...โ€ขโ€ข i[], h[], o[]. โ€“ I/H/O layers neurons.โ€ข W1,W2 โ€“ weight matrixes.โ€ข F(x) โ€“ Sigmoid activation function.โ€ข lr, m โ€“ Learning Rate & Momentum,

respectively.โ€ข For a more generalized network, layer biases

can be used.

Page 20: Character Recognition Using Neural Networks

ืืœื’ื•ืจื™ืชื ื‘ืกื™ืกื™ - ื”ืžืฉืš

W1_chngW1

W2_chngW2

1(-W1_chng)tmeilrW1_chng)t(

1(-W2_chng)tmdhlrW2_chng)t(

d} of{function // desired_h(,hdist)e

desired_o(,odist)d

(W2hF)o

(W1iF)h

Page 21: Character Recognition Using Neural Networks

Sigmoid Functions

ืคื•ื ืงืฆื™ื•ืช ื”ืกื›ื™ืžื” ื‘ืชื•ืš ื”ื ื•ื™ืจื•ืŸ.โ€ขืคื•ื ืงืฆื™ื•ืช ืื•ืคื™ื™ื ื™ื•ืช:โ€ข

2

11

1()

11

2()

2

Whx

Wixe

xF

exF

x

x

Page 22: Character Recognition Using Neural Networks

Feature Extraction

ืจืฉืช ื”ื ื•ื™ืจื•ื ื™ื ืื™ื ื” ื ื•ื˜ืœืช ื—ืœืง โ€ข ,Preprocessing (Segmentation, Filteringื‘-

Normalization).ืื•ืชื•ืช ื”ื›ื ื™ืกื” ืžื”ื•ื•ื™ื ืžื™ื“ืข ืื‘ืกื•ืœื•ื˜ื™.โ€ขื“ื•ื’ืžืื•ืช ืœืกื•ื’ื™ ื›ื ื™ืกื•ืช :โ€ข

โ€“Character pixels. (8x8, 16x16, 7x5)โ€“FFT coefficients, Gabor Coefficients ืฉืœ ืื•ืช( .

ื”ื›ื ื™ืกื”, ืขื‘ื•ืจ ืชืžื•ื ื” ื‘ื›ืœืœ( ื‘ืขื–ืจืช ืงื•ื™ื ื™ืฉืจื™ื ืื• ืงืžื•ืจื™ื.Characterื™ื™ืฆื•ื’ ืฉืœ โ€“

Page 23: Character Recognition Using Neural Networks

ื ืชื•ื ื™ื ืžืกื™ืžื•ืœืฆื™ื•ืช

โ€ขGabor Functions: ืžืจื—ื‘ื™ื™ื.Gaborืื•ืชื•ืช ื”ื›ื ื™ืกื” ื”ื ืžืงื“ืžื™ โ€“ 49ื ืขืฉื” ืฉื™ืžื•ืฉ ื‘ื›ืžื” ืกื“ืจื•ืช ืฉืœ ื›ืชื‘, ืžืืช โ€“

ื›ื•ืชื‘ื™ื, ื‘ืขืœื™ ืฉื•ื ื•ื™ื•ืช ื’ื‘ื•ื”ื•ืช ื•ื ืžื•ื›ื•ืช ื‘ื›ืชื‘..inputs, 15 hidden, 10 outputs 32ืžื‘ื ื” ื”ืจืฉืช : โ€“ ื”ื•ืฉื’ 1400 ืกืคืจื•ืช, ื•ืื™ืžื•ืŸ ืขืœ 2000ืขื‘ื•ืจ ืœื™ืžื•ื“ ืฉืœ โ€“

.92.1%ื–ื™ื”ื•ื™ ืฉืœ โ€“FE โ€“ 13.7[ms] โ€“ 19; ื–ื™ื”ื•ื™[ms] )ืœื›ืœ ืกืคืจื”( .

Page 24: Character Recognition Using Neural Networks

ื ืชื•ื ื™ื ืžืกื™ืžื•ืœืฆื™ื•ืช - ื”ืžืฉืš

ื™ื™ืฆื•ื’ ืข"ื™ ืงื•ื•ื™ื ื•ืขืงื•ืžื™ื:โ€ข ืขืงื•ืžื™ื, ืžืขื’ืœ. ื™ื™ืฆื•ื’ ืื•ืช ืข"ื™ ืจืฆืฃ.4 ืงื•ื•ื™ื, 4โ€“.inputs, 120 hidden, 52 outputs 7ืžื‘ื ื” ื”ืจืฉืช : โ€“ 10% ืžื”ืžืกื“, ืื™ืžื•ืŸ ืขืœ 90%ืฉื™ื˜ื” : ืœื™ืžื•ื“ ืฉืœ โ€“

ืคืขืžื™ื.10ื”ื ื•ืชืจื™ื. ื‘ื™ืฆื•ืข ื”ื "ืœ ื‘ืกื™ืžื•ืœืฆื™ื” ื ื•ืกืคืช ื‘ื•ืฆืข ื›ื "ืœ, ืืš ื‘ื›ืœ ืฉืœื‘ ื”ื•ืกืฃ โ€“

ืจืขืฉ ื’ืื•ืกื™ ืืงืจืื™ ืœืื•ืช ื”ื›ื ื™ืกื”.

Page 25: Character Recognition Using Neural Networks

ื ืชื•ื ื™ื ืžืกื™ืžื•ืœืฆื™ื•ืช - ื”ืžืฉืš

ืื—ื•ื– ืชื•ืฆืื•ืช:โ€ขื”ืฆืœื—ื”

ืื™ืžื•ืŸ ืžืกืคืจ

85 1

87 2

87 3

84 4

86 5

86 6

85 7

85 8

88 9

85 10

85.8 ืžืžื•ืฆืข

ืื—ื•ื– ื”ืฆืœื—ื”

ืื™ืžื•ืŸ ืžืกืคืจ

85 1

81 2

74 3

75 4

71 5

58 6

56 7

51 8

48 9

52 10

65.1 ืžืžื•ืฆืข

Page 26: Character Recognition Using Neural Networks

ื ืชื•ื ื™ื ืžืกื™ืžื•ืœืฆื™ื•ืช - ื”ืžืฉืš

ื–ื™ื”ื•ื™ ืœื•ื—ื™ื•ืช ืจื™ืฉื•ื™:โ€ขTypeTopologyTrainingTestingRecognition Rate

Letters14x14x1420010095.0%

Letters14x14x1480040098.3%

Numerals25x25x101527894.9%

Numerals25x25x10482290.9%

Page 27: Character Recognition Using Neural Networks

ืกื˜ื˜ื•ืก ื ื•ื›ื—ื™

.OOPืžื™ืžื•ืฉ ืชื™ืื•ืจื˜ื™ ืฉืœ ืจืฉืช ื ื•ื™ืจื•ื ื™ื ื‘-โ€ขื‘ื”ืžืฉืš:โ€ข

ืžื™ืžื•ืฉ ืฉืœ ืื—ืช ืžืŸ ื”ืกื™ืžื•ืœืฆื™ื•ืช ืืฉืจ ื”ื•ื‘ืื• โ€“ื›ื“ื•ื’ืžื”.

ื‘ื“ื™ืงืช ื™ืขื™ืœื•ืช ื”ืจืฉืช ืชื—ืช ืจืขืฉ ืžืฉืชื ื”.โ€“

Page 28: Character Recognition Using Neural Networks

ืฉืืœื•ืช?