~
'1
b
a.b
2 <J
0 .'("'\,,,,",,Statistische patroon herken n i ng
2013
611
3
Bibliotheek TU Delft
~
1111111111111
C 1712886Statistische patroon herken ni ng
prof.dr.ir
.
E. 8acker
dr.ir. R
.
P
.
W. Duin
SZO\3
b\
\3©VSSD Eerste druk 1989
Delftse Uitgevers Maatschappij b.v.
P.o.
Box 2851, 2601 CW Delft, The Netherlands Tel. 015-123725Alle rechten voorbehouden. Niets uit deze uitgave mag worden verveelvoudigd, opgeslagen in een geautomatiseerd gegevensbestand, of openbaar gemaakt, in enige vorm of op enige wijze, hetzij elektronisch, mechanisch, door fotokopieën, opnamen, of op enige andere manier, zonder voorafgaande schriftelijke toestemming van de uitgever.
All rights reserved. No part ofthis publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photo-copying, recording, or otherwise, without the prior written permission of the publisher.
5
Voorwoord
Patroonherkenning is een fascinerend en uitdagend gebied dat sinds de uitvinding van de digitale computer een belangrijke plaats heeft ingenomen in de ontwikkeling van informatieverwerkende systemen en dat een welhaast onbeperkt aantal toepassingen kent. Een objective techniek om wetmatigheden in aangeboden informatie op te sporen en nieuwe informatie op grond van deze wetmatigheden te classificeren is gefurmu-leerd in de theorie van de statistische patroonherkenning. Deze theorie, alsmede de praktijk van het ontwerpen van patroonherkennende systemen, vormen de kern van dit boek.
Het boek is ontstaan uit colleges die de schrijvers geven aan studenten van de Faculteiten Elektrotechniek, Technische Natuurkunde en Wiskunde en Informatica aan de Technische Universiteit Delft. Patroonherkenning moet veelal beschouwd worden als een onderdeel van een groter geheel. De schrijvers zijn zozeer verbonden aan onderwijs en onderzoek op het gebied der digitale beeldverwerking dat de behandeling van de patroonherkenning in dit boek om die reden waar nodig geschiedt vanuit de optiek der digitale beeldverwerking. Beelden zijn immers traditionele dragers van informatie. Voor wat betreft de behandeling van de materie heeft deze inkadering slechts een voorbeeldfunctie.
Het doel van het boek is een brede introductie te verschaffen voor zowel gebruikers als ontwerpers van patroonherkennende systemen. Het is geschreven op HBO- en TU-niveau en veronderstelt slechts een algemene kennis van lineaire algebra en statistiek. De opzet is zodanig dat de inhoud zeker geschikt is voor zelfstudie. Het boek bestaat uit drie delen:
Deel 1. Beeldverwerking en patroonherkenning: introductie
Dit deel is een globale verkenning van het probleemgebied, zonder enig technisch detail. Er wordt getracht de diverse aspecten zo goed mogelijk te plaatsten in het kader van de digitale beeldverwerking en een aantal deelproblemen uit de theorie en praktijk van het ontwerpen van patroonherkennende systemen de revue te laten passeren. Deel 2. Statistische patroonherkenning
In dit deel worden de gesignaleerde deelproblemen nader uitgewerkt. Kern van dit deel is de behandeling van statistische beslissers en de evaluatie ervan. Daarnaast wordt aandacht gegeven aan de implicatie van "vage" informatie en andersoortige kennis op de patroonherkenning (vage verzamelingen en expertsystemen).
6 Voorwoord
Deel 3. Bijzondere onderwerpen
In het derde deel, tenslotte, wordt een verdere uitdieping aangebracht door de behan-deling van een reeks bijzondere onderwerpen. Ieder onderwerp is gekenmerkt door óf een grotere theoretische onderbouwing, óf een meer fundamentele uitwerking, óf laat een meer praktische evaluatie zien. Deze reeks van bijzondere onderwerpen is samen-gesteld op basis van artikelen waarvan de schrijvers mede-auteur waren en die in het afgelopen decennium in de internationale literatuur zijn verschenen. Zij zijn onvertaald opgenomen.
De niveaus van diepgang zijn door voorgaande indeling bewust aangebracht om de lezer een maximale vrijheid te verschaffen zijn of haar kennis te verrijken met hetzij een globale behandeling van concepten, of met een inhoudelijke behandeling van deelproblemen, danwel met specifieke uitwerkingen van deelproblemen of concepten. De auteurs zijn zich echter wel bewust van het feit dat de behandeling van de materie geenszins uitputtend en compleet kon zijn. Daartoe is een met zorg opgesteld litera-tuuroverzicht aangebracht.
De schrijvers danken iedereen die, op welke wijze dan ook, aan het totstandkomen van dit boek hebben bijgedragen. In het bijzonder is deze dank gericht op hun collega-docenten J.J. Gerbrands en LT. Young voor de digitale beeldverwerking en met wie zij zo lang al vruchtbaar gezamenlijk onderzoek verrichten. Daarnaast is een woord van dank op zijn plaats aan het adres van de vele mede-auteurs welke als collega of als student- of staflid van één van de vakgroepen waartoe de schrijvers behoren daadwerkelijk hebben bijgedragen aan de reeks onderwerpen in deel 3 (in alfabetische volgorde): F.T. Beukerna toe Water, D.E. Boekee, IJ. Boxma, X.S. Cheng, J.J. Gerbrands, R. Getreuer, H.P.A. Haas, C.E. van Haersma Buma, A.K. Jain, B.J. Kröse, L. Roosma, J. Sallentin, J.C. Simon en P.M. Trouborst. Tenslotte zij het de schrijvers vergund op te merken dat dit boek een neerslag is van een vakbeleving waarvoor de stimulerende invloed van allen in hun vakgroepen onontbeerlijk was.
maart 1988 E.Backer
7
Inhoud
VOORWOORD5
DEEL]13
~ INTRODUCTIE15
~
BFELDANAL YSE17
2.1.
De beeldopnemer17
2.2.
Voorbewerking17
2.3.
Beeldreconstructie en -verbetering18
2.4.
Beeldcodering18
2.5.
Beeldsegmentatie20
2.6.
Binaire beeldoperaties21
2.7.
Meten aan beelden21
2.8.
Patroonherkenning22
2.9.
De implementatie22
~
PATROONHERKENNING25
3.1.
Toepassingen26
3.2.
Structuur van een patroonherkennend systeem28
3.3.
Sensoren29
3.4.
Het leren van een systeem29
3.5.
Het operationeel classificeren31
3.6.
Het evalueren van het systeem33
3.7.
Architectuur en algoritmen34
3.8.
Methoden van herkennen: statistische- en structurele methoden35
3.9.
Literatuur38
DEEL 2
~
INLEIDING STATISTISCHE PATROONHERKENNING45
4.1.
Het patroonherkennend systeem45
4.2.
Meten47
11
4.3.
Meerdimensionale statistiek49
~
DE KENMERKRUIMTE56
5.1.
Het schatten van kansdichtheden60
8 Inhoud
5.3. Projectie (zonder en met klasse-informatie)
<
!l
STATISTISCHE BESLISSERS ~ 6.1. Bayes beslissingstheorie 6.2. Kosten en verwerpen 6.3. De proportionele beslisser 6.4. Onbekende kansdichtheden 6.5. Naaste nabuurmethode 6.6. Het gebruik van context 6.7. Gemengde data6.8. Incomplete data en ongelijke aantallen kenmerken
KENMERKSELECTIE
7.1. Kenmerkselectie in de kenmerkruimte 7.2. Zoekalgoritmen voor kenmerkselectie
7.3. Kenmerkselectie in de getransformeerde ruimte
;l::
HET SCHA TIEN VAN DE FOUTKANSr EVALUATIE
~
SYNTACTISCH PATROONHERKENNEN~
CLUSTERANAL YSE 11 .1. Hiërarchische methoden 11.2. Partitionele clustering . Fuzzy SETS12.1. Een fuzzy classificatieregel
12.2. Selectie van geschikte vage kenmerken
f
KENNISGESTUURDE SYSTEMEN13.1. Kennis en kennissystemen
13.2. Besturingsmechanismen in de patroonherkenning 13.3. Inexact redeneren: onzekerheidscalculi
-14. TOEPASSINGEN
14.1. Het lezen van cijfers ten behoeve van giroverkeer
14.2. Hiërarchische gewasclassificatie met behulp van multi-tempore1e SLAR-opnamen OPGAVEN
6.2J
69 69 I 75 78 80JJ
81 86 114 1201r.
124 126 127 131 135 136$
138 140 142 144--
151 152 155 160DEEL 3. BIJZONDERE ONDERWERPEN INLEIDING DFEL 3
15. A UNIFYING VIEWPOINT ON PA TTERN RECOGNITION 15.1. Jntroduction
15.2. Representations and interpretations 15.3. Conclusion
References
Inhoud
16. SMOOTHING PARAMETERS FOR PARZEN ESTIMATERS OF PROBABILITY DISTRIBUTIONS 16.1. Introduction 16.2. Method 16.3. Computational aspects 16.4. Applications 16.5. Future research References
17. NEWFAMILIES OF PROBABILISTIC DlSTANCE MEASURES 17.1. Introduction
17.2. A class of upper bounds on P e 17.3. A class of lower bounds on P e 17.4. Convergence
17.5. Conclusion References
18. FEATURE ORDENING IN PRACTICE 18.1. Jntroduction
18.2. Feature evaluationfunctions 18.3. Experiments andresults References
19 . EVALUATION OF INDEPENDENT BINARY FEATURES 19.1. Jntroduction
19.2. Results for identically distributed features References
20. SELECTION OF INDEPENDENT BINARY FEATURES 20.1. Jntroduction
20.2. The evaluation of binary features 20.3. Selection methods 20.4. Experiments 9 169 171 174 174 174 198 199 202 202 203 210 210 210 211 212 212 212 216 217 218 218 219 219 220 223 231 232 232 233 235 236 236 236 238 244
10 Inhoud
References 249
21. AVOIDING PFAKING 250
21 .1. Introduction 250
21.2. Ways of avoiding peaking 251
21.3. Example 253
References 256
22. A SAMPLE SIZE DEPENDENT ERROR BOUND 257
22.1. Introduction 257
22.2. General fonnulation 257
22.3. General measurement space 261
22.4. Nonnal distributions 264
22.5. Multi-class case 267
22.6. Appendix 268
References 270
23. THE STABILITY OF SHARED NEAR NEIGHBOR CLUSTERING 271
23.1. Introduction 271
23.2. Minimal chaining cost 274
23.3. Intemal error counting and stabIe solutions 277
23.4. Experiments 278
23.5. Conclusions 282
References 282
24. DEALING WITH A PRIORI KNOWLEDGE BY FUZZY LABELS 284
24.1. Introduction 284
24.2. Transfonnation of a priori knowledge into a posteriori knowledge 285
24.3. The comparison of fuzzy and hard labels 286
24.4. The expected classification error in a single point of the feature space 287 24.5. Results of computer simulations and analytic approximations 289
24.6. Discussion and conclusions 289
References 292
25. THE USE OF CONTINUOUS VARIABLES FOR LABELING OBJECTS 293
25.1. Introduction 293
25.2. Classification strategies and problems 294
25.3. Feature reduction 297
25.4. Example 297
25.5. Discussion 299
Inhoud 11
26. MUL TIRESOLUTIONAL CLUSTER SEGMENTATION USING SPATIAL
CONTEXT 301
26.1. Introduction 301
26.2. Design of the multi-resolutional segmentation approach 302
26.3. Preliminary experiments 305
26.4. Conclusions 307
References 308
27. INEXACT GRAPH MATCHING USED IN MACHINE VISION 309
27.1. Stereo vision 309
27.2. The correspondence problem 309
27.3. Finding the vertices 310
27.4. Structural matching 312
27.5. Object recognition: inexact graph matching 313
27.6. Search and pruning strategies 313
27.7. Trihedral object recognition: results 316
27.8. Concluding remarks 317
References 317
28. FAST MEASUREMENT IN BINARY IMAGES FOR IN-LINE ROBOTIC
CONTROL 318
28.1. Introduction 318
28.2. Image operations implemented as code-operations 320
28.3. Knowledge guided operation 326
. 28.4. Implementation 328
28.5. Example of operation: on-line detection and recognition of moving
parts 330
References 331
13
15
1
Introductie
Sinds de uitvinding van de digitale computer heeft er een niet aflatende drang bestaan om het domein van zijn toepassingen uit te breiden. Ten dele is deze ontwikkeling veroorzaakt door de praktische noodzaak efficiënte wegen te vinden om bepaalde taken uit te voeren. Voor een ander (niet onbelangrijk) deel is het eenvoudig de uitda-ging machines te programmeren of te bouwen zo dat ze in staat zijn taken uit te voeren welke voordien niet uitgevoerd konden worden. Indien deze taken op enigerlei wijze het manipuleren van beelden omvatten, spreken wij van digitale beeldverwerking of beeldbewerking.
Niet zelden is het doel uitspraken te doen omtrent de door het beeld gerepresenteerde verschijnselen. Met andere woorden: wat stelt het beeld voor? Wat is er te zien? Wat is er in het beeld aan objecten aanwezig? In die gevallen omvatten we tevens de patroon-herkenning. De synthese van zuivere beeldverwerking en patroonherkenning noemen we het deelgebied der beeldanalyse.
Het begrip 'beeld' vatten we zeer ruim op als twee-dimensionale data (een verzameling punten in een plat vlak waarvan de helderheid en kleur van punt tot punt kunnen verschillen). Voorbeelden hiervan zijn fotografische opnamen die verkregen zijn met behulp van röntgen- en gammastraling, radar of sonar, elektronenmicroscopie of radio-astronomie, en dergelijke.
De mogelijke toepassingen van de digitale beeldverwerking en patroonherkenning zijn bijna onbeperkt en variëren van het inmiddels klassieke maar immer nog actuele probleem van het automatisch lezen van handgeschreven karakters tot de kwantitatieve analyse van röntgenfilms in de cardiologie of van satellietopnamen voor oogst-voorspelling (remote sensing).
In de industriële sfeer wordt gewerkt aan geautomatiseerde produktinspectie (gedrukte bedrading, walsfouten in staalplaat) maar ook aan van-' ogen' -voorziene robots voor het uitvoeren van assemblage-opdrachten. Ook bij biomedisch onderzoek wordt gebruik gemaakt van beeldverwerkingssystemen (chromosoomanalyse, celonder-zoek). De buitengewoon snelle groei van de computertechnologie en de economische wenselijkheid van efficiënte en krachtige industriële automatisering zijn er oorzaak van dat de komende decade een spectaculaire groei van het gebruik van beeldverwer-kingstechnieken te zien zal geven, met name in de industriële fabricage,
kwaliteits-16 Introductie
controle en industriële research. De verwachtingen omtrent efficiënte, robuuste en economische hardware- en software-implementaties zijn hooggespannen. Toch is enige terughoudendheid ook op zijn plaats: het enthousiasme waarmee onderzoek op het gebied van de beeldverwerking plaatsvindt is aanmerkelijk groter dan het aantal praktische situaties waarvoor een adequate oplossing is gevonden. Voor het moment zijn we nog aangewezen op zogenaamde interactieve systemen, waarbij niet de totale complexe taak van de mens wordt overgenomen maar slechts de relatief eenvoudige routinematige aspecten. Een gedeeltelijke automatisering dus. Bovengenoemde toe-passingen kunnen alle gerekend worden tot het deelgebieçl van de beeldanalyse. Het doel van de beeldverwerking kan voorts nog vallen onder de deelgebieden:
beeldcodering: datareductie ten behoeve van het transport en opslag van beeld-informatie,
beeldreconstructie: het minimaliseren van storende ruisinvloeden en vervorming ten opzichte van een origineel beeld,
beeldverbetering: het verbeteren van de beeldkwaliteit ten behoeve van een betere interpretatie door een menselijke waarnemer.
Laatstgenoemde deelgebieden vallen buiten de patroonhèrkenning en worden verder niet uitgewerkt.
17
2
Beeldanalyse
Tussen het opnemen van het beeld en het interpreteren van datgene wat in het beeld vervat is, zijn in het algemeen vele bewerkingen vereist. We zullen, in het kader van een vluchtige kennismaking, in een min of meer logische volgorde, een aantal bewerkingen als deelprobleem de revue laten passeren.
2.1. De beeldopnemer
Een beeldopnemer voor zichtbaar licht is de resultante van een gekozen sensortype voor zichtbare elektromagnetische straling en een afbeeldingstechniek. Sensoren voor zichtbare elektromagnetische straling zijn gebaseerd op het foto-elektrisch effect in een metaal of halfgeleider. De omzetting van straling in verwerkbare signalen berust op het vrijmaken van elektronen door fotonen. Het meten van lichtintensiteit komt neer op het tellen van fotonen per tijdseenheid. De ruis die daarbij optreedt is Poisson-verdeeld. De afbeeldingstechniek heeft tot doel punten van een verlicht voorwerp af te beelden in een verzameling sensoruitgangssignalen, het beeld. De afbeelding kan punt voor punt zijn (aftasten) of gelijktijdig (parallelle afbeelding). In het algemeen is de aftast-volgorde voorgeschreven. Zowel de verlichting als de afbeelding kan gefocusseerd zijn. Voorbeelden van bovengenoemd type sensoren zijn: fotodiode, fotoweerstand, stelsels van fotodiodes (één- en tweedimensionaal), vidicon, plumbicon en andere TV-opneembuizen.
Per toepassing zal de keuze van het type sensor en de afbeeldingstechniek bepaald worden door een beschouwing over de gewenste gevoeligheid, de gewenste geome-trische nauwkeurigheid, de gewenste lineariteit, de ruiseigenschappen, de lees- en meettijd, het aantal punten, het onderhoud, de robuustheid en niet in de laatste plaats de prijs. Het behoeft geen betoog dat het kiezen van de juiste beeldopnemer voor iedere toepassing een resultaatbepalend probleem is.
2.2. Voorbewerking
Het sensoruitgangssignaal is een analoog elektrisch signaal. Tot de voorbewerking behoort dus allereerst het digitaliseringsproces: de ruimtelijke bemonstering (dit is het bepalen van de lichtintensiteit in een aantal discrete (matrix-)punten en het kwantiseren van deze bemonsteringen, dat wil zeggen het continue waardebereik verdelen in een
18 Beeldanalyse
eindig aantal intervallen, niveaus. In de moderne beeldverwerking resulteert de ruim-telijke bemonstering zeer vaak in een beeldrnatrix van 512x 512 discrete punten, terwijl standaard 256 niveaus worden gehanteerd (8 bit). De voorbewerking kan zowel analoog als digitaal zijn en voorts diverse correcties en compensaties bevatten, bijvoorbeeld voor de beeldopnemerkarakteristiek (lineariteit, geometrie, en dergelijke).
2,3. Beeldreconstructie en -verbetering
Afbeeldingen en beelden van een scene zijn in het algemeen in meer of mindere mate behept met vervorming en ruis. Dit komt omdat geen enkel beeldvormendsysteem (elektronerunicroscoop, camera, telescoop) een perfect, onvervormd beeld levert. Ruis kan geïntroduceerd worden tijdens de opname, in de transmissieweg of gedurende het registratieproces, terwijl bij vervorming gedacht kan worden aan sferische aberatie van
I
lenzen, bewegingsonscherpte, onjuiste focussering en dergelijke. Er is dus behoefte aan technieken die deze vervorming en ruis minimaliseren en daardoor een beter beeld opleveren.
Beeldreconstructie is een vorm van digitale beeldverwerking, waarbij men het oorspronkelijke beeld "zo goed mogelijk", dat wil zeggen gebruik makend van een objectief evaluatiecriterium, tracht terug te winnen uit een vervormde en door ruis gestoorde versie.
Een juiste identificatie van de soort vervorming en type ruis (gebaseerd op kennis van het onderliggend fysisch proces) en een geschikt statistisch mathematisch model van het beeld zijn de basis voor een "zo goed mogelijk" resultaat.
Beeldverbetering (enhancement) daarentegen is een verzamelnaam voor niet zozeer op modellen alswel op empirie gebaseerde technieken om de voor een bepaald probleem relevante beeldinformatie te benadrukken en de irrelevante details te onderdrukken (subjectieve criteria). We denken o.a. aan het opscherpen van de contouren en het weergeven van het beeld in pseudokleur. Het doel ervan is de interpretatie voor een menselijke waarnemer te vergemakkelijken.
2.4. Beeldcodering
Het gedigitaliseerde beeld (bijv. 512x 512 pixels, 8 bit) omvat een groot aantal bits, tenminste, als we alle pixels onafhankelijk van elkaar beschouwen. In een werkelijk beeld zijn naast elkaar liggende pixels meestal sterk afhankelijk (gecorreleerd) zodat het beeld met aanmerkelijk minder bits exact te beschrijven valt. Door efficiënt met de lokale of globale statistiek van het beeld om te springen kunnen we een compressie van de data bereiken zonder verlies aan beeldinformatie. We spreken van het verwijderen van statistische redundantie (overvloedigheid): coderen zonder verliezen.
20 8eeldanalyse
Naast de statistische redundantie speelt bij beelden psycho-visuele redundantie een rol. Dit betekent dat enige vervorming kan worden toegestaan. We spreken dan van coderen met verliezen: data-reductie.
Bij de beeldcodering komt men veelvuldig twee typen technieken tegen: de transformatie-codering (KLT. Hadamard. Fourier. SLANT) en de lineaire predictie-codering (DPCM). De bedoelde transformaties hebben tot doel de pixels te decorreleren waardoor compressie mogelijk wordt. De verschillende transformaties variëren van "theoretische optimaal maar zeer complex (KLT)" tot "goede" benadering en snelle implementatie mogelijk (SLANT). Bij de lineaire predictie-codering wordt juist gebruik gemaakt van de aanwezige correlatie tussen naburige pixels door iedere pixelwaarde te voorspellen op basis van voorgaande pixels. De compressie wordt bereikt door slechts de predictiefout op te slaan.
Codering van beeldinformatie voor transmissie of opslag zal als gevolg van de voortschrijdende VLSI-technologie steeds meer toegepast kunnen worden.
2.5. Beeldsegmentatie
Hoe goed ook de beeldvoorbewerking is ingericht. met de beeldsegmentatie wordt de eerste echte stap gezet naar de beeldanalyse (het automatisch interpreteren van datgene dat in het beeld vervat is). Tijdens de beeldsegmentatie wordt het beeld opgedeeld in relevante - betekenisvolle - deelgebieden (objecten): een partitie van het beeld in betekenisvolle. gelabelde componenten. In zijn eenvoudigste vorm: het scheiden van voorgrond en achtergrond. De voorgrond. een object. is een min of meer homogeen gebied dat zich in eigenschappen (bijv. de helderheid) onderscheidt van een ander min of meer homogeen gebied. de achtergrond.
Het opsporen van homogene gebieden in een beeld kan principieel op tweeërlei manieren gebeuren. We sporen het gebied zelf op. of we sporen de discontinuïteiten tussen de gebieden op. de randen.
Tot de eerste categorie behoort het "drempelen" van een beeld. Overschrijdt de helderheid van een pixel een zekere drempelwaarde dan wordt het pixel gerekend te behoren tot de verzameling heldere pixels. bijvoorbeeld het object. Het kiezen van een geschikte drempel. liefst automatisch (op basis van het histogram van het beeld). meestal interactief en bijna nooit a priori. is op zich al een groot probleem. In veel gevallen echter zal een gekozen drempel niet tot een betekenisvolle segmentatie leiden omdat het kontrast tussen voorgrond en achtergrond over het beeld sterk kunnen variëren. Ook de techniek van gebiedsaangroeiing (region growing) behoort tot deze categorie. Sequentieel worden pixels. op grond van eigenschappen. aan een zich uitbreidende verzameling connectieve pixels toegevoegd.
De tweede categorie omvat alle randopsporende operatoren. Voor iedere pixel wordt. op grond van omliggende pixels. nagegaan in hoeverre we te maken hebben met een
Beeldanalyse 21
rand-pixel. De operatoren hebben dus een differentierend karakter. Nabewerking is vrijwel altijd nodig omdat de verzameling gedetecteerde rand-pixels nog niet perse de gesloten contour van een gebied oplevert, hetgeen het doel was.
2.6. Binaire beeldoperaties
...
De geschetste segmentatieprocedure leidt tot een plattegrond van gelabelde
componen-ten, waarbij ieder pixel wel of niet behoort tot een van de componenten. Het gegeven voorbeeld van het scheiden van object en achtergrond resulteert dus in object-pixels (we geven ze de waarde 1) en achtergrond-pixels (we geven ze de waarde 0). Het resultaat is dan een binair beeld: een beeld waarin ieder pixel of de waarde 1 of de waarde 0 bezit. De segmentatie behoeft echter geenszins perfect te zijn.
Binaire beeldoperaties maken het mogelijk de verkregen segmentatie te verbeteren
zoals het dichten van gaten, objecten de juiste afmeting geven, objecten van elkaar losmaken of juist aan elkaar verbinden en gewenste objecten selecteren op grond van vormkenmerken. Een grote verscheidenheid aan logische operaties staan daarbij ter beschikking. Ook het bepalen van de contour, het sluiten van de contour, het bepalen van het skelet van een object en dergelijke behoren tot het werkterrein van de binaire beeldoperaties.
2.7. Meten aan beelden
Nadat het beeld opgedeeld is in de er in voorkomende objecten moet vervolgens ieder object beschreven worden. Dit is de tweede stap op weg naar automatische interpretatie van het beeld. We spreken van een beschrijving in objectkenmerken:
vormkenmerken en gebiedskenmerken. Tot de klasse van vormkenmerken behoren onder andere geometrische eigenschappen als lengte, oppervlakte, afstand en vorrn-eigenschappen als locatie van krommingspunten, curvatuur, rondheid en convexiteit. Tot de klasse van gebiedskenmerken behoren onder andere de helderheidsmassa, de lokale helderheidsdistributie (textuur).
Het meetproces geschiedt echter op basis van een gedigitaliseerde representatie: het digitale beeld. De te meten parameter, zeg de oppervlakte van het object, is een uitspraak over het originele object, terwijl ze is gemeten aan een gedigitaliseerde - in een twee-dimensionale projectie verkregen - representatie. De vraag is dan, hoe nauwkeurig een "digitale" oppervlakte werkelijk is ten opzichte van de werkelijke oppervlakte van het oorspronkelijke object.
Het bepalen van de "digitale" diameter van een gesegmenteerd bloedvat is goed mogelijk, maar is deze bepaling een goede schatting van de diameter van een echt bloedvat? Heel vaak is een model van de werkelijkheid, het beeldvorrnend systeem en het digitaliseringsproces nodig om de schatting te corrigeren.
F
22 Beeldanalyse
tegenover de vraag hoe nauwkeurig, hoe betrouwbaar een en ander kan gebeuren en in hoeverre correctie op basis van een model van de werkelijkheid mogelijk is.
2.8. Patroonherkenning
Meten is weten! Op grond van de gemeten object-kenmerken moet het nu mogelijk zijn de gedetecteerde objecten (verkregen door segmentatie) in een aantal klassen in te delen, classificeren. Bij bloedonderzoek kunnen dit bijvoorbeeld de klassen "goed/ normaal" en "afwijkend/abnormaal" zijn. Hebben we bijvoorbeeld uit gedigitaliseerde radarbeelden de grenzen van agrarische percelen bepaald, dan is het classificeren van de op deze percelen verbouwde gewassen het doel (en het daarmee komen tot betrouwbare oogstvoorspelling het uiteindelijke doel).
De gemeten object-kenmerken beschrijven (representeren) het object, op grond waarvan een statistische of een structurele beslisser tot klasse-indeling kan komen. Objecten (patronen) worden dus herkend en gelabeld op basis van gemeten eigenschappen. De patroonherkenning omvat het vinden van doelmatige oplossingen voor een groot aantal deelproblemen: welke en hoeveelobjectkenmerken zijn nodig en nuttig om tot optimale beslissingen te komen? Hoe moet het patroonherkennend systeem (het beslissingsmechanisme) worden geleerd om toekomstige objecten juist te classificeren en hoe is het gedrag van het uiteindelijke systeem te evalueren (hoeveel fouten en welke fouten zijn te verwachten)?
Het beslissingsmechanisme zelf is een procedure van vergelijken (matchen). Hierbij wordt het ingevoerde object (al dan niet beschreven door gemeten eigenschappen) vergeleken met reeds "geleerde" objecten afzonderlijk, of wordt het ingevoerde object vergeleken met "geleerde" karakteriseringen van gehele populaties van de ' verschil-lende objectklassen. In ieder geval, de beste "match" wint.
We zien, tenslotte, dat het resultaat van de uiteindelijke klasseindeling van de in het beeld vervatte objecten een produkt is van belichting, beeldopnemer, voorbewer-kingen, beeldverduidelijking, beeldsegmentatie, binaire beeldoperaties en de wijze van het meten aan het beeld. Het optimaliseren van het totaal-systeem is dus geen eenvoudige zaak, niet mathematisch toegankelijk en dus partieel van experimentele aard.
2.9. De implementatie
Het geschetste totaal-systeem kent vele problemen in termen van hardware- en software-implementatie. Deze hangen nauw samen met de beoogde toepassing. Bezien we bijvoorbeeld een toepassing in het veld van de industriële robotica: automatische visuele industriële inspectie. Hierin worden taken onderscheiden als: verificatie, identificatie van (deel-)produkten, sorteren van produkten, bewaking van kwaliteits-kiassen, het lezen van etiketten, labels, bar-codes en dergelijke. De werkomgeving en
Beeldanalyse 23
de "real time" -aspecten leggen grote beperkingen op. Robuuste beeldopname (verlich-ting, sensoren, optiek) maar vooral eisen aan snelheid van verwerken zijn de logische consequenties.
Seriële hardware zal vrijwel altijd te langzaam zijn. Parallellisme, snelle hardware, grote buffers, direct adresseerbare beeldgeheugens en dergelijke maken real-time oplossingen mogelijk. Moderne architecturen gaan in de richting van "multi-processor"-architectuur (operator-niveau) en "processor arrays" op pixel-niveau. Ook de software zal hand in hand gaan met de moderne architectuur. Routines voor analysetaken op macro-niveau en voor de operaties op micro-niveau. Speciaal ontwikkelde beeldtalen kunnen voor specifieke toepassingen een verdergaande versnelling opleveren.
Er is reeds gewezen op het feit dat veel toepassingen nog een aanzienlijke gebruikersinteractie vergen. Men dient daarbij dan een keuze te maken tussen de "snelle" commandotaal (weinig steun voor de gebruiker) en de relatief "langzame" menustructuur (met veel steun voor de gebruiker). Economische hardware en software zullen in de komende decade de dragers zijn voor afdoende en efficiënte oplossingen in werkelijke toepassingen.
24 Beeldanalyse
25
3
Patroonherkenning
Wij hebben in het voorgaande de patroonherkenning beschouwd als onderdeel van de beeldanalyse. Veel te herkennen objecten (patronen) zijn nu eenmaal in een of ander beeld vervat. Wij zagen daarbij dat meten aan verschijnselen en het op grond van die metingen indelen in klassen van die verschijnselen de essentiële ingrediënten waren voor interpretatie van het beeld als zodanig.
Statistische patroonherkenning kan men omschrijven als een objectieve techniek om bepaalde wetmatigheden in de metingen op te sporen. Bij het classificeren wordt geprobeerd die elementen uit de metingen te halen die karakteristiek zijn voor een bepaald onderscheid.
De theorie en praktijk van het ontwerpen van patroonherkennende systemen wordt in belangrijke mate gevoed door vakgebieden als: zuivere en toegepaste wiskunde, de technische wetenschappen, taalkunde, computerkunde, kunstmatige intelligentie, terwijl de invloed van o.a. de biologie, de psychologie en medische wetenschappen zowel theorievormend als gebruikers geöriënteerd is. Voor wat de laatste categorie betreft is het goed om op te merken dat de biologische perceptieve- en informatie-verwerkende mechanismen zeer complex, grotendeels onbegrepen en voorzover ten dele begrepen, nauwelijks implementeerbaar zijn. Een replica van een biologisch patroonherkennend systeem is derhalve niet voorhanden. In dat licht hanteren wij hier dus een veel engere omschrijving van het begrip patroonherkennend systeem:
Een patroonherkennend systeem omschrijven wij als een informatieverwerkend systeem dat in staat is om een hoeveelheid invoergegevens (meetgegevens) correct in een aantal klassen onder te brengen, een beschrijving ervan te geven, een label er aan toe te kennen of een aan de klasse aangepaste actie te laten plaats vinden al naar gelang de toepassing.
Als invoergegevens beschouwen wij uiteenlopende meetbare signalen, beschrijvingen van objecten of toestanden welke verkregen worden door een of meer te gebruiken sensoren.
26 Patroonherkenning
3.1.
Toepassingen
Voor automatisch herkennende systemen bestaan zeer vele toepassingsmogelijkheden. Het dient echter gezegd te worden dat de complexiteit van gerealiseerde herkennings-systemen relatief groot is, zeker indien wij de complexiteit plaatsen tegenover het profijt en de nog beperkte mogelijkheden van het systeem. Niettemin is de grote belangstelling voor dit vakgebied gewettigd; zowel de theorievorming als de imple-mentatie-mogelijkheden.zijn nog steeds in stijgende lijn. Het gepresteerde in w'n drie decaden patroonherkenning rechtvaardigt grote verwachtingen voor de toekomst waarin het aantal toepassingsgebieden zich nog sterk zal uitbreiden. De opsomming van toepassingsgericht onderzoek welke wij hierna laten volgen is niet uitputtend. Van een groot aantal hiervan zijn of operationele prototypen, of operationele pakketten programmatuur of commercieel verkrijgbare systemen gerealiseerd.
Toepassingen Biomedisch
o
EEG en ECG signaleno
chromatografieo
scheiden van proteïne deeltjeso
interpretatie röntgenopnamen - nieren -maag - borst - hartrnarkers - angiogrammeno
interpretatie nucleaire opnamen - hart-longen
o tomografie met behulp van röntgen en ultrageluid
o
automatische classificatie van chromosomeno
diverse automatische classificaties in celonderzoek Spraako classificatie van phonemen
o classificatie van geïsoleerde woorden (FORmAN, cijfers) o Interpretatie van korte zinnen
o Identificatie van sprekers
o
Interpretatie lopende spraak (+ context)Letters en cijfers
o Automatische classificatie van cijfers (giro/bank) o Katanana en Kanji tekens (Chinees/Japans)
Patroonherkenning 27
o
FORTRAN (symbolen + context) o gedrukte tekst o handgeschreven tekst Handtekeningen o (beweging) Vingerafdrukken Remote sensingo
automatische iriterpretatie van vliegtuig/satelliet-opnameno classificatie van gewassen en voorspelling/bewaking van groei, ziekte en oogst
o automatisch aanmaken van landkaarten
o milieucartering van o.a. stedelijke- en bosgebieden Meteorologie
o automatische interpretatie van wolkenformaties Industrieel
o Inspectie van objecten
o gaafheid van pillen en tabletten
o detecteren van veranderingen in vezelstructuren
o
controle VLSI-maskerso produkt controle en assemblage
o controle bedrukte bedrading
o lezen verpakkingslabels en magazijncontrole
o inspectie van oppervlakten (staaVpapier/textiel)
o controle onderhoud (waarschuwing fouten, overschreiding toleranties).
Ondanks de diversiteit van al deze toepassingsgebieden is voor wat de classificatie betreft een gemeenschappelijke opzet te geven: segmentatie en representatie van de invoergegevens, het extraheren van karakteristieke grootheden hieruit (kenmerken), het VOfffien van model van deze kenmerkinformatie (generaliseren) en het beslissen op grond van deze informatie.
Een aantal problemen vraagt zeer toepassingsgerichte aandacht: 1. structuur van het systeem
2. sensoren ten behoeve van het systeem 3. leren van het systeem
4. classificeren
5. evalueren van het systeem
6. implementatie van het systeem (hardware/software).
28 Patroonherkenning
3.2.
Structuur van een patroonherkennend systeem
De organisatie (weergegeven in figuur 3.1) doet sterk denken aan de organisatie van
biologische perceptieve mechanismen, namelijk een opbouw in lagen: een sensorlaag - hierin kunnen verschillende soorten sensoren gelijktijdig informatie afgeven - ge-volgd door een laag waarin de informatie in de een of andere vorm wordt gerepre-senteerd (numeriek, structureel, ordenings-relaties).
SENSOR(EN)
r
J..ruwe (multi-)sensor data
J.. (i) bewerking
___ L_
J.. representatie in kenmerken enI
primitieven .j, bewerking J.. classificatie (i i) J..1
relaties context .j, eindclassificatieFiguur 3.1. De organisatie van patroonherkennend mechanisme.
Op dit niveau spreken wij van representatie in de vorm van kenmerken of primitieven.
Technisch gesproken roept dit niveau een aantal bijzonder moeilijke vragen op: wat zijn voor de gegeven toepassing geschikte kenmerken/primitieven en hoe dienen ongelijksoortige invoergegevens geschaald/genormeerd te worden. Alle theorie ten spijt treedt hier de inventiviteit van de onderzoeker/ontwerper op de voorgrond. Ten slotte volgen een aantal classificatieniveaus. Per niveau hoeft niet noodzakelijkerwijs eenzelfde soort beslissingen te worden genomen. Het organisatieschema valt uiteen in twee elkaar overlappende deelsystemen, namelijk:
«)
van sensor tot en met representatie en@
van representatie tot en met de Ultemdelijke classificatie.In veel gevallen worden hierin tegenstrijëfige eisen gesteld. Bovendien blijken (i) en (ii) in hoge mate afhankelijk van elkaar te zijn.
Voor deelsysteem (i) moet per toepassing een optimaal antwoord gevonden worden voor onder meer de kwantisering, de discretisering, de te hanteren bandbreedte, de toelaatbare signaal/ruisverhouding, hoe sensorvervorming te compenseren en als
Patroonherkenning 29
operationele randvoorwaarde: wat is de toelaatbare acquisitietijdsduur.
Voor deelsysteem (ii) zoeken wij antwoorden op de vraag hoe groot het geheugen moet zijn in de leerfase en in de operationele fase, welke classificatietijdsduur toelaatbaar is mede in relatie tot operationele randvoorwaarden als percentage correcte classificaties, percentage terugwijzingen, het aantal klassen en het aantal kenmerken of primitieven.
Zelfs indien wij uitgaan van een sensor, een representatievorm en een classificatie-niveau, dan nog hebben wij te maken met een uiterst complex optimaliserings-probleem met als randvoorwaarde dat de som van aquisitietijdsduur en classificatie-tijdsduur een gegeven konstante T is. Uiteraard bewandelt de onderzoeker/ontwerper de "trial and error" methode om voor zijn specifieke toepassing tot een oplossing te komen.
3.3. Sensoren
Het vinden van de juiste type sensor is voor iedere toepassing een groot (en voor het resultaat bepalend) probleem. Hierbij gaat het proces van het meten en de fysica hand in hand. In de praktijk van de patroonherkenning is veel aandacht nodig voor de karakteristieke fysische eigenschappen van sensoren.
Slechts voor een beperkt aantal toepassingen is een standaard TV-opnemer een geschikte sensor of is de bandbreedte van een microfoon het enige criterium om te kunnen voldoen als akoestische sensor. Bij het beoordelen van de sensor moeten wij ons tenminste verdiepen in:
~ de gevoeligheid en de stabiliteit
~ de signaal/ruisverhouding (triviaal) en vooral de veranderingen in signaal/ruisver-houding
l8(
welke vervorming er kan ontstaan~ hoe te kompenseren voor frekwentiekarakteristiek, optredende rotatie/fasedraaiing, schalingseffecten, perspectief e.d.
~ we·lke verzakigingseffecten op kunnen treden
tQ' hoe de sensor te kalibreren is.
Het is duidelijk dat onderzoek aan het fysische mechanisme van de signaalbron vooraf moet gaan aan het realiseren van de juiste sensor.
3.4. Het leren van een systeem
Het eigenlijke patroonherkennend systeem wordt in het algemeen ontworpen op basis van een verzameling invoergegevens waarvan alles bekend is, de leeryerzameling.
terwijl ook het gedrag van het systeem kan worden geëvalueerd op basis van een verzameling invoergegevens waarvan evenzo alles bekend is, de testverzamelin~.
30 Patroonherkenning
Onder het leren van een patroonherkennend systeem wordt in de ruimste zin verstaan het in het geheugen opnemen van een karakterisering van de invoer-gegevens per klasse uit de werkelijkheid zo dat het beslissingsmechanisme steunend op deze karakterisering voor de invoergegevens uit de leerverzameling tot een optimaal classificatieresultaat leidt
Feitelijk is dit het proces van het generaliseren van zo goed mogelijk classificeren van de eindige leerverzameling van bekende invoergegevens tot het classificeerbaar maken van oneindig veel onbekende invoergegevens behorend tot dezelfde probleemstelling. De theorievorming voor dit deelprobleem is diepgaand. Het aantal noodzakelijke vooronderstellingen is echter vaak onrealistisch. Het feit dat analytische behandeling veelal correspondeert met de aanname van oneindig grote leer- en testverzamelingen geeft de discrepantie tussen formeel theoretische behandeling en een praktijksituatie goed aan: wij hebben vrijwel altijd te maken met kleine, in feite te kleine, leer- en testverzamelingen. De praktijk wijst uit dat veel ad hoc moet worden opgelost en de mens-machine relatie (interactieve methoden) onontbeerlijk is.
Tijdens de leerfase zullen wij ons daarbij laten leiden door een foutenanalyse in de vorm van het opstellen van zogenaamde verwarringsmatrices. Zo'n verwarringsmatrix heeft de volgende gedaante:
Een verwarringsmatrix Classificatie door systeem
A B C D E Werkelijke klasse A
81
3
7 (leerverzameling) B 90 C 17 53 D 2 85 E 100Een dergelijke matrix leert ons niet alleen hoeveel fouten het systeem maakt maar ook welke verwisselingen tussen klassen (substituties) er optreden. Zo zien wij dat voor klasse C een meer dan toevallige substitutie van klasse A optreedt. Ook al kan het gemiddeld percentage fouten binnen de eisen liggen dan nog kan de "worst case"-substitutie het systeem onaanvaardbaar maken.
In de praktijk hebben wij bovendien veelal te maken met scheve kosten, d.w.z. dat substitutie van A door C niet noodzakelijkerwijs de zelfde kosten, hetzelfde risico, met zich meebrengt als een substitutie van C door A. Hier dienen wij rekening mee te houden door een zogenaamde kostenmatrix in het leerproces mee te nemen. Feit is echter dat het voorgaande impliceert een onvoorwaardelijk vertrouwen in "het representatief zijn" van de leerverzameling voor de werkelijkheid. Anders gezegd: ~
Patroonherkenning 31
moet de onderzoeker/ontwerper nagedacht hebben over: o zijn de klassen wel gedeftnieerd?
o
het aantal klassen?o zijn de klassen ongelijk van grootte? (komt dit tot uiting in de samenstelling van de leerverzameling?)
o is de substitutie-kostenmatrix bekend?
o is de leraar (expert) feilbaar? (dat wil zeggen, bevat de leerverzameling zelf reeds ongewenste substituties?)
o bestaat er unanimiteit indien meer dan een expert wordt geraadpleegt bij het forme-ren van de leerverzameling?
Voor wat betreft de methode van leren zijn twee hoofdtypen aan te merken: (1) een complete leerfase gevolgd door de operationele fa~n (2) ook tijdens de operationele tllse het kennisbeeld in het geheugen van het systeem bij te laten stellen. Het schatten -van kansdichtheden en parameters behoren in het algemeen thuis in type (1); het
schatten van coëfftciënten van polynomiale representaties van discriminant functies
vinden wij in type (1) maar ook in type (2). ~5.
Het operationeel classificeren
Wij hebben in het voorgaande reeds aangegeven dat per toepassing en op grond van een beschikbare leerverzameling invoergegevens (waarvan alles bekend is) tot invulling van de eigenlijke classificator gekomen moest worden. Hieronder was begrepen:
o het bedenken van geschikte kenmerken/primitieven
o het selecteren van effectieve (de meest effectieve) kenmerken (op de feitelijke procedures hiervoor gaan wij in deel 2 in)
o het vormen van een model voor de representatie van de invoergegevens (de leerfase)
o het kiezen van een geschikt beslissingsmodel (statistische beslissingsregels, syntactische beslissingsregels, afhankelijk van representatie van invoergegevens en hoeveelheid beschikbaar leermateriaal)
o het optimaliseren (vooral in samenhang met de structuur van het systeem, de sensoren en het leerproces)
o de (vaak) onontbeerlijke menselijke interactie in het ontwerpen van het systeem. Centraal bij deze overwegingen is de beoordeling van optredende fouten, de kans op een fout en het aantal mogelijke terugwijzingen van die gevallen waarin een toewijzingsbeslissing te marginaal zou zijn.
32 Patroonherkenning
Methodisch bezien kennen wij twee typen classificatoren, de parallelle en de hiërarchische classificator. Beide structuren zijn in figuur 3.2 weergegeven. Gaan wij in beide gevallen weer uit van de klassen A, B, C, D en E dan zien wij dat wij in de parallelle structuur eenmalig gebruik maken van alle kenmerkinformatie en in een stap, na afwegen van alle mogelijke toewijzingsbeslissingen, tot de uiteindelijke beslissing komen (hier klasse D). In de hiërarchische structuur verfijnen wij stapsgewijs de toewijzingsbeslissing waarbij wij keer op keer gebruik kunnen maken van andere kenmerkinformatie. Een optredende fout in welke stap dan ook kan echter in navolgende stappen nimmer meer worden gecorrigeerd. Vooral indien wij een groot aantal klassen hebben en over een ruime sortering van kenmerken beschikken is de hiërarchische structuur aantrekkelijk. Hierstaat echter tegenover dat het vinden van de meest geschikte vertakkingsboom (beslissing sb oom) en het vinden van de meest effectieve kenmerkverzameling voor iedere classificator in ieder vertakkingspunt van de hiërarchische boom ons plaatst voor een uiterst complex optimaliseringsprobleem.
Patroonherkenning 33
Hoewel fonnele methoden beschikbaar zijn voor het oplossen van dit complexe optimaliseringsprobleem vinden wij in de praktijk vrijwel uitsluitend heuristische benaderingen welke langs interactieve wegen tot een meestal sub-optimale structuur leiden.
ABC 0 E
A C 8 C C DOE
Figuur 3.2. De parallelle- en hiërarchische structuur.
3.6.
Het evalueren van het systeemDe uiteindelijke evaluatie van het gedrag van een patroonherkermend systeem is evenals het ontwerpen van het systeem niet eenvoudig. Voorzover een schatting van het percentage correct geclassific~erde objecten van betekenis is voor de gebruiker, bepaalt het in ieder geval het gemiddeld gedrag in de toekomst in de operationele fase. In het algemeen zullen wij als volgt met dit probleem te maken hebben: gegeven N objecten waarvan de juiste classificaties bekend zijn, gevraagd hiermee het patroonherkermend systeem te ontwerpen en te evalueren. Een formeel theoretische behandeling is in het algemeen alleen voorhanden indien N ~ 00: asymptotisch gedrag. In de praktijk is N zeer eindig en is N ~ 00 nooit geldig. Zowel bij het leren
als evalueren treden de zogenaamde "small sample size"-effecten op.
Gebruiken wij de N objecten voor zowel het leren als het testen dan verkrijgen wij een resultaat dat te optimistisch is. Verdelen wij N objecten in NI leerobjecten en NI
testobjecten (N = NI + NI) dan verkrijgen wij een resultaat dat doorgaans pessimistisch is. Voor NI ~ 00 en NI ~ 00 zullen beide resultaten asymptotisch raken
aan de werkelijke foutkans. Het ligt voor de hand dat het onderzoek hieromtrent zich gericht heeft op de vraag hoe NI en NI te kiezen en hoe van alle permutaties ervan gebruik te maken opdat een zo zuiver mogelijke schatting van de foutkans met een zo gering mogelijke variantie verkregen kan worden. Bestaande procedures maken echter duidelijk dat men zuiverheid zal moeten afruilen tegen een geringe variantie. De praktijksituatie (toepassing) zal duidelijk moeten maken waaraan de voorkeur gegeven
34 Patroonherkenning
dient te worden. Er is al gewezen op het feit dat ook de de "worst case" classificatie uit de verwarringsmatrix een aanwijzing kan zijn hoe (on)bruikbaar een systeem kan zijn. Een waarschuwing derhalve is op zijn plaats: vergelijking van gelijksoortige patroon-herkennende systemen op grond van gerapporteerde classificatie percentages is een hachelijke zaak, zeker indien men niet weet hoe deze scores geschat zijn.
3.7.
Architectuur en algoritmen
Zodra men tot implementatie van een patroonherkennend systeem overgaat is men gedwongen binnen de grenzen van het mogelijke te blijven. Dit geldt in bijzondere mate VOOI de processortijd en omvang van machinegeheugen. In figuur 3.3 is een en ander schetsmatig weergegeven.
PROCESSORTI JO
1(1)
.. _
.. -i
_··_'·_··-
"
1
CAPACITEITi
i
L. ... (2) GEHEUGENFiguur 3.3. Implementeerbaarheid: noodzaak voor probleemgerichte architectuur en snelle algoritmen.
De oplosbaarheid van een probleem kent twee uitersten:
(i) met een minimaal omvang van machine geheugen is ieder herkenningsprobleem oplosbaar op voorwaarde van oneindig lange processortijd;
omgekeerd,
(ü) met minimale processortijd is ieder herkenningsprobleem oplosbaar op voor-waarde van een oneindig grote geheugencapaciteit.
Patroonherkenning 35
De te implementeren oplossing bevindt zich tussen (i) en (ii) in en zal vaak: alleen mogelijk zijn indien een geschikte architectuur gevonden kan worden en snelle algoritmen tot de mogelijkheden behoren.
Wij noemen in dit verband slechts: Architectuur
o serieel (meestal te langzaam)
o parallel (in veel gevallen ideaal)
o "pipelining" (vaak: een aanvaardbare tussen oplossing) Algoritmen
o recursief rekenen
o
residu rekeneno rekenen in priemgetallen en ondeelbare polynomen
o snelle zoekalgoritmen - dynamisch programmeren - "branch and bound" -methoden
o snelle sorteeralgoritmen.
3.8.
Methoden van herkennen: statistische- en structurele methodenIn het voorgaande zijn wij nog maar nauwelijks ingegaan op de methoden van het patroonherkennen zelf. Wij zullen hier summier een tweetal modellen de revue laten passeren.
Van oudsher is de patroonherkenning opgevat als een statistisch probleem. Dat was niet onlogisch omdat een klasse van patronen opgevat kon worden als de verzameling van een groot aantal realisaties van een stochastisch proces waarvoor immers zou kunnen gelden:
Patroonrealisatie
=
patroonprototype + ruisDeze denkwijze leidde er toe dat een patroonrealisatie afgebeeld behoorde te worden als een punt een een k-dimensionale ruimte. Een verzameling realisaties beeldde zich daarbij af als een wolk van punten waarvan het middelpunt enigermate fungeerde als prototype. Hiermee was het statistisch model een feit geworden en het dwong de onderzoeker te denken in twee fundamentele richtingen.
a. Representatie: het afbeelden van een patroon in een k-dimensionale metrische ruimte (abstractie).
b. G!,neralisatie: het karakteriseren in statistische termen van de lokale dichtheid van een wolk van afbeeldingspunten van patroonrealisaties (het begrip afstand is essentieel voor het invoeren van het begrip dichtheid).
36 Patroonherkenning
NB. Het karakteriseren van het onderliggend kansmechanisme op basis van eindig aantal afbeeldingspunten (leerverzameling) is precies het reeds eerder geformuleerde proces van leren.
In figuur 3.4 is een voorbeeld gegeven van objectrepresentatie: de patronen worden afgebeeld in een 8-dimensionale vector. Deze vector (kenmerkvector) legt het afbeel-dingspunt in de 8-dimensionale ruimte vast. In figuur 3.5 is een (2-dimensionaal) voorbeeld gegeven van een karakterisering van het onderliggend kansmechanisme (kansdichtheidsfuncties) voor ieder van de te beschouwen klassen (1,2) Voor iedere klasse (1,2) is tot een normale kansdichtheidsfunctie N(Pi, (ii) besloten waarin
JIJ
het klassemiddelpunt is voor de klasse i = 1 enJI2
het klassemiddelpunt van klasse i = 2, terwijl de varianties in het Xt.x2-vlak (de kenmerkruimte) per klasse gegeven is door (ii (i = 1,2) .•(41.37.20.31.28.23.5.8)
Figuur 3.4. Patroonrepresentatie in een 8-dimensionale ruimte.
•
~ • • ,J •.
•...
'
..
• I,
.
• • • (I • " 0 0.1 0 o • I,Figuur 3.5. Karakterisering van het onderliggend kansmechanisme op basis van een eindig aantal afbeeldingspunten (leerverzameling) door Normale kansdichtheden.
Het feitelijke beslissingsmechanisme is dan: voor ieder afbeeldingspunt (een mogelijk onbekend patroon) kan worden nagegaan door welk van de onderliggende kans-mechanismen dat patroon met de grootste waarschijnlijkheid is voortgebracht. Het
Patroonherkenning 37
patroon wordt dientengevolge toegewezen aan de bijbehorende klasse (= het toeken-nen van een der klasselabels). Hiermee is de essentie van het statistisch model weergegeven.
Van geheel andere aard is het structurele of syntactische model. Gestimuleerd door de problematiek van onder andere beeldherkenning en scene-analyse is de syntactische patroonherkenning ontwikkeld. Met de nadruk op de structurele beschrijving van objecten probeert de syntactische patroonherkenning een analogie te trekken tussen de structuur van objecten en de syntax van een taal. Deze analogie is aantrekkelijk door de beschikbaarheid van de mathematische linguistiek als hulpmiddel. De term syntac-tische patroonherkenning refereert primair aan de objectbeschrijving, de syntax-analyse (de eigenlijke classificatie) en de grammaticale inferentie (het leerproces: het opstellen van grammaticale regels op grond van aangeboden symboolrijen van leerobjecten). Om een object te beschrijven moeten wij het object segmenteren en tevens de primitieven extraheren. Met andere woorden: elk voorbewerkt object wordt gesegmenteerd in deelobjecten en vervolgens in objectprimitieven gebaseerd op van te voren gespecificeerde syntactische- of compositie-operaties. In figuur 3.6 is de code afspraak voor de structurele objectprimitieven weergegeven. De beschrijvingen van de beide objecten ontstaan dan door een concatenatie-operator. Op deze manier ontstaan symboolrijen. 6 (5,6,7,0,1,1,1,0,6,6) 4 5
°
2 6°
SyntactischeI
code ~ 7o
Figuur 3.6. Syntactische of structurele patroonrepresentatie.De beslissing of een symboolrij al of niet syntactische correct is (dat wil zeggen dat hij behoort tot de klasse van objecten beschreven door een gegeven syntax of gram-matica) wordt gemaakt door de syntax-analyse of parser (ontleder). De syntax-analyse kan gewoonlijk een complete syntactische beschrijving van het object produceren in termen van een ontleding of ontledingsboom van het object indien deze syntactisch correct is. Anders wordt het object voor deze klasse verworpen en vervolgens geanalyseerd op basis van andere gegeven grammatica 's die de overige mogelijke objectklassen beschrijven.
38 Patroonherkenning
3.9.
Literatuur
Sinds het begin van de statistische patroonherkenning (rond 1960) beloopt het aantal tijdschriftartikelen op dat gebied, alleen al in de Engelse taal, in de duizenden. Deze artikelen verschenen - en verschijnen nog - in een aantal bekende internationale tijdschriften, wals:
D IEEE Trans. on - Information Theory
- Systems, Man and Cybernetics
- Pattern Analysis and Machine Intelligence - Knowledge Engineering.
D Proceedings of the IEEE.
D IEEE Expert.
D Pattern Recognition, Pergamon Press.
o Pattern Recognition Letters, North Holland.
o Computer Vision, Graphics and Image Processing, Academie Press.
D International Journalof Pattern Recognition and Artificial Intelligence, World Scientific.
Een viertal artikelen, Nagy (1968) [1], Kanal (1974) [2], Fu (1980) [3] en Chen (1988) [4], geeft een terugblik op de ontwikkelingen van het vakgebied der patroon-herkenning en een overzicht van wat tot dan toe daarin bereikt is. Vanaf 1970w;.:fen groot aantal handboeken en studieboeken op het gebied van de statistische en structurele patroonherkenning verschenen. Een aantal hiervan zijn voor de in dit boek opgenomen hoofdstukken van groot belang voor verdere studie en worden hieronder genoemd.
Voor de hoofdstukken 4,5,6,7,8 en 9
E.K. Fukunaga (1972) [5], Introduction to statistical Pattern recognition, Academie Press
C.H. Chen (1973) [6], Statistical Pattern Recognition, Hayden Book Co., Rochelle Park,NJ
R.O. Duda & P.E. Hart (1973) [7], Pattern Classification and Scene Analysis, Wiley. P.A. Devijver & J. Kittler (1983) [8], Pattern Recognition, a Statistical Approach, Prentice Hall.
Voor hoofdstuk 10
T. Pavlidis (1977) [9], Structural Pattern Recognition, Springer.
Gonzalez & M.G. Thomason (1978) [10], Syntactic Pattern Recognition, Addison-Wesley.
Voor hoofdstuk 11
Patroonherkenning 39
Chronologisch literatuuroverzicht patroonherkenning
1955 1960 1965 multivariate analyse [13] karakterherkenning
l
[14] statistische beslissingstheorieI
spraakherkenning ~ [15] statistische classificatie (h 4, 5, 6) [19,1 16] [21]-+-Bayes leren en max. likelihood schatten
[1]
1
~
keome,k,~
'
,";'
(h 7) (2211970
I
1
schatten van de foutkans (h 8) [26] naaste-nabuur regel (h 6) 1 [27] [2]
I
o
[28,29] [31] 1975 [33, 34, 35, 37] [3] 1980~
1985 [30] syntactische herk. (h 10) clusteranalyse (h 11)I
[40, 41, 42] 1 1 [38] [39] (43)I
I
I
[45] [46] [47) (48)~
context (49)1
kennisgestuurde systemen (h 13)40 Patroonherkenning
Voor hoofdstuk 12
J.C.Bezdek (1980) [12], Pattern Recognition with fuzzy objective function algo-rithms, Plenum.
Een aantal "key papers" voor de ontwikkeling van de patroonherkenning zijn in het chronologisch literatuuroverzicht ondergebracht. Zij vormen als het ware de ruggegraat van de patroonherkenning. Het chronologisch overzicht geeft een idee omtrent de ontwikkeling van het vakgebied in de tijd, een verwijzing naar de hoofdstukken zoals ze in dit boek zijn opgenomen en die artikelen welke daarbij van grote invloed zijn geweest
Literatu urlijst
Overzichtsartikelen[1] G. Nagy (1968), State of the art in Pattern Recognition, Proc. IEEE, Vol. 56,
pp. 836-862.
[2] L. Kanal (1974), Patterns in Pattern Recognition: 1968-1974, IEEE Trans. on
Information Theory, Vol. IT-20,6, pp. 697-722.
[3] K S. Fu (1980), Recent Developments in Pattern Recognition, IEEE Trans. on
Computers, Vol. C-29, 10, pp. 845-854.
[4] C.H. Chen (1988), Statistical Pattern Recognition - early developments and recent propers, International Journalof Pattern Recognition and Artificial
Intelligence, Vol. I, nr. I, pp. 43-50.
Leerboeken
[5] E.K. Fukunaga (1972), Introduction to statistical Pattern recognition, Academic
Press
[6] C.H. Chen (1973), Statistical Pattern Recognition, Hayden Book Co., Rochelle
Park, N.J
[7] R.O. Duda & P.E. Hart (1973), Pattern Classification and Scene Analysis,
Wiley.
[8] P.A. Devijver & J. Kittler (1983), Pattern Classification, a Statistical Approach,
Wiley.
[9] T. Pavlidis (1977), Structural Pattern Recognition, Springer.
[10] Gonzalez & M.G. Thomason (1978), Syntactic Pattern Recognition,
Addison-Wesley.
[11] A.K. Jain & R.C. Dubes (1988), Algorithms for Clustering Data, Prentice Hall.
[12] J.C.Bezdek (1980), Pattern Recognition with fuzzy objective function algo-rithms, Plenum.
Statistisch naslagwerk
[13] T.W. Anderson (1958), An Introduction to Multivariate Statistical Analysis,
Patroonherkenning 41
Sleutelartikelen
[14] C.K. Chow (1957), An optimum character recognition system using decision functions, IEEE Trans. Computers, 6, pp. 247-254.
[15] G.S. Sebestyen (1960), Classification decisions in pattern recognition systems, Technical Report, 381, MIT.
[16] G.S. Sebestyen (1962), Decision-making Processes in Pattern Recognition, The
Macmillan Company, New York.
[17] P.M. Lewis (1962), Characteristic selection problem in recognition systems,
IEEE Trans. fuformation Theory, 8, pp. 171-178.
[18] T. Marill and D.M. Green, On the effectiveness of receptors in recognition systems, IEEE Trans. fuformation Theory, 9, pp. 11-17.
[19] D. Braverman (1961), Machine learning and automatic pattern recognition,
Stanford Electronics Labs. Technical Report, 2003-1.
[20] W. H. HighIeyman (1962), The design and analysis of pattern recognition experiments, BeU System Technica! Journal, pp. 723-744.
[21] D.B. Cooper and P.W. Cooper (1964), Nonsupervised adaptive signal detection and pattern recognition, fuformation and Control, 7, pp. 416-444.
[22] T.M. Cover and P.E. Hart (1967), Nearest neighbour pattern classification,
IEEE Trans. fuformation Theory, 13, pp. 21-27.
[23] G.F. Hughes (1968), On the mean accuracy of statistical pattern recognizers,
IEEE Trans. fuformation Theory, 14, pp. 55-63.
[24] Y.C. Ho and A.K. Agrawala (1968), On Pa,ttern Classification Algorithms: Introduction and Survey, Proc. IEEE, Vol. 56, pp. 2101-2114.
[25] L. Kaval and B. Chandrasekaran (1968), On dimensionality and sample size in statistical pattern classification, Proc. of 1968 National Electronic Conference,
Chicago.
[26] T. Lissack and K.S. Fu (1972), A separability measurefor feature selection and error estimation in pattern recognition, Technical Report TR-EE-72-15, School
of Electric Engineering, Pardue University, W. Lafayette, Ind.
[27] D.H. Foley (1972), Considerations of sample and feature size, IEEE Trans.
fuformation Theory, 18, pp. 618-626.
[28] J.W. Sammon (1969), A nonlinear mapping for data structure analysis, IEEE
Trans. Computers, 18, pp. 401-409.
[29] M.R. Anderberg (1973), Cluster Analysis for Applications, Academic Press,
New York.
[30] P.A. Devijver (1974), On a new class of bounds on Bayes risk in multihypothesis pattern recognition, IEEE Trans. Computers, 23.
[31] G.T. Toussaint (1974), Bibliography on estimation ofmisc/assification, IEEE
Trans. fuformation Theory, 20,4, pp. 472-479.
Ik
42 Patroonherkenning
the Karhunen-Loeve expansion, Pattem Recognition, Vol. 5, pp. 335-352. [33] D.H. Foley and J.W. Sammon (1975), An optimal set of discriminant vectors,
IEEE Trans. on Computers.
[34] C.H. Chen (1976), On information and disetanee measures, error bounds and feature selection, Information Science Joumal, 10, pp. 159-173.
[35] J. Kittler (1977), On the Discrimination Vector Method of Feature Selection, IEEE Trans. on Computers, pp. 6()4...ó06.
[36] T.M. Cover and J.M. Van Campenhout (1977), On the possible orderings in the measurement selection problem, IEEE Trans. on Systems, Man and Cybernetics, Vol. SMC-7, 9, pp. 657-661.
[37] P. Narendra and K. Fukunaga (1977), A Branch and Bound Algorithm for feature subset selection, IEEE Trans. on Computers, Vol C-26, 9, 917-922. [38] E. Backer (1978), Cluster Analysis by Optimal Decomposition of Indueed Fuzzy
Sets, Delft University Press, Delft, The Netherlands.
[39] R.C. Gonzalez & M.G. Thomason (1978), Syntaetie Pattern Reeognition, Addison-Wesley.
[40] J.M. Van Campenhout (1978), On the peaking ofthe Hughes mean reeognition aeeuraey: the resolution of an apparent paradox, IEEE Trans. on Systems, Man and Cybernetics, Vol. SMC-8, 5, pp. 390-395.
[41] R.P.W. Duin (1978), On the aceuraey of statistieal pattern reeognizers, Dutch Efficiency Bureau, Pijnacker, The Netherlands.
[42] L.F. Pau (1978), Finite learning sample size problems, Pattern Reeognition and Signal Processing, ed. C.H. Chen, Sijthoff & Noordhoff, The Netherlands. [43] S.J. Raudys (1979), Determination of optimal dimensionality in pattern
recognition, Pattem Recognition, 11,4.
[44] D.J. Hand (1986), Recent advanees in error ra te estimation, Pattem Recognition, Vol. 4, pp. 335-346.
[45] R. Dubes and A.K. Jain (1981), Clustering methodologies in exploratory data analysis, in Advances in Computers, ed. M.C. Yovits, Academic Press, New York, pp. 113-228
[46] K.S. Fu and Y.S. Yu (1980), Statistieal Pattern Classification Using Contextual Information, Research Studies Press-Wiley.
[47] A.R. Hanson and E. Roseman (1978), Computer Vision system, Academic Press, New York.
[48] J. Kittler and D. Pairman (1985), Contextual pattern reeognition applied to cloud deteetion and identification, IEEE Trans. Geoscience and Remote Sensing 23, 6, pp. 855-863.
[49] A.M. Nazif and M.D. Levine (1984), Low-Ievel image segmentation: An Expert system, IEEE Trans PAMI, 6, 5, pp. 555-577.
43
Deel 2
4
Inleiding statistische
patroonherkenning
45
Na de algemene beschouwing van het voorgaande deel zullen we nu in detail de werkwijze van het statistisch patroonherkennen beschrijven. Daartoe worden in dit hoofdstuk een aantal termen en technieken geïntroduceerd. In de volgende hoofd-stukken zullen deze dan hun plaats krijgen.
4.1.
Het patroonherkennend systeem
Een waarneembaar fysisch object, bijvoorbeeld een boon, kan worden gerepresen-teerd door een verzameling van metingen aan zijn eigenschappen, bijvoorbeeld de omtrek en het oppervlak van zijn projectie. Metingen aan karakteristieke eigenschap-~armee een object zich kan onderscheiden van andere objecten, bijvoorbeeld bonen van erwten, worden kenmerken genoemd. Kenmerken kunnen ook worden
gevormd door combinaties van metingen. Wanneer van alle objecten dezelfde ken-merk~n bekend zijn kunnen zij worden vergeleken d.m.v. hun representaties in de kenmerkruimte. Deze ruimte wordt opgespannen door langs de assen de kenmerken uit te zetten. In figuur 4.1 is het principe van de kenmerkruimte gegeven voor bonen en erwten gerepresenteerd door de genoemde kenmerken.
Groe~n van gelijksoortige objecten worden klassen genoemd. In dit geval zijn er twee klassen, erwten en bonen. Objecten van dezelfde klasse kunnen door meetruis en door intra-klas-variaties over een gebied verspreid liggen. Meetruis is de fout in de iiiètmg van de kenmerken. Intra-klas-variaties worden veroorzaakt doordat niet alle
-Notaties hoofdstuk 4 x x j(x) E{·) Jl G Var(·) R stochastische variabele stochastische vector kansdichtheidsverdeling van x mathematische verwachting gemiddelde vector covariantiematrix variantie rotatiematrix V N(p.,G) ~ob(.) ~ G p(x) p(x) eigenwaardematrix normale verdeling kans op (-)
schatting van gemiddelde vector schatting van de covariantiematrix kans opx