Esiste una formula per calcolare il DOF?


16

Sono abbastanza chiaro che il DOF dipende da:

  1. Lunghezza focale
  2. Apertura
  3. Distanza dal soggetto
  4. Dimensioni del sensore
    e altro (come indicato nel commento).

Ma qual è la domanda qui: c'è qualche formula che mette in relazione tutti questi fattori con DOF ?? Dati questi valori è possibile calcolare accuratamente la profondità di campo ??


1
Ci sono altre due cose da considerare: (5) la dimensione dell'immagine finale; e (6) se si è interessati alla "zona di nitidezza accettabile" quando si prendono in considerazione gli altri cinque fattori o alla "zona di sfocatura sufficiente".

Risposte:


17

La profondità di campo dipende da due fattori, ingrandimento e numero f.

La lunghezza focale, la distanza del soggetto, le dimensioni e il cerchio di confusione (il raggio in cui la sfocatura diventa visibile) determinano congiuntamente l'ingrandimento.

La profondità di campo non dipende dal design dell'obiettivo o della fotocamera oltre alle variabili nella formula, quindi esistono effettivamente formule generali per calcolare la profondità di campo per tutte le fotocamere e gli obiettivi. Non li ho tutti impegnati nella memoria, quindi copierei e incollerei solo da Wikipedia, quindi lascerò questo link:

Una risposta migliore alla tua domanda sarebbe quella di passare dalla derivazione delle formule dai primi principi, cosa che intendevo fare da un po 'ma non ho avuto tempo. Se qualcuno vuole fare volontariato darò loro un voto;)


15

Volevi la matematica, quindi eccola qui:

Devi conoscere il CoC della tua fotocamera, i sensori Canon APS-C di questo numero è 0,018, per Nikon APS-C 0,019, per i sensori full frame e la pellicola 35mm il numero è 0,029.

La formula è per completezza:

CoC (mm) = viewing distance (cm) / desired final-image resolution (lp/mm) for a 25 cm viewing distance / enlargement / 25

Un altro modo per farlo è la formula Zeiss :

c = d/1730

Dove d è la dimensione diagonale del sensore e c è il CoC massimo accettabile. Questo produce numeri leggermente diversi.

Devi prima calcolare la distanza iperfocale per l'obiettivo e la fotocamera (questa formula non è precisa con distanze vicine alla lunghezza focale, ad es. Macro estrema):

HyperFocal[mm] = (FocalLength * FocalLength) / (Aperture * CoC)

per esempio:

50mm lens @ f/1.4 on a full frame:      61576mm (201.7 feet)
50mm lens @ f/2.8 on a full frame:      30788mm (101 feet)
50mm lens @ f/1.4 on a Canon APS frame: 99206mm (325.4 feet)
50mm lens @ f/2.8 on a Canon APS frame: 49600mm (162.7 feet)

Successivamente è necessario calcolare il punto vicino che è la distanza più vicina che sarà messa a fuoco data la distanza tra la fotocamera e il soggetto:

NearPoint[mm] = (HyperFocal * distance) / (HyperFocal + (distance – focal))

per esempio:

50mm lens @ f/1.4 on a full frame with a subject at 1m distance: 0.984m (~16mm in front of target)
50mm lens @ f/1.4 on a full frame with a subject at 3m distance: 2.862m (~137mm in front of target)
50mm lens @ f/2.8 on a full frame with a subject at 1m distance: 0.970m (~30mm in front of target)
50mm lens @ f/2.8 on a full frame with a subject at 3m distance: 2.737m (~263mm in front of target)

50mm lens @ f/1.4 on a Canon APS frame with a subject at 1m distance: 0.990m (~10mm in front of target)
50mm lens @ f/1.4 on a Canon APS frame with a subject at 3m distance: 2.913m (~86mm in front of target)
50mm lens @ f/2.8 on a Canon APS frame with a subject at 1m distance: 0.981m (~19mm in front of target)
50mm lens @ f/2.8 on a Canon APS frame with a subject at 3m distance: 2.831m (~168mm in front of target)

Successivamente è necessario calcolare il punto lontano che è la distanza più lontana che sarà messa a fuoco data la distanza tra la fotocamera e il soggetto:

FarPoint[mm] = (HyperFocal * distance) / (HyperFocal – (distance – focal))

per esempio:

50mm lens @ f/1.4 on a full frame with a subject at 1m distance: 1.015m (~15mm behind of target)
50mm lens @ f/1.4 on a full frame with a subject at 3m distance: 3.150m (~150mm behind of target)
50mm lens @ f/2.8 on a full frame with a subject at 1m distance: 1.031m (~31mm behind of target)
50mm lens @ f/2.8 on a full frame with a subject at 3m distance: 3.317m (~317mm behind of target)

