2005-07-24 23:53  acmihal

	* blend.h, enblend.h, wavelet.h: Modified main blending loop to use
	  refactored wavelet transform.

2005-07-24 22:33  acmihal

	* Makefile.am, enblend.h, wavelet.h, vigra_impex/Makefile.am:
	  Refactored the wavelet transform code.

2005-07-15 00:40  acmihal

	* wavelet.h: Trying a CDF(4,2) wavelet.

2005-07-14 01:05  acmihal

	* blend.h, enblend.h, mask.h, wavelet.h: Experimental blending
	  using the wavelet transform.

2005-07-13 00:37  acmihal

	* enblend.h, wavelet.h: Added wraparound boundary condition to
	  wavelet transform.

2005-07-13 00:00  acmihal

	* enblend.h, wavelet.h: Working on wavelet boundary conditions.

2005-07-12 16:08  acmihal

	* Makefile.am, enblend.h, wavelet.h: Forward and reverse wavelet
	  transforms are working now.

2005-07-12 16:06  acmihal

	* anneal.h: Adjusted the parameters of the simulated annealing.

2005-07-12 01:06  acmihal

	* wavelet.h: Starting to explore the use of a wavelet transform to
	  replace the pyramid code.

2005-07-11 23:08  acmihal

	* nearest.h: Incorporated Fulvio Senore's data structure for
	  speeding up the potentialFeatureList.

2005-06-23 20:39  acmihal

	* enblend.cc: Added compile-time index template functions to the
	  Split and Merge scalar/scalar accessors.  Re-enabled grayscale
	  images.

2005-05-09 00:51  acmihal

	* Makefile.am, anneal.h, enblend.cc, enblend.h, mask.h,
	  vigra_impex/Makefile.am: Refactored the active contour code.
	  Added a polygon-interior iterator adaptor that I ported from the
	  VXL library. This is used to generate blending mask templates
	  from the active contour models.

2005-04-24 00:05  acmihal

	* vigra_impex/: imageinfo.cxx, tiff.cxx, tiff.hxx: Added some
	  rudimentary ICC profile support to the TIFF component of
	  vigra_impex.	Enblend will now copy the first ICC profile it
	  finds among the input TIFFs to the output TIFF. No color
	  management is done.

2005-04-24 00:02  acmihal

	* assemble.h, enblend.cc: An attempt to make vigra_impex a little
	  faster by template-specializing the code for the Merge and Split
	  Accessors for the special case of 4 bands per image. More work is
	  required.  Grayscale images are temporarily disabled.

2005-04-17 18:09  acmihal

	* win32helpers/win32config.h: Updated NEWS, ChangeLog, and
	  configure for the 2.3 release.

2005-04-10 00:10  acmihal

	* win32helpers/win32config.h: Added proper handling of
	  SetFilePointer return values.

2005-04-09 23:31  acmihal

	* enblend.cc, pyramid.h: Lowered maximum levels settable with -l
	  parameter from 30 to 29.  Full filter width with 30 levels will
	  overflow Diff2Ds.

2005-02-05 14:48  acmihal

	* win32helpers/win32config.h: Checking in NEWS and ChangeLog for
	  2.2 release.

2005-01-26 20:47  acmihal

	* enblend.vcproj, vigra_impex/vigra_impex.vcproj,
	  win32helpers/win32config.h: Incremented version to 2.2-pre1.
	  Replaced SetFilePointerEx calls with calls to SetFilePointer.
	  Updated msvc project files.  Removed old gnuwin32 project files.

2004-11-29 00:48  acmihal

	* anneal.h: Tweaking the simulated annealing parameters.  This
	  version is beginning to find a reasonable seam line solution.

2004-11-24 00:15  acmihal

	* Makefile.am, anneal.h, fixmath.h, mask.h: More tests with an
	  annealing-based solution to the active contour models.

2004-11-21 01:23  acmihal

	* Makefile.am, anneal.h, mask.h: Experimenting with simulated
	  annealing for solving active contours for mask generation.

2004-11-18 23:29  acmihal

	* enblend.h, mask.h: More experimentation with mask generation.

