Commit graph

16 commits

Author SHA1 Message Date
adam
d287cb3670 Changes 4.2:
- All deprecated options and features of version 4.1 have been
  removed.

- Enblend and Enfuse support layer (aka "page", aka "frame") selection
  in of multi-layer image-files.  This includes processing any layers
  in user-defined order.

- Both Enblend and Enfuse can now perform all their pyramidal blending
  operations in CIELAB (aka L*a*b*, aka L-star) and CIELUV (aka
  L*u*v*) color spaces, too.  See section "New Commandline Options",
  option `--blend-colorspace'.

  The previous default, CIECAM for input images with ICC-profile has
  been changed to CIELUV.  The default for RGB images without
  ICC-profile remains.  However, the new default for floating-point
  image data is to use the RGB-cube, no matter whether the images come
  with profiles or not.

- The new Graph-Cut algorithm is the default primary seam-line
  generator.

- Avoid a division-by-zero in the Annealing Optimizer.

- Fix a bug (1356551) in the seam-line vectorization code that was
  there since 2004.  The fix changes the position of almost any
  coarse-mask seam line vertex by one pixel.

- Fix a longstanding quirk, which allowed to load masks into Enblend
  and Enfuse that were unsuitable for processing.

- Fix a bug in the highlight-recovery that caused Enfuse to bail out
  with the uncaught exception
      "Minimizer1D::set_bracket: minimum not bracketed".

- The OpenMP enabled versions of Enblend and Enfuse benefit from
  Google's TCMalloc library.

- Several exposure weight functions were added to Enfuse.  The choice
  is now up to the user.  The default still is the Gauss function as
  in all Enfuse versions before.
2016-04-07 09:38:43 +00:00
agc
7f810a359f Add SHA512 digests for distfiles for graphics category
Problems found with existing digests:
	Package fotoxx distfile fotoxx-14.03.1.tar.gz
	ac2033f87de2c23941261f7c50160cddf872c110 [recorded]
	118e98a8cc0414676b3c4d37b8df407c28a1407c [calculated]
	Package ploticus-examples distfile ploticus-2.00/plnode200.tar.gz
	34274a03d0c41fae5690633663e3d4114b9d7a6d [recorded]
	da39a3ee5e6b4b0d3255bfef95601890afd80709 [calculated]

Problems found locating distfiles:
	Package AfterShotPro: missing distfile AfterShotPro-1.1.0.30/AfterShotPro_i386.deb
	Package pgraf: missing distfile pgraf-20010131.tar.gz
	Package qvplay: missing distfile qvplay-0.95.tar.gz

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
2015-11-03 21:33:50 +00:00
adam
639074e608 Changes 4.1.4:
** New Commandline Options
- The introduction of additional blend color spaces in the Development
  Branch requires a new option to select them.  Here, in the Stable
  Branch, the new option `--blend-colorspace' just duplicates the
  functionality of `--ciecam' and `--no-ciecam'.  The Stable Branch
  does *not* provide the additional blend colorspaces of the
  Development Branch.  The following equivalences hold
      --ciecam     <=>  --blend-colorspace=ciecam
      --no-ciecam  <=>  --blend-colorspace=identity
  Both options `--ciecam' and `--no-ciecam' are deprecated in 4.2 and
  will be withdrawn in 4.3.  Thus, users should prefer
  `--blend-colorspace'.

** Bug Fixes
- [Enblend and Enfuse] Fix the nesting-depth counter for response
  files.  This bug prohibited to load more than 20 images in a single
  response file.
- [Enblend and Enfuse] Allow grayscale images to bring their own
  (grayscale) profiles.  Previously grayscale images with ICC profiles
  were rejected.
- [Enblend] Fix a possible domain error followed by a division-by-zero
  in the seam-line optimizer.
- [Enblend and Enfuse] Avoid an undeserved warning about incompatible
  colorspaces if they only disagree on their meta-data (e.g. profile
  creation date/time).
- [Enblend] Fix a bug in the Dijkstra Optimizer which could lead to
  undefined behavior in the placement of the (optimized) seam line.
- [Enblend] Fix a non-dereferencable vector iterator which led to a
  segfault.
- [Enblend] Avoid a division-by-zero in the Annealing Optimizer.
- [Enblend] Fix a bug (1356551) in the seam-line vectorization code
  that was there since 2004.  The fix changes the position of almost
  any coarse-mask seam line vertex by one pixel.
2015-10-12 16:01:18 +00:00
adam
8e3b70e314 Revbump after updating boost 2014-11-07 19:39:24 +00:00
adam
008133fa2b Changes 4.1.3:
- [Enblend only] Fix problem of multiple, almost-identical seamlines
  that produce inexplicable black areas in the output panorama.
- Little CMS version 2.5 or later is now required to build.  Prior
  versions of LCMS sometimes produced output images that were lighter
  or darker than the input images.
2014-05-03 21:10:12 +00:00
adam
9c413d272b Changes 4.1.2:
** Bug Fixes
- [Enblend and Enfuse] Fix a bug in the highlight-recovery that caused
  Enfuse to bail out with the uncaught exception
    "Minimizer1D::set_bracket: minimum not bracketed".
  This addresses LaunchPad Bug 1214004.
- [Enfuse] Clean up seemingly random, bright-colored pixels that
  sometimes show up when fusing images with high contrast and "large"
  color profiles.
2013-10-25 08:13:04 +00:00
adam
a7032bafe5 Changes 4.1.1:
Bug Fixes

- [Enblend only] Fix a race condition in the seam-line optimizer that
  can cause wrongly placed seams.

- [Enblend and Enfuse] Use a per-thread storage of all OpenMP
  Vigra-functors.  This avoids data races.

- [Enblend and Enfuse] The Boost implementation of the `Mersenne
  Twister' random number generator caused segmentation faults when
  used in the OpenMP-enabled versions of Enblend and Enfuse.  The new
  implementation is based on the GNU Scientific Library (GSL), which
  plays nicely with concurrent accesses.

