hooglichten herstellen

Poging om kleurinformatie te reconstrueren voor pixels die zijn bijgesneden in een of meer RGB-kanalen.

🔗clipping

Clipping treedt op wanneer de hoeveelheid opgevangen licht groter is dan ofwel de capaciteit van de sensor van een camera om dat licht op te nemen (fotosite verzadiging) ofwel de capaciteit van het Raw-bestand om het op te slaan (digitale clipping). Zodra een pixel geclipt is, kunnen we niet langer de exacte helderheid van die pixel weten – alleen dat deze gelijk is aan of groter is dan de maximale waarde die die pixel kan opslaan.

Idealiter zou het verzadigingspunt van de fotosite hetzelfde zijn als de waarde waarbij digitale clipping optreedt (om maximaal gebruik te maken van het dynamische bereik van de camera), maar deze waarden verschillen vaak tussen camera’s. Darktable gebruikt het “witpunt” van een camera om te bepalen of een bepaald kanaal geclipt is. Darktable gebruikt het “witpunt” van een camera om te bepalen of een bepaald kanaal geclipt is of niet. Als het witpunt voor een bepaalde camera verkeerd is ingesteld, kan dit ertoe leiden dat geldige pixels worden geclipt en dit kan de effectiviteit van deze module negatief beïnvloeden.

Wanneer een camera licht opvangt (met een normale Bayer-sensor) vertegenwoordigt elke pixel een enkele kleur (R,G,B), die vervolgens door de demosaic-module wordt geïnterpoleerd om de kleur van naburige pixels te berekenen. Het resultaat zal vaak pixels zijn (in de gedemosaïseerde afbeelding) die geclipt zijn in sommige (R,G,B) kanalen maar niet in andere.

Als deze pixels gedeeltelijk worden geclipt, kan dit resulteren in onrealistische kleuren in de afbeelding. Deze onjuiste kleuren kunnen dan verder worden scheefgetrokken door de witbalansmodule, die de verhoudingen van de R-, G- en B-kanalen aanpast om rekening te houden met de algemene kleur van de scène. Als bijvoorbeeld alleen het G-kanaal geclipt is (en R en B bijna geclipt zijn), kan de witbalansmodule ervoor zorgen dat de R- en B-kanalen worden aangepast boven het clippingpunt van het G-kanaal, wat leidt tot roze highlights die anders wit zouden zijn geweest.

De ruwe methode om dit op te lossen is om de R en B kanalen te clippen naar het clipping punt van het G kanaal (de “clip highlights” reconstructie methode), maar dit kan resulteren in het verlies van geldige pixel gegevens die nuttig kunnen zijn bij highlight reconstructie, en kan ook andere artefacten en tintverschuivingen veroorzaken.

🔗methodes om hooglichten te herstellen

In deze module wordt een aantal methoden voor hooglichtreconstructie aangeboden. Deze methoden gebruiken allemaal niet-geclipte kanalen en/of aangrenzende pixels om de ontbrekende gegevens te reconstrueren.

inpaint opposed (standaard)
Herstel geclipte pixels door een gemiddelde van aangrenzende niet-geclipte pixels te gebruiken om de juiste kleur te schatten. Dit werkt goed voor de meeste afbeeldingen, maar kan mislukken als de geclipte gebieden grenzen aan gebieden met een andere kleur.
segmentatie gebaseerd
Een geavanceerder algoritme dat aangrenzende niet-geclipte pixels gebruikt om de juiste kleur te schatten, door elk geclipt gebied afzonderlijk te behandelen (als een individueel segment). De kleur van elk geknipt segment wordt geschat door de kleurverhoudingen van de aangrenzende pixels te analyseren. Pixels die te donker zijn of een rand lijken te zijn, worden door het algoritme verworpen. Als alle omliggende pixels worden verworpen, wordt dat segment gereconstrueerd met de methode “inpaint opposed” (hierboven). Segmenten die dicht bij elkaar liggen, zijn vaak delen van hetzelfde object en kunnen dus worden behandeld alsof ze één segment vormen.

Reconstructie op basis van segmentatie is in staat om grote gebieden waar alle kanalen geclipt zijn opnieuw op te bouwen door de omringende gradiënten te onderzoeken. Je moet deze methode echter meer zien als een manier om geclipte gebieden te “verhullen” met iets aannemelijks, dan als een manier om ze “op magische wijze” te herstellen.

