Antecknat på labbet

Funderingar kring bildbehandling, digitalfoto och Photoshop

Anders

Att invertera ett visst tonintervall

Anders | torsdag 20 november 2008


Igår skrev jag ett inlägg som avslutades med en “proffsfråga”. Frågan löd: Hur gör man för att invertera bara ett litet tonintervall och inte hela bilden?

Jag lovade att besvara den i ett eget inlägg. Så här kommer svaret. Och kom ihåg att det här är labbet. Här är vi inte rädda för att prata om svåra saker. :)

En normal kurva ser som alla vet ut så här:

Alla ingående toner mappas till likadana utgående toner. För att invertera hela bilden måste man vända på kurvan så att alla ingående ljusa toner mappas till utgående mörka och vice versa. Kurvan som inverterar blir alltså så här:

En sådan kurva påverkar förstås hela tonintervallet från svartaste svart till vitaste vitt. Men I princip kan vi dela upp hur många tonintervall vi vill och betrakta den lilla delen av kurvan som finns just ovanför det akutella intervallet som en ny kurva. Vi väljer till exempel följande intervall:

För att invertera endast det här intervallet måste vi alltså se till att kurvan vänds, men bara precis ovanför. En sådan kurva får därför följande principiella utseende:

På det här sättet åstadkommer vi precis det vi vill - hela bilden är normal förutom i just de ljusaste tonerna där saker och ting inverteras.

Ett tips för att få till en sådan här kurva är att rita den manuellt med frihandsverktyget och sedan finjustera:

Att försöka sätta ut punkter och dra kruvan rätt brukar nämligen vara lite krångligt. Kurvor vill ju vara kurvor och inte röra sig i vinklar.

Med den här kunskapen har vi alltså ett nytt sätt att förvandla mörka saker till ljusa - invertera bara hela objektet och invertera sedan tillbaka rätt tonintervall för att skuggningen ska bli rätt.

Är det här en lätt teknik? Nä. Ofta behöver man finjustera rätt mycket för att hitta rätt. Men man känner sig förstås störtcool när man väl lyckas.

Ett snabbt exempel på när det här tekniken används på kläder som vi pratade om i föregående inlägg:

Halvambitiöst maskat, men lägg märke till hur kurvinverteringen gör att vecken på tröjan får rätt ton.

10 läsarkommentarer har gjorts på “Att invertera ett visst tonintervall”

  1. Rille:

    Otroligt lärorikt, tack för tipset!

  2. Stina:

    Det här var skitkul och svårt. Jag får problem med att om det är högdagrarna i den mörka tröjan blir gula och konstiga.. Någon som vet vad man gör åt det? SKa man maska det speciellt?

  3. Emil:

    Ett av de bättre tipsen jag har stött på.
    Tack Anders.

  4. Ebba:

    Men då har jag en liknande utmaning som jag brottas med just nu. Jag vill göra en klart röd, genombruten virkad tröja vit. Jag kommer bara till silvergrå (och då måste jag använda B&W). Några av problemen är att försöka välja de röda pixlarna med color range när huden bakom också har röda toner. Och att den underliggande svarta tröjan väljs när jag väljer de mörkaste röda pixlarna.

    I Curves-processen du beskrev i det tidigare inlägget(som fungerade utmärkt på blåtonade, mörka men murriga färger)blir det inte samma resultat med så starka klara färger som rött. Det är dessutom olika röda toner i tröjan, varav 20% är så starka att de är out of gamut.

    Nu kan jag inte lägga in en bild här för att visa, men jag har en om någon är sugen på att försöka få ett bättre resultat än jag lyckats med.

    Hoppas på tips från “proffsen”!

    /Ebba

  5. Johan:

    Stina: Jag löste det genom att lägga ett Hue/Saturation-lager bakom kurvlagret och dra ned mättnaden till noll. Sen får man lägga på samma mask på det nya justeringslagret så att bara tröjan påverkas. Prova om det hjälper.

  6. Stina:

    Ahh, ska testa det!
    Tackar Johan!

  7. daniel:

    mer sånt här! sjukt bra anders :D mkt lärorikt

  8. Jannica:

    Kan bara hålla med Daniel. Tack igen Anders!

  9. Stefan:

    @Ebba
    Har du kollat igenom de olika färgkanalerna om någon av dem har bra kontrast mellan tröjan och bakgrund? Då kan du kopiera den kanalen och bearbeta den för att få fram en mask.
    Om du har klara röda färger i tröjan så är sannolikt den bästa kanalen den röda, där de röda tonerna kommer att vara vita och hudtonerna grå. För att få till en bra mask så kan du förmodligen använda dig av levels för att få bort de röda hudtonerna. De svarta detaljerna är redan svarta i den kanalen och kommer inte att ge dig några problem.
    De problem som kommer är precis i gränsen mellan den röda tröjan och hudtonerna, om tröjan är lite mindre röd där och börjar likna hudtonerna så kan du få använda andra kanaler i de områdena. De är möjligt att du har bättre möjligheter med den blå eller gröna kanalen just där och du får klippa och klistra lite.

    Hoppas att det kan hjälpa

    /Stefan

  10. Ebba:

    Tack för ditt tips, Stefan.

    Jag insåg också att en del skulle ha lösts med alfamasker men jag hittade av en slump en bra inställning för color range som jag kunde utgå ifrån. Sedan gjorde jag denna selection svartvit och lade på ett justerande curveslager för att få fram så ljusa silver- och vita toner som möjligt i tröjan utan att detaljerna i stickningen försvann. Det gick inte att göra tröjan 255 vit, förstås. Det hade sett helt sjukt ut. Jag detaljmålade fram vissa områden i tröjan som extra vita men lämnade stora delar silverfärgad. Det blev faktiskt helt OK.

    De “halos” av färg som inte kommit med i selectionen handjagade jag med hue/sat-lager med saturation satt till -100. Detta var möjligt för att upplösningen inte var alltför bra. Jag hade få pixlar som jag behövde påverka och det stod tydligt klart för mig var gränsen mellan tröja och hud gick.

    Det blev ganska bra - men det var mer pyssel och handarbete än vad jag kanske hade önskat.

Kommentera gärna