- [Enblend only] Correct a mistake that causes overlapping images with
  multiple seams to be blended incorrectly.

- [Enblend only] Require the OpenGL extension
  `GL_ARB_texture_rectangle' for the `--gpu' option to work.  This
  does away with a pesky warning of OpenGL drivers that do support
  this extension and avoids crashes with drivers that don't.

  The GPU performance improvement of Enblend via `--gpu' now is only
  available with drivers that feature `GL_ARB_texture_rectangle'
  (among many other required OpenGL extensions).

  The OpenGL warning about odd texture sizes is unaffected by this
  change.

- [Enblend and Enfuse] Fix a longstanding quirk, which allowed to load
  masks that were unsuitable for processing.
2013-02-16 21:18:29 +00:00
adam
bb31c22971 * Version 4.1 "Trouble In Paradise"
Released on December 8, 2012.

** Improvements

- All deprecated options since version 4.0 have been removed.

- A new primary seam-line generator, based on a Graph-Cut algorithm,
  has been implemented during GSoC 2011 by Mikołaj Leszczyński.  The
  old Nearest-Feature Transform remains the default.  The new
  algorithm is activated with "--primary-seam-generator=graph-cut".

- The difference image on which Enblend's seam-line optimization
  relies for color images uses a perceptual model by default (option
  "--image-difference"), yielding a true CIE76 "Delta E" with the
  (default) luminance and chrominance weights of 1.

- Parallelize CIECAM02 color conversion (option "--ciecam").  Speedups
  of up to 40% have been reported on the amd64 architecture.  The
  computationally expensive color-space conversion still slows down
  blending and fusing by some 25%.

- Enblend and Enfuse integrate seamlessly in color-managed workflow.
  Input images with color profiles automatically enable CIECAM
  blending and the output image is assigned the input images' color
  profile.

- Enblend and Enfuse exploit a new feature in LittleCMS Version 2.x
  called "Unbounded CMM".  Thereby, the hue and saturation of extreme
  shadows and highlights can be preserved much longer before pure
  black or white are reached.  See:
  http://www.littlecms.com/CIC18_UnboundedCMM.pdf

- Assign different profiles to profile-free input images with option
  "--fallback-profile" instead of being tied to sRGB.

- A new gray-scale projector called "anti-value" helps when fusing
  with the intent of minimizing the noise in the output image.  When
  employing a lower exposure cutoff this even is the default
  projector.

- Both Enblend and Enfuse stop right after saving all generated masks
  to files, if option "--save-masks" is given, but option "--output"
  is not.  This allows to splice tools that manipulate the masks and
  feed the masks back into Enblend and Enfuse with option
  "--load-masks".  When combining option "--output" and "--save-masks"
  Enblend and Enfuse write all masks and the final output image as
  before.

- Both Enblend and Enfuse can write their output JPEG files with
  arithmetic JPEG compression and TIFF files with JPEG compression, if
  the underlying JPEG and TIFF libraries support these compression
  schemes.


** Bug Fixes

- Enblend and Enfuse consistently warn if they are passed input images
  that alternate between with color profile and without.

- Grant SourceForge feature request ID 2991909 (OSX only).  Previous
  to that, Enblend, when launched from a terminal window with
  GPU-acceleration (option "--gpu"), started a second, non-responsive
  terminal window and when this new Enblend window tried to "steal"
  the focus, it displayed the OSX rotating "beach ball".  With the fix
  that all goes away.  Also the responsiveness of the screen improves,
  which means that the non-functional window also hogged GUI resources.


** New Commandline Options

- Option "--primary-seam-generator" controls the primary seam-line
  generation algorithm.

- Option "--image-difference" selects the difference image calculation
  algorithm and optionally assigns weights to the luminance and the
  chrominance part of the difference image.

- Short option "-c" now has a sibling called "--ciecam".  The long
  option also has a negated form: "--no-ciecam"; the short one has
  not.

- The option "--fallback-profile=PROFILE" allows users to pass their
  own profiles for image sets that come without ICC color profiles.
  Before the hard-coded profile was sRGB.