50mm lens @ f/1.4 on a Canon APS frame with a subject at 1m distance: 1.009m (~9mm behind of target)
50mm lens @ f/1.4 on a Canon APS frame with a subject at 3m distance: 3.091m (~91mm behind of target)
50mm lens @ f/2.8 on a Canon APS frame with a subject at 1m distance: 1.019m (~19mm behind of target)
50mm lens @ f/2.8 on a Canon APS frame with a subject at 3m distance: 3.189m (~189mm behind of target)

Ora puoi calcolare la distanza focale totale:

TotalDoF = FarPoint - NearPoint

per esempio:

50mm lens @ f/1.4 on a full frame with a subject at 1m distance:  31mm
50mm lens @ f/1.4 on a full frame with a subject at 3m distance: 228mm
50mm lens @ f/2.8 on a full frame with a subject at 1m distance:  61mm
50mm lens @ f/2.8 on a full frame with a subject at 3m distance: 580mm

50mm lens @ f/1.4 on a Canon APS frame with a subject at 1m distance:  19mm
50mm lens @ f/1.4 on a Canon APS frame with a subject at 3m distance: 178mm
50mm lens @ f/2.8 on a Canon APS frame with a subject at 1m distance:  38mm
50mm lens @ f/2.8 on a Canon APS frame with a subject at 3m distance: 358mm

Quindi la formula completa con CoC e HyperFocal precalcolata:

TotalDoF[mm] = ((HyperFocal * distance) / (HyperFocal – (distance – focal))) -(HyperFocal * distance) / (HyperFocal + (distance – focal))

O semplificato:

TotalDoF[mm] = (2 * HyperFocal * distance * (distance - focal)) / (( HyperFocal + distance - focal) * (HyperFocal + focal - distance))

Con CoC precalulato: ho tentato di semplificare le seguenti equazioni con le seguenti sostituzioni: a = distanza di visione (cm) b = risoluzione desiderata dell'immagine finale (lp / mm) per una distanza di visione di 25 cm c = ingrandimento d = FocalLength e = Apertura f = distanza X = CoC

TotalDoF = ((((d * d) / (e * X)) * f) / (((d * d) / (e * X)) – (f – d))) - ((((d * d) / (e * X)) * f) / (((d * d) / (e * X)) + (f – d)))

semplificata:

TotalDoF = (2*X*d^2*f*e(d-f))/((d^2 - X*d*e + X*f*e)*(d^2 + X*d*e - X*f*e))

Ancora più semplice con WolframAlpha:

TotalDoF = (2 * d^2 * e * (d - f) * f * X)/(d^4 - e^2 * (d - f)^2 * X^2)

O se nulla è precalcolato, ottieni questo mostro, il che è inutilizzabile:

TotalDoF = ((FocalLength * FocalLength) / (Aperture * (viewing distance (cm) / desired final-image resolution (lp/mm) for a 25 cm viewing distance / enlargement / 25)) * distance) / ((FocalLength * FocalLength) / (Aperture * (viewing distance (cm) / desired final-image resolution (lp/mm) for a 25 cm viewing distance / enlargement / 25)) – (distance – focal)) - ((FocalLength * FocalLength) / (Aperture * (viewing distance (cm) / desired final-image resolution (lp/mm) for a 25 cm viewing distance / enlargement / 25)) * distance) / ((FocalLength * FocalLength) / (Aperture * (viewing distance (cm) / desired final-image resolution (lp/mm) for a 25 cm viewing distance / enlargement / 25)) + (distance – focal))

semplificata:

(50*a*b*c*d^2*f*e*(d-f))/((25*b*c*d^2 - a*d*e + a*f*e)*(25*b*c*d^2 + a*d*e - a*f*e)

Quindi fondamentalmente usa CoC e HyperFocal ricalcolati :)


@mattdm risponde alla tua domanda riguardo l'inclusione delle formule?
Psarossy,

Sì, molto utile, grazie. (Mi dispiace, ho dimenticato di assegnare la taglia.)
mattdm,


4

Sì, ci sono formule. Uno è disponibile all'indirizzo http://www.dofmaster.com/equations.html . Queste formule sono utilizzate su questa calcolatrice, spiega anche la profondità di campo in modo più dettagliato. Ho usato questo sito diverse volte e l'ho trovato ragionevolmente accurato dopo aver eseguito personalmente i test pratici.



0

P = punto focalizzato su

Pd = punto distante definito in modo nitido

Pn = punto vicino definito in modo nitido

D = diametro del cerchio di confusione

f = numero f

F = lunghezza focale

Pn = P ÷ (1 + PDf ÷ F ^ 2)

Pd = P ÷ (1-PDf ÷ F ^ 2)

Standard industriale per impostare D = 1/1000 della lunghezza focale. Per un lavoro più preciso utilizzare 1/1500 della lunghezza focale. Si supponga una lunghezza focale di 100 mm, quindi 1/1000 di 100 mm = 0,1 mm o 1/1500 = 0,6666 mm

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.