
ãããŸã§ãã³ã³ãã¥ãŒã¿ãŒã°ã©ãã£ãã¯ã¹ã§çŸå®çãªè¢«åç深床ã衚瀺ããã¿ã¹ã¯ã¯å®å šã«ã¯è§£æ±ºãããŠããŸããã§ããã é·æãšçæãåããå€ãã®ãœãªã¥ãŒã·ã§ã³ããããããŸããŸãªã±ãŒã¹ã«é©çšã§ããŸãã çŸæç¹ã§æã人æ°ã®ãããã®ãæ€èšããŸãã
å åŠç³»ã§
ã¬ã³ãºã§å±æããå ã¯ããã£ã«ã ããããªãã¯ã¹ã網èãªã©ã®æå èŠçŽ ã«ç»åã圢æããŸãã ååãªéã®å ããã£ã³ããŒã«å ¥ãããã«ãå ¥åéå£éšïŒå åŠã·ã¹ãã ãžã®å ¥ãå£ã§ã®å ããŒã ã®çŽåŸïŒã¯ååãªå€§ããã§ãªããã°ãªããŸããã 空éã®1ç¹ããã®å ç·ã¯åžžã«ã¬ã³ãºã®1ç¹åŸãã«æ£ç¢ºã«åæããŸããããã®ç¹ã¯å¿ ãããéžæãããç»é¢ïŒã»ã³ãµãŒã®å¹³åŠåºŠïŒãšäžèŽããŸããã ãããã£ãŠãç»åã®è¢«åç深床ã¯éãããŠããŸããã€ãŸãããªããžã§ã¯ããšã¬ã³ãºãšã®è·é¢ãšçŠç¹è·é¢ã®å·®ã倧ããã»ã©ããªããžã§ã¯ãã¯ãããŒãããŸãã ãã®çµæãç¹å®ã®è·é¢ã«ããç¹ããŒãããã¹ããããšããŠè¡šç€ºãããŸãïŒæ··ä¹±ã®èŒªïŒCoCïŒã ãŒããååŸã¯ãç¹å®ã®æ³åã«åŸã£ãŠèšç®ãããŸãã
ãŒããçŽåŸã®æ±ºå®ïŒè©³çŽ°ã«ã€ããŠã¯ã Wikipediaãåç §ïŒã
ã¬ã³ãã©ãŒã§äœ¿çšãããã¡ãœããã¯ã ãã³ããŒã«ã«ã¡ã©ã¢ãã«ã䜿çšããŸãïŒå ¥åã¢ããŒãã£ã0ã§ããããããã¹ãŠã®ãªããžã§ã¯ãã«çŠç¹ãåããŸãïŒã æéãµã€ãºã®éå£éšããããã£ãŠè¢«åç深床ã®ã·ãã¥ã¬ãŒã·ã§ã³ã«ã¯ãè¿œå ã®åŽåãå¿ èŠã§ãã

ã·ãŒã³å ã®ãã€ã³ãã¯ãæ£ä¹±ã¹ããããšããŠç»é¢ã«æ圱ãããŸãã
äžè¬çãªã¬ãã¥ãŒ
被åç深床ãå®è£ ããæ¹æ³ã¯ããªããžã§ã¯ã空éã¡ãœãããšç»å空éã¡ãœããã®2ã€ã®å€§ããªã°ã«ãŒãã«åããããšãã§ããŸãããªããžã§ã¯ã空éã¡ãœããã¯ãã·ãŒã³ãªããžã§ã¯ãã®3Dè¡šçŸã§æ©èœãããããã¬ã³ããªã³ã°äžã«é©çšãããŸãã ãã¹ãããã»ã¹ã¡ãœãããšãåŒã°ããç»å空éã¡ãœããã¯ãæšæºã®ãã³ããŒã«ã«ã¡ã©ã¢ãã«ã䜿çšããŠååŸãããã©ã¹ã¿ãŒã€ã¡ãŒãžã§åäœããŸãïŒå®å šã«ãã©ãŒã«ã¹ãããŠããŸãïŒã 被åç深床ã®å¹æãå®çŸããããã«ããããã®ã¡ãœããã¯ã深床ããããæå®ããŠãç»åã®é åããŒãããŸãã äžè¬ã«ããªããžã§ã¯ã空éã¡ãœããã¯ãç»å空éã¡ãœãããããç©ççã«æ£ç¢ºãªçµæãçæã§ããã¢ãŒãã£ãã¡ã¯ããå°ãªãäžæ¹ã§ãç»å空éã¡ãœããã¯ã¯ããã«é«éã§ãã
ãªããžã§ã¯ã空éæ³ã¯ã幟äœå åŠãŸãã¯æ³¢åå åŠã«åºã¥ããŠããŸãã ã»ãšãã©ã®ã¢ããªã±ãŒã·ã§ã³ã¯ã幟äœå åŠã䜿çšããŸããããã¯ãã»ãšãã©ã®ç®æšãéæããã®ã«ååã§ãã ãã ããçŠç¹ãåã£ãŠããªãç»åã§ã¯ãåæãšå¹²æžãéèŠãªåœ¹å²ãæãããŸãã 圌ãã®æ€èšã®ãããæ³¢åå åŠã®æ³åãé©çšããå¿ èŠããããŸãã
ç»å空éæ³ã¯ãçæãããç»åã«é©çšãããæ¹æ³ãšããžã¿ã«åçã«é©çšãããæ¹æ³ã«åããããšãã§ããŸãã åŸæ¥ã®ãã¹ãããã»ãã·ã³ã°æè¡ã§ã¯ãã«ã¡ã©ããã®ç»åãã€ã³ãã®é éæ§ã«é¢ããæ å ±ãå«ã深床ããããå¿ èŠã§ããããã®ãããªããããåçã§ååŸããããšã¯å°é£ã§ãã ããã¹ããããªãã§ãªããžã§ã¯ãã®çŠç¹ããŒããããšãã§ãããã©ã€ããã£ãŒã«ãã®èå³æ·±ããã¯ããã¯ããããŸãã ãã®æè¡ã®æ¬ ç¹ã¯ãç¹å¥ãªæ©åšãå¿ èŠãªããšã§ãããçµæã®ç»åã«ã¯ã·ãŒã³ã®è€éãã«å¯Ÿããå¶éããããŸããã
ãªããžã§ã¯ã空éã¢ãããŒã
åæ£ã¬ã€ãã¬ãŒã·ã³ã°
ãã®æ¹æ³ã¯ã幟äœå åŠãçŽæ¥ã·ãã¥ã¬ãŒãããŸãã ãµã³ãã«ããšã«1ã€ã®ã¬ã€ããã¬ãŒã¹ãã代ããã«ïŒãªãªãžãã«ã§ã¯ããã¯ã»ã«ã§ãããã«ãŠã³ããããã¬ã€ã®æ°ã¯AAèšå®ã«å¿ããŠå€åãããŸãã«1ãã¯ã»ã«ã«çããããïŒãäžé©åã ãšæããŸãããæéå£åŸã®ã«ã¡ã©ã§ååŸããã¢ããã°ç»åãååŸããŸãã åãµã³ãã«ã®å ç·ã¯ãç»é¢äžã®1ç¹ããæ¥ãŸãããã¬ã³ãºã®ç°ãªãéšåã«åããããŸãã ã¬ã³ãºã«ããå±æã®åŸãããŒã ã¯ã·ãŒã³ã«æŸå°ãããŸãã説æã¯ãå åŠã®ç©çæ³åïŒæ³¢ãé€ãïŒãèæ ®ããŠãç»åã圢æãããããšã瀺ããŠããŸãã ãããã£ãŠããã®æ¹æ³ã§ååŸããç»åã¯éåžžã«çŸå®çã§ãããåŸåŠçæ¹æ³ã確èªã§ããããŽãŒã«ãã¹ã¿ã³ããŒãããšèŠãªãããŸãã ãã®æ¹æ³ã®æ¬ ç¹ã¯æããã§ããåãµã³ãã«ã«ã€ããŠãé«å質ã®ãã©ãŒãåŸãã®ã«ååãªå ç·ã®æ°ãããããèšç®ããå¿ èŠããããããã¬ã³ããªã³ã°æéãé·ããªããŸãã 被åç深床ãæµ ããããå Žåã¯ãã¬ã³ããªã³ã°æéãæ°çŸãŸãã¯æ°ååå¢ããå¿ èŠããããŸãã ãŒãããé åã§äœ¿çšããäœåãªå ç·ã®æ°ãäžååãªå Žåããã€ãºãçºçããŸãã
ãã®ã¡ãœããã¯ãmia_lens_bokehã·ã§ãŒããŒã«å®è£ ãããŠããŸãã
// struct depth_of_field { miScalar focus_plane_distance; miScalar blur_radius; miInteger number_of_samples; }; miBoolean depth_of_field ( miColor *result, miState *state, struct depth_of_field *params ) { // miScalar focus_plane_distance = *mi_eval_scalar(¶ms->focus_plane_distance); miScalar blur_radius = *mi_eval_scalar(¶ms->blur_radius); miUint number_of_samples = *mi_eval_integer(¶ms->number_of_samples); miVector camera_origin, camera_direction, origin, direction, focus_point; double samples[2], focus_plane_z; int sample_number = 0; miColor sum = {0,0,0,0}, single_trace; // miaux_to_camera_space(state, &camera_origin, &camera_direction); // focus_plane_z = state->org.z - focus_plane_distance; miaux_z_plane_intersect(&focus_point, &camera_origin, &camera_direction, focus_plane_z); // while (mi_sample(samples, &sample_number, state, 2, &number_of_samples)) { miaux_sample_point_within_radius(&origin, &camera_origin, samples[0], samples[1], blur_radius); mi_vector_sub(&direction, &focus_point, &origin); mi_vector_normalize(&direction); miaux_from_camera_space(state, &origin, &direction); mi_trace_eye(&single_trace, state, &origin, &direction); miaux_add_color(&sum, &single_trace); } // miaux_divide_color(result, &sum, number_of_samples); return miTRUE; }

