Annons

Annan sensorteknik för att undvika utbrända högdagrar?

Produkter
(logga in för att koppla)

erro.se

Aktiv medlem
Någon som vill spåna lite teoretiskt kring digitala sensorer och hur man undviker att bränna högdagrarna?

En tanke slog mig häromdagen: I allmänhet vill man undvika utbrända högdagrar. Och anledningen till att de blir utbrända är ju att sensorn blir maxladdad (eller överladdad), d.v.s. RGB=255,255,255.

Men, och här är nu min tanke: skulle man inte kunna tillverka en sensor som inte blir överladdad? Alltså inte har någon övre gräns. Låt den laddas upp med fotoner (ljus) så länge den vill. När bilden väl är tagen skulle man sedan kunna säga att: OK, maxvärdet för just denna bild blev 97 miljoner fotoner. Då konverterar vi denna bild så att 97 miljoner fotoner motsvarar värde 255 i den färdiga bilden. Och den pixel som fick lägst antal fotoner sätter vi till RGB=0.

Förstår ni min tanke? En flexibel dynamisk övre gräns för vad RGB-värdet 255 egentligen motsvarar.

Frågan är om det är praktiskt möjligt? Finns det begränsande faktorer i sensortillverkning eller -teknik som gör att detta inte fungerar?

Eller är det en tanke som bara låter bra i teorin men som inte funkar praktiskt även om den skulle vara tekniskt genomförbar?
 
Tja, det låter ju bra i teorin iallafall. ;) Har ingen koll, så jag kan egentligen inte uttala mig om huruvida det är möjligt, men måste inte en sensor ha ett visst antal fasta nivåer? Men vem vet, Canon eller någon kanske håller på och tar fram en sådan just i denna stund. :)
 
För det första så är har varje pixel 12 bitar vilket motsvarar 4096 nivåer och inte 256.

På visionmässan i stuttgart i höstas fanns flera kameror som fungerar i viss mån som du föreslår. Än så länge finns dom enbart som monokroma. Dessa komaeror har sensorer som har en exponentiell känslighet vilket gör att det är mkt svårt under normala förhållanden att överexponera dom.
 
Visst, 12 bitar i det interna råformatet, jag orkade inte dra alla detaljer. Och min fråga formulerades ju efter JPG-bilder, men resonemanget kan lika gärna appliceras på råfiler där man översätter sensorns laddning till 4096 nivåer. Eller 65535 om man skulle vilja gå över till äkta 16-bitar. Eller nåt annat.

Intressant att man börjat experimentera i dessa banor. Exponentiella sensorer istället för linjära, ja varför inte, det borde ju kunna fungera på "mitt" sätt.

Men vad är det egentligen som gör att dagens sensorer har en övre gräns? Vad är det som sätter denna gräns? Någon som vet?
 
Det skulle ju inte bli nån skillnad. När du mättat den ljusaste pixeln så mycket som exponeringen kräver, så måste man ju översätta alla pixlar till den nivån, och alltså blir allt annat ändå underexponerat, precis som det fungerar med den teknik som används. Skillnaden skulle väl vara att man inte behöver vara så noga med exponeringen, men priset för detta skulle knappast vara värt besväret.
Då är det nog bättre att öka dynamiken (antal bitar) i sensorn.
 
Nja, allt annat behöver väl inte bli underexponerat? Visst, om vi pratar om en bild med starka högdagrar, t.ex. en lampa som hanteras på detta sätt så kanske det blir en allmänt underexponerad bild på detta sätt. Men om man har en sensor som inte går att mätta så borde man ju också kunna fixa råkonverterare som klarar att hantera informationen, d.v.s. välja hur översättningen sker. Det behöver ju inte nödvändigtvis vara en "enkel linjär" konvertering, utan man kan väl använda kurvor precis som vanligt. Poängen är dock att ingen pixel är utbränd, all information finns tillgänglig att använda.
 