begeleide laplaciërs
Gebruik een algoritme (afgeleid van de module diffuus of verscherpen) om details van geldige kanalen naar afgekapte kanalen te repliceren en om kleurovergangen van geldige omringende regio’s naar afgekapte regio’s te verspreiden. Dit is een rekenintensieve methode die is ontworpen voor maximale gladheid en naadloze vermenging van de gereconstrueerde regio’s in hun omgeving, en is voornamelijk ontworpen om lichtpunten en spiegelende reflecties te reconstrueren. Deze modus is alleen beschikbaar voor Bayer-sensoren.
comprimeer hooglichten
Klem alle pixels vast op het witniveau (d.w.z. knip de resterende kleurkanalen af). Deze methode is vooral handig in gevallen waarin uitgeknipte hooglichten voorkomen in natuurlijk onverzadigde objecten (bijv. wolken).
reconstrueren in LCh
Analyseer elke pixel met ten minste één geknipt kanaal en probeer de geknipte pixel (in LCh-kleurruimte) te corrigeren met behulp van de waarden van de andere (3 voor Bayer of 8 voor X-Trans) pixels in het betreffende sensorblok. De gereconstrueerde hooglichten zullen nog steeds monochroom zijn, maar helderder en met meer detail dan bij “kniphoogtepunten”. Deze methode werkt redelijk goed met een basiscurve met hoog contrast, waardoor hooglichten onverzadigd worden. Net als bij hooglichten knippen is deze methode een goede optie voor natuurlijk onverzadigde objecten.
reconstrueer kleur
Gebruik een algoritme dat kleurinformatie van niet-uitgeknipte omgevingen overdraagt naar de uitgeknipte hooglichten. Deze methode werkt erg goed op gebieden met homogene kleuren en is vooral handig op huidtinten met vloeiend vervagende highlights. Houd er rekening mee dat deze methode doolhofachtige artefacten kan produceren op hooglichten achter randen met hoog contrast, bijvoorbeeld goed belichte fijne structuren voor een overbelichte achtergrond.

Opmerking: Bij gebruik van de reconstructie van hooglichten die bij de module filmisch rgb wordt geleverd, kan het beter zijn om deze module niet in de klip hooglichten-modus te gebruiken (zodat filmisch rgb meer informatie heeft om mee te werken).


🔗module instellingen

🔗globale instellingen

methode
De methode die wordt gebruikt om hooglichten te reconstrueren.
overschrijdingsdrempel
Pixels boven deze waarde worden beschouwd als geclipt.

Klik op het icoon naast de schuifregelaar om te visualiseren welke delen van de afbeelding als afgekapt worden aangemerkt (afkap masker). Als de afkapmasker niet overeenkomt met de raw overbelicht waarschuwing, zal deze waarde aangepast moeten worden.

🔗“geleide laplaciaans” modus

ruisniveau
Voeg poisson ruis toe (neutrale foton ruis die je vindt in een sensor uitlezing) aan de afgekapte delen. Voor hoge ISO afbeeldingen zijn de valide delen van de afbeelding vol met ruis en de gereconstrueerde afgekapte delen glad, wat er een beetje vreemd uitziet. Door wat ruis toe te voegen in de reconstructie zorgt dit voor een betere mix met de rest van de afbeelding.
iteraties
De begeleide laplaciaans modus is een iteratief proces dat gradiënten en details uit zijn omgeving extrapoleert. Elke nieuwe iteratie verfijnt de vorige reconstructie, maar voegt meer berekeningen toe die de module langzamer maken. Het standaardaantal iteraties zou redelijke resultaten moeten opleveren, maar u kunt dit verhogen als de magenta hooglichten niet volledig worden hersteld. Verhoog deze parameter geleidelijk maar voorzichtig om de verhouding tussen snelheid en kwaliteit te beheren.
inkleuren van vlakke kleur
Het inkleuren van een vlakke kleur is een algoritmische truc die kan helpen bij het herstellen van magenta hooglichten in moeilijke gevallen (grote opgeblazen gebieden) door RGB-verhoudingen af te vlakken. Het kan worden gezien als een “reconstructie-booster” die het aantal iteraties kan verminderen dat nodig is om magenta volledig te verwijderen in geknipte hooglichten. Dit maakt de reconstructie echter ook minder nauwkeurig en kan ertoe leiden dat niet-gladde gereconstrueerde randen en niet-gerelateerde kleuren worden ingekleurd (bijvoorbeeld blauwe lucht of groene bladeren die uitlopen in witte wolken). Gebruik deze instelling met de nodige voorzichtigheid.
diameter van de reconstructie (alleen begeleide laplaciërs modus)
De begeleide laplaciërs modus gebruikt een algoritme met meerdere schalen dat de details van elke schaal afzonderlijk probeert te herstellen. De diameter van de reconstructie is de grootste schaal die door het algoritme wordt gebruikt. Grote schalen verhogen het geheugengebruik en de looptijden en kunnen er ook voor zorgen dat niet-gerelateerde kleuren of details worden ingekleurd in afgekapte gebieden. U wordt geadviseerd een diameter te gebruiken die ongeveer twee keer zo groot is als het grootste te reconstrueren geknipte gebied. Het is ook mogelijk dat een bepaalde diameter niet geschikt is voor alle geknipte gebieden. In dat geval moet u meerdere exemplaren op verschillende schalen gebruiken en de geknipte gebieden dienovereenkomstig maskeren.

🔗Modus “op segmentatie gebaseerd”