ã·ã§ãŒããŒãé©çšããçµæïŒã³ãŒãã¯æåã®mental rayããååŸãããç»åã¯ããããååŸãããŸã ïŒã
çŸå®çãªã«ã¡ã©ã¢ãã«
以åã®æ¹æ³ã§ã¯ãã¬ã³ãºã®å±æã¯1ã€ã®æ³åã«åŸã£ãŠèšç®ãããŸããã ãã ããããã¯åžžã«ããã§ã¯ãããŸããã ã¬ã³ãºã¯ãç°ãªãããããã£ãæã€ã¬ã³ãºã®ã°ã«ãŒãã§æ§æãããŸãã
ã¬ã³ãºå ã®ã¬ã³ãºã°ã«ãŒãïŒPat Hanrahanã«ããåçïŒã
ã¡ãŒã«ãŒãæäŸããå åŠã¬ã³ãºã®ä»æ§ã¯ãæ°åŠã¢ãã«ãšããŠæ£ããå®è£ ãããŠããŸãã ãã®ã¢ãã«ã«ã¯ãã¬ã³ãºã°ã«ãŒãã®ã·ãã¥ã¬ãŒã·ã§ã³ãå«ãŸããã¢ãŠãã¬ããïŒã¬ã³ãã©ãŒã1ã€ã®ãµã³ãã«ã®å ç·ãæŸåºããç¯å²ïŒã®ã¢ãã«ãæäŸãããŸãã åºå£ã«å ¥ãå ç·ã¯ãééããã¬ã³ãºã°ã«ãŒãã®å åŠç¹æ§ãèæ ®ããŠèšç®ãããŸãã
ãã®æ¹æ³ã§ã¯ã被åç深床ãšã¬ã³ãºã«ãã£ãŠçããæªã¿ã®äž¡æ¹ãç©ççã«æ£ããã·ãã¥ã¬ãŒãã§ããŸãã

çŠç¹è·é¢ã®ç°ãªãã¬ã³ãºïŒçŠç¹è·é¢ãšã¬ã³ãºã¢ãã«ã®å€æŽã«ãããé è¿æ³ã®å€æŽãšæªã¿ã衚瀺ãããå ŽåããããŸãïŒããšãã°ãäžã®åçã®ããã«ïŒ-Pat Hanrahanã®åçã
éçŒã¬ã³ãºãå®è£ ããã·ã§ãŒããŒã®äŸïŒ
struct fisheye { miColor outside_color; }; miBoolean fisheye (miColor *result, miState *state, struct fisheye *params ) { miVector camera_direction; miScalar center_x = state->camera->x_resolution / 2.0; miScalar center_y = state->camera->y_resolution / 2.0; miScalar radius = center_x < center_y ? center_x : center_y; miScalar distance_from_center = miaux_distance(center_x, center_y, state->raster_x, state->raster_y); if (distance_from_center < radius) { mi_vector_to_camera(state, &camera_direction, &state->dir); camera_direction.z *= miaux_fit(distance_from_center, 0, radius, 1, 0); mi_vector_normalize(&camera_direction); mi_vector_from_camera(state, &camera_direction, &camera_direction); return mi_trace_eye(result, state, &state->org, &camera_direction); } else { *result = *mi_eval_color(¶ms->outside_color); return miTRUE; } }