2004-11-18 01:24  acmihal

	* bounds.h, enblend.cc, enblend.h, mask.h, nearest.h: Started work
	  on an advanced mask generation algorithm.

2004-11-17 22:59  acmihal

	* vigra_impex/tiff.cxx: Added return value tests for TIFFWrite*
	  calls.  This should cause vigra to throw vigra_fail if there is a
	  TIFF error.  For example, if the -z option is selected but
	  libtiff does not support LZW.

2004-11-14 22:48  acmihal

	* Makefile.am, vigra_impex/Makefile.am, win32helpers/Makefile.am,
	  win32helpers/win32config.h: Added win32helpers and VC++ project
	  files to the distribution.  Changed windows build version number
	  to 2.1.

2004-11-14 22:46  acmihal

	* enblend.cc: Made io.h a conditional import for the windows build
	  only.

2004-11-13 16:13  jbeda

	* enblend.vcproj, vigra_impex/vigra_impex.vcproj: Removed source
	  control stuff out of windows build files

2004-11-13 15:54  jbeda

	* .cvsignore, assemble.h, enblend.cc, enblend.vcproj, nearest.h,
	  vigra_impex/.cvsignore, vigra_impex/gif.cxx,
	  vigra_impex/imageinfo.cxx, vigra_impex/tiff.cxx,
	  vigra_impex/vigra_impex.vcproj, win32helpers/getopt.c,
	  win32helpers/win32config.h: 2004-11-13 13:29 jbeda/mjz     *
	  Ported to Win32.	* include/vigra/cachedfileimage.hxx: Fixed
	  up to use native Win32 file	     access APIs for 64bit
	  addressing	  * include/vigra/stdcachedfileimage.hxx: Fixed up
	  macros so that nested        templates wouldn't cause compiler to
	  see '>>'	* include/vigra/functoraccessor.h: commented out
	  duplicate function	    definitions.  This has to be a error
	  that wasn't caught by other	     compilers	    *
	  src/enblend.cc: Introduced win32config.h.  Also bring in win32
	  right        away with the right #defines above it. Adapt to
	  proted getopt. Set	    floating point options. Do file
	  globbing explicitly on Windows	using _findfirst/_findnext.
	  * src/nearest.h: Removed use of variable sized arrays
	  allocated on the	  stack by moving it to the heap.  This is
	  a non-standard C++ feature	    that isn't supported by MSVC
	  * src/vigra_impex/gif.cxx: Fixed up types and casting to
	  explicitly	    cast to smaller types.  This silences warning
	  in MSVC.	* src/vigra_impex/imageinfo.cxx: Fixed up types.
	  * src/vigra_impex/tiff.cxx: Bring in windows.h with correct
	  options.	  Fixed up type casts. Removed use of variable
	  sized stack arrays.	   * src/win32helpers/getopt.c: Added
	  windows port of getopt.      * src/win32helpers/win32config.h:
	  Configuration options for windows.	    NOTE: this has the
	  version hardcoded in it.  When changing the	     version number
	  of the product this file should be changed also.

2004-11-06 17:36  mihal

	* Makefile.nocygwin, alpha.cc, assemble.cc, blend.cc, bounds.cc,
	  gigapixel_lowerright.cc, gigapixel_readback_bounds.cc,
	  gigapixel_upperleft.cc, io.cc, mask.cc, nearest.cc, pyramid.cc,
	  thin.cc: Cleanup for sourceforge migration.

2004-11-06 17:16  mihal

	* gigapixel_lowerright.cc, gigapixel_readback_bounds.cc,
	  gigapixel_upperleft.cc, pyramid.h: Cleaning out the repository
	  for migration to sourceforge.

2004-10-30 13:37  mihal

	* vigra_impex/tiff.cxx: Modified tiff import to use scanline
	  interface instead of strip interface.  PTStitcher does not set
	  the rows/strip tag to a reasonable value and this will cause
	  impex to run out of memory on large panoramas.

2004-10-24 17:39  mihal

	* enblend.cc, enblend.h, mask.h, pyramid.h: Made LZW not the
	  default on windows.  Turned off TIFF warnings.

