ruisreductie (profiled)
Een gebruiksvriendelijke en zeer efficiënte ruisonderdrukkingsmodule, aangepast aan de individuele ruisprofielen van een breed scala aan camerasensoren.
Een probleem met veel ruisonderdrukkingsalgoritmen is dat ze aannemen dat de variantie van de ruis onafhankelijk is van de helderheid van het signaal. Door de ruiskarakteristieken van de sensor van een camera bij verschillende ISO-instellingen te profileren, kan de variantie bij verschillende lichtsterkten worden beoordeeld en kan het ruisonderdrukkingsalgoritme worden aangepast om de ruis gelijkmatiger af te vlakken.
Momenteel heeft darktable sensorruisprofielen voor meer dan 300 populaire cameramodellen van alle grote fabrikanten. Als je jouw eigen ruisprofiel genereert voor een camera die nog niet door darktable wordt ondersteund, deel dit dan met het darktable-ontwikkelteam zodat zij het in de volgende versie kunnen opnemen! Zie de camera support pagina van darktable voor meer informatie.
🔗modi
De ruisreductie (profiled)-module implementeert twee algoritmen, die elk beschikbaar zijn in een gebruiksvriendelijke “auto”-modus of een meer geavanceerde handmatige modus met extra instellingen:
- niet-lokale middelen
- Dit algoritme werkt in het ruimtelijke domein op vrijwel dezelfde manier als de ontruis astrophoto module. Het gemiddelde van elke pixel met enkele omringende pixels in de afbeelding. Het gewicht van een dergelijke pixel in het middelingsproces hangt af van de gelijkenis van zijn omgeving met de omgeving van de pixel waarvan de ruis wordt verwijderd. Een patch met een gedefinieerde grootte wordt gebruikt om die overeenkomst te meten.
-
Houd er rekening mee dat dit algoritme behoorlijk veel rekenkracht vraagt.
- wavelets (standaard)
- Dit algoritme werkt in het domein wavelet en biedt een vereenvoudigde gebruikersinterface. Met wavelet-decompositie kunt u de ruisonderdrukking aanpassen aan de grofheid van de ruis in het beeld. Deze modus kan worden gebruikt in de Y0U0V0-kleurmodus (waarmee je de helderheid en chromaruis onafhankelijk kunt regelen) of de RGB-kleurmodjes (waarmee u de ruis voor elk RGB-kanaal afzonderlijk kunt regelen).
-
Het wavelet-algoritme vraagt minder rekenkracht dan niet-lokale middelen.
🔗luma versus chromaruis
Zowel “niet-lokale middelen” als “wavelet”-algoritmen kunnen luma (helderheid) ruis en chroma (kleur) ruis efficiënt aanpakken.
In het verleden werd aangeraden om twee afzonderlijke instanties van deze module te gebruiken om chroma- en luma-ruis onafhankelijk aan te pakken (met behulp van de overvloeimodi chroma en helderheid). Dit wordt niet langer aanbevolen, aangezien de module ruisreductie (profiled) vóór de module ingaand kleurprofiel in de pixelpijp wordt geplaatst (zodat de profielparameters nauwkeurig zijn) en kleurovervloeimodi alleen mogen worden gebruikt nadat het invoerkleurprofiel is toegepast .
De nieuwe algoritmen in deze module bieden nu hun eigen methoden om luma- en chroma-ruis afzonderlijk te verwerken, en in beide gevallen kan dit worden afgehandeld met een enkele module-instantie.
🔗module instellingen
De module ruisreductie (profiled) biedt enkele instellingen die onafhankelijk zijn van het gebruikte algoritme. Deze worden eerst beschreven, voordat we verder gaan met de algoritme-specifieke instellingen.
Bij het beschrijven van de instellingen die specifiek zijn voor een algoritme, behandelen we eerst de vereenvoudigde interface en gaan dan verder met de meer geavanceerde instellingen voor dat algoritme.
Merk op dat schuifregelaars standaard worden voorzien van minimum- en maximumwaarden. Dit zijn echter slechts zachte limieten en waar nodig kunnen hogere waarden worden ingevoerd door met de rechtermuisknop op de schuifregelaar te klikken en een nieuwe waarde in te voeren.
🔗globale instellingen
- profiel
- darktable bepaalt automatisch het cameramodel en ISO op basis van de Exif-gegevens van jouw onbewerkte bestand, en zoekt naar een bijbehorend profiel in zijn database. Als uw afbeelding een tussenliggende ISO-waarde heeft, worden instellingen geïnterpoleerd tussen de twee dichtstbijzijnde datasets in de database, en deze geïnterpoleerde instelling wordt weergegeven als de eerste regel in het keuzemenu. U kunt deze selectie indien nodig ook handmatig overschrijven. Als u het bovenste item in de keuzelijst opnieuw selecteert, keert u terug naar het standaardprofiel.
- modus
- Kies welk ruisonderdrukkingsalgoritme je wilt gebruiken (zie hierboven) en of je de vereenvoudigde (“auto”) of volledig handmatige interface voor dat algoritme wilt presenteren.
- witbalans-adaptieve transformatie
- Omdat de witbalans elk van de RGB-kanalen op een andere manier versterkt, vertoont elk kanaal verschillende ruisniveaus. Dit selectievakje zorgt ervoor dat het geselecteerde algoritme zich aanpast aan de witbalansaanpassingen. Deze optie moet bij de tweede instantie worden uitgeschakeld als u een eerste instantie met een kleurovervloeimodus hebt toegepast.
- autoset-parameters aanpassen (alleen automatische modi)
- Pas automatisch alle andere parameters van het huidige ruisonderdrukkingsalgoritme aan met een enkele schuifregelaar. Dit is met name handig wanneer je de belichting op een onderbelichte opname hebt moeten verhogen, wat normaal gesproken extra ruis introduceert (alsof je de opname met een hogere ISO had gemaakt). Deze instelling compenseert dat door instellingen te gebruiken die vergelijkbaar zijn met die voor een hogere ISO-afbeelding. De “effectieve ISO” die door het ruisonderdrukkingsalgoritme wordt gebruikt, is de werkelijk gebruikte ISO, vermenigvuldigd met de waarde van deze schuifregelaar.
- kracht
- Verfijn de sterkte van de ruisonderdrukking. De standaardwaarde is gekozen om de pieksignaal-ruisverhouding te maximaliseren. Het is vooral een kwestie van smaak – of je de voorkeur geeft aan een laag ruisniveau ten koste van fijne details, of je accepteert meer ruis om fijne details beter te behouden.
- schaduwen behouden (alleen geavanceerde modus)
- Verlaag deze regelaar om de schaduwen agressiever te verwijderen. Gewoonlijk moet je deze parameter verlagen naarmate de ruis toeneemt.
- biascorrectie (alleen geavanceerde modus)
- Corrigeer eventuele kleurzweem die in de schaduwen kan verschijnen. Verhoog deze waarde als donkere schaduwen te groen lijken, verlaag deze als ze te paars lijken.
🔗niet-lokaal middelen automatische schuifregelaars
- centraal pixelgewicht (details)
- Bepaal de hoeveelheid detail die moet worden bewaard door het ruisonderdrukkingsalgoritme. Standaard heeft dit een lage waarde, wat betekent dat het algoritme zowel luma- als chromaruis gelijk behandelt. Verplaats deze schuifregelaar naar rechts om de hoeveelheid luma-ruisonderdrukking te verminderen, zodat het algoritme voornamelijk chromaruis beïnvloedt. Door deze schuifregelaar samen met de kracht schuifregelaar te verstellen, kan je een goede balans vinden tussen luma en chroma denoising.
🔗niet-lokaal middelen geavanceerde schuifregelaars
Wanneer je niet-lokale middelen uit de automatische modus haalt, wordt de schuifregelaar autoset parameters aanpassen vervangen door de volgende bedieningselementen. Je kan de schuifregelaar voor automatisch aanpassen gebruiken om tot enkele initiële instellingen te komen. Wanneer je vervolgens naar de handmatige modus overschakelt, zullen de schuifregelaars de equivalente handmatige instellingen weergeven. Je kan vervolgens doorgaan met het verfijnen van de handmatige instellingen vanaf het startpunt voor automatisch instellen.
- patchgrootte:
- Bepaal de grootte van de patches die worden gematcht bij het bepalen van de te gemiddelde pixels – zie ontruis astrophoto voor meer informatie. Verhoog dit voor afbeeldingen met meer ruis, maar houd er rekening mee dat hoge waarden fijne randen kunnen gladstrijken. Het effect van deze schuifregelaar op de verwerkingstijd is minimaal.
- zoekradius
- Bepaal hoe ver het algoritme van een pixel verwijderd is om vergelijkbare patches te vinden. Het verhogen van de waarde kan betere resultaten opleveren voor afbeeldingen met veel ruis wanneer grove korrelruis zichtbaar is, maar de verwerkingstijd wordt enorm beïnvloed door deze parameter (de verwerkingstijd neemt toe met het kwadraat van deze parameter). Een lagere waarde maakt de uitvoering sneller, een hogere waarde maakt het langzamer. In de meeste gevallen is het beter om de verstrooiingsparameter te gebruiken, die een soortgelijk effect heeft, maar zonder de hoge verwerkingskosten.
- verstrooiing (grofkorrelige ruis
- Net als de zoekradius bepaalt deze schuifregelaar hoe ver van een pixel het algoritme zal proberen soortgelijke patches te vinden. Het doet dit echter zonder het aantal overwogen patches te verhogen. Hierdoor blijft de verwerkingstijd ongeveer gelijk. Door de waarde te verhogen, wordt de grove korrelruis verminderd, maar kan het lokale contrast worden afgevlakt. Deze schuifregelaar is bijzonder effectief bij het verminderen van chromaruis.
🔗wavelet curves
Wavelet-curven worden weergegeven wanneer een van de “wavelet” -modi is geselecteerd.
De ruis in een afbeelding bestaat meestal uit zowel fijne korrel- als grove korrelruis, in verschillende mate. Met de wavelet-curven kan de sterkte van de ruisonderdrukking worden aangepast aan de grofheid van de zichtbare ruis. Het linkeruiteinde van de curve zal inwerken op zeer grove korrelruis, terwijl het rechteruiteinde van de curve zal inwerken op zeer fijne korrelruis. Als je de curve verhoogt, neemt de mate van afvlakking toeen vice versa.
Je kan bijvoorbeeld zeer fijnkorrelige ruis behouden door het meest rechtse deel van de curve naar beneden te trekken. Bij het aanpakken van chromaruis (bijvoorbeeld op een U0V0-curve, of op een tweede module-instantie met een kleurmengmodus) kan je veilig de rechterkant van de curve verhogen, omdat kleuren niet veel veranderen op fijne schalen. Dit kan handig zijn als je geïsoleerde pixels met ruis met de verkeerde kleur ziet.
🔗wavelets Y0U0V0 kleurmodus
De geprefereerde manier om wavelets te gebruiken is met de Y0U0V0 kleurmodus. Deze modus scheidt de ruisonderdrukkingscurves in luminantie (Y0) en kleur (U0V0) componenten. Je kan dan de Y0-curve gebruiken om het niveau van luma-ruisonderdrukking te regelen, en de U0V0-curve om het niveau van chroma-ruisonderdrukking te regelen.
🔗wavelets RGB kleurmodus
Voordat de Y0U0V0 kleurmodus werd geïntroduceerd, kon wavelet-gebaseerde ruisonderdrukking alleen direct worden uitgevoerd op de R, G en B kanalen, samen of afzonderlijk.
Als je de RGB-kanalen onafhankelijk van elkaar wilt ontruisen, kan je dit het beste doen door een instantie van de module kleurkalibratie te gebruiken die direct voor de ruisreductie (profiled)-module is geplaatst, zodat deze een grijskanaal uitvoert op basis van alleen het rood-kanaal, en ontruist vervolgens dat monochrome beeld met behulp van de rood wavelet-curve. Herhaal deze procedure voor de blauwe en groene kanalen. Deze procedure is tijdrovend, maar geeft het beste resultaat omdat kijken naar de kleur van een pixel met ruis geen betrouwbare manier is om te bepalen welk kanaal moet worden aangepast. Een rode pixel met ruis kan bijvoorbeeld te wijten zijn aan een ruispiek op het rode kanaal, maar kan ook te wijten zijn aan een ruisonderbreking op het blauwe en groene kanaal.
Het probleem met het onafhankelijk ongedaan maken van ruis op de RGB-kanalen is dat er aan het einde nog wat chromaruis kan zijn die overmatige afvlakking vereist om te elimineren. Dit was in feite een van de belangrijkste drijfveren achter het implementeren van de Y0U0V0 kleurmodus.
🔗wavelets geavanceerde schuifregelaars
Wanneer je wavelets uit de auto-modus haalt, wordt de automatische parameterinstelling-schuifregelaar vervangen door de behoud schaduwen en bias correctie-regelaars die hierboven zijn vermeld in de sectie algemene regelaars.