Het inlezen van punten
Na het opmeten van de punten via de profilometer verkrijgen we als output een .SURF-bestand, be- vattende een header en een lijst van punten. Een beschrijving van de opbouw van de header is terug te vinden in bijlage A.
De header bevat onder andere volgende informatie:• ZMin: de minimum gemeten z-waarde.
• ZMax: de maximum gemeten z-waarde.
• Een indicatie voor niet gemeten punten en de punten met hoge of lage saturatie.
Na de header komt er een opsomming van de punten. Indien er geen gebruik wordt gemaakt van de commentaarzone of de private zone is dat na 512 bytes. De punten worden lijn per lijn op- gesomd vanaf de bovenkant van het beeld. We lezen die lijnen in als rijen van een matrix met de functie . Een voorbeeld van wat er bekomen wordt na inlezen is zichtbaar in Fig. 3.6. De stapeenheden van elke as voor deze figuur en de volgende in dit hoofdstuk zijn:
Figuur 3.5: Illustratie van werking van Altisurf 500.
• voor de X-as: 4,0 pm
• voor de Y-as: 4,0 pm
• voor de Z-as: 0,0033 pm
We hebben ook geopteerd om de punten niet enkel in matrixvorm in te lezen, zodat men ook de keuze heeft om de punten in een coordinatenlijst in te lezen (zie de functie ). Men krijgt dan een lijst van punten waarbij een rij dan de x-, y- en z-waarde bevat van een punt.
Indien men beelden bezit die de volledige achterzijde van de huls bevatten, kunnen deze beelden te grote proporties aannemen om de hierop volgende algoritmes efficient te laten werken. Bij beide inleesmethodes kan er daarom voor de optie gekozen worden om slechts het stuk van het beeld die het slaghoedje bevat, in te lezen. Hierbij geeft men het centrale punt van het gewenste beeld op en de hoogte en de breedte. Er is voor gekozen om dit interactief te houden met de gebruiker, omdat een efficiente automatische selectie teveel tijd in beslag zou nemen en niet tot het meest relevante van deze scriptie behoort.
Een zone kan men manueel bepalen door het beeld in kleinere resolutie (via de functie ) te bekijken en dan manueel de gewenste grenzen vast te stellen.
Figuur 3.6: Figuur bekomen na het inlezen van een bestand in SURF-formaat in matlab.
Een opmerking bij het voorgaande is dat het toch lukt om een automatische selectie uit grote beelden (maximaal 5000 x 5000[8]) te bekomen met de functie na het volledig inlezen van het beeld. Dit blijkt uit de testen (paragraaf 5.4) voor de selectie van het slaghoedje. Een voorwaarde hierbij is wel dat het slaghoedje zich centraal in het grote beeld bevindt.
Het kan ook gebeuren dat de data te groot is doordat de resolutie van het beeld te hoog ligt om er efficient mee te werken. In dit geval zullen we de resolutie verkleinen. Dit kan gebeuren door het toepassen van de functie waarbij we het venster meegeven die de data opnieuw zal samplen. Het venster schuift over de data en bepaalt telkens de gemiddelde waarde van de punten in het venster. B.v. voor een 5 x5 venster krijgen we een reductie van 25. We passen een ruisfilter op de data toe, alvorens de resolutie te wijzigen. De ruispieken in paragraaf 3.3.2 kunnen namelijk de resulterende data doen vervormen door het toepassen van een gemiddelde waarde per venster. Voor onze testbeelden hebben we onze laterale resolutie altijd naar 4 ^m gebracht.
3.3.2