ã·ã§ãŒããŒãé©çšããçµæïŒã³ãŒãã¯æåã®mental rayããååŸãããç»åã¯ããããååŸãããŸã ïŒã
èç©ãããã¡ãŒ
èç©ãããã¡ã¯ã被åç深床ã®å¹æãéæããããã«ã䜿çšã§ããŸãã ããã€ãã®ãã¬ãŒã ãã¬ã³ããªã³ã°ãããåŸãããããå¹³åãããšãç®çã®ç»åãåŸãããŸãã ãã®æ¹æ³ã¯ãåæ£ã¬ã€ãã¬ãŒã·ã³ã°ã«éåžžã«äŒŒãŠããŸããããããããé«éã§ãã ã¬ã³ããªã³ã°ã¯ããŒããŠã§ã¢ã䜿çšããŠè¡ãããŸãã ãã ããæåã®æ¹æ³ã§ã¯ããµã³ãã«æ°ãé©å¿çã«å¶åŸ¡ããããå°ãªããµã³ãã«ã䜿çšããŠèš±å®¹ã§ããå質ã®ç»åãååŸã§ããŸãã ãã®æ¹æ³ã¯ãã·ãŒã³ãããŒããŠã§ã¢ã§ä»²ä»ã§ããå Žåã«ã®ã¿é©çšã§ããŸããæ³¢åäŒæã·ãã¥ã¬ãŒã·ã§ã³ïŒæ³¢åäŒæïŒ
äžèšã®ãã¹ãŠã®æ¹æ³ã¯ãåæãšå¹²æžãç¡èŠããŠã幟äœå åŠã®æ³åã䜿çšããŸãã ç¹å®ã®æ³¢é·ã®å ãæŸåºããã·ãŒã³ã«è€æ°ã®ç¹å æºãããå Žåã空éå ã®å æ³¢ã®äŒæã远跡ã§ããŸãã ç»é¢ã¯ç¹å®ã®è·é¢ã«ããããµã³ãã«ã®å€ã決å®ããããã«ããœãŒã¹ããæŸå°ããããã¹ãŠã®æ³¢ããã®å¯äžãèæ ®ãããŸãã ããŒãªãšå€æã䜿çšããŠãåšæ³¢æ°é åã§èšç®ãè¡ãããšãã§ããŸããæ£åž[Krivanek]
ã¬ã³ããªã³ã°ãããšããã·ãŒã³ã¯ãã¯ã¹ãã£ãåãããžãªã¡ããªããªããã£ãã®ã»ãããšããŠã§ã¯ãªãããã€ã³ãã®ã»ãããšããŠè¡šç€ºãããŸãã ç¹ã¯ç¹å®ã®æ³åã«åŸã£ãŠæ£ãã°ããŸãããã»ãšãã©ã®å Žåã¯ã¬ãŠã¹ã§ãã é床ãäžããããã«ããã€ã³ããæ£ä¹±ãããå Žåããã€ã³ãã¹ãã¬ããé¢æ°ïŒPSFïŒãèæ ®ããç³ã¿èŸŒã¿æŒç®ã䜿çšãããŸãã ã¬ãŠã¹ãŒããã®å ŽåãPSFãã©ã¡ãŒã¿ãŒã¯æšæºåå·®ã§ããåŸããããã€ã³ãã¯ããªãŒã«ä¿åããããŒãããé åãããã€ã³ããéžæãããšãç¹å®ã®ååŸã§æ€çŽ¢ãå®è¡ãããŸãã ããã«ãããç»åã®ããã©ãŒã«ã¹é åã§ããå°ãªããµã³ãã«ãèšç®ã§ããŸãã
ã¡ãœããã®ããªãå³å¯ãªå¶éã¯ãå¿ èŠãªåœ¢åŒã§ã·ãŒã³ãè¡šçŸããèœåã§ãããšä»®å®ããããšã¯è«ççã§ãã