overschrijdingsdrempel
Omdat dit het aantal pixels bepaalt dat als geclipt wordt beschouwd, verandert het ook de grootte van de resulterende segmenten en de locatie van de aangrenzende pixels die worden gebruikt voor de reconstructie. Voor een nauwkeurige aanpassing kun je de belichtingsmodule gebruiken om ervoor te zorgen dat er geen hoge lichten worden geclipt in het histogram (of de afbeelding die je op het scherm ziet). Verhoog vervolgens de drempelwaarde voor clipping tot de hooglichten niet langer wit zijn en verlaag deze dan weer langzaam tot ze er acceptabel uitzien.
combineren
De straal waarbij dicht bij elkaar liggende segmenten worden gecombineerd en beschouwd als deel van hetzelfde segment. Verhogen (om meer segmenten te combineren) wanneer verschillende delen van hetzelfde object ten onrechte zijn gereconstrueerd naar verschillende kleuren. Verlagen (om segmenten te scheiden) wanneer verschillende objecten ten onrechte zijn gereconstrueerd naar dezelfde kleur. Klik op de knop naast de schuifbalk om de contouren van de resulterende segmenten te zien.
combineren
De straal waarbij dicht bij elkaar liggende segmenten worden gecombineerd en beschouwd als deel van hetzelfde segment. Verhogen (om meer segmenten te combineren) wanneer verschillende delen van hetzelfde object ten onrechte zijn gereconstrueerd naar verschillende kleuren. Verlagen (om segmenten te scheiden) wanneer verschillende objecten ten onrechte zijn gereconstrueerd naar dezelfde kleur. Klik op de knop naast de schuifbalk om de contouren van de resulterende segmenten te zien.
regenereren
Kies hoe gebieden waarvan alle kanalen zijn geclipt opnieuw moeten worden opgebouwd. De modi “klein” en “groot” zijn respectievelijk afgestemd op segmentgroottes kleiner dan 25 en groter dan 100 pixels in diameter. De ‘vlakke’ modi proberen smalle niet-geclipte kenmerken (hoogspanningslijnen, takken) te negeren om gradiënten te voorkomen. Tot slot proberen de “generieke” modi de beste instellingen te vinden voor elk segment.

🔗“geleide laplacians” modus en met filmisch hooglichtenreconstructie

Het is belangrijk op te merken dat de hooglicht reconstructie module vrij vroeg in de pixelpijplijn zit – vóór ingaand kleurprofiel en de volledige chromatische aanpassing in [kleurkalibratie](./color -calibration.md) (als u de moderne chromatische aanpassing workflow gebruikt). Een veelgebruikte truc om afgekapte hooglichten op te lossen, is door ze eenvoudigweg wit te maken, maar omdat wit niet is gedefinieerd vóór de volledige chromatische aanpassing en de invoerkleurprofilering, is het niet mogelijk om deze truc hier te gebruiken. Technisch gezien is er op dit moment nog geen kleur in de pijplijn, alleen een willekeurig 3D-signaal.

De begeleide laplaciërs-benadering is specifiek ontworpen om immuun te zijn voor afwijkingen in de witbalans en om elk concept of elke methode met betrekking tot kleur te vermijden (er is dus geen expliciete desaturatie). Het behandelt alleen gradiënten (overgangen) in het signaal en streeft ernaar deze soepel te verbinden, om de ontbrekende delen op te vullen. Dit proces is echter behoorlijk zwaar, omdat het in de categorie van gesuperviseerde machine learning valt (gradiënt gebaseerde optimalisatie door multischaal kromming), een sub-tak van kunstmatige intelligentie.

Filmisch hooglicht-reconstructie gebruikt een eenvoudiger kleurpropagatie-algoritme in combinatie met een desaturatie-optie die een achromatische reconstructie kan bevorderen. Het weet niet alleen van kleur (omdat het komt na de volledige kleurprofilering en chromatische aanpassing), maar het gebruikt ook een vereenvoudigde en snellere versie van het algoritme dat wordt gebruikt door de begeleide laplaciërs-benadering. Deze variant zal namelijk niet zo hard proberen om details te herstellen en zal in plaats daarvan de voorkeur geven aan een vloeiende vervaging.

De filmisch reconstructie is goed genoeg voor zeer grote geknipte plekken en biedt het voordeel dat het als laatste redmiddel kan worden afgebroken tot wit. Het is ook beter en sneller om effen kleuren in geknipte gebieden te schilderen, ten koste van details. Het belangrijkste nadeel is dat het niet zo selectief is in de bron van de kleuren die worden ingekleurd in geknipte delen, dus het kan niet-verwante kleuren overschilderen.

Al met al is het verstandig om een begeleide laplaciërs hooglicht reconstructie mode te gebruiken om:

  1. overgangen van afgekapte delen te verzachten,

  2. herstellen van spotlichten en afgekapte delen met een diameter onder ongeveer 256px (over RAW met volledige resolutie),

  3. verwijderen van chromatische aberratie, welke kan ontstaan bij demosaëk (de volgende module in de pijplijn) op de grens van afgevlakt en valide delen.

Als je merkt dat je de diameter van de reconstructie moet vergroten tot voorbij 512 px om volledig herstel van magenta te krijgen, is de beste aanpak meestal om de diameter te beperken tot 512 px, je best te doen met deze instelling en vervolgens de reconstructie van de hooglichten van filmisch in te schakelen om het werk te voltooien. Dit geeft draaglijkere looptijden met een zeer vergelijkbaar resultaat.

translations