2004-10-16 21:55  mihal

	* enblend.cc, vigra_impex/tiff.hxx: A couple more tweaks for the
	  windows executable.

2004-10-16 13:29  mihal

	* enblend.h, nearest.h: Fixed a memory leak.

2004-10-15 23:43  mihal

	* assemble.h, nearest.h: Now creating all CFImages on the heap to
	  avoid segfaults in the SIGINT handler.

2004-10-15 23:41  mihal

	* bounds.h, enblend.h: Fixed bug in detecting wraparound condition.

2004-10-15 23:41  mihal

	* enblend.cc: Added option for LZW compression of the output file.

2004-10-15 20:47  mihal

	* assemble.h, common.h, enblend.h: Fixing up some messages.

2004-10-15 19:14  mihal

	* enblend.cc, gigapixel_lowerright.cc,
	  gigapixel_readback_bounds.cc, gigapixel_upperleft.cc: Added
	  gigapixel test generators.

2004-10-15 13:49  mihal

	* assemble.h, enblend.h: Working on cleaning up messages.

2004-10-11 00:45  mihal

	* Makefile.am: Updates to the configuration.

2004-10-11 00:45  mihal

	* enblend.cc, pyramid.h: Minor syntax changes to enable compilation
	  with gcc 3.4.2.

2004-10-10 20:16  mihal

	* bounds.h, enblend.cc, pyramid.h: Added limit of 30 to -l
	  parameter.

2004-10-09 23:38  mihal

	* enblend.cc: Enabled all pixel types.

2004-10-09 22:46  mihal

	* bounds.h, enblend.cc, enblend.h, mask.h, pyramid.h: Reworked the
	  roiBounds code - now considers both iBB and mBB to calculate
	  roiBB.  Parameter -l now sets exact number of levels to use,
	  overriding estimate.	Cleaned up messages regarding small iBBs.
	  Cleaned up messages in pyramid code.	Images that do not overlap
	  will now only be blended if -l is given.

2004-10-09 00:11  mihal

	* common.h, enblend.cc, enblend.h, mask.h, nearest.h, pyramid.h:
	  Code cleanup and commenting.

2004-10-09 00:11  mihal

	* vigra_impex/: imageinfo.cxx, png.cxx, png.hxx, tiff.cxx,
	  tiff.hxx, viff.cxx: Documented changes to the VIGRA library
	  against VIGRA 1.2.0.

2004-10-07 22:26  mihal

	* bounds.h, common.h, fixmath.h, mask.h, nearest.h, pyramid.h: Code
	  cleanup and commenting.

2004-10-07 00:33  mihal

	* Makefile.am, enblend.cc, nearest.h: Changed
	  nearestFeatureTransform to do all columns in parallel in steps 1
	  and 2. This is more cache-friendly than iterating over each
	  column individually.

	  Added SIGINT handler and set up CachedFileImageDirector to clean
	  up temp files on exit.

	  Changed the CachedFileImage allocation scheme to use boost::pool.
	  The pool works with blocksize chunks.

	  Changed the CachedFileImage file I/O behavior to fread and fwrite
	  entire blocks at a time, instead of single image lines at a time.

2004-10-05 00:41  mihal

	* Makefile.am, assemble.h, blend.h, bounds.h, common.h, enblend.cc,
	  enblend.h, vigra_impex/Makefile.am: Code cleanup / commenting.

2004-10-03 21:45  mihal

	* Makefile.am, enblend.cc, enblend.h, mask.h, nearest.h: Added
	  preprocessor statements to turn off image caching.

2004-09-30 23:22  mihal

	* Makefile.am, common.h, enblend.h, pyramid.h: Added
	  CachedFileImage stats messages.

2004-09-29 23:47  mihal

	* assemble.h, common.h, enblend.cc, enblend.h, mask.h, nearest.h:
	  Replaced standard vigra images with CachedFileImages.

2004-09-28 22:51  mihal

	* assemble.h, blend.h, bounds.h, common.h, enblend.cc, enblend.h,
	  fixmath.h, nearest.h: Organized messages into classes for
	  different levels of verbose output.