æ£ä¹±ç»åã ãŒãããé åã§ã¯ããµã³ããªã³ã°å¯åºŠãäœããªããŸãïŒJaroslav Krivanekã«ããåçïŒã
åæçå¯èŠæ§[ã«ãã ãŒã«]
3次å ã®ã·ãŒã³ã䜿çšãããšãçŠç¹ãåã£ãŠããªããªããžã§ã¯ããåæçã«å€æã§ããŸãã ãã®ãããªãªããžã§ã¯ãã§ã¯ããµã³ãã«ã®æ°ãå°ãªããªããçµæãšããŠãŒãããŠèŠããŸãã ãã®æ¹æ³ã§ã¯ãåæ£ã¬ã€ãã¬ãŒã·ã³ã°ãšã¯å¯Ÿç §çã«ããã€ãºã®ãªãæ£ç¢ºãªç»åãååŸã§ããŸããç»å空éã¢ãããŒã
çæ³çãªåŸåŠçã¡ãœããã«ã¯ã次ã®ããããã£ãå¿ èŠã§ãã
- ç¹åååžé¢æ°ïŒPSFïŒã®éžæ
ãŒããã®ã¿ã€ãã¯PSFã«äŸåããŸããPSFã¯ã1ã€ã®ãã€ã³ãããååŸããæ£ä¹±ã¹ãããã決å®ããŸãã ãã®ç¹æ§ã¯å åŠã·ã¹ãã ããšã«ç°ãªããããé©åãªæ¹æ³ã§PSFã®ã¿ã€ããéžæã§ããŸãã
ç°ãªãPSFã䜿çšãããšãç°ãªããŒãããã¿ãŒã³ãååŸã§ããŸãã - ãã¯ã»ã«ãŒããå¶åŸ¡
ç»åã®åãã€ã³ãã§ãæ£ä¹±ã¹ãããã®ãµã€ãºãšæ§è³ªã¯ç°ãªããŸãã éåžžãåŸåŠçæ¹æ³ã§ã¯ããã€ã³ãã®äœçœ®ã«å¿ããŠãŒããã®æ§è³ªãå€æŽããããšã¯ã§ããŸããã ããã¯ãå€ãã®å Žåãã¡ãœãããåé¢å¯èœãªãã£ã«ã¿ãŒãŸãã¯ããŒãªãšå€æã®ããããã䜿çšããŠããããããã®ãããªéžæãå®è£ ããã®ãå°é£ã§ãããšããäºå®ãåå ã§ãã
æåã®ç»åã§ã¯ãPSFã¯åãã§ãã 2ã€ç®ã¯å€æŽãããäžéšã®ã¬ã³ãºã®Helios-44æ©èœãããæ£ç¢ºã«ã·ãã¥ã¬ãŒãããŸãã - 匷床äžè¶³ã®ã¢ãŒãã£ãã¡ã¯ãã®æ¬ åŠïŒåŒ·åºŠæŒãã¢ãŒãã£ãã¡ã¯ãïŒ
èæ¯ã®ãŒããããªããžã§ã¯ãã¯ãçŠç¹ã®åã£ããªããžã§ã¯ãã®å¢çã決ããŠè¶ ããŸããã ãã ããåå§ç·åœ¢ãã£ã«ã¿ã§ã¯ãã®äºå®ãèæ ®ããªãå ŽåããããŸãã ãã®ãšã©ãŒã®çµæãšããŠè¡šç€ºããã匷床äžè¶³ã®ã¢ãŒãã£ãã¡ã¯ãã¯ãç»åã®åå®æ§ãäœäžãããŸãã
ç»åã§ã¯ãç·è²ã®å³ã«çŠç¹ãåã£ãŠãããããèæ¯ã®ãªããžã§ã¯ãããŒããããšã¯ã§ããŸããã - é£ç¶çãªäžé£ç¶ã¢ãŒããã¡ã¯ãã«ããã¢ãŒããã¡ã¯ãã®æ¬ åŠ
å®éã«ã¯ãåæ¯ã§ãªããžã§ã¯ãããŒããããšã¯æãããããªããžã§ã¯ãã«ã¯ç®ã«èŠããããŒãã¢ãŠãã©ã€ã³ã¯ãããŸããã å€ãã®å Žåããã£ã«ã¿ãŒã¯ãªããžã§ã¯ãããŒãããŠããŒãããšã·ã«ãšããã®äž¡æ¹ãåæã«æã€ããã«ããŸãããããã¯ééã£ãŠããŸãã ãã®åäœã¯ã深床ããããå¹³æ»åããæ©èœã«ãããã®ã§ãããã®çµæããªããžã§ã¯ãã®å¢çã§æ·±åºŠã段éçã«å€åããŸãïŒãããŠããªããžã§ã¯ãã®ç«¯ãšå€åŽã®æ··åè²ã®ãã¯ã»ã«ãå€æããŸãïŒã
ç°ãªããã£ã«ã¿ãŒãé©çšããçµæã ç»åïŒçŸå®¹ãããïŒã¯å¹³æ»åãããŠããŸããã深床ãããïŒæ·±åºŠãããïŒã¯å¹³æ»åãããŠããªãããããã®ãããªã¢ãŒãã£ãã¡ã¯ããçºçããå¯èœæ§ããããŸãã - ãªããžã§ã¯ãã®éšå亀差ã®æ£ããã·ãã¥ã¬ãŒã·ã§ã³ïŒéšåãªã¯ã«ãŒãžã§ã³ïŒ
å®éã«ã¯ãåé¢ã®çŠç¹ãåã£ãŠããªããªããžã§ã¯ãã«ã¯ãèåŸã«ãããªããžã§ã¯ããèŠããæ»ããã«ãŒãããå¢çç·ããããŸãã ãã®å¹æã¯ãéšåçãªäº€å·®ãšåŒã°ããŸããããã¯ãåŸéšãªããžã§ã¯ããåéšã«ãã£ãŠéšåçã«ã®ã¿ãããã¯ãããããã§ãã ãã³ããŒã«ã«ã¡ã©ãéããŠèŠããšããªããžã§ã¯ãã®ãããã®å¯èŠé åãèæ¯ã«èŠãããšãã§ããŸããã§ããã å¹æã®å¹ŸäœåŠçãªèª¬æã«ã€ããŠã¯ãå³ãåç §ããŠãã ããã ãªããªã åŸåŠçæ¹æ³ã¯ããã³ããŒã«ã«ã¡ã©ã§åä¿¡ããç»åãåŠçãããããéšåçãªäº€å·®ãã·ãã¥ã¬ãŒãããã®ã¯é£ããã¿ã¹ã¯ã§ããäžå¯èŠã®ãã€ã³ãã®è²ã¯ãå©çšå¯èœãªããŒã¿ããæšå®ããå¿ èŠããããŸãã
ãªããžã§ã¯ãã®éšåçãªäº€å·®ïŒç»åBarskyïŒã - é«æ§èœ
ç»å空éã«ãçŽæ¥ãé©çšããããã£ã«ã¿ãŒã®æ§èœïŒãã£ã«ã¿ãŒã®æãåçŽãªå®è£ ãæå³ããŸãïŒã¯ããŒããååŸã倧ãããªããšäœäžããŸãã 倧ããªååŸã®å Žåãããã»ã¹ã«ã¯æ°åãããããšããããŸãã çæ³çã«ã¯ããã£ã«ã¿ãŒããªã¢ã«ã¿ã€ã ã§é©çšãããã®ã§ãããããã¯åžžã«å¯èœã§ã¯ãããŸããã
ç·åœ¢ãã£ã«ã¿ãªã³ã°[Potmesil and Chakravarty]
åŸåŠç段éã§DoFãååŸããæåã®æ¹æ³ã®1ã€ã ãã€ã³ãã®æ·±åºŠïŒæ·±åºŠãããã«ãã£ãŠæ±ºå®ïŒã«å¿ããŠããŒããé¢æ°ïŒPSFïŒã®ãã©ã¡ãŒã¿ãŒãå€åããŸãã PSFã®ååŸã倧ããã»ã©ããã£ã«ã¿ãŒã®ããã©ãŒãã³ã¹ã¯äœäžããŸãã ãã£ã«ã¿ãŒã¯æ¬¡ã®åŒã§è¡šçŸã§ããŸãã
ããã§ãBã¯ãŒãããç»åãpsfã¯ãã£ã«ã¿ãŒã³ã¢ãxãšyã¯åºåç»åã®åº§æšãSã¯å ã®ç»åãiãšjã¯å ¥åç»åã®åº§æšã§ãã
PSFã¯ãããæå³ã§ã¯ãåæãå¹²æžãªã©ã®å åŠç圱é¿ãèæ ®ã«å ¥ããå ŽåããããŸãã ãã®æ¹æ³ã®æ¬ ç¹ïŒåŒ·åºŠã®æ¬ åŠãéé£ç¶çãªæ·±ãã
ã¬ã€åé ãããã¡[ã·ã³ã€]
ãã®æ¹æ³ã¯ããªããžã§ã¯ãã®å¯èŠæ§ãèæ ®ã«å ¥ããããšãææ¡ããŠããŸããããã«ããã匷床ã®äžè¶³ãåãé€ãããšãã§ããŸãã ãŒãããã€ã¡ãŒãžãäœæãã代ããã«ãæåã«åãã€ã³ãã«å¯ŸããŠãããããçºããããå ç·ã®ååžã®ããã®ãããã¡ãŒãäœæãããŸãã ãã®ãããªãããã¡ã«ã¯ããããã€ã³ãããã®å ãå°éããå¯èœæ§ã®ãã座æšãã深床ãšãšãã«å«ãŸããŠããŸãã ãã¹ãŠã®ãã€ã³ãã®ã¬ã€ååžãããã¡ãŒãèšç®ããåŸãå¹³åè²å€ãèšç®ãããŸãã ãã®ã¡ãœããã¯ãªããžã§ã¯ãã®å¯èŠæ§ã§ååã«æ£ããåäœããŸãããç·åœ¢ãã£ã«ã¿ãªã³ã°ãšæ¯èŒããŠããå€ãã®ã¡ã¢ãªãšèšç®ãå¿ èŠã§ãã RDBã¡ãœããã«ãã£ãŠååŸããããããã®ã»ããã¯ã©ã€ããã£ãŒã«ããšåŒã°ããããšã«æ³šæããŠãã ãããéå±€åãããDoF [Scofield]
ãã®ã¡ãœããã¯ããªããžã§ã¯ãã®äœçœ®ã®ç¹æ®ãªã±ãŒã¹ã察象ãšããŠããŸãããªããžã§ã¯ãã¯ç»é¢ã«å¹³è¡ã§ãªããã°ãªããŸããã ãªããžã§ã¯ãã¯ã¬ã€ã€ãŒã«åå²ãããã¬ã€ã€ãŒã¯åšæ³¢æ°ãã¡ã€ã³ã§åå¥ã«æŽãæµãããŸãïŒé«éããŒãªãšå€æã䜿çšïŒã FFTã䜿çšãããšãããã©ãŒãã³ã¹ã«åœ±é¿ãäžããã«å€§ããªååŸã®PSFã䜿çšã§ããŸãã ãã®æ¹æ³ã«ã¯åŒ·åºŠäžè¶³ããªããéåžžã«è¿ éã«æ©èœããŸããããã®ç¯å²ã¯éåžžã«éãããŠããŸãã亀差ç¹ãšé¢æ£å[Barsky]
åã®æ¹æ³ã«ãã£ãŠèª²ããããå¶éã¯éåžžã«å³ããã§ãã ç»åã¯ã¬ã€ã€ãŒã«åå²ããããããç»åãµã³ãã«ã®æ·±ãã¯ãæãè¿ãã¬ã€ã€ãŒã®éžæãããæ·±ãã«äžžããããŸãã çµæã®ã€ã¡ãŒãžã«ã¯ãã¬ã€ã€ãŒã®äº€å·®ç·ã«æ²¿ã£ãã¹ãã©ã€ããŸãã¯ããŒãå¢çã®åœ¢ã®é¢æ£åã¢ãŒãã£ãã¡ã¯ãããããŸãã ãã®æ¹æ³ã§ã¯ãå¢çãèŠã€ããæ¹æ³ïŒãŸãã¯ObjectIdãããããïŒã§ååŸãããªããžã§ã¯ãã®IDã䜿çšããŠããã®ãããªã¢ãŒãã£ãã¡ã¯ãã®åé¡ã解決ããŸãã 1ã€ã®ãªããžã§ã¯ãã2ã€ã®ã¬ã€ã€ãŒã«å±ããå Žåãã¬ã€ã€ãŒã¯ããŒãžãããŸãã ãã®æ¹æ³ã®å¥ã®åé¡ã¯ãéšåçãªäº€å·®ã§ãã èæ¯ã®ãªããžã§ã¯ãããŒããããã«ãå¯èŠãµã³ãã«ã«ããè¿äŒŒã䜿çšãããŸãã
äžéšã®ç»åã«é»ãçžã衚瀺ãããŠããŸã-ObjectIdïŒBarsky pictureïŒã䜿çšããã«ã¬ã€ã€ãŒããšã«ãŒãããé©çšããçµæã®ã¢ãŒãã£ãã¡ã¯ãã
èŠèŠçã«ãªã¢ã«ãªã¬ã³ããªã³ã°[Kolb]
人éã®ç®ã¯ãããã€ãã®ã¬ã³ãºã§æ§æãããåæã¢ãã«ã®åœ¢ã§èª¬æããããšã¯å°é£ã§ã-ã¬ã³ãºã«å¯ŸããŠãããè¡ãæ¹æ³ã ãã®æ¹æ³ã§ã¯ãæ³¢é¢åå·®èšãšåŒã°ããç¹å¥ãªããã€ã¹ã䜿çšããŠïŒããã翻蚳ããããšãæ¢ããŠããŸããã§ããïŒã人éã®ç®ã«å¯Ÿå¿ããPSFã®ã»ããã決å®ãããŸãã 次ã«ãã¬ã€ã€ãŒããšã®ãŒããããçµæã®PSFã«åŸã£ãŠäœ¿çšãããŸãã ãã®æ¹æ³ã䜿çšãããšãèŠèŠçŸæ£ã®ãã人ã«ç»åã衚瀺ã§ããŸãã
åéè§èã«èŠããã§ãã人ã®ç®ã®ç¹æ§ãèæ ®ã«å ¥ããç»åïŒåçBarskyïŒã
éèŠåºŠã®æ³šæ[ææ]
ãã®æ¹æ³ã¯ãã¬ã³ãã©ãŒã®ã¢ã³ããšã€ãªã¢ã¹ã¡ã«ããºã ãšåæ§ã«æ©èœããŸãããŸããäœè§£å床ã®ç»åã圢æããããã®åŸãè²å€åããããå€ãè¶ ãããµã³ãã«ã次ã®å埩ã§åŠçãããå ã®ç»åã®ãµã³ãã«ãããã«ååŸãããŠæçµç»åã®ãã¯ã»ã«ãååŸãããŸãã ãããã£ãŠããã®æ¹æ³ã¯ãããçãæéã§ããè¯ãå質ãå®çŸããŸãããã€ããªããç¥èŠãã€ããªããæ³[Mulder and van Lier]
ç»åã®äººéã®ç¥èŠã®ç¹åŸŽã¯ãç»åã®ç«¯ã«æ²¿ã£ã现éšãããäžå¿ã®çŽ°éšãéèŠã§ãããšããããšã§ãã ç»åã®äžå¿ã¯ããé ãããæ£ç¢ºãªæ¹æ³ã§ãŒããããšãã§ããŸãããåšèŸºã¯è¿ éãªãŒããè¿äŒŒã䜿çšããŸãã ãŒãããé«éã«ããã«ã¯ãã¬ãŠã¹ãã©ãããã䜿çšããŸãããŒããã®ã¬ãã«ã¯ãã¯ã»ã«æ·±åºŠã«å¿ããŠéžæãããŸãã çµæã«ã¯ã¢ãŒãã£ãã¡ã¯ãããããŸããç¹°ãè¿ãç³ã¿èŸŒã¿[ããã¿]
ãã®ã¡ãœããã¯ã察話åã¢ããªã±ãŒã·ã§ã³ã§ã®è¿ éãªé©çšãç®çãšããŠããŸãã 3x3ãã¯ã»ã«ã³ã¢ã§ç³ã¿èŸŒã¿æŒç®ãå¹æçã«å®è£ ã§ããããŒããŠã§ã¢ããã€ã¹ã§åäœããŸãã ç³ã¿èŸŒã¿ã¯æ°åå®è¡ãããããã«ãã倧éã®ãŒãããå®çŸãããŸãã ãŒããã®ååŸã倧ãããªããšãããã©ãŒãã³ã¹ãäœäžããŸãã PSFã«ã¯å¶éããããŸãïŒã¬ãŠã¹ã§ãªããã°ãªããŸãããGPUã®è¢«åç深床[Scheueremann and Tatarchuk]
被åç深床ã¯GPUã§ãèªã¿åãããšãã§ããŸãã æ¹æ³ã®1ã€ã¯ãScheueremannãšTatarchukã«ãã£ãŠææ¡ãããŸãããå åŠã®æ³åã«åŸã£ãŠããã¯ã»ã«ã®æ·±ããäžããŠãæ£ä¹±ã¹ãããã®å€§ããã決å®ããã¹ãããå ã§çµæãšããŠãã¯ã»ã«ã®è²ã圢æãããµã³ãã«ãéžæããŸãã ã¡ã¢ãªãæé©åããããã«ãCoCã®ååŸã倧ããç»åã®é åã§ã¯ããã¯ã»ã«ã¯å ¥åç»åããã§ã¯ãªããæ°ååæžãããŸãã 匷床äžè¶³ã®ã¢ãŒãã£ãã¡ã¯ãã®æ°ãæžããããã«ããã¯ã»ã«ã®æ·±ããèæ ®ãããŸãã ãã®ã¡ãœããã¯ãæ·±ãã®é£ç¶æ§ã®ã¢ãŒãã£ãã¡ã¯ããææããŠããŸãã
ç©åè¡åïŒç·é¢ç©è¡šïŒ[ãã³ãºãªãŒ]
CoCå ã§ãµã³ããªã³ã°ãã代ããã«ãç»åã®ãã¯ã»ã«é åã®å¹³åè²ã¯ãçµ±åãããªãã¯ã¹ïŒSATïŒã䜿çšããŠèŠã€ããããšãã§ããŸãã ãã®å Žåãèšç®é床ã¯éãããŒããååŸã倧ãããªã£ãŠãäœäžããŸãã;ããã«ãäœè§£å床ã®ç»åãçæããå¿ èŠã¯ãããŸããã åœåããã®æ¹æ³ã¯ãã¯ã¹ãã£ãå¹³æ»åããããšãç®çãšããŠããŸããããåŸã«GPUãå«ã被åç深床ã«é©å¿ããŸããã ãã®ã¡ãœããã«ã¯ãã»ãŒãã¹ãŠã®ã¿ã€ãã®ã¢ãŒãã£ãã¡ã¯ãããããŸãããã©ãããæ³[ã¯ã©ãŠã¹ãšã¹ãã¬ã³ã¬ãŒã]
ã·ãŒã³ã¯ãæ·±ãã«å¿ããŠã¬ã€ã€ãŒã«åå²ãããŸãã ã¬ã€ã€ãŒå¢çã«è¿ããã¯ã»ã«ã¯ãæãè¿ãã¬ã€ã€ãŒã§ã¯ãªããããã€ãã®ã¬ã€ã€ãŒã«éšåçã«é¢é£ããŸããããã«ãããã¬ã€ã€ãŒå¢çã§ã®ãµã³ããªã³ã°ã¢ãŒãã£ãã¡ã¯ããé€å»ãããŸãã 次ã«ãã¬ã€ã€ãŒã«ååšããªããã¯ã»ã«ïŒåæ¯ã®ãªããžã§ã¯ãã§èŠãããŠãããã¯ã»ã«ïŒã®å€ãå€æ¿ãããŸãã ãã®åŸããã©ãããæ³ã«ãã£ãŠåã¬ã€ã€ãŒãæŽãæµããããã€ã³ããŠã§ã€ããã¢ãŒãã£ãã¡ã¯ããé€å€ããããã«äœ¿çšãããŸãã çµæã®ã¬ã€ã€ãŒã¯ãã¬ã€ã€ãŒã®éæ床ãèæ ®ããŠæ··åãããŸãã ãã®æ¹æ³ã¯ãFFTã䜿çšããéå±€åæ¹æ³ãããé«éã§ããã䜿çšããPSFã«å¶éã課ããŸãã
ãã©ãããæ³ã䜿çšããŠç»åããŒãããŸããïŒMagnus Strengert pictureïŒã
åé¢å¯èœãªãŒãã[åš]
深床ïŒããã¯ã¹ãŒãããã¬ãŠã¹ãŒããïŒãèæ ®ããªãåŸæ¥ã®ãŒããæ¹æ³ãšåãæ¹æ³ã§ãåé¢å¯èœãªPSFã䜿çšããŠè¢«åç深床ãèšç®ã§ããŸãã æåã«ãç»åã¯æ°Žå¹³æ¹åã«ãŒããã次ã«åçŽæ¹åã«ãŒãããŸã-ãã®çµæãã¹ãããã®é¢ç©ã§ã¯ãªããé®®æãã§ã¯ãªãããã®çŽåŸã«äŸåããé床ãåŸãããŸãã ãã®ã¡ãœããã¯GPUã«å®è£ ã§ãããªã¢ã«ã¿ã€ã ã§é©çšã§ããŸãã åé¢å¯èœãªé¢æ°ã䜿çšããã¢ã€ãã¢ãå³ã«ç€ºããŸãã
åé¢å¯èœãªãŒããã§ã¯ãããã©ãŒãã³ã¹ã¯PSFã®é¢ç©ã§ã¯ãªãããã®çŽåŸã«äŸåããŸãã
å¥ã®ç 究ã§ã¯ã深床ãèæ ®ããé©åãªãŒããã¯åé¢ã§ããªããšåŒ·èª¿ããŠããããšã«æ³šæãã䟡å€ããããŸãã
ç±æ¡æ£ã®ã·ãã¥ã¬ãŒã·ã§ã³[BarskyãKosloffãBertalmioãKass]
ç±æŸæ£ã¯ããŒããã芳å¯ã§ããç©ççãªããã»ã¹ã§ãïŒãã ããå åŠç³»ãšã¯é¢ä¿ãããŸããïŒã 枩床ãç±äŒå°äœã«åäžã«ååžããŠããªãå Žåãæéã®çµéãšãšãã«ãŒããã芳å¯ãããŸãã ãã®ãããªãŒããã®å¹æãè¡šã埮åæ¹çšåŒã䜿çšããŠã被åç深床ãã·ãã¥ã¬ãŒãã§ããŸãã ååã«å€§ããªãŒããååŸã®å Žåã§ãããã®æ¹æ³ã¯ãªã¢ã«ã¿ã€ã ã§GPUã«é©çšã§ããŸãã
ãã®ã¡ãœããã§æ·±åºŠãããã®ä»£ããã«äœ¿çšãããäœçœ®ãããã«ã¯ã深床ã ãã§ãªãããã€ã³ãã®3次å ã«é¢ããæ å ±ãå«ãŸããŠããŸãïŒBarsky pictureïŒã
äžè¬åãããã»ãã³ãã£ãã¯ãªè¢«åç深床
ãããŸã§ã®ãšãããèªç¶çã§èµ·ãã被åç深床ãã·ãã¥ã¬ãŒãããæ¹æ³ã説æããŠããŸããã ãã ãããŒããã¯ã芳å¯ã«äœ¿çšãããã®ãšã¯ç°ãªãå ŽåããããŸãã ã³ã³ãã¥ãŒã¿ãŒã°ã©ãã£ãã¯ã¹ã§ã¯ãç©ççã«å®çŸå¯èœãªã¬ã³ãºã¢ãã«ã«éå®ãããªãããããŒããé åã¯ä»»æã«èšå®ã§ããŸããããšãã°ã矀è¡ããæ°äººãåºå¥ããããšãã§ããŸãã ãã®æ¹æ³ã¯ãç©ççãªãã®ä»¥å€ã®æ³åããŒããããããšããŠäœ¿çšããŠç±æŸæ£ãã·ãã¥ã¬ãŒãããæ¹æ³ã®ããªãšãŒã·ã§ã³ãšããŠå®è£ ã§ããŸãã
ç©ççã«æ£ãããªããŒããïŒKosloffãšBarskyã«ããåçïŒ
ã©ã€ããã£ãŒã«ã
ã©ã€ããã£ãŒã«ãã¯ããšããšãã·ãŒã³ã®è€éãã«é¢ä¿ãªããç°ãªããã€ã³ãããã®ã·ãŒã³ã®ç»åãèšè¿°ããæ¹æ³ãšããŠèª¬æãããŠããŸããã ã©ã€ããã£ãŒã«ããã³ãŒãã£ã³ã°ããæšæºçãªæ¹æ³ã¯ã2å¹³é¢ãã©ã¡ãŒã¿ãŒåã§ãã 2ã€ã®å¹³è¡ãªå¹³é¢ãéžæãããŠããŸãã åå ç·ã¯ãäž¡æ¹ã®å¹³é¢äžã®ç¹ã§èšè¿°ãããŸãã çµæã¯ã4次å ã®ããŒã¿æ§é ã§ãã ååŸããããŒã¿ã¯ãçŠç¹é¢ã被åç深床ã®å€æŽãªã©ãæäœã§ããŸããã«ã¡ã©ã§ã¯ãã©ã€ããã£ãŒã«ãïŒã¬ã³ãºã®å¹³é¢ãšãããªãã¯ã¹ã®éïŒãèªç¶ã«çµ±åãããŠãããšèšããŸããå ç·ãã¬ã³ãºã®ã©ã®ç¹ããæ¥ããã¯åºå¥ããŸããã ãã ãããããèæ ®ãããšã説æããããŒã¿æ§é ã䜿çšããŠãã»ã³ãµãŒã®èªã¿åãå€ãååŸããåŸã被åç深床ãã€ã³ã¿ã©ã¯ãã£ãã«ç®¡çã§ããŸãã
ããã«ã4次å 空éã®é«éããŒãªãšå€æã䜿çšããŠãç»åã®ããŸããŸãªéšåã«çŠç¹ãåãããããšãã§ããŸãã
ã³ã³ãã¥ãŒã¿ãŒã§çæãããç»åã§ã¯ãããŸããŸãªè§åºŠããã·ãŒã³ãã¬ã³ããªã³ã°ããããšã§ã©ã€ããã£ãŒã«ãããŒã¿ãç°¡åã«ååŸã§ããŸãã
ã©ã€ããã£ãŒã«ããèšé²ã§ããã«ã¡ã©ïŒç©çïŒããããŸãã ã»ã³ãµãŒã®åã«ã¯ãããŸããŸãªæ¹åããã®å ãåé¢ãããã€ã¯ãã¬ã³ãºããããŸãããããã£ãŠãåŸæ¥ã®ã«ã¡ã©ãšã¯ç°ãªããå ã¯1ã€ã®ãã€ã³ãã§éèšããããæ¹åã«å¿ããŠåæ£ãããŸããã»ã³ãµãŒã«ãããšããã§ã«åŠç段éã§ãçŠç¹ã®åã£ããªããžã§ã¯ããšãŒãããµã€ãºãéžæã§ããŸãã