erro_67 skrev:
Nja, allt annat behöver väl inte bli underexponerat? Visst, om vi pratar om en bild med starka högdagrar, t.ex. en lampa som hanteras på detta sätt så kanske det blir en allmänt underexponerad bild på detta sätt. Men om man har en sensor som inte går att mätta så borde man ju också kunna fixa råkonverterare som klarar att hantera informationen, d.v.s. välja hur översättningen sker. Det behöver ju inte nödvändigtvis vara en "enkel linjär" konvertering, utan man kan väl använda kurvor precis som vanligt. Poängen är dock att ingen pixel är utbränd, all information finns tillgänglig att använda.
Ok, men det skulle innebära att det blir nån slags "autoexponering"? Alltså måste man då exponera längre tid än vanligt för att alltid utnyttja sensorn optimalt vid ett visst ISO-tal. Kan säkert vara bra ibland, men jag tror nog inte att idén är tillräckligt bra för att det ska vara värt det tyvärr.
Däremot skulle det kanske vara idé att göra nån logaritmisk kurva över mättningen istället för att sensorn mättas linjärt. Jag har för mig att film funkar mer på det viset...
 
Nej min tanke var väl att men med samma exponering som vanligt skulle slippa mätta sensorn, och därmed undvika utbrända högdagrar. Det har väl inte så mycket med exponeringens längd att göra som att man med detta sätt skulle öka sensorns dynamiska omfång. Men återigen, jag spekulerar ju bara...

Men den springande punkten verkar vara det faktum att dagens sensorer jobbar linjärt medans film (som du påpekar) är icke-linjär. Sensorer klipper tvärt medans film har en "tå" och en "axel" (har jag för mig att det heter, eller är det skuldra?) som gör att filmen inte klipper på samma tvära sätt.
 
Jag antar att man som nu har 4096 nivåer att exponera på motsvara 5 bländarsteg.. så borde ex. vis en fördubbling bli 6 bländarsteg etc...

Som om vi i teorin tänker oss att vi vill exponera samt ha kvar täckning rakt av solljus refl. på vitt papper och till de mörkaste skuggorna så skulle vi kanske behöva 100 (gissning) bländarsteg. Detta skulle med resonemanget innebära att vi var tvugna att öka varje pixels möjliga nivåer 94 ggr dvs ca 2^100 nivåer.. detta skulle i sin tur kräva 100 bitar per pixel.. dvs bildfilerna skulle bli 10 ggr så stora som idag.

Det vore sjysst .. men jag antar att AD (sensorerna)omvandlarna som klarar denna upplösning dröjer ett tag..
 
Som sagt, jag bara spekulerar och spånar. Vet inte i detalj hur sensorer är konstruerade och fungerar. Tror knappast att jag kommit på någon revolutionerande idé här heller, men frågar man inte så får man aldrig veta.

Men en fråga kvarstår: vad är det egentligen som gör att man kan mätta pixlarna i sensorn? Vad är det som sätter stopp? Min enkla förståelse är att varje pixel laddas till en viss spänningsnivå beroende på hur mycket ljus den tar emot - ju mer ljus desto mer spänning. Finns det då alltså en övre gräns för hur mycket varje pixel kan laddas? Isåfall, vad är hindret för att höja den gränsen?
 
Som du funderar Robert, dvs att inte ha något tak för sensorns känslighet kanske fungerar. Men problemet blir sedan att representera datan som senorn registerar på ett representativt sätt. Säg att den ljusaste delen som du säger blir en nivå på 16 miljoner och du sedan vill sätta denna till 255 och den lägsta nivån till 0. Men hur ska du sedan kunna fördela resterande nivåer därimellan på ett korrekt sätt?
 
Jag tror jag greppat vad du menar nu Robert, men det finns nog tekniska problem så det förslår. Jag vet inte hur sensorn fungerar, men om vi antar att det är något likande det du funderar över, det vill säga en fotoelektrisk grunka i varje pixel som bygger upp en spänning beroende på exponering, så måste du ju tänka på att den omgivande elektroniken är optimerad för ett visst spänningsintervall i det fallet. Låt oss anta att det rör sig om några mikrovolt (eller egentligen är det väl laddning det handlar om i så fall), och om man då bara fortsätter att "ladda" så kommer man ju till "taket" där det blir en överspänning som inte elektroniken kan hantera. Ska man "höja taket" så försämrar man säkerligen egenskaperna vid lägre laddning/exponering, och det är ju i så fall ingen höjdare.

