Technische Universiteit Eindhoven Faculteit Der Werktuigbouwkunde Vakgroep Productietechnologie en Automatisering
Machine Vision als onderdeel van het fabricage proces Literatuurstudie door
B.H.M. Broers
Rapportnummer
WPA-1540
Afstudeerhoogleraar
: Prof. Ir. J.M. van Bragt
Coach
: Ir. A.T.J.M Smals
Eindhoven, Juli 1993
1
Samenvatting
Veel controlerende activiteiten in een fabricage proces worden vaak door de mens verricht. Door de toenemende snelheden van industriele processen is er een steeds groter behoefte ontstaan aan systemen die deze taak van de mens kan overnemen: Machine Vision systemen. De beperkte computer capaciteit wat betreft geheugen en rekensnelheid heeft tot nu toe een algemene doorbraak van vision systemen in de weg gestaan. Een eenvoudig systeem vergt al gauw de nodige computer capaciteit en mocht die al beschikbaar zijn dan wegen de kosten vaak niet op tegen de baten. Gelukkig zijn de ontwikkelingen op computer gebied niet stil blijven staan en die hebben er mede toe geleid dat vision systemen al op kleine schaal worden toegepast. Vooral op het gebied van inspectie. Huidige vision systemen beperken zich vaak tot een specifieke taak en blinken daarmee zeker niet uit als het gaat om flexibiliteit. Om daar in de toekomst verandering in te brengen wordt er veel onderzoek verricht naar universeel inzetbare vision systemen. Ook de koppeling met een CAD-systeem zal in de toekomst tot de mogelijkheden gaan behoren. Veel zal afhangen van de ontwikkelingen van de computer, de grote bottle-neck tot nu toe. De verwachtingen zijn echter hoog gespannen en gezien de vele resultaten uit diverse proefopstellingen, is dat ook zeker gegrond. Dat machine vision systemen in de toekomst niet meer weg te denken zijn uit het fabricage proces is eigenlijk weI zeker, maar hoe ver die toekomst nog weg is, dat weet niemand.
2
Voorwoord
Dit rapport is geschreven in het kader van een literatuurstudie die werd uitgevoerd bij de sectie Specifieke Produktiemiddelen van de vakgroep Produktietechniek en Automatisering van de Technische Universiteit Eindhoven. Deze literatuurstudie is een onderdeel van de onderzoekopdracht welke bedoeld is als voorbereiding op de eindstudieopdracht. Dit verslag is een aanvulling op een eerder uitgevoerde literatuurstudie van S.A. Middelkoop. De onderwerpen die in zijn verslag "Literatuuronderzoek naar toegepaste Machine Vision" (WPA-rapport 1489) aanbod zijn gekomen, zijn hier zoveel mogelijk weggelaten. Voor de leesbaarheid en logische opbouw van dit verslag is dat natuurlijk niet tot het uiterste doorgevoerd. Er zuHen hier en daar weI overeenkomsten zijn maar over het geheel genomen vuHen de verslagen elkaar netjes aan.
Bart Bruers
3
Inhoudsopgave SAMENVAlTING
1
VOORWOORD
2
1. INLEIDING
4
1.1 Waarom Machine Vision?
4
1.2 Menselijke perceptie
5
1.3 Opbouw vision systeem
5
2. LAGE NIVEAU BEWERKINGEN
7
2.1 Image acquisition
7
2.2 Enchancement
8
2.3 Segmentation
11
2.4 Coding
11
2.5 Real-time processing
11
3. HOGE NIVEAU BEWERKINGEN
13
3.1 Patroon herkenning
13
3.2 Kunstmatige Intelligentie
14
3.3 CAD-systemen
17
4. TOEPASSINGSGEBIEDEN
20
4.1 Herkennen
20
4.2 Geleiding
21
4.3 Meten
22
4.4 Inspectie
22
5. TOEKOMSTVERWACHTINGEN
25
LITERATUUR
27
Inleiding
4
1. Inleiding
Het menselijk oog speelt een niet te onderschatte rol in het huidige fabricage proces. Vooral voor inspectie en controle activiteiten wordt veelvuldig gebruik gemaakt van het waarnemendvermogen van de mens. In een poging om het menselijk oog te vervangen door een materieel equivalent is men sinds de jaren '60 bezig met de ontwikkeling van Machine Vision systemen. Ondanks het vele werk dat men in de afgelopen jaren heeft verzet en de resultaten die men er mee heeft bereikt, zijn de mogelijkheden voor de industrie nog beperkt. De vooruitgang die geboekt wordt is in sterke mate afhankelijk van de ontwikkelingen op computer gebied. Te weinig computer geheugen of een te lage rekensnelheid zijn heden ten dagen grote struikelblokken in de verdere ontwikkeling van vision systemen. Industriele processen hebben een zodanig hoge snelheid dat de benodigde data voor het toepassen van een vision systeem de huidige computer capaciteit vaak overtreft. In afwachting van snellere computers probeert men daarom via allerlei technieken de hoeveelheid data zover te reduceren dat de snelheid en het geheugen van steeds minder grote belang zijn, zo snijdt het mes aan twee kanten.
1.1 Waarom Machine Vision? Fabricage-processen worden steeds verder geautomatiseerd, waarbij de invloed van de mens zo veel mogelijk wordt teruggedrongen. De voornaamste redenen daarvoor zijn dat machines in staat zijn sneller en nauwkeuriger te werken, geen last van vermoeidheid hebben, 24 uur per dag kunnen produceren en nooit ziek worden. In de loop der jaren zijn een grote aantallen machines ontwikkeld ter vervanging van de menselijke arbeid. Omdat de mens daarom geen lichamelijk arbeid hoefde te verrichten verschoof zijn taak naar het controleren en eventueel corrigeren van het fabricageproces. Door namelijk in een vroeg stadium fouten te constateren kunnen nabewer-
Inleiding
5
kingskosten en afkeuringskosten tot een minimum worden gereduceerd. Hoe later in een fabricage-proces een fout wordt ontdekt hoe hoger de kosten zijn. Kwaliteits- en veiligheidscontrole zijn in het fabricage-proces daarom onmisbare schakels die een steeds belangrijkere rol gaan spelen. Door de toenemende snelheden van industriele processen ontstond een steeds grotere behoefte aan systemen die ook de controlerende taak van de mens zouden gaan overnemen: Machine Vision Systemen. Niet aIleen voor de snelle industriele processen is een vision systeem nuttig maar ook daar waar een flexibel en betrouwbaar produktie systeem gewenst is. Te denken valt bijvoorbeeld aan een combinatie van een vision systeem met een robot systeem.
1.2 Menselijke perceptie Het waarnemen van beelden aIleen is niet voldoende ook de juiste interpretatie van die beelden is zeer belangrijk. De moeilijkheid ligt hem echter bij de interpretatie. Een mens heeft daar weinig moeite mee, maar om een vision systeem ook deze vaardigheid te geven dat is het grote probleem. Inzicht in de menselijke perceptie kan het probleem echter vereenvoudigen, vandaar dat er veel onderzoek naar is verricht. Via deze onderzoeken is aangetoond dat de menselijke perceptie zich op verschillende niveaus afspeelt. Te onderscheiden valt een laag niveau waar in het onderbewustzijn de contouren, randen en verschillen in intensiteiten worden waargenomen en een hoog niveau waar gelet wordt op de betekenis van het beeld, wat stelt het voor en in welke context moet het worden geplaatst. Deze hierarchische benadering vindt men dan ook over het algemeen terug in vision systemen.
1.3 Opbouw vision systeem Machine vision systemen zijn in het algemeen opgebouwd conform het blokschema uit figuur 1. De blokken geven de verschillende proces-stappen aan die achtereen doorlopen worden. Deze proces-stappen kunnen zowel in hardware als in software zijn uitgevoerd. Het voordeel van gebruik van hardware is de hoge snelheid waarmee gewerkt kan worden, maar daar staat tegen over dat de flexibiliteit veel minder is. De meeste systemen zijn zo opgebouwd dat bepaalde operaties in de hardware zijn uitge-
Inleiding
6
Image acquisition
I I Enhancement (preprocessing)
I I Segmentation
I I Coding (feature extraction)
I
I Image analysis
I
.
I Decision making
Figuur 1 Proces-stappen in machine vision, weergegeven in een blokschema.
voerd en de overige in de software. Zoals in de vorige paragraaf is aangegeven bezit een vision systeem twee niveaus. De eerste vier blokken van figuur 1 behoren tot de lage niveau bewerkingen, terwijl de laatste twee blokken bekend staan als hoog niveau bewerkingen. In hoofdstuk 2 zullen de belangrijkste en meest toegepaste lage niveau bewerkingen aanbod komen. Vervolgens zal in hoofdstuk 3 enige aandacht worden geschonken aan het hoge mveau.
Lage niveau bewerkingen
7
2. Lage niveau bewerkingen In het lage niveau wordt het beeld zodanig bewerkt dat in een later stadium de beeldanalyse (hoog niveau) vergemakkelijkt wordt. Hieronder zal stap voor stap de verschillende opeenvolgende bewerkingen bekeken worden, figuur 1 moet daarbij in gedachte worden gehouden. De hieronder vermelde bewerkingen zijn aIleen de meest toegepaste, er zijn nog legio andere mogelijkheden, maar het zou te ver voeren om die hier allemaal te vermelden.
2.1 Image acquisition In de meeste Vision systemen worden CCD-camera's (charge coupled devices) gebruikt, ook veel toegepast in televisie camera's. Dit soort camera's zijn opgebouwd uit een groot aantal lichtgevoelige elementen die ieder een analoog signaal produceren afhankelijk van de hoeveelheid licht die er opvalt. De lichtvoorziening is daarom van essentieel belang en bepaald in hoge mate de prestaties van de camera. Zo moet er onder aIle omstandigheden voldoende licht zijn, maar die omstandigheden kunnen nog al verschillend zijn. Zo zal de hoeveelheid licht van buitenaf varieren met het jaargetijde, in de zomer zal dat meer zijn als in de winter. Oppervlakken van
Figuur 2
Extra Iichtbron be'invloed tevens het schaduwbeeld.
Lage niveau bewerkingen
8
produkten kunnen het licht misschien op een onverwachte manier terugkaatsen. Luchtturbulentie, als gevolg van temperatuurgradienten, kan ook een negatieve invloed hebben en zo zijn er nog weI een aantal factoren op te noemen. Daarom zal er vaak gebruik worden gemaakt van een extra lichtbron (zie figuur 2).
Onderzoeken naar de menselijke perceptie hebben geleid tot de ontwikkeling van de "smart sensing" techniek. Uitgangspunt was het gegeven dat het gezichtsveld van de mens vrij groot is, maar dat hij daar slechts een klein gebiedje van in detail ziet (dat deel dat midden op het netvlies valt). Het gebied daarom heen wordt weI waargenomen maar veel minder gedetailleerd, het scheidendvermogen neemt naar buiten snel af. Door het oog te bewegen is een mens in staat juist die beelden die van belang zijn in detail te bekijken. Deze manier van waarnemen heeft men ook in een vision systeem ge"implementeerd. Via deze techniek blijft de hoeveelheid gegenereerde data beperkt. In een vroeg stadium wordt de data geselecteerd en worden aIleen die gebieden met een hoge resolutie bekeken, die van belang zijn voor de taakvervulling van het systeem.
2.2 Enchancement Het analoge signaal van de camera wordt eerst via een frame- grabber bemonsterd en omgezet in een digitaal signaal. De afbeelding wordt daarbij opgedeeld in een groot Rectangular sampling pattern
. ..
Figuur 3 leder hokje krljgt een bepaalde grey-level waarde.
Grey-scale
Lage niveau bewerkingen
9
aantal vierkante hokjes waarbij vervolgens aan ieder hokje, afhankelijk van de lichtintensiteit, een bepaalde Grey-level waarde wordt toegekend (zie figuur 3). Deze hokjes worden pixels genoemd en zijn de kleinst discreet toegankelijke subsectie van een digitale afbeelding. De huidige commerciele frame-grabbers bezitten meestal een resolutie van 512 x 512 pixels en iedere pixel kan 256 verschillende
grey-l~vel
waarden aannemen. De zo verkregen digitale afbeelding moet eerst worden bewerkt om in een later stadium het identificeren van objecten te vergemakkelijken. Voor deze bewerking zijn een drietal operaties ter beschikking.
* punt Bij deze operatie wordt iedere pixel apart bekeken en bewerkt. Voorbeelden van enkele veel gebruikte operaties zijn: - Contrast verbreding: alle grey-levels worden zodanig opgeschoven en opgeschaald dat alle grey-levels in de afbeelding aanwezig zijn. - Thresholding: een veel gebruikte techniek bij een afbeelding bestaande uit een of twee objecten, waarbij aIle grey-levels die lager zijn als een bepaalde
Figuur 4
Een digitaal beeld (boven) dat via de threshold-techniek is bewerkt (onder); de histogrammen rechts laten zien wat er met de grey-levels is gebeurt.
Lage niveau bewerkingen
10
waarde (= threshold) omgezet worden naar de laagste grey-level en aIle waarden er boven naar de hoogste (zie figuur 4). Door een juiste keuze van de threshold ontstaat een beter contrast. - Ruisonderdrukking: door afbeeldingen van verschillende tijdstippen met elkaar te vergelijken, waarbij de objecten stil blijven staan, kan ruis in de afbeelding worden opgespoord en eruit worden gefilterd.
* Omgeving Bij deze operaties wordt bij het bewerken van een pixel ook gekeken naar zijn directe omgeving. De grate van de omgeving kan nogal varieren, van enkele tot tientaIlen pixels. Enkele veel gebruikte operaties zijn: - Convolutie: het uitgangssignaal g (pixel op positie i,j) wordt gevormd door de sommatie van het ingangssignaal f (pixels op de posities i-m,j-n) met een functie Iz en weI op de volgende manier: g(i, j)
=E E f(i-m, j-n) h (m, n) m
n
De functie Iz dient als filter en bepaalt welke elementen van een ingangssignaal uiteindelijk nog voorkomen in het uitgangssignaal, de lopende variabele m en n bepalen de grate van het gebied dat als ingangssignaal dient. - Ruisonderdrukking: door het gebruik van een filter of een masker wordt de hoog frequente ruis eruit gefilterd. - Verdunning: van een contour worden de buitenste pixels weggehaald zodat aIleen nog een skelet van het object overblijft (zie figuur 5).
* Geometrisclz Dit soort operaties worden minder vaak toegepast als de vorige twee. Bij deze operaties wordt de
Figuur 5
Een skelet (onder) van een digitaal beeld (boven).
Lage niveau bewerkingen
11
ruimtelijke relatie tussen objecten in een afbeelding veranderd. Hierbij moet worden gedacht aan bijvoorbeeld het veranderen van de relatieve afstand tussen twee punten. Dit soort bewerkingen zijn nodig indien het beeld, dat gevormd is met behulp van een camera, enigszins vertekend is overgekomen, bijvoorbeeld door onnauwkeurigheden in de lens.
2.3 Segmentation Segmentatie is het groeperen van gebieden uit een afbeelding met een zelfde eigenschap, met als doel het isoleren van objecten. De twee technieken die daarbij worden toegepast zijn, region growing en boundary detection. Region growing is gebaseerd op het zoeken naar homogeniteit in een afbeelding. Zo kunnen aIle pixels die niet te veel afwijken in grey-level waarde worden gegroepeerd. Bij boundary detection daarentegen wordt naar discontinuYteiten gezocht om zo de rand pixels van een object te isoleren. De zo verkregen rand maakt het vervolgens mogelijk om de locatie en de vorm van het object te definieren en vervolgens als geheel te isoleren.
2.4 Coding Een veel gebruikte techniek voor het detecteren van bepaalde vormen in een afbeelding is de Hough Transform (Hough, 1962). Deze transformatie was in zijn originele vorm aIleen te gebruiken voor het detecteren en isoleren van lijnen, maar is in de loop der tijd zodanig aangepast dat vandaag de dag ook cirkels en ellipsen kunnen worden gedetecteerd en gei'soleerd. Dit lijkt vrij beperkt maar de meeste fabricage produkten bestaan echter uit deze vormen. Een groot voordeel van het isoleren van bovengenoemde elementen is de reductie in hoeveelheid data die nodig is om de gehele afbeelding te beschrijven.
2.5 Real-time processing De vier hierboven beschreven processen vergen aanzienlijke rekentijden van een computer. Een beeld moeten daarom eerst worden opgeslagen alvorens het kan worden bewerkt, omdat de verwerkingssnelheid lager is dan de registratie snelheid
Lage niveau bewerkingen
12
van een camera. De vrijkomende data kan dus niet direct worden verwerkt met als gevolg dat de benodigde gegevens voor bijvoorbeeld de inspectie van een produkt pas beschikbaar is nadat het produkt al lang de camera is gepasseerd. Door een zodanige inrichting van het fabricage proces dat de gegevens pas een stuk verder stroomafwaarts in het produktie proces beschikbaar hoeven te zijn levert dat verder geen problemen op. Problemen ontstaan echter indien de gegevens direct voorhanden moet zijn (realtime). Met het toenemen van de rekensnelheid van een computers zijn er mogelijkheden ontstaan voor real-time processing technieken. Hierbij wordt de data niet eerst opgeslagen maar direct serieel bewerkt. In dit verband moet ook de ontwikkeling van pipeline technieken vermeld worden. Hierbij worden operaties sequentieel op een data-stroom uitgevoerd, zo gauw een operatie klaar is op een bepaald deel van de data kan de volgende operatie op dat deel worden gestart.
Hoge niveau bewerkingen
13
3. Hoge niveau bewerkingen Na de lage niveau bewerkingen is het beeld zodanig bewerkt dat een gedegen analyse kan worden gemaakt. Deze analyse bestaat uit het identificeren van objecten en ze daarna eventueel lokaliseren. Vervolgens zal de werkelijke situatie zoals die door het beeld wordt weergegeven vergeleken worden met de gewenste situatie en op basis daarvan een beslissing worden genomen. Een groot aantal technieken die ontwikkeld zijn voor de analyse van beelden kunnen gevangen worden onder de naam: Patroon herkenning (Eng. Pattern Recognition). Patroon herkenningstechnieken maken bij de analyse van beelden gebruik van vaste algoritmen om onderscheid te maken tussen type objecten. Vision systemen die gebaseerd zijn op deze technieken zijn over het algemeen slechts geschikt voor het uitvoeren van een bepaalde taak. Recente ontwikkeling op het gebied van vision systemen zijn er dan ook op gericht om flexibeler technieken te ontwikkelen: Kunstmatige intelligentie (Eng. Artificial Intelligence). Deze technieken gaan beredenerend te werk met behulp van elementen van de object structuur.
3.1 Patroon Herkenning . Patroon herkenning wordt gebruikt om objecten in een beeld te classificeren, waarbij met classificeren gedoeld wordt op het herkennen en identificeren van een object. Afhankelijk van de wijze waarop geanalyseerd wordt zijn er twee technieken ontwikkeld: theoretische beslissing en syntactische-structurele methode. De eerste techniek classificeert een object met behulp van een verzameling belangrijke karakteristieke features die van de verschillende objecten zijn opgesteld. In het beeld wordt dan gekeken naar de aanwezigheid van deze vooraf ingegeven features. De selectie van de te gebruiken features is van essentieel belang en daarbij moet men
Hoge niveau bewerkingen
14
het volgende in ogenschouw nemen:
* onafhankelijkheid; dit wil zeggen een verandering in een feature mag een ander feature niet in grote mate beinvloeden, * onderscheidbaarheid; ieder feature moet duidelijk afwijken van de andere te
identificeren objecten,
* betrouwbaarheid; een feature moet voor aIle objecten in dezelfde groepjklasse het zelfde resultaat geven. De kleinst denkbare feature is die van een enkele pixel. Maakt men gebruik van de grey-levels van een aantal pixels dan ontstaan features als gemiddelde helderheid of contrast. De tweede techniek maakt gebruik van de interne structuur van een object bij de analyse en is gebaseerd op het feit dat een object herhaaldelijk beschreven kan worden door simpele (primitieve) vormen van zijn structuur. De structuur van object wordt vergeleken met die van de verschillende referentie klassen. Contour en contour segmenten zijn de belangrijkste primitieve vormen die gebruikt worden bij deze analyse.
3.2 Kunstmatige Intelligentie Een flexibel en universeel inzetbaar vision systeem is het streefdoel voor de toekomst. De basis voor dit soort systemen zal gevormd worden door kunstmatige intelligentie, wat zoiets betekent als het implementeren van intelligente acties (inzicht, leren, creativiteit, etc.) in een computer systeem. De grote kracht van deze systemen ligt hem in de hoge graad van flexibiliteit en het in staat zijn de strategie, tactiek en procedures die worden toegepast te veranderen, hierdoor kan onzekere en onnauwkeurige data goed worden verwerkt. Groot struikelblok is tot nu toe nog de complexiteit van dit soort systemen en zoals eerder vermeld de beperkte geheugencapaciteit van een computer. Allereerst krijg je te maken met de kennis verwerving die als basis voor het systeem dient. Deze kennis moet gehaald worden bij experten op het des betreffende werkter-
15
Hoge niveau bewerkingen
Figuur 6
Weergave van een tafel-scene via een semantic netwerk.
rein. De moeilijkheid zit hem in het vertaling van, vaak onbewuste, handelingen van experten. Een expert weet vaak zelf niet hoe hij een probleem precies oplost omdat hij routinematig te werk gaat. De kunst is nu om die handelingen in een model te vangen. Ook al zou men er in geslaagd zijn om een model op te stellen dan is het nog maar de vraag of het weI werkt. Omdat juist onzekere en onnauwkeurige data moet worden verwerkt kan het zijn dat van het systeem dingen worden gevraagd die buiten het model vallen. Een expert kan dan vaak intu'itief toch nog een heel eind komen maar een computer systeem heeft geen intu'itie en zal geen uitsluitsel kunnen geven. Via vele onderzoeken naar kunstmatige intelligentie is men er in geslaagd een aantal technieken voor de representatie van kennis binnen een vision systeem op te stellen: * semantic networks: presenteert informatie als een verzameling van knooppun-
ten die onderling verbonden zijn door lijnen, die de relatie tussen deze knooppunten aangeven (zie figuur 6); * produktie systemen: veel toegepast in expert systemen en bestaat uit een
verzameling van regels, een database en een interpreter. Deze regels hebben de volgende gedaante: IF conditie THEN actie
16
Hoge niveau bewerkingen
Indien aan de conditie voldaan is wordt de actie tot uitvoering gebracht;
* frames: dit zijn data structuren die bepaalde kenmerken van een object uit een klasse weergeven. Ieder frame heeft daarnaast informatie meegekregen over hoe een frame moet worden toegepast en wat voor resultaat daaruit te verwachten is. Hoe deze technieken in een computer systeem worden geimplementeerd zal hier verder niet behandeld worden. Een ding moet nag weI worden opgemerkt dat de ontwikkelingen van kunstmatige intelligentie veel belovend zijn maar nag in een
techno drawing
image of an object
CAD-data
observation of examples
geom. data
lines, surfaces
modelling, generalization
model of an object
internal representation
knowledge acquisition image analysis
tasks
represented knowledge object/ scene models segmentation results attributes
interpretation
control information
matching operations
object or scene description
segmentation
lines surfaces
preprocessing
image(s)
image(s) one sensor 2-dimensional
two sensors
3-dimensional
image of an object
Figuur 7
Schema van een Knowledge-based vision systeem.
obstacle location object tool object name quality
17
Hoge niveau bewerkingen
begin stadium zitten en het zal nog zeker tientallen jaren duren voordat er een echt werkzaam en toepasbaar systeem ontwikkeld is.
3.3 CAD-systemen CAD systemen zijn zeer bruikbaar voor het leveren van kennis over een bepaald object. Door koppeling van een CAD-systeem met een vision systeem kan een directe data-overdracht tussen beide plaats vinden (zie figuur 7). Met behulp van deze data over de geometrie van een produkt kan het vision systeem een model opstellen van het te inspecteren produkt. Probleem daarbij is echter dat deze data aIleen geometrische gegevens bevat en er verder niets bekend is over bijvoorbeeld de lichtbron, licht reflectie, achtergrond en dat soort zaken. AIleen data uit een CAD-systeem is dan ook niet voldoende en men moet daarom tevens gebruik maken van voorbeeld produkten die door het systeem worden verwerkt en opgeslagen. Het model wordt eerst met behulp van de CAD-data opgebouwd en vervolgens aan de hand van voorbeeld produkten verfijnd.
Een belangrijke keuze die moet worden gemaakt is de wijze van modellering binnen een vision systeem. Een model-moet onafhankelijk zijn van het gezichtspunt en tevens voldoende informatie verschaffen over de vorm van een object. CAD systemen werken met dit soort modellen en zijn daarom bruikbaar voor toepassing in een
Figuur 8
Links de CSG en rechts de Boundary representatie.
Hoge niveau bewerkingen
18
vision systeem. Men kan een viertal categorieen onderscheiden: Wireframes, polygonal schemes, sculptured surfaces en solid models. Een wireframe maakt gebruik van lijnelementen bij de modeIlering van objecten, waardoor een draadjesmodel van het object ontstaat. Een groot nadeel van deze systemen is het niet eenduidig zijn van een model, voortkomend uit het feit dat niet bekend is waar materiaal zit en waar niet. Polygonal schemes en sculptured surfaces modeIleren met behulp van oppervlakken en zijn in combinatie met gegevens over de verlichting nuttig voor een vision systeem. In de laatste groep, solid models, wordt met behulp van massieve grondvormen een model van een object opgebouwd.
Voor toepassing in een vision systeem is niet aIleen de geometrie van belang maar ook het omspannen volume en de fysische eigenschappen van een object. De modeIlen die al deze informatie herbergen en daarom het meest geschikt zijn voor toepassing in een vision systeem zijn die uit de categorie van de solid models. Deze categorie kan zelf weer in een aantal families worden opgedeeld. Twee van deze families, Constructive Solid Geometry (CSG) en Boundary Representation (B-REP), hebben bewezen de meest bruikbare modeIleringstechnieken te zijn voor een vision systeem. Met name hun interne organisatiestructuur sluit goed aan op die van een vision systeem. CSG geeft een object weer als een Booleanse combinatie van een aantal grondvormen, zie linker deel van figuur 8. Met behulp van een binaire boomstructuur wordt de data van een object intern opgeslagen. Tussen iedere laag in de boomstructuur wordt met behulp van een operatie aangegeven wat het verband tussen beide lagen is. De operaties die zoal gebruikt worden zijn opteIlen, aftrekken en doorsnijden van grondvormen onderling. Men zou kunnen zeggen dat de vormgeving geschiedenis van een object is opgeslagen. De grondvormen die gebruikt worden zijn altijd volume elementen. B-REP maakt gebruik van een aantal grondvormen waarmee de grensvlakken van een object worden aangegeven, zie rechter deel van figuur 8. Deze grondvormen bestaan, naast volume elementen ook uit oppervlakken en lijnen. Intern wordt de verbanden tussen deze verschillende grondvormen in een topologisch schema opgeslagen, in
19
Hoge niveau bewerkingen
TOPOLOGY ----GEOMETRY
line eqn.
plane eqn.
Figuur 9 Topologisch schema en grondvormen voor weergave van een object.
figuur 9 staat daar een voorbeeld van. In beide modelleer technieken spelen grondvormen een belangrijk rol, zij bepalen in grote mate de mogelijkheden van het modelleer proces. Een juiste keuze van deze grondvormen is daarom van essentieel belang. Het toepassen van een bepaalde vorm is aIleen zinvol indien deze vorm ook tijdens de lage niveau bewerkingen (hoofdstuk 2) kan worden ge"isoleerd en later ge"identificeerd. Het isolatie en identificatie proces moet daarom afgestemd worden op de te gebruiken grondvormen en vice versa. Gebeurt dat op de juiste manier dan is het systeem in staat een model van een object op te stellen waarmee later zo'n zelfde object, op het moment dat het in beeld komt, wordt herkend. Het gebruik van modelleer technieken uit de CAD omgeving maakt koppeling tussen CAD- en vision systeem een stuk eenvoudiger, maar het zal nog weI enige jaren duren voordat het zover is.
Toepassingsgebieden
20
4. Toepassingsgebieden In de voorgaande hoofdstukken is in het kort de werking van een vision systeem bekeken. Maar wat zijn nu de mogelijkheden van dit soort systemen? Om op deze vraag een zo duidelijk mogelijk antwoord te krijgen zal hieronder een korte beschrijving volgen van de huidige toepassingen van een vision systeem.
Wordt er gekeken naar de taken die een vision systeem zoal kan uitvoeren, dan kan de volgende opdeling worden gemaakt: * herkennen;
* geleiden; * meten;
* inspectie. Uit verschillende onderzoeken naar toepassingen van vision systemen is gebleken dat 60% betrekking heeft op inspectie taken, 25% op robot geleiding en 15% op identificatie en herkenning van onderdelen.
4.1 Herkennen In een goed georganiseerde fabriek is het herkennen van onderdelen maar sporadisch nodig. In de gevallen dat het weI nodig is, is het aantal mogelijkheden vaak gering (klein aantal verschillende onderdelen). Een specifieke toepassing is de koppeling met een robot systeem, voor het herkennen van het juiste werkstuk. Met behulp van een vision systeem wordt eerst bekeken welk werkstuk zich voor de robot bevindt waarna de robot het juiste bewerkingspatroon uitkiest en ten uitvoering brengt. Een voorbeeld is de koppeling van een vision systeem aan een verfspuit robot in een automobielfabriek. Allereerst wordt door het systeem bekeken welk model zich voor
21
Toepassingsgebieden
de robot bevindt, hatchback, sedan of stationwagon. Waarna de robotbesturing vervolgens het juiste verfspuit programma start.
4.2 Geleiding Geleiding wordt niet aIleen voor robot systemen gebruikt maar voor ieder automatisch mechanisme zoals: freesmachine, boormachine voor bijvoorbeeld printplaten, laser of
•
LINE·OF·SIGHT NORMAL APPROACH DIRECTION VALID HOLDSITE DIRECTION ' ON SELECTED "'--., "PART
1
COLLISION
~
waterstraal snijden etc.. Het geleiden van een
II
mechanisme kan op twee manieren plaats vinden. Gedeeltelijk geleiden waarbij de positie en orientatie van een werkstuk wordt
ell\] OF ?AFlTS IENVlFlONNlENT
Figuur 10
bepaald. Deze gegevens worden vervolgens in
Uit een ongeordende bak een produkt pakken.
het robot systeem omgezet in coordinaten zodat de robot naar de juiste positie beweegt om het werkstuk te pakken of er een bewerking aan uit te voeren. Tijdens het bewegen en uitvoeren van zijn taak wordt de robot verder niet meer ondersteund door het vision systeem. Een voorbeeld van gedeeltelijke geleiding is het naadlassen met behulp van een lasrobot. Via het vision systeem worden begin- en eindpunt bepaald waarna de robot de las op de juiste positie legt. Een tweede mogelijkheid is het continu geleiden waarbij een continue stroom van informatie naar het robot systeem wordt gestuurd. De robot hoeft nu niet te besch.ikken over vooraf ingegeven situaties zoals dat bij gedeeltelijke geleiding het geval is. Een voorbeeld van continue geleiding is het lassen met een robot waarbij met behulp van het vision systeem de lasnaad wordt gevolgd. Een ander voorbeeld is het pakken van onderdelen uit een ongeordende bak, waarbij het vision systeem uit een combinatie van gedeeltelijke en continue geleiding bestaat (zie figuur 10). Allereerst wordt het juiste object opgespoord en vervolgens wordt de grijper van de robot zo gestuurd dat het object op de juiste manier gegrepen kan worden.
22
Toepassingsgebieden
Collimated light source
Line-scan sensor
Diameter given by width of shadow
Figuur 11
Het meten van de diameter van een staaf.
4.3 Meten De meest simpele uitvoering is het een dimensionaal meten, bijvoorbeeld de breedte van een object (zie figuur 11). Een beperkende factor van het twee dimensionaal meten is de lage nauwkeurigheid die gehaald wordt. De meeste camera's werken met 512 x 512 pixels, aIleen enkele duurdere camera's werken met 1024 x 1024 pixels. De maximale nauwkeurigheid haalbaar met een vision systeem is dus
1/ loooste van zijn
gezichtsveld. Een groot voordeel van een vision systeem is echter het groot aantal metingen dat in een fractie van een seconde kan worden gegenereerd en de mogelijkheid om een vooraf ingegeven verzameling van metingen direct op te roepen. Deze voordelen zorgen ervoor dat ondanks de beperkte nauwkeurigheid twee dimensionaal meten een bruikbare methode is. Een veel toegepaste methode voor het genereren van een profielschets van een oppervlak is het drie dimensionaal meten. Met behulp van een opstelling met twee of zelfs meer camera's kan het profiel van een oppervlak worden waargenomen (zie figuur 12). Een andere mogelijkheid is het gebruik van "structured light" technieken voor het verkrijgen van 3D-informatie (zie figuur 13). Ondanks het voordeel van het slechts nodig hebben van een camera wordt deze techniek sporadisch toegepast.
4.4 Inspectie Ret meten aan een object en het volgens accepteren of afwijzen kan gezien worden als een inspectie taak (zie figuur 14). Gezien de capaciteit en snelheid van een vision
Toepassingsgebieden
23
Camera
I I
I
/ /
/
I
/
/
Wear
r_~~~PJate Side frame
Figuur 12
View seen by the camera
Figuur 13 Via "structured light" 3-D informatie verkrijgen.
I
PROCESSOR
QSCAR"[R
1- ------- -I :
~
o__---...-~...~~...~~.6.~~~~...~~: o~:f ~ '"
",,,"',,,
i
TRANSPORT
SORTER
cooo
~O ...
Figuur 14 Goed of .Ikeuren van een component.
""""-
Toepassingsgebieden
24
systeem is het niet verstandig om aileen een acceptatie-afwijzing beslissing te laten nemen maar tevens de metingen te gebruiken om voorspellingen te doen. Door naar het verloop van de metingen te kijken kan een vision systeem voorspellen op welk tijdstip prodllkten blliten het tolerantiegebied vallen als gevolg van bijvoorbeeld gereedschap slijtage. Een groot aantal inspectie taken blijven niet beperkt tot het aIleen llitvoeren van een metingen maar hOllden zich bezig met de vraag of een prodllkt voldoende overeenkomt met het gewenste standaard prodllkt. Zo kan de vorm van een prodllkt vergeleken worden met een vooraf ingegeven beeld van het gewenste prodllkt. Deze marrier van inspecteren wordt toegepast bij massa-fabricage prodllkten. Een andere toepassing is het inspecteren van een oppervlak op onregelmatigheden, bijvoorbeeld de inspectie van flessen op glassplinters of andere vervuilingen voordat de fles gevuld wordt.
Toekomstverwachtingen
25
5. Toekomstverwachtingen
Tientallen jaren van intensief onderzoek naar vision systemen, hebben uiteindelijk geleid tot de ontwikkeling en toepassing van verschillende theorieen en concepten. De belangrijkste resultaten daarvan zijn in de voorgaande hoofdstukken aanbod gekomen. Over het geheel genomen kan worden gesteld dat de huidige vision systemen slechts geschikt zijn voor de uitvoering van een specifieke taak en weinig flexibiliteit kennen. Recente ontwikkelingen zijn er dan ook op gericht om een meer universeel toepasbaar vision systeem op de markt te brengen, wat tot nu toe nog niet goed is gelukt. De komende jaren zal echter veel werk worden gestoken in de verdere ontwikkeling van dit soort systemen. Parallel daaraan zullen de minder. flexibele systemen een steeds groter toepassingsgebied binnen de industrie verwerven. Een vereiste voor verdere acceptatie van vision systemen in de industrie is het gebruikersvriendelijk maken van deze systemen. Het moet niet zo zijn dat de eindgebruiker een expert op vision gebied moet zijn om van een vision systeem gebruik te kunnen maken. Er zal daarom behoefte ontstaan aan expert systemen, die de gebruiker adviseert bij het selecteren van de juiste lichtbron, bewerkingsmethoden, analyses, etc. benodigd voor de desbetreffende toepassing. Zoals reeds een aantal malen is aangehaald zijn veel van de ontwikkelingen op vision gebied afhankelijk van die op computer gebied. Gelukkig gaan de ontwikkelingen op computer gebied zo snel dat de algemene verwachting is dat over een aantal jaren de computersnelheid en capaciteit geen obstakels meer hoeven te zijn. Mocht dat het geval zijn dan zal dat de baan vrij maken voor een aantal nieuwe ontwikkelingen. Zo zal de resolutie van camera's verder toenemen waardoor nog gedetailleerder waargenomen en nauwkeuriger gemeten kan worden. Een andere ontwikkeling zal de toepassing van kleuren camera's zijn, zodat een vision systeem ook onderscheid in
ToekomsNen¥ach6ngen
26
kleur kan maken. Hoge computer snelheden maken real-time verwerking van data mogelijk, zo gauw er zich iets onregelmatigs voordoet kan er direct in het fabricage proces worden ingegrepen. Daar waar dure gereedschappen nodig zijn om een produkten voor een bepaalde bewerking op zijn plaats te houden ligt ook een werkterrein voor vision systemen. Door toepassing van een vision systeem ontstaat een flexibele fixeringsinrichting. Ret systeem kan via een locatie analyse de benodigde informatie leveren over de exacte positie en orientatie van het produkt, dit noemt men ook weI software fIxering. Met name in de assemblage sfeer zal dat leiden tot het toepassen van grotere onderdelen variaties, met kortere doorlooptijden en het snellere kunnen doorvoeren van veranderingen in het ontwerp.
Een verdere ontwikkeling van kunstmatige intelligentie zal tevens nieuwe openingen bieden voor drie dimensionale interpretatie van beelden. 3-D informatie uit een 2-D beeld halen vergt namelijk de nodige kennis, inzicht en vaardigheid, iets wat een kunstmatig intelligentie systeem bezit. De benodigde kennis kan daarbij komen van een CAD-systeem dat via een interface aan hetvision systeem is gekoppeld. De ontwikkelingen zijn veelbelovend voor de toekomst. Machine vision systemen zullen zeker een vast plaatsje in het produktie proces krijgen, de vraag is aIleen wanneer dat een feit zal zijn.
27
Literatuur
1.
Zuech, N., Applying Machine VISion. John Wiley & Sons, New York, 1988.
2.
Boyle, R.D., Thomas, R.C., Computer Vision: A first course. Blackwell Scientific Publications, Oxford, 1988.
3.
Freeman, H., Machine Vision: Algorithms, Architectures and systems. Academic Press Inc., San Diego, 1988.
4.
Gelsema, E.S., Kanal, L.N., Pattern Recognition and Artificial Intelligence. Proceedings of an International Workshop held in Amsterdam, May 18-20, 1988. Elsevier Science Publishers B.V., Amsterdam, 1988.
5.
Low, A., Introductory Computer Vision and Image Processing. McGraw-Hill Book Company, London, 1991
6.
Vernon, D., Machine Vision: Automated Visual Inspection and Robot VISion. Prentice Hall International Ltd, New York, 1991.
7.
Kasturi, R., Jain, R.C., Computer Vision: Principles IEEE Computer Society Press, California, 1991.
8.
Torras, C., Computer Vision: Theory and Industrial Applications. Springer-Verlag, Berlin, 1992.
9.
Anzai, Y. Pattern Recognition and Machine Learning. Academic Press Inc., San Diego, 1992.
28
10. Niemann, H., Brilnig, H., Salzbrunn, R., Schroder, S., A Knowledge-Based Vision System for Industrial Applications.
In: Machine Vision and Applications, 4 (1990).
11. Petkovic, D., Wilder, J., Machine VLSion in the 1990s: Applications and how to get there.
In: Machine Vision and Applications, 2 (1991).