ã©ã€ããã£ãŒã«ãïŒLytroã»ã³ãµãŒããã®RAWç»åã®ããäžéšããããªãã¯ã¹ã®åã«ãã€ã¯ããªãŒãããããŸãã
ã¹ãããã£ã³ã°ïŒãŸã ãã®ïŒåç
äžèšã®æ¹æ³ã§ã¯ã1ã€ã®ãã¯ã»ã«ããšã³ã³ãŒãããããã«å€ãã®ãããªãã¯ã¹ãã€ã³ããå¿ èŠã§ããããã解å床ãäœããªããŸããå®éããã®ã«ã¡ã©ã®è§£å床ã¯ã11MPixãããªãã¯ã¹ã®ã»ãšãã©ã®éšåã§çŽ800ãã¯ã»ã«ã§ãããã®åé¡ã¯ãéåžžã«é«ã解å床ã®ã»ã³ãµãŒã䜿çšããããšã§è§£æ±ºã§ããŸãïŒãã ããããã¯ããé«äŸ¡ãªã»ã³ãµãŒãšéåžžã«å€§ããªããŒã¿æ§é ã«ã€ãªãããŸãïŒãæç¹åçã¯ããããªãã¯ã¹ã®ãµã€ãºå¶éããã€ãã¹ããŠãã©ã€ããã£ãŒã«ããååŸãã代æ¿æ¹æ³ãæäŸããŸããå€æ°ã®ãã€ã¯ãã¬ã³ãºã®ä»£ããã«ãç¹å®ã®æ³åã«åŸã£ãŠå ãå€ããåéæã®ãã¹ã¯ã䜿çšãããŸããéããŒãªãšå€æã䜿çšãããšãå ã®ã©ã€ããã£ãŒã«ããååŸã§ããŸãã
ããã©ãŒã«ã¹åç
ã©ã€ããã£ãŒã«ããªãã§ããéåžžã®ãåçã«è¢«åç深床ã®å¹æãé©çšã§ãããšäŸ¿å©ã§ãïŒã¬ã³ããªã³ã°ãšã¯ç°ãªããããã¹ãããã¯ãããŸããïŒããã®æ¹æ³ã«ã¯ããŒããã®å®çŸ©ãšãã®å¢å ãå«ãŸããŸãïŒãã®æ¹æ³ã§ã¯ãåçã«ãŒãããæ¢ã«ååšããããååã§ã¯ãªãããšãåæãšããŠããŸã-ããšãã°ãåçã¯ç³é¹žã®ç¿ã§æ®åœ±ãããããããããªãã¯ã¹ã®ãµã€ãºã®ããã«å€§ããªãŒããååŸãéæããããšã¯ã§ããŸããïŒãç»åã«æ¢ã«ååšãããŒããã倧ããã»ã©ãããå€ãã®ãŒãããè¿œå ã§é©çšãããŸãããªãŒããã©ãŒã«ã¹
ããŒãã£ã«ãªã¢ãªãã£ã¢ããªã±ãŒã·ã§ã³ããããªã²ãŒã ãããã³åçã§è¢«åç深床ã䜿çšããå ŽåããªãŒããã©ãŒã«ã¹ãã€ãŸããã¯ã»ã«ãçŠç¹ãåããã深床ã決å®ããã¿ã¹ã¯ãå¿ èŠã§ããç»åã®äžå€®ã§é åãéžæããããã®é åã®ãµã³ãã«ãçŠç¹æ·±åºŠã®æ±ºå®ã«é¢äžããŸããæ·±ãã®å éå¹³åå€ãšãæããããªããžã§ã¯ãã®æ¢ç¥ã®éèŠæ§ã®äž¡æ¹ãèæ ®ããŸãïŒããšãã°ãæšè£œã®ç®±ãå£ã§ã¯ãªãããã£ã©ã¯ã¿ãŒã®1ã€ã«ãå€èŠ³ããéäžãããããšãã§ããŸãïŒ-ããã¯ãªããžã§ã¯ãã®ã»ãã³ãã£ãã¯ãŠã§ã€ããšåŒã°ããŸãããŸããèŠç·ã®èª¿ç¯ã®ããã»ã¹ãèæ ®ããå¿ èŠããããŸãïŒçŠç¹ã¯æéã®çµéãšãšãã«åŸã ã«å€åããŸãïŒãããã«ã¯ãããšãã°ãããŒãã¹ãã£ã«ã¿ãŒã䜿çšãããŸãããããã«
çŸä»£ã®ã³ã³ãã¥ãŒã¿ã°ã©ãã£ãã¯ã¹ã§è¢«åç深床ã®å¹æãéæããããã«äœ¿çšãããæãäžè¬çãªæ¹æ³ã®ã»ãšãã©ã調ã¹ãŸããããããã®äžéšã¯3Dãªããžã§ã¯ãã§åäœããäžéšã¯åŸåŠçã¡ãœããã§ãããŸããé©åãªæ¹æ³ã§æºããå¿ èŠãããåºæ¬çãªç¹æ§ã«ã€ããŠã説æããŸãããçŸåšããã©ããªã¢ãªã¹ãã£ãã¯ãªè¢«åç深床ãå¹æçã«éæããåé¡ã¯æªè§£æ±ºã®ãŸãŸã§ããããã«ãåçãã深床ããããåæ§ç¯ããåé¡ïŒãªããžã§ã¯ããŸã§ã®è·é¢ã決å®ããïŒãæªè§£æ±ºã§ãã
åç §è³æ
ãªã³ã¯ãèªã
Brian A.Barsky
Accurate Depth of Field Simulation in Real Time (Tianshu Zhou, Jim X. Chen, Mark Pullen) â DoF
An Algorithm for Rendering Generalized Depth of Field Effects Based on Simulated Heat Diffusion (Todd Jerome Kosloff, Brian A. Barsky) â
Investigating Occlusion and DiscretizationProblems in Image Space Blurring T echniques (Brian A. Barsky, Michael J. Tobias, Daniel R. Horn, Derrick P. Chu) â
Quasi-Convolution Pyramidal Blurring (Martin Kraus) â
Focus and Depth of Field (Frédo Durand, Bill Freeman) â , : cheat sheet. .
Accurate Depth of Field Simulation in Real Time (Tianshu Zhou, Jim X. Chen, Mark Pullen) â DoF
An Algorithm for Rendering Generalized Depth of Field Effects Based on Simulated Heat Diffusion (Todd Jerome Kosloff, Brian A. Barsky) â
Investigating Occlusion and DiscretizationProblems in Image Space Blurring T echniques (Brian A. Barsky, Michael J. Tobias, Daniel R. Horn, Derrick P. Chu) â
Quasi-Convolution Pyramidal Blurring (Martin Kraus) â
Focus and Depth of Field (Frédo Durand, Bill Freeman) â , : cheat sheet. .