A larger aperture (smaller f-number, e.g. f/2) has a shallow depth of field. Anything behind or in front of the main focus point will appear blurred.
The Circle of Confusion (CoC) is critical for DoF. Basically it describes the smallest image element that retains identifiable details. Actually it is a kind of subjective concept. For the full-frame (35mm), it is normally to be around 30 microns based on the appearance of a standard sized print (8x10) at a standard viewing distance (1 foot).
If the works will mostly not be the standard, you may consider to use different CoC event for the same camera. For instance, viewing from 3 ft rather than 1 ft may use CoC x 3. Printing 24*30 rather than 8x10 may use CoC / 3.
| Format | 35mm | 1.3x DSLR | 1.5x DSLR | 1.6x DSLR | 2x DSLR | 645 | 6x6 | 6x7 | 6x9 | 4x5 | 5x7 | 8x10 |
| Camera | EOS 1D | D100 | EOS 10D, 20D | E-1 | ||||||||
| CoC (mm) | 0.03 | 0.023 | 0.2 | 0.019 | 0.015 | 0.05 | 0.06 | 0.065 | 0.075 | 0.15 | 0.2 | 0.3 |
Please be noted, CoC will be limited by many circustance. For example, A point in the image focused on the sensor has is not a point but a circle, that's diffraction. the diffraction is related with aperture. It will be meaningless if using a CoC smaller than the diffraction size:
| Aperture | f /2 | f /4 | f /8 | f /11 | f /16 | f /22 | f /32 | f /64 |
| Airy disk | .0014 | .0027 | .0054 | .0074 | .0108 | .0149 | .0217 | .0433 |
| lp/mm | 369 | 185 | 92 | 67 | 46 | 34 | 23 | 12 |
| Equivalent CoC | .0027 | .0054 | .0108 | .0149 | .0217 | .0298 | .0433 | .0866 |
function Format( x ) { if( x < 0.0 ) return " inf. "; var s = "" + x; var nLen = s.length; var idxDot = s.indexOf("."); if( idxDot < 0 ) // integer return s; var N_DEC = 4; if( nLen < N_DEC+1 ) { while ( nLen < N_DEC+1 ) { s = s + "0"; nLen++; } } else if ( nLen > N_DEC+1 ) { var nKeep = Math.max(N_DEC+1, idxDot); if( idxDot == N_DEC ) nKeep--; s = s.substring(0,nKeep); } return s; }
A Simple Calculator
function CalculateDoF() { var dofForm = document.dofForm; var focalLength = parseFloat( dofForm.focalLength.value ); var aperture = parseFloat( dofForm.aperture.value ); var distance = parseFloat( dofForm.distance.value ); var CoC = parseFloat( dofForm.CoC.value ); focalLength = 0.001 * focalLength; CoC = 0.001 * CoC; var ff_ac = focalLength * focalLength / aperture / CoC; var hyperFocal = ff_ac + focalLength; hyperFocal = Format(hyperFocal); dofForm.hyperFocal.value = hyperFocal; var tmp = (distance - focalLength) / ff_ac; var nearDistance = distance / ( 1 + tmp ); var farDistance = distance / ( 1 - tmp ); var totalDoF = farDistance - nearDistance; nearDistance = Format(nearDistance); farDistance = Format(farDistance); totalDoF = Format(totalDoF); dofForm.nearDistance.value = nearDistance; dofForm.farDistance.value = farDistance; dofForm.totalDoF.value = totalDoF; }
|
DoF Table
var apertures = new Array(1.4, 2.0, 2.8, 4.0, 5.6, 8.0, 11, 16, 22); var distances = new Array(0.25, 0.50, 0.75, 1.0, 1.5, 2.0, 3.0, 4.0, 5.0, 7.5, 10.0, 12.5, 15, 20, 25, 30, 35, 40, 50, 100, 150, 200, 500, 1000); function UpdateDoFTable() { var focalLength = 0.001 * parseFloat( document.formDoFTableInput.focalLength.value ); var CoC = 0.001 * parseFloat( document.formDoFTableInput.CoC.value ); var dofForm = document.formDoFTableOutput; var idxField = 0; for(var i=0; i| \n"; var sValueField = " | \n"; document.write(" |
| A./H.F. Dist.(m) | \n"); for(var i=0; i" + distance + " | \n"); for(var i=0; i
|---|


