abstract
| - Listed below is an HDR script that is camera model independent. It measures what the camera thinks is the correct current exposure and then makes a user specified number of exposures at faster and slower shutter speeds than what the camera specified. Using HDR stacking software on the PC, it will be possible to use some (or all) of these images to create a final high dynamic range image. The script will take each picture as quickly as the camera will allow. The focus is locked in at the start using a "half press" and the script fires each successive exposure as soon as the camera is ready. Note that you probably want to disable the camera's flash - the actual exposure when the flash fires will ruin the HDR effect. This script should work on every CHDK equipped camera - contains no camera specific key presses or property case settings. Save with a .lua file name extension ( e.g.fastHDR.lua ). --[[ @title HDR Fast Shooter @param n Number of Steps @default n 5 @param s tV step size @default s 96 --]] -- release AF lock on exit function restore() set_aflock(0) end -- setup set_console_layout(10, 0, 40, 14) props=require("propcase") propset=get_propset() pTV=props.TV if( propset > 3) then pTV2=props.TV2 end print("Started...") -- make sure we are in shooting mode if ( get_mode() == false ) then sleep(1000) set_record(1) while ( get_mode() == false) do sleep(100) end sleep(1000) end -- timestamp the start z = get_day_seconds() -- focus and get exposure press("shoot_half") repeat sleep(50) until get_shooting() == true set_aflock(1) tv96val=get_tv96()-(n*(s/2)) -- take the shots as fast as possible for i=1, n, 1 do print("step=", i, "tv96=", tv96val) ecnt=get_exp_count() set_prop(pTV,tv96val) if( propset > 3) then set_prop(pTV2,tv96val) end press("shoot_full_only") repeat sleep(20) until(get_exp_count()~=ecnt) release("shoot_full_only") tv96val = tv96val+s end -- all done so cleanup z = get_day_seconds() -z print("...done in", z, "seconds") restore()
|