Volume rendering

Uit Wikipedia, de vrije encyclopedie
Ga naar: navigatie, zoeken

Volume rendering is het weergeven van volumetrische informatie op het beeldscherm. Anders gezegd: gegevens over een 3D-object worden vertaald naar waarden die als kleur op het beeldscherm getoond kunnen worden. Het speciale van volumerendering is nu dat alle gegevens van het 3D-object bijdragen aan de uiteindelijke weergave op het scherm, dus niet alleen de gegevens aan de buitenkant van het object. Omdat ook gegevens binnenin het 3D-object bekend zijn, is het nu ook mogelijk om binnenin het object te kijken. De term komt uit het vakgebied "Computergraphics en Datavisualisatie".

Volumetrische data[bewerken]

Volumetrische data geven informatie over een 3-dimensionaal object (bijvoorbeeld een kubus). De data zijn volumetrisch omdat de verzameling gegevens niet alleen iets zegt over de buitenkant van het object, maar ook informatie bevat over de binnenkant van het object. Een gebied waar volumetrische data wordt gemeten is in de medische wereld. Bij het uitvoeren van een CT-scan, of een MRI-scan zijn juist de gegevens over het binnenste van het menselijk lichaam belangrijk.

De volumetrische data worden meestal voorgesteld als een 3D-raster, bestaande uit vele cellen. Deze cellen bevatten een of meerdere gemeten datapunten.

Data omzetten naar beelden[bewerken]

Er zijn meerdere wegen te bewandelen om de volumetrische data om te zetten naar een beeld:

  • 2D volume slicing
  • Surface fitting-methoden (Marching cubes-algoritme)
  • Directe Volume rendering (Volume ray casting, Splatting)

2D volume slicing[bewerken]

Bij 2D volume slicing neemt men bij wijze van spreke steeds een "plakje" uit de volumetrische data. Via interpoleren met behulp van de omliggende datawaarden wordt nu bepaald welke waarde (kleur) de datapunten in het "plakje" krijgen. Alle plakjes bij elkaar genomen vormen een grafische 3D-object, dat weergegeven kan worden op het scherm.

Surface fitting (SF) methoden[bewerken]

De Surface fitting-methoden kenmerken zich door volumetrische data eerst te verwerken naar 2D-vlakken, zoals driehoekjes. Deze kunnen dan vervolgens weergegeven worden met behulp van grafische standaardhardware (veelhoekrendering). Het voordeel van methoden van dit type is dat de complexiteit van het renderen gereduceerd wordt en er snel gebruikgemaakt kan worden van de grafische hardware. Volume rendering kan dan redelijk snel uitgevoerd worden. Daarnaast is het zo dat bij het samenstellen van een 3D-object met 2D-primitieven wat gegevens verloren gaan. Dit is voordelig voor een snelle weergave, maar maakt ook dat bepaalde volume gegevens niet meer beschikbaar zijn.

Bekende SF-methoden zijn:

  • Het verbinden van 2D-contouren
  • Cuberillemethode
  • Marching cubes-algoritme

Directe volume rendering (DVR)[bewerken]

Bij Directe volume rendering wordt de volumetrische data niet eerst vertaald naar geometrische primitieven, maar wordt de informatie over het 3D-object direct gebruikt om het object weer te geven. Een voordeel hiervan is dat de 3D-gegevens niet verloren gaan, maar allemaal gebruikt worden.

Bekende DVR-methoden zijn:

  • Volume ray casting (terugwaartse projectie)
  • Splatting of Voxel projection (voorwaartse projectie)

Zie ook[bewerken]