Mám jasno v tom, že DOF závisí na:
- Ohnisková vzdálenost
- Clona nebo f-stop
- Vzdálenost od předmětu
- Velikost snímače
a další (jak je uvedeno v tento komentář ).
Ale moje otázka zní: Existuje nějaký vzorec, který spojuje všechny tyto faktory s hloubkou ostrosti?
Vzhledem k tomu z těchto hodnot je možné přesně vypočítat hloubku ostrosti?
Komentáře
- Je třeba vzít v úvahu dvě další věci: (5) velikost konečný obrázek; a (6) zda se zajímáte o " zónu přijatelné ostrosti " při zohlednění dalších pěti faktorů, nebo o " zóna dostatečné rozmazanosti ".
odpověď
Hloubka ostrosti závisí na dvou faktorech, zvětšení a clonové číslo.
Ohnisková vzdálenost, vzdálenost objektu, velikost a kruh záměny (poloměr, při kterém se rozostření stane viditelné) společně určete zvětšení.
Hloubka pole nezávisí na designu objektivu nebo fotoaparátu kromě proměnných ve vzorci, takže pro všechny fotoaparáty a objektivy existují skutečně obecné vzorce pro výpočet hloubky ostrosti. Nemám všechny zasvěcené paměti, takže kopíruji a vkládám pouze z Wikipedie: Hloubka ostrosti .
A lepší odpovědí na vaši otázku by bylo projít odvozením vzorců z prvních principů, něco, co jsem na chvíli chtěl udělat, ale neměl jsem čas. Pokud se někdo chce dobrovolně přihlásit, dám mu souhlas;)
Komentáře
- To ' je poněkud smíšený. Zvětšení je určeno pouze poměrem ohniskové vzdálenosti k vzdálenosti objektu. Zvětšení a clonové číslo určují, při jaké rychlosti hloubky vzhledem k objektu ' šířka doroste do rozmazání vzhledem k šířce objektu '. Chcete-li určit skutečnou hloubku ostrosti, musíte definovat, jakou velikost rozmazání stále považujete za zaostřenou: ' je v podstatě kruh zmatku.
Odpověď
Chtěli jste matematiku, takže zde to jde:
Musíte znát CoC svého fotoaparátu, snímače velikosti Canon APS-C toto číslo je 0,018, pro Nikon APS -C 0,019, pro full frame senzory a 35mm film je číslo 0,029.
Vzorec je pro úplnost:
CoC (mm) = viewing distance (cm) / desired final-image resolution (lp/mm) for a 25 cm viewing distance / enlargement / 25
Anothe way doi ng toto je Zeissův vzorec :
c = d/1730
Kde d je velikost úhlopříčky senzor, a c je maximální přijatelný CoC. To poskytuje mírně odlišná čísla.
Nejprve musíte vypočítat hyperfokální vzdálenost objektivu a fotoaparátu (tento vzorec je nepřesný se vzdálenostmi blízkými ohniskové vzdálenosti, např. Extrémní makro):
HyperFocal[mm] = (FocalLength * FocalLength) / (Aperture * CoC)
např .:
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)
Dále musíte vypočítat blízký bod, což je nejbližší vzdálenost, ve které bude zaostření vzhledem k vzdálenosti mezi fotoaparátem a objektem:
NearPoint[mm] = (HyperFocal * distance) / (HyperFocal + (distance – focal))
např .:
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)
Dále musíte vypočítat vzdálený bod, což je nejvzdálenější vzdálenost, na kterou bude zaostřeno vzhledem k vzdálenosti mezi fotoaparátem a objektem:
FarPoint[mm] = (HyperFocal * distance) / (HyperFocal – (distance – focal))
např .:
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)
Nyní můžete vypočítat celkovou ohniskovou vzdálenost:
TotalDoF = FarPoint - NearPoint
např:
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
Takže je předpočítán kompletní vzorec s CoC a HyperFocal:
TotalDoF[mm] = ((HyperFocal * distance) / (HyperFocal – (distance – focal))) -(HyperFocal * distance) / (HyperFocal + (distance – focal))
Nebo zjednodušený :
TotalDoF[mm] = (2 * HyperFocal * distance * (distance - focal)) / (( HyperFocal + distance - focal) * (HyperFocal + focal - distance))
S CoC prevented: Pokusil jsem se zjednodušit následující rovnice pomocí následujících substitucí: a = pozorovací vzdálenost (cm) b = požadované konečné rozlišení obrazu (lp / mm) pro 25 cm pozorovací vzdálenost c = zvětšení d = FocalLength e = Clona f = vzdálenost 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)))
Zjednodušeno:
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))
Ještě více zjednodušeno pomocí WolframAlpha:
TotalDoF = (2 * d^2 * e * (d - f) * f * X)/(d^4 - e^2 * (d - f)^2 * X^2)
Nebo pokud není předpočítáno nic, dostanete toto monstrum, které je nepoužitelné:
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))
Zjednodušené:
(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)
Takže v zásadě používejte přepočítané CoC a HyperFocal:)
Odpověď
Pokud chcete vidět praktickou implementaci vzorců hloubky ostrosti, můžete se podívat na tento Online kalkulačka hloubky ostrosti . Zdroj propojené stránky HTML má všechny vzorce implementované v Javascriptu.
Odpověď
Ano, existují vzorce. Jeden najdete na http://www.dofmaster.com/equations.html .Tyto vzorce se používají v této kalkulačce, vysvětluje také hloubku ostrosti podrobněji. Tento web jsem použil několikrát a zjistil jsem, že je přiměřeně přesný poté, co jsem sám provedl praktické testy.
Odpovědět
Tady “ je jednoduchý vzorec DOF. Doufám, že to pomůže.
DOF = 2 * (Lens_F_number) * (circle_of_confusion) * (subject_distance)^2 / (focal_length)^2
Odkaz: http://graphics.stanford.edu/courses/cs178-09/applets/dof.swf
Odpověď
P = bod zaměřený na
Pd = vzdálený bod ostře definovaný
Pn = blízký bod ostře definovaný
D = průměr kruhu záměny
f = číslo f
F = ohnisková vzdálenost
Pn = P ÷ (1 + PDf ÷ F ^ 2)
Pd = P ÷ (1-PDf ÷ F ^ 2)
Průmyslový standard pro nastavení D = 1/1 000 ohniskové vzdálenosti. Pro přesnější práci použijte 1/1500 ohniskové vzdálenosti. Předpokládejte ohniskovou vzdálenost 100 mm a poté 1/1 000 100 mm = 0,1 mm nebo 1/1500 = 0,6666 mm