2004-09-27 22:38  mihal

	* Makefile.am, enblend.cc, enblend.h, mask.h, nearest.h: Work on
	  memory/disk partitioning with CachedFileImageDirector.
	  Alphabetized options.  Added options for memory/disk
	  partitioning.

2004-09-22 12:58  mihal

	* enblend.h, fixmath.h, mask.h: Added option for using L*a*b* color
	  space vs. no color correction.  Added memory usage estimation.

2004-09-21 23:40  mihal

	* blend.h, enblend.cc, enblend.h, fixmath.h, pyramid.h: Added
	  option to use L*a*b* color space.  Finished reorganizing fixmath
	  code.

2004-09-21 00:41  mihal

	* fixmath.h: Refactoring the fixed point code.

2004-09-19 19:14  mihal

	* enblend.cc, enblend.h, fixmath.h, pyramid.h: Added -a and -g
	  flags.  Deprecated -s flag.

2004-09-19 19:14  mihal

	* common.h: Added enum for various overlap cases.

2004-09-19 19:13  mihal

	* bounds.h: Added inspectOverlap function to deal with overlap
	  corner cases.

2004-09-19 19:13  mihal

	* assemble.h: Improved messages for sequential mode.

2004-09-19 19:12  mihal

	* vigra_impex/tiff.cxx: Added hack for gimp and cinepaint.

2004-09-18 22:40  mihal

	* vigra_impex/Makefile.am: Removed jpeg and png options from vigra
	  build.

2004-09-18 22:39  mihal

	* Makefile.am, assemble.h, enblend.cc, enblend.h, fixmath.h,
	  mask.h, pyramid.h: More work on the vigra port.  Fixed banding
	  artifacts in 8-bit images.

2004-09-18 01:21  mihal

	* vigra_impex/tiff.cxx: Workaround for cinepaint bug with
	  unassoc-alpha.

2004-09-18 01:21  mihal

	* enblend.h, fixmath.h: Exploring banding problems.

2004-09-18 01:21  mihal

	* mask.h: Commented code to load mask from tif.

2004-09-18 01:20  mihal

	* assemble.h: Changed pixel acceptance criteria to mask max/2
	  instead of mask max.	Cinepaint scales 8-bit tiffs to 16-bit
	  tiffs without using max.

2004-09-12 23:00  mihal

	* Makefile.am, blend.h, enblend.h, fixmath.h, pyramid.h: More work
	  on the vigra port.

2004-09-11 23:12  mihal

	* Makefile.am, enblend.h, fixmath.h, mask.h, nearest.h, pyramid.h:
	  More work on the vigra port.	Implement fixed-point math for
	  pyramid calculations.  Implement support for wraparound in mask
	  generation.

2004-09-09 00:22  mihal

	* enblend.cc, enblend.h, pyramid.h: More work on the vigra port.

2004-09-08 00:16  mihal

	* assemble.h, bounds.h, enblend.cc, enblend.h, mask.h, pyramid.h:
	  More work on the vigra port.

2004-09-07 00:03  mihal

	* vigra_impex/tiff.cxx: Experimenting with gimp's handling of
	  associated and unassociated alpha.

2004-09-02 22:03  mihal

	* Makefile.am, assemble.h, bounds.h, enblend.cc, enblend.h, mask.h,
	  nearest.h, pyramid.h: More work on the vigra port.

2004-08-31 21:53  mihal

	* assemble.h, common.h, enblend.cc, enblend.h, mask.h, nearest.h:
	  More work on the vigra port.

2004-08-20 01:08  mihal

	* Makefile.am, assemble.h, common.h, enblend.cc, enblend.h, mask.h,
	  nearest.h: Continuing work on the vigra port.

2004-08-10 22:35  mihal

	* assemble.h, enblend.cc, enblend.h, mask.h: Vigra namespace
	  cleanup.

2004-08-08 22:06  mihal

	* Makefile.am, assemble.h, common.h, enblend.cc, enblend.h, mask.h:
	  More work on the vigra port.

2004-07-12 16:29  mihal

	* Makefile.am, Makefile.nocygwin, alpha.cc, assemble.cc,
	  assemble.h, common.h, enblend.cc, enblend.h: More work on porting
	  enblend to vigra.  Added a makefile for building a windows
	  executable.

