1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208
|
23/02/2009 PFSTMO 1.4
* mantiuk08: added color correction method from (http://zgk.wi.ps.pl/color_correction/)
* mantiuk08: fixed dependency on libgsl (thanks to Niels)
* durand02: added color correction method from (http://zgk.wi.ps.pl/color_correction/)
04/11/2008
* all: variables with underscore replaced with "n<variable name>"
as they caused compilation problems under cygwin
21/09/2008
* mantiuk08: Refactored for exception safety
21/09/2008
* build: Removed bogus flag -march=nocona; added CPU detection and
--disable-portable option for enabling non-portable optimizations.
Tunes for local CPU by default, can be disabled using
--without-gcc-arch
21/09/2008
* pfstmo.h: Templatized Array2D; added copy constructor,
assignment operator, and function `allocate' for re-initializing
array after construction
09/09/2008 PFSTMO 1.3.2
* durand02: removed downsampling option - introduced large errors
into the results
08/09/2008
* durand02: division by zero bug fixed (fastbilateral)
* durand02: range boundary bug fixed (fastbilateral)
* durand02: added progress reporting (fastbilateral)
* durand02: performance imrovements in fastbilateral
* mantiuk08: found the cause for the uninitialized value in the cqpminimizer.
Initialization moved to more a suitable code location
05/09/2008
* durand02: disabled fast_bilateral after finding some bugs. A
slow bilateral filter will be used until bugs are fixed.
04/09/2008
* all: removed dependency on pfs::Array2D[Impl], replaced by new
class pfstmo::Array2D. Apart from getting rid of the dependency,
this also speeds thing up considerably because pfstmo::Array2D is
non-virtual and thus can be inlined.
03/09/2008
* durand02: added missing delete in fastBilateralFilter. All TMOs
are now valgrind memcheck-clean.
03/09/2008
* mantiuk08: fixed uninitialized value in gsl_cqpminimizer_alloc.
02/09/2008
* fattal02: replaced delete with correct delete[] operators in PDE
solver.
27/08/2008
* fixed: added missing FFTW3F_CFLAGS for durand02 operator
* pattanaik00: Fixed a bug that would cause every frame to be
treated as the first frame, never invoking
VisualAdaptationModel::calculateAdaptation.
27/08/2008
* configure.ac: Added missing likely/unlikely macros
26/08/2008 PFSTMO 1.3.1
* mantiuk06: Ed Brambley's bug-fix and convergence patch:
- There was a bug in the upsampling code that could cause an
out-of- bound read past the end of allocated memory. This was
occasionally causing NaNs to creep in, at least in a few runs I
did. This has been fixed.
- The patch adds some code to monitor how we're converging to a
solution, and to reset the iteration if necessary. In the few
examples I've tried, this has made the convergence much more
robust.
- The patch changes the start point of the iteration. Before, we
started from a uniform gray ("x" was initialized to 0.0f
everywhere). Now, we start from the original image. I found
this also helps the iteration be more robust, although
sometimes its quicker and sometimes its slower this way.
- The clipping prevention code has been modified to be scale
independent. A badly-scaled input file should no longer cause
a loss of dynamic range.
Overall, the code runs sometimes a little more slowly and
sometimes about the same speed as before, although it is, I
believe, now far more robust and much more likely to converge.
more at: http://groups.google.com/group/pfstools/browse_thread/thread/de2378af98ec6185/0dee5304fc14e99d?hl=en#0dee5304fc14e99d
* mantiuk06: Ed Brambley's OpenMP patch:
I've attached a second patch (which depends on the first one).
This patch is a first attempt at parallelizing the code to run on
OpenMP. I've tried to avoid assuming how many processors there
will be, so it should scale to 4 or 8 processors quite happily.
I'll let you know when I get my Quad core set up :-)
There are probably more efficient ways to parallelize the code;
for example, having only one or two "#pragma omp parallel"
sections and lots of "#pragma omp for" or "#pragma omp sections"
sections, but I've not tried to do this. It happily uses 100% of
both cores on the dual-core box I tried it on, and gives knocks
about 20 seconds of a typical 1 minute tone mapping.
* mantiuk06: fixed references to exp10f (missing in some compilers)
* mantiuk06: added branch prediction optimizations (thanks to Lebed Dmytry)
* mantiuk08: better handling of zero-values in HDR images - previously it could fail on some images
* mantiuk08: removed some debug code
* mantiuk08: added branch prediction optimizations
* added: autoconf checks for OpenMP and some gcc optimization options
16/06/2008 PFSTMO 1.3
* added: mantiuk08 - display adaptive tone mapping
* mantiuk06: updated documentation, added --quiet option,
can now process more than one image in a loop
19/02/2008 PFSTMO 1.2
* mantiuk06: fixed some serious bugs in the solver and subsampling
procedure the artifacts found in some odd-sized images
should be gone
* mantiuk06: faster up-/down-sampling functions make the
algorithm 25% faster. Thanks to Ed Brambley.
* mantiuk06: performance improvements from Ed Brambley: lower
memory consumption, faster solver, better convergence,
additional scale parameter for the contrast equalization
method.
11/07/2007 PFSTMO 1.1
* pfstmo-1.1: first release on sourceforge
* small fixes with parameters (Miguel Granados)
* reinhard05: renamed from reinhard04 to correct publication year.
substantial corrections to the code
* fattal02: major bug fix,
added noise level parameter (Przemyslaw Bazarnik),
manpage updates - explanation of parameters
* mantiuk06: new gradient domain operator
implementation by Radoslaw Mantiuk
* ashikhmin02: implementation temporarily dropped
imposible to reproduce results from paper
05/12/2005
* added temporal coherence to reinhard02
29/11/2005
* fixed ansi compatibilities (fattal02)
14/12/2004
* new algorithms
ashikhmin02, fattal02
* durand02
corrected interpretation of compression factor
percentile to estimate min and max in final mapping -> more stable
* pattanaik02
bug fix: local adaptation
bug fix: r,g,b intensities normalization
* reinhard02
fix: memory leaks in building the pyramid
22/09/2004 PFStmo 1.0
* first unofficial release
* implemented algorithms
drago03, durand02, pattanaik00, reinhard02, reinhard04
|