Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
pfshdrcalibrate(1)	     General Commands Manual	      pfshdrcalibrate(1)

NAME
     pfshdrcalibrate  - Create an HDR image or calibrate a response curve from a
     set of differently exposed images supplied in PFS stream.

SYNOPSIS
     pfshdrcalibrate [--response <type>] [--calibration <type>] [--gauss  <val>]
     [--response-file <filename.m>] [--save-response <filename.m>] [--multiplier
     <val>] [--bpp <val>] [--luminance] [--samples <val>] [--help] [--verbose]

DESCRIPTION
     Create an HDR image or calibrate a response curve from a set of differently
     exposed images supplied in PFS stream.

     When  used  with 8bit images, luminance in the output HDR image corresponds
     to real world values in [cd/m^2] provided that hdrgen script contained cor-
     rect information on exposure time, aperture and iso speed. Note that  some-
     times  ISO  speed	indicated  by  camera  does  not  correspond to standard
     (ISO-100 is in fact ISO-125).

     The accuracy of absolute calibration has not been	thoroughly  tested  with
     different	camera	models,  however one can expect the relative measurement
     error below 8%. Use pfsabsolute in case of systematic error.

OPTIONS
     --response <type>, -r <type>

	    Allows one to choose from predefined response curves.  This  can  be
	    used  either  to  apply this response or use it as an initialization
	    for automatic  self-calibration.  Predefined  response  curves  are:
	    "linear",  "gamma",  "log".  Default is "linear". This option can be
	    used only with Robertson method.

     --calibration <type>, -c <type>

	    Type of automatic self-calibration method used for recovery  of  the
	    response  curve and/or type of method used for HDR merging. Accepted
	    types include: "robertson", "mitsunaga". "robertson" is the  default
	    and  recommended algorithm (see commends in the Bugs section below).
	    More infomation on the algorithms can be found in:

	    M.A. Robertson,  S. Borman and R.L. Stevenson
	    Dynamic range improvement through multiple exposures
	    In: Proc. of International Conference on Image Processing 1999 (ICIP
	    99), pp 159-163 vol.3

	    and

	    T. Mitsunaga and S. K. Nayar
	    Radiometric Self Calibration
	    In: Proc on IEEE Conf. on Computer Vision  and  Pattern  Recognition
	    (CVPR'99). Volume 1, p. 1374

     --gauss <val>, -g <val>

	    Sigma  value  for  the Gaussian used as a weighting function (in the
	    range 0-1). Applies to Robertson02 algorithm. Default value: 0.2

     --response-file <filename.m>, -f <filename.m>

	    Use response curve saved in the matlab format file. Turns off  auto-
	    matic self-calibration. Uses Robertson02 or Mitsunaga99 model to ap-
	    ply the response curve (see -c option).

     --save-response <filename.m>, -s <filename.m>

	    Saves  the	response curve calculated during automatic self-calibra-
	    tion stage in a matlab format file. Can be later reused for  set  of
	    images captured with given camera. Also works fine for plotting with
	    gnuplot.

     --multiplier <val>, -m <val>

	    Input  multiplier  value.  Can  be	used  to manipulate the range of
	    source exposures. Default value for Robertson method  is  256  since
	    LDR  images  are by default scaled to 0..1. This value is set to 1.0
	    for Mitsunaga method.

     --bpp <val>, -b <val>

	    Number of bits per pixel in input  data  from  the	camera.  Default
	    value is 8.

     --samples <val>, -p <val>

	    Number  of samples used during the self-calibration in Mitsunaga al-
	    gorithm. Default is 50000.

     --deghosting, -d

	    EXPERIMENTAL. Try to use a	simple	rejection  criterion  to  reduce
	    ghosting  artifacts  due to movement in dynamic scenes. This is cur-
	    rently not well implemented to the results can be disappointing.

     --luminance, -Y

	    Recovery of response curve will be performed for  luminance  channel
	    only.

     --verbose

	    Print additional information during program execution.

     --help

	    Print list of command line options.

EXAMPLES
     pfsinme *.JPG | pfshdrcalibrate -v -s response.m | pfsview

	    Recover the response curve from set of all JPEG files in the current
	    directory  and  save  it  to  response.m  file. To view the response
	    curve, use pfsplotresponse command.

     pfsinme *.CR2 | pfssize  --maxx 1200 | pfshdrcalibrate -r linear -v --bpp
     16 | pfsout result.exr

	    Read Camera RAW images (from Canon), resize them so that  the  image
	    width is equal or less 1200 pixels, merge them into an HDR image us-
	    ing all 16 bits and save as an Open EXR image.

     pfsinhdrgen sample.hdrgen | pfshdrcalibrate -x -f response.m | pfsview

	    Create  an	HDR  image from exposures defined in sample.hdrgen using
	    the response curve "response.m" and view it. Fix  the  problem  with
	    black values given to overexposed pixels.

     pfsinhdrgen sample.hdrgen | pfshdrcalibrate | pfsview

	    Create  an	HDR  image from exposures defined in sample.hdrgen using
	    the default self-calibration method and view it.

     pfsinhdrgen sample_dcraw.hdrgen | pfshdrcalibrate -b 16 -r linear -c none |
     pfsview

	    Given that the script sample_dcraw.hdrgen refers to camera RAW files
	    (see pfsindcraw), this example will generate an HDR image assuming a
	    linear response.

     pfsinhdrgen sample.hdrgen | pfshdrcalibrate | pfsview

	    Create an HDR image from exposures defined	in  sample.hdrgen  using
	    the default self-calibration method and view it.

     pfsinhdrgen sample.hdrgen | pfshdrcalibrate -c mitsunaga -samples 100000 -s
     resp_mitsunaga.m >/dev/null

	    Create  an	HDR  image from exposures defined in sample.hdrgen using
	    the mitsunaga self-calibration method with 100000 samples  and  save
	    it to "resp_mitsunaga.m".

SEE ALSO
     pfsplotresponse(1)  pfsinhdrgen(1)  jpeg2hdrgen(1) pfsview(1) pfsindcraw(1)
     pfsabsolute(1) pfsglview(1)

BUGS
     Currently Mitsunaga and Nayar's method does not produce reliable camera re-
     sponse curves. Robertson's method should be used instead.

     Robertson's method may banding or wrong colors in	strongly  over-saturated
     and  under-saturated  areas. For best results, there should be a sufficient
     numbers of exposures in which no pixels is over- or under-saturated in  all
     the  exposures. It is possible to fix these issues with some heuristics (as
     most HDR merging software does), but it is currently not done in  this  re-
     lease.  pfscalibration  was meant to be used for research purposes and get-
     ting accurate result is more important than generating good looking images.
     The heuristics could hide the well visible artifacts, but would also intro-
     duce error to the measurements.

     For any other issues please report bugs and comments on  implementation  to
     the discussion group http://groups.google.com/group/pfstools

							      pfshdrcalibrate(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=pfshdrcalibrate&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help