2004-07-06 00:04  mihal

	* enblend.cc, enblend.h: Main now invokes a templatized blending
	  loop based on input image pixel types.

2004-07-06 00:04  mihal

	* vigra_impex/imageinfo.cxx: isColor now looks for three
	  non-extrabands.

2004-07-03 17:01  mihal

	* Makefile.am, enblend.cc, vigra_impex/Makefile.am,
	  vigra_impex/auto_file.hxx, vigra_impex/bmp.cxx,
	  vigra_impex/bmp.hxx, vigra_impex/byteorder.cxx,
	  vigra_impex/byteorder.hxx, vigra_impex/codecmanager.cxx,
	  vigra_impex/codecmanager.hxx, vigra_impex/error.hxx,
	  vigra_impex/gif.cxx, vigra_impex/gif.hxx,
	  vigra_impex/imageinfo.cxx, vigra_impex/jpeg.cxx,
	  vigra_impex/jpeg.hxx, vigra_impex/png.cxx, vigra_impex/png.hxx,
	  vigra_impex/pnm.cxx, vigra_impex/pnm.hxx, vigra_impex/sun.cxx,
	  vigra_impex/sun.hxx, vigra_impex/tiff.cxx, vigra_impex/tiff.hxx,
	  vigra_impex/viff.cxx, vigra_impex/viff.hxx,
	  vigra_impex/void_vector.cxx, vigra_impex/void_vector.hxx:
	  Imported Pablo's modified vigra library.

2004-05-18 23:14  mihal

	* assemble.cc, bounds.cc, enblend.h, io.cc, mask.cc, pyramid.cc:
	  Added custom macros to access 8-bit color fields in 32-bit pixel
	  words, taking into account the endian-ness of the architecture.

2004-04-26 19:29  mihal

	* bounds.cc: Backed out the old fix for the boundary condition
	  issue.

2004-04-26 19:28  mihal

	* enblend.cc: Changed bitsPerSample to a 16-bit int for big-endian
	  machines.

2004-04-18 00:31  mihal

	* blend.cc, bounds.cc, io.cc, pyramid.cc: Fixed another boundary
	  issue problem in the pyramid code that caused seams to appear in
	  some output images. A shortcut I used to caluclate pyramid level
	  sizes turned out to not be general enough.

2004-04-03 00:00  mihal

	* bounds.cc, enblend.h, io.cc, mask.cc, pyramid.cc: Fixed boundary
	  condition problem when expanding masks and the ROI is tight.
	  Fixed bug in copyExcludedPixels when the whiteImage extended past
	  the other side of the ROI.

2004-04-02 22:51  mihal

	* bounds.cc, enblend.cc, enblend.h: Fixed a bug in calling fseek
	  with SEEK_CUR when the goal is to move the file pointer
	  backwards. Put some parentheses around the expression I was
	  trying to negate. There is a signed/unsigned problem and the
	  compiler behavior is different on different machines.

2004-03-27 13:01  mihal

	* enblend.cc, enblend.h, io.cc: Workaround for the fact that you
	  can't unlink open files on GnuWin32.

2004-03-27 00:28  mihal

	* io.cc: Configure test for systems that don't have mkstemp.

2004-03-26 23:08  mihal

	* assemble.cc, enblend.cc: Changed the behavior of the -s flag to
	  sequentially blend images in the order given on the command line,
	  regardless of overlap.

2004-03-26 23:07  mihal

	* bounds.cc: Free some memory earlier.

2004-03-26 23:07  mihal

	* io.cc: Moved temporary files to the current directory, because it
	  may use multiple gigabytes in /tmp and not everyone has that much
	  space.

2004-03-26 18:05  mihal

	* enblend.cc: Added a catch for non-8-bit TIFFs - print a useful
	  message instead of just crashing.

2004-03-26 17:50  mihal

	* enblend.cc, mask.cc, pyramid.cc: Fixed wraparound boundary
	  condition in expand.	Enabled wraparound option in main.

