4.6. Rolling shutter en global shutter¶
De sensor leest zijn tweedimensionale pixelraster cel voor cel uit. Twee aspecten van dat uitlezen bepalen de vorm van de opgenomen afbeelding: de volgorde waarin de pixels worden gescand, en hoe het belichtingsvenster van elke rij in de tijd aansluit op die scan. Het eerste ligt vast in het silicium; het tweede komt in twee gevestigde varianten die veel uitmaken voor scenes met beweging.
4.6.1. Uitleesvolgorde¶
Typische sensoren beginnen bij de pixel linksonder en scannen naar rechts langs die rij, gaan dan omhoog naar de volgende rij en scannen opnieuw naar rechts, enzovoort, totdat ze rechtsboven eindigen.
Het pixelraster wordt uitgelezen vanaf de pixel linksonder, scannend naar rechts langs elke rij, en tussen rijen door omhoog naar de volgende rij.¶
Die volgorde is geen toeval. De lens spiegelt de scene horizontaal en keert hem verticaal om bij het projecteren op de sensor – de bovenkant van de scene komt onderaan de sensor terecht en links van de scene komt rechts op de sensor – en het uitlezen van linksonder en dan omhoog doorloopt de sensor in de volgorde die beide omkeringen ongedaan maakt, waardoor de pixels rechtop in het geheugen terechtkomen.
4.6.2. Rolling shutter¶
In een rolling-shutter-sensor wordt elke rij om de beurt belicht en uitgelezen. Terwijl de ene rij wordt uitgelezen, is de volgende nog zijn belichting aan het afronden, is de rij daarna net begonnen, enzovoort – het belichtingsvenster van elke rij is in de tijd iets verschoven ten opzichte van de volgende. Het integratievenster van de sensor rolt in scanvolgorde over het frame, en een volledige scan duurt de volledige frameperiode.
Voor stilstaande scenes is dit onzichtbaar. Voor scenes met snelle beweging verschijnt de verschuiving als skew – een object dat beweegt tussen het moment waarop de eerste rij wordt vastgelegd en het moment waarop de laatste rij wordt vastgelegd, verschijnt op verschillende posities in verschillende rijen van hetzelfde frame.
Een verticale balk die naar rechts beweegt, vastgelegd door elk type sluiter. Rolling shutter doet de balk schuin staan omdat de bovenkant van het frame op een ander moment wordt uitgelezen dan de onderkant; global shutter bevriest de balk op een moment.¶
Rolling shutter is het goedkopere ontwerp. Omdat elke rij meteen na het belichten wordt uitgelezen, heeft de pixelschakeling geen afgeschermde opslag per pixel nodig om zijn waarde vast te houden gedurende een sensorbrede uitlezing. De uitgespaarde transistors laten de fotodiode een groter deel van het pixeloppervlak innemen, wat zich direct vertaalt in hogere gevoeligheid en lagere ruis bij dezelfde fysieke pixelgrootte. De meeste consumentenbeeldsensoren zijn om deze reden rolling shutter.
4.6.3. Global shutter¶
In een global-shutter-sensor begint elke pixel zijn belichting op hetzelfde moment en eindigt deze op hetzelfde moment. De vastgelegde lading wordt vervolgens overgebracht naar een afgeschermd opslaggebied op de pixel, en de rij-voor-rij-uitlezing gebeurt vandaar. Het vastgelegde frame vertegenwoordigt een moment in de tijd, hoe snel de scene ook beweegt.
Global shutter kost meer silicium, en die kosten komen terecht op de fotodiode. Het vasthouden van de waarde van elke rij gedurende een sensorbrede uitlezing vereist een extra afgeschermde opslagcel op elke pixel plus de transistors die deze afsluiten van de fotodiode – oppervlak dat anders aan de fotodiode zelf zou toebehoren. Een kleinere fotodiode vangt minder fotonen per tijdseenheid op, dus een global-shutter-pixel is minder gevoelig dan een rolling-shutter-pixel van gelijke grootte. Dezelfde scene vereist een langere belichting of hogere versterking om bij dezelfde helderheid te worden vastgelegd, en de extra schakelingen verhogen de leesruis daarbovenop nog iets.
De andere belasting drukt op het belichtingsbudget. In een rolling-shutter-sensor overlapt de belichting van elke rij met de uitlezing van naburige rijen, zodat elke rij vrijwel de volledige frameperiode licht kan integreren. Bij een global shutter kan de uitlezing pas beginnen als elke rij klaar is met belichten, dus bij een gegeven framerate is de maximale belichtingstijd de frameperiode minus de volledige uitleestijd. Bij dezelfde framerate eindigt de rolling-shutter-pixel met meer licht per frame.
Deze kosten stapelen zich op: global-shutter-sensoren hebben een lager pixelaantal, meer ruis, lagere gevoeligheid en zijn duurder per pixel dan hun rolling-shutter-tegenhangers. De afweging is alleen de moeite waard wanneer snelle beweging schoon moet worden vastgelegd.
4.6.4. Wanneer welke gebruiken¶
Het sluitertype is een hardware-eigenschap van de sensor, geen software-instelling. De keuze wordt gemaakt wanneer de camera wordt ontworpen.
Rolling shutter is prima wanneer:
de scene stilstaat of langzaam beweegt;
de toepassing enige skew kan verdragen (de meeste fotografie en het meeste werk aan gebruikersinterfaces);
kosten en resolutie per euro de prioriteiten zijn.
Global shutter is de juiste keuze wanneer:
de scene snelle beweging bevat die schoon moet worden vastgelegd (robotica, drones, transportbandinspectie);
de camera zelf trilt of beweegt ten opzichte van een statische scene;
de afbeelding wordt ingevoerd in een vision-algoritme dat ervan uitgaat dat elk frame een enkel tijdsmoment is (de meeste pose-estimation- en structure-from-motion-pipelines).
Notitie
De OpenMV Cam-lijn gebruikt standaard global-shutter-sensoren voor machine vision-gebruik, waar bewegingsonscherpte op een bewegend onderwerp (of een bewegende camera) downstream-detectie en -tracking verstoort. Rolling-shutter-sensormodules worden ook aangeboden voor toepassingen waarbij de beeldkwaliteit van een trage of statische scene belangrijker is dan het bevriezen van snelle beweging – klassieke fotografie-achtige opname.