Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

Tree [5b8d86] master /
History



File Date Author Commit
src 2007-02-18 Giuseppe Rota Giuseppe Rota [5b8d86] update to qtpfsgui 1.8.0
AUTHORS 2007-02-18 Giuseppe Rota Giuseppe Rota [5b8d86] update to qtpfsgui 1.8.0
ChangeLog 2007-02-18 Giuseppe Rota Giuseppe Rota [5b8d86] update to qtpfsgui 1.8.0
Makefile.am 2007-02-18 Giuseppe Rota Giuseppe Rota [5b8d86] update to qtpfsgui 1.8.0
NEWS 2007-02-18 Giuseppe Rota Giuseppe Rota [5b8d86] update to qtpfsgui 1.8.0
README 2007-02-18 Giuseppe Rota Giuseppe Rota [5b8d86] update to qtpfsgui 1.8.0
README.originalpfscalibration 2007-02-18 Giuseppe Rota Giuseppe Rota [5b8d86] update to qtpfsgui 1.8.0
TODO 2007-02-18 Giuseppe Rota Giuseppe Rota [5b8d86] update to qtpfsgui 1.8.0
configure.ac 2007-02-18 Giuseppe Rota Giuseppe Rota [5b8d86] update to qtpfsgui 1.8.0
reconf 2007-02-18 Giuseppe Rota Giuseppe Rota [5b8d86] update to qtpfsgui 1.8.0

Read Me

This is the README file for pfshdrcreate package.
-------------------------------------------------------------------
Copyright (C) 2006 Giuseppe Rota, <grota@users.sourceforge.net>


Contents
---------

0. What it is
1. Dependencies
2. Compilation
3. Documentation
4. Contact and Links


0. What it is
---------------------------------------------------------------------
This is a branch of the pfscalibration package created by Grzegorz
Krawczyk, which is hosted on:
http://www.mpii.mpg.de/resources/hdr/calibration/pfs.html
Without his and Rafal Mantiuk's work all of this would
have never been possible.

The main purpose of this package is to create an HDR image starting
from a set of pictures of the same scene taken with different
exposure settings. This program is used as a backend in the software
Qtpfsgui, but it can also be used as a standalone console application.

The differences with the original pfscalibration package include a
different algorithm to create hdr images (i.e. debevec model), and
a different memory system, that reduces the memory footprint.
In case you need to perform reliable camera calibration, the only
set of commandline switchs that should be used are:
-r calibrate -m robertson -w gaussian -s filename_for_response_curve.m

The software maintains bytestream compatibility with pfstools, and
that means that its hdr pfs output bytestream can be used with
the existing pfstools/pfstmo programs; for example you can use:

pfsinhdrgen sample.hdrgen | pfshdrcreate -v | pfstmo_reinhard02

In case you are planning to use pfshdrcreate directly, using
the commandline interface as shown in the example above, and not
as a backend of qtpfsgui, please bear in mind that the command
line parameters are different from pfscalibration;
see the manpage of pfshdrcreate or the Documentation section below.

pfshdrcreate does not support RAW camera formats yet.


1. Dependencies
-------------------------------------------------------------------

This package is implemented using floating-point pipe streaming
implemented in pfstools library. PFStools is a free library and can be
obtained from: http://www.mpi-sb.mpg.de/resources/pfstools/

If you want to use qtpfsgui you will also need the package pfstmo
available at: http://www.mpii.mpg.de/resources/tmo even if pfstmo
is not a direct dependency of pfshdrcreate.


2. Compilation
---------------------------------------------------------------------

2.1 To build from a 'tar' archive:

> ./configure <options>

for example following command will configure the package to be installed
in user's 'local/' directory:

> ./configure --prefix=$HOME/local

then compile

> make

and install

> make install

NOTE0: you can also issue the command "make install-strip"
if you want to strip your executables before installing them.

NOTE1: When you specify a different compiler using for example
CXX=g++-3.2, libtool may incorrectly interpret compiler and use gcc
instead of g++ to link the pfs library. This results in reallocation
error in programs that link dynamically to that library. This is
probably a bug in the libtool.

NOTE: Automake 1.6 or later is required!

2.2 To build from CVS:

> ./reconf

or

> aclocal
> libtoolize
> autoheader
> automake --add-missing
> autoreconf

then proceed as in the case of the 'tar' archive distribution.


3. Documentation
-------------------------------------------------------------------

Documentation for pfshdrcreate can be found in this README and in
the manpages for the single tools:
> man pfshdrcreate
> man jpeg2hdrgen
> man pfsinhdrgen
The original README from the pfscalibration package is also included
(README.originalpfscalibation). That can be useful if you want to
use pfshdrcreate as a commandline tool, and not as a backend for
Qtpfsgui.

Here I will describe the behaviour of pfshdrcreate.
pfshdrcreate has 3 main sets of options that can be set:
weighting function, response curve and hdr creation model.

Specifying the weighting function means specifying the shape of
the curve that assigns confidence in pixel values.
use one of the following:
-w triangular (default if not specified)
-w gaussian
-w plateau

Specifying the response curve means specifying the correspondence
between pixel values and radiance values in the scene.
use one of the following:
-r gamma (default if not specified)
-r linear
-r log
-r calibrate ( recovers the response curve from the image set )
-f filename ( loads a response curve from file; response curves are saved
using the -s filename switch )

The third and last set of parameters specifies the hdr creation model
that will be used:
use one of the following:
-m debevec (default if not specified)
-m robertson


4. Contact and Links
-------------------------------------------------------------------

All comments and suggestions concerning this package or implementation
of particular algorithm are very welcome. Please report bugs and
comments to Giuseppe Rota <grota@users.sourceforge.net>.

See also:
PFStools library:
http://www.mpii.mpg.de/resources/pfstools/

PFStmo web-page (a tone mapping library):
http://www.mpii.mpg.de/resources/tmo/