2004-03-26 16:48  mihal

	* assemble.cc, bounds.cc, enblend.cc, mask.cc, nearest.cc,
	  pyramid.cc: Fixed corner cases where: Black image is entirely
	  inside white image.  Transition line is horizontal or vertical.
	  Input images have semitransparent pixels.  Distance calculation
	  overflow in nearest feature transform.

2004-03-25 22:29  mihal

	* assemble.cc, blend.cc, bounds.cc, enblend.cc, enblend.h, io.cc,
	  mask.cc, nearest.cc, pyramid.cc: Cleaned up the code and made the
	  output messages easier to read.  Fixed a bug in
	  copyExcludedPixels when the ROI does not encompass the entire
	  image intersection region.

2004-03-25 02:13  mihal

	* Makefile.am, assemble.cc, blend.cc, bounds.cc, enblend.cc,
	  enblend.h, io.cc, mask.cc, nearest.cc, pyramid.cc: Most data
	  structures are now swapped to temporary files.

2004-03-23 00:40  mihal

	* assemble.cc, bounds.cc, enblend.cc, enblend.h: Added -s option to
	  blend images sequentially.

2004-03-22 22:07  mihal

	* bounds.cc, enblend.cc: Added command-line option to limit the
	  number of pyramid levels used.

2004-03-22 21:45  mihal

	* assemble.cc, enblend.cc, mask.cc, nearest.cc, pyramid.cc,
	  thin.cc: Added associated alpha tag to output image.	Change
	  malloc failed error messages to say out of memory instead.

2004-03-21 18:54  mihal

	* Makefile.am, blend.cc, bounds.cc, enblend.cc, enblend.h, mask.cc,
	  nearest.cc, pyramid.cc, thin.cc: Added pyramid ROI estimation
	  based on filter half width.

2004-03-19 19:11  mihal

	* Makefile.am: Updated configure.in to work with a modern version
	  of autoconf.

2004-03-15 00:18  mihal

	* enblend.cc, mask.cc, nearest.cc: Code cleanup.

2004-03-14 17:54  mihal

	* Makefile.am, enblend.cc, enblend.h, mask.cc, nearest.cc: Added
	  code for nearest feature transform - replaces thinning.

2004-03-12 00:42  mihal

	* enblend.cc, enblend.h, pyramid.cc: Added code to dump pyramids to
	  files.

2004-03-08 00:53  mihal

	* enblend.cc: Moved memory deallocation around.  This patch is from
	  Max Lyons.

2004-03-04 16:04  mihal

	* blend.cc, enblend.cc, pyramid.cc: Added documentation and
	  demonstration tiffs.

2004-03-04 02:03  mihal

	* Makefile.am, assemble.cc, blend.cc, enblend.cc, enblend.h,
	  mask.cc, pyramid.cc, thin.cc: Implemented pre-assembly of
	  multiple tiffs.  General code cleanup.

2004-03-03 00:48  mihal

	* blend.cc, enblend.cc, enblend.h, mask.cc, pyramid.cc, thin.cc:
	  Implemented alpha masking in collapsePyramid.  Implemented
	  extrapolation of transparent pixels in reduce and expand.

2004-03-02 00:57  mihal

	* .cvsignore, Makefile.am, blend.cc, enblend.cc, mask.cc,
	  pyramid.cc: Bugfixes for reduce and expand.  Fixed alpha channel
	  in mask.

2004-03-01 17:23  mihal

	* blend.cc, enblend.cc, enblend.h, pyramid.cc: Changed pyramids to
	  use 16-bit ints to store data since there may be negative values
	  in laplacian pyramid levels.

2004-03-01 00:32  mihal

	* Makefile.am, blend.cc, enblend.cc, enblend.h, mask.cc,
	  pyramid.cc, thin.cc: Added code for thinning, pyramid utilities,
	  and blending.  Debugging necessary.

2004-02-28 01:53  mihal

	* Makefile.am, enblend.cc, enblend.h, mask.cc: Added option
	  parsing. Opens and checks the sizes of the input images.  Creates
	  the output image and sets tiff header fields.  Roughed out
	  blending loop.  Started on mask creation function.

2004-02-27 00:37  mihal

	* .cvsignore, Makefile.am, enblend.cc: libtiff experimentation -
	  calculate xnor mask of two input images.

