Wikia

CHDK Wiki

Ultra HDR Script

Talk0
575pages on
this wiki
Revision as of 01:37, March 9, 2013 by Waterwingz (Talk | contribs)

Attention

Page under construction.

UltraHDR1

This script provides a complete HDR / Exposure Bracketing script.  It combines various aspects of many existing HDR scripts.   The script will work on any CHDK equiped camera.  It has no embeded keyboard presses or fixed parameter set variables that would make it specific to a particular camera.

Script Description

This script provides two modes of exposure bracketing - fixed exposure or  HDR.

In fixed exposure mode, the script holds the exposure constant while varying the one of the three exposure parameter ( Tv, Av, Sv).   This produces images with the same exposure but different combinations of shutter, aperature and ISO settings.

In HDR mode,  the script varies one of the three exposure parameters ( Tv, Av, Sv) while holding the other two fixed.  This results in several shots at different exposure settings,  suitable for creating HDR images in your computer.

Note :  as many Canon P&S cameras do not have adjustable aperature,  the script provides a means to use those cameras ND (Neutral Density) filter to vary exposure.

Script Operation

Write the second section of your page here.


Lua Script - UltraHDR.lua

​ --[[
@title Ultra HDR
@param m HDR exposure mode
@default m 0
@values m Shutter Iris ISO +ND -ND
@default e 0
@values e HDR Bracket
@param e Exposure Type
@param n Exposure Steps
@default n 5
@range n 1 8
@param s 1/2 f-stops per step
@default s 4
@range s 1 10
--]]

-- 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()

Around Wikia's network

Random Wiki