- The option "--exposure-cutoff" facilitates tailoring the exposure
  weight curve specifically to exclude underexposed (and probably
  noisy) or overexposed pixels from fusion.

- In Enblend option "--load-masks" disables all mask computations and
  loads the blend masks directly from the specified files.  This is
  the dual of Enblend's long-known option "--save-masks".

- The option "--layer-selector" overrides the standard default
  layer selector.

- In addition to the usual integral values option "--levels" takes the
  keyword "auto", which restores the default.  (The default is to
  automatically choose the maximum number of pyramid levels for each
  separate overlapping region.)


** Deprecated Features

- The option "--smooth-difference" will be eliminated in the next
  version of Enblend; it has not helped and moreover only put lipstick
  on the seamline-optimizer's objective function.

- The user-(re)sizable image-cache will not be available in later
  versions of Enblend and Enfuse.  We are not sure yet whether it will
  be replaced by an mmap-based solution or just tossed out.


** Developer Stuff

- XHTML validation does not rely on network access anymore.  This
  means all necessary DTDs must be available locally and all catalogs
  must be set up correctly to build the XHTML documentation.

- The option "--parameter" allows developers to pass arbitrary
  key-value pairs to Enblend and Enfuse.  The keys must match the
  regular expression [A-Za-z][A-Za-z0-9_-]*; the values can be almost
  any string.  No further checking or validation is performed.

  For more explanations on how to use parameters in the source code,
  see the block-comment within "namespace parameter" in file
  "common.h".


** Package Maintainer Stuff

- Enblend and Enfuse now use LittleCMS version 2.x.

- Enblend and Enfuse no longer rely on their own versions of the Vigra
  imaging library.  Vigra version 1.8 or later is now required to
  build.

- Enblend no longer relies on libXMI.  (Enfuse never needed this
  library.)
2012-12-09 00:11:42 +00:00
adam
003c9a8dbc Fix building with libpng-1.5 2011-01-29 16:38:33 +00:00
adam
c3ff8bcfd9 Fix building with libpng-1.5 2011-01-29 16:30:41 +00:00
adam
2cfdd31bb4 * Fixed buildling with Clang.
* Program crashes with image cache enabled. (Image cache doesn't help, anyway.)
2010-12-14 18:26:34 +00:00
wiz
e8d8834f6a Bump PKGREVISION for libpng shlib name change.
Also add some patches to remove use of deprecated symbols and fix other
problems when looking for or compiling against libpng-1.4.x.
2010-06-13 22:43:46 +00:00
adam
2437d2ef12 Changes 4.0nb2:
* Revision bump for boost-1.43.0
* Enable OpenMP on Mac OS X
2010-05-15 05:47:58 +00:00
adam
fb99ef4b5d Distfile has changed - fix 2010-01-05 09:32:36 +00:00
adam
f51d1db5ce Changes 4.0:
* Huge new documentation in Info, PS, PDF, and XHTML formats.  Plain
  HTML format is not supported because it cannot portably render MathML.
* New manual pages.
* Automatic bit depth conversion between input and output images if
  necessary.
* Compilation without image cache works again
  ("--disable-image-cache").  Speedups of up to 30% have been reported
  on the amd64 architecture.
* Enblend and Enfuse accept repsonse files in addition to literal
  image files.  Response files contain lists of image filenames or
  names of other response files.
* Lots of new warnings if a command-line option has no effect, like,
  for example, combining a mask optimization option with "--no-optimize".
* Enblend shows the initial, unoptimized seam line in addition to the
  optimized one in all seam-line visualization images (option "--visualize").
* Enblend and Enfuse read multi-layer TIFF files ("multi directory" in
  TIFF jargon).  It is even possible to mix multi-layer with single
  layer images.  This partially fixes SourceForge bug ID 1170329.
* Save masks with (lossless) "Deflate" compression.
* An improved wrap-around option, formerly only "-w", now "-wMODE" and
  "--wrap=MODE", lets the user determine whether to create a 360
  degrees horizontal or vertical panorama.  It is possible to wrap
  around vertically and horizontally at the same time.
* Without any output filename given, i.e. no "-o" option, the output
  filename now defaults to "a.tif", making "-o" truly an option.
* The user has better control of the number of pyramid levels.
  Previously only the maximum number in any blend could be reduced
  by the "-l" option.  Now, the maximum number can be reduced by a
  fixed amount no matter what the actual maximum number of permissible
  pyramid levels is.
* Use OpenMP to make better use of multi-processor machines.  As the
  image cache is not reentrant, OpenMP can only be activated when the
  image cache is disabled.
* Enblend and Enfuse issue messages following the GNU standard.
* Bug Fixes
2009-12-16 21:28:35 +00:00
adam
00c430dae1 Enblend combines images that overlap like this into a single large image without
seams. Enfuse combines images that overlap like this into a single image with
good exposure and good focus. Both programs assume that your images are already
lined up. To make panoramas with Enblend and/or Enfuse, use Hugin.
2009-09-01 14:39:28 +00:00