Jag tror bestämt att jag ska läsa på lite om sensorteknik:) Mycket intressant ämne detta!
 
erro_67 skrev:
Min enkla förståelse är att varje pixel laddas till en viss spänningsnivå beroende på hur mycket ljus den tar emot - ju mer ljus desto mer spänning.
Nja, laddningen blir ju inte till en spänning förrens vid utläsningen av pixlarna. Först har du en fotodiod som ger en motsvarande mängd elektroner efter inkommande mängd fotoner. Varje pixel kan bara hålle en viss maximal laddning med elektroner innan den blir mättad. Sedan när exponering är klar så förflyttas denna laddning, eller läses av på annat sätt och görs om till en spänningsnivå. I Efter detta så även en AD-omvandligare för att omvandla de analoga värdena till för resten av kameran förståelig information i form av ett antal ettor och nollar ordnade i gruppen om ett antal bitar, som alltså i grund och botten är en någorlunda god appromixation av den analoga värdet.

Det är sättet att utläsa laddningarna som skiljer CCD och CMOS åt. På en CCD brukar laddningarna skiftas ner efter exponering, eller kontinuerligt(beroende på typen av CCD), pixel för pixel, och överförs till spänning i ena kanten av chippet. På en CMOS så har du dioder och transitorer vid varje pixel som direkt omvandlar pixelns ladding till spänning redan innan den skickar det vidare.
 
Och så kom den gode Damocles in med sin kunskap. Vi ses då och då här i forumen. Samma intressen kan tro :)

OK, först en laddning som sedan blir till en spänning som sedan blir till ettor och nollor.

Men, jag tjatar på med min fråga: vad är det som sätter den övre gränsen för hur mycket en pixel kan laddas? Och varför kan man inte "bara" höja den gränsen?
 
erro_67 skrev:
Men, jag tjatar på med min fråga: vad är det som sätter den övre gränsen för hur mycket en pixel kan laddas? Och varför kan man inte "bara" höja den gränsen?

Intressant fråga (för oss som inte vet ;))!

Jag vet inte, men kanske är det så enkelt som att en högre gräns kräver en större pixel? Någonstans har man ju fysiska lagar som begränsar.
 
erro_67 skrev:
Men, jag tjatar på med min fråga: vad är det som sätter den övre gränsen för hur mycket en pixel kan laddas? Och varför kan man inte "bara" höja den gränsen?

Kanske den fysiska storleken på pixeln? Fotonerna måste ju få plats.
 
erro_67 skrev:
Men, jag tjatar på med min fråga: vad är det som sätter den övre gränsen för hur mycket en pixel kan laddas? Och varför kan man inte "bara" höja den gränsen?

Varje pixel kan lagra maximalt ett visst antal elektroner, det som kallas "full well depth". Ett typiskt värde är ca 50000 elektroner. Ju större pixlar desto fler elektroner och därmed större dynamiskt omfång.

Det går att åstadkomma det du är ute efter om man läser ut sensorn kontinuerligt under exponeringen så att den aldrig mättas. Det finns sensorer för CCTV som fungerar på det viset men än så länge inte för stillbildskameror.

Johannes
 
Johannes-S skrev:
Det går att åstadkomma det du är ute efter om man läser ut sensorn kontinuerligt under exponeringen så att den aldrig mättas. Det finns sensorer för CCTV som fungerar på det viset men än så länge inte för stillbildskameror.

Johannes

Det är ju ett sätt, men det fungerar kanske bara om fotonerna blir många genom en lång exponeringstid. Inte om de blir många beroende på en väldigt stark ljuskälla?
 
Arleklint skrev:
Det är ju ett sätt, men det fungerar kanske bara om fotonerna blir många genom en lång exponeringstid. Inte om de blir många beroende på en väldigt stark ljuskälla?

Precis, det är nog det som är anledningen till att det inte används för stillbildskameror. Det är ännu svårt att läsa ut pixlarna så snabbt som krävs om ljusintensiteten är hög.

Johannes
 
ANNONS
Götaplatsens foto – en riktig fotobutik.