File: NEWS

package info (click to toggle)
enblend-enfuse 4.2-4
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 3,652 kB
  • sloc: cpp: 24,274; sh: 4,319; perl: 1,124; makefile: 545; ansic: 505; lisp: 276
file content (842 lines) | stat: -rw-r--r-- 27,939 bytes parent folder | download | duplicates (4)
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
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
* Version 4.2

Released March 29, 2016.

** Improvements

- 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.


** New Commandline Options

- The introduction of additional blend color spaces requires a new
  option to select them.  The new option `--blend-colorspace' takes
  over the functionality of `--ciecam' and `--no-ciecam' (which both
  will be withdrawn in a future version) and is flexible enough for
  the new CIELAB and CIELUV blend color spaces.

      --ciecam     =>  --blend-colorspace=CIECAM
      --no-ciecam  =>  --blend-colorspace=RGBCUBE
      new:             --blend-colorspace=CIELAB
      new:             --blend-colorspace=CIELUV

- Calling Enblend or Enfuse with `--show-software-components' will
  show the compiler name and version along will the versions of all
  important libraries against which the binaries were compiled.

- The new options `--show-globbing-algorithms',
  `--show-image-formats', and `--show-signature' now display the
  information that previously was requested with `--version
  --verbose'.  The output of `--help' has been regrouped to account
  for the new diversity of information options.

- Option `--exposure-weight-function' makes Enfuse's exposure weight
  function user selectable.  Previously weight function "gauss" was
  the only one (and hard-coded).

  Some examples of user-defined weight functions and a rudimentary
  GNUmakefile to build them get installed in
          DOCDIR/examples/enfuse.

- The old Enfuse options `--exposure-mu' and `--exposure-sigma' got
  siblings called `--exposure-optimum' and `--exposure-width'
  respectively.  With exposure weight functions other than Gauss the
  restricted naming does not make sense anymore.

  Options `--exposure-mu' and `--exposure-sigma' are scheduled for
  withdrawal in a later version of Enfuse.

- Long-time option `-a' got a long-form sibling called
  `--pre-assemble'.  The long form can be negated as
  `--no-pre-assemble', which is the default.


** Idle Commandline Options

- The Stable Branch of Enblend/Enfuse does not support any
  acceleration with GPUs as the current Development Branch does.  For
  commandline compatibility and easy script migration the options
  `--gpu', `--prefer-gpu', and `--show-gpu-info' are accepted, but do
  not have any functionality behind them.


** Developer Stuff

- During configuration the name of Vigra's import-export library can
  be set with the environment variable VIGRAIMPEX_LIB.  This is to
  splice in a library compiled with e.g. instrumentation or
  sanitizers.  If the variable is undefined or empty the default is
  `-lvigraimpex', which lets most linkers prefer the dynamic library
  in the standard location if there is any choice.

- The Automake system can be configured to print only terse messages
  (configure option `--enable-silent-rules'), or when working at
  command line level, pass `V=0' to make(1).

- A C++11-compatible compiler is required to compile Enblend and
  Enfuse.

- Support of the Boost filesystem library has been dropped.  There is
  no Boost library dependence anymore.

- Empty `--parameter' options default to "1".  This behavior in
  conjunction with boolean parameter expansion taking "0" and "1" as
  aliases for "false" and "true" allows to shorten setting boolean
  parameters.

- The new configuration option "--enable-on-demand-dynlink" controls
  lazy loading of all shared libraries.


** Package Maintainer Stuff

- Boost version 1.55 or later is now required to build.

- Vigra version 1.9 or later is now required to build.

- Little CMS version 2.5 or later is now required to build.

- Support for OpenGL acceleration has been dropped.  So, the
  dependencies on the libraries GL, GLU, and Glut do not exist any
  longer.

- Support for images with 8-bit signed channels has been dropped.

- The documentation no longer uses Texinfo, but LaTeX for PostScript
  generation and Hevea for HTML.

- fig2dev(1) of the XFig suite is no longer needed to build the
  documentation.  All relevant images were converted to dot(1) or SVG
  format.


* 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.)


* Version 4.0

Released on December 13, 2009.

** Improvements

- 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.

  For example: given 16-bit TIFF input images and a JPEG output image
  Enblend and Enfuse automatically convert from 16-bit to 8-bit before
  writing the JPEG file.

- 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

- Fix the calculation of the number of blending levels.  Previously,
  it was off by one in most cases.

- A longstanding bug (SourceForge ID 2160427) in the primary seam line
  generation that caused a sub-optimal seam line was fixed.  As a side
  effect the new seam line algorithm is at least 20% faster than the
  old one.

- Another longstanding bug (SourceForge ID 1891785) that caused wrong
  output for images with holes was also fixed.

- Fix a well hidden but serious bug in the seam line optimization.
  Both, the GPU and non-GPU versions of the optimizer were affected.

- Make Enblend and Enfuse aware of the input images' resolution.  Use
  the input resolution in the output file.

  With this change masks get the correct offsets.  This fixes the bug
  that masks do not end up at the correct position with respect to the
  input files.

- Fix MacOS problem of parsing floating-point parameters at the
  command line.


** New Commandline Options

- All Enfuse options have been converted to Enblend's option naming
  scheme.  This is, camel-casing has been replaced by lowercase plus
  dashes.  The new option name are more systematically constructed,
  too.  The old options will completely dissapear in the next release,
  4.1.

               Old Option                New Option
          ====================    ========================
          --ContrastWindowSize    --contrast-window-size
          --EdgeScale             --contrast-edge-scale
          --EntropyCutoff         --entropy-cutoff
          --EntropyWindowSize     --entropy-window-size
          --GrayProjector         --gray-projector
          --HardMask              --hard-mask
          --MinCurvature          --contrast-min-curvature
          --SaveMasks             --save-masks
          --SoftMask              --soft-mask
          --wContrast             --contrast-weight
          --wEntropy              --entropy-weight
          --wExposure             --exposure-weight
          --wExposureMu           --exposure-mu
          --wExposureSigma        --exposure-sigma
          --wSaturation           --saturation-weight

- New option to control the output bit depth ("--depth").

- Mask filenames can be specified with templates.

  * Enblend ("--save-masks", "--load-masks", "--visualize"): Save and
    load all masks of a project in a single run.  Same for seam line
    visualization files.

  * Enfuse ("--save-masks"): Save soft and hard masks according to
    path given in template.

- New option to control the mask vectorization, which is done before
  any mask optimizations ("--mask-vectorize").

- New option to control the Simulated Annealing optimizer called
  strategy 1 ("--anneal").

- New option to control the relative weights of the distance to the
  initial seam line and the total mismatch ("--optimizer-weights").

- New option to control the Dijkstra path minimizer called strategy 2
  ("--dijkstra").

- Option "--coarse-mask" takes an optional (linear) reduction factor.
  The default remains at 8.

- New option "--smooth-difference" to blur difference images prior to
  seam-line optimization.

- Long option "--levels" to control the number of levels; duplicates
  functionality of short option "-l".


** Removed Commandline Options

- After having been deprecated for a long time, Enfuse's option
  "--debug", which saved the masks used in fusing, was removed.
  Option "--save-masks" now provides a superset of the previous
  functionality.

- After having been deprecated for a long time, Enblend's and Enfuse's
  option "-z", which compressed TIFF-output files with the LZW
  algorithm, was removed.  Option "--compression" now provides a
  superset of the previous functionality and "--compression=LZW" is a
  substitute for "-z".


** Developer Stuff

- VPATH builds work.  This makes it easy to compile for differently
  configured versions, like for example with and without image cache.

- The target "make distcheck" works again.

- Introduce additional Make variables to control the Make process
  after the project was configured.  See "README" file.

- Debugging of dynamic memory allocation has been eased by the
  integration of the DMalloc package; "configure --with-dmalloc"

- Use only m4 files that clearly have a GPL license.  This fixes
  SourceForge feature request ID 2152850.

- Remove all files that are meant to be generated auto Autoconf.  This
  fixes SourceForge bug ID 2036031.

- Install m4 file to detect the M$ compiler.  This fixes SourceForge
  bug ID 2036034.

- Make "configure" report that extra features will get compiled and if
  they cannot tell the developer why not.

- Pull version of program and documentation into file "VERSION".  Both
  program and documentation automatically use this information on
  every build.

- The MSVC project files were removed.  They can be regenerated by the
  (still experimental) CMake environment.

- README hosts build instructions for GNU Autoconf/Automake based
  systems, for MacOSX, and for Win.


** What is known not to work?

- Documentation generation is not as reliable and smooth as it ought
  to be.  The culprit is Automake; see PR/486.



* Version 3.2

Released on September 8, 2008.

** Improvements

- Official release of Enfuse for automatic multi-level exposure
  blending and focus stack creation.

- Support for PNG and OpenEXR input files.

- Support for writing JPEG output files (8 bit only).


** Bug Fixes

- Bugfix to correctly interpret the alpha channel of float (HDR)
  images.


** New Commandline Options

- New --compression option for selecting the compression type of the
  output image.


** Developer Stuff

- This release includes a Windows binary that does not require a
  SSE2-capable processor.

- There will not be a 3.1 release in order to avoid confusion with
  numerous cvs builds that self-identify as version 3.1.



* Version 3.0

Released on January 27, 2007.

** Improvements

- New, faster image processing algorithms for computing Gaussian and
  Laplacian pyramids.


** New Commandline Options

- Optional optimization of seam line placement to try to avoid
  mismatches and parallax errors in the image overlap region.

- Masks can now be saved and loaded from files.  This makes it
  possible to manually edit the location of the seam before
  multiresolution spline blending is applied.

- Checkpointing of partial results is now optional.  This improves
  speed.

- Optional blending using the CIECAM02 color appearance model.  Your
  TIFF files should have embedded ICC profiles in order to use this
  option.  This replaces the CIE L*a*b* color blending in Enblend 2.X
  that never worked properly.

- Optional use of the graphics processor to speed up certain
  computations.  This feature is experimental and may not work on all
  systems.


** Developer Stuff

- Like other X.0 releases, please consider this a beta.



* Version 2.5

Released on December 11, 2005.

** Bug Fixes

- Fixed a bug where Enblend would crash when the -w parameter was
  used.

- Fixed a bug where Enblend would sometimes say "mask transition line
  bounding box undefined."



* Version 2.4

Released on December 3, 2005.

** Improvements

- Enblend will now create output files with embedded ICC profiles.
  The first ICC profile found amongst the input images will be copied
  to the output image.  Enblend does not use ICC profiles to do color
  calculations.

- Incorporated a patch from Fulvio Senore to make the mask generation
  faster.  Fulvio wrote a more efficient data structure for use in the
  nearest feature transform.


** New Commandline Options

- Added support for working with cropped and shifted input images.
  These types of files are created by Nona's "Multiple TIFF" stitching
  option.  A cropped and shifted TIFF saves space and time because it
  is just large enough for a single input image, instead of being the
  size of the entire output panorama with lots of empty space all
  around.  Nona embeds an (x, y) offset coordinate in the file so that
  Enblend can tell where this file belongs in the final panorama.

  By default, if you give Enblend cropped and shifted TIFFs, the
  output will also be a cropped and shifted TIFF.  Sometimes you may
  want to include the extra blank space anyway, for example if you are
  creating a 360-degree panorama and the image size must be exactly a
  2:1 ratio.  In this case, use the new -f parameter to manually set
  the size of the output image:

  -f WIDTHxHEIGHT

  Thanks to Pablo d'Angelo for providing this patch.



* Version 2.3

Released on April 17, 2005.

** Bug Fixes

- Fixed a bug in temporary file handling in the Windows version of
  enblend.  This should solve the "unable to open temporary file"
  error.

- Reduced the maximum number of levels you can specify with the -l
  parameter from 30 to 29.  While both of these are impractically
  large, at least 29 does not lead to arithmetic overflow and a
  subsequent crash.

- Fixed a bug in temporary file handling in the Windows version of
  enblend.  This should solve the "unable to open temporary file"
  error.



* Version 2.2

Released on February 5, 2004.

** Improvements

- The Windows binary of Enblend is now build with a version of libtiff
  that includes support for all of the TIFF compression standards,
  such as Deflate, LZW, JPEG, and Packbits.  Nona/Hugin produces TIFF
  files with the Deflate option.

- Replaced some system calls that are specific to Windows 2000 and XP
  with more generic functions.  This should get the Windows binary of
  Enblend to run on pre-Win2K machines.


** Bug Fixes

- This release fixes issues with the Windows version of Enblend.  If
  you are using Enblend on UN*X you do not need to upgrade.



* Version 2.1

Released on November 15, 2004.

** Improvements

- Compression is no longer the default option in the Windows
  executable.


** Bug Fixes

- Turned off TIFF library warning messages that required user
  interaction on Windows.

- Fixed a bug in Vigra that caused primary color spots to appear in
  overexposed areas of 16-bit images.

- Fixed a problem with Enblend crashing on large panoramas.  Modified
  tiff import to use a scanline-based interface instead of a strip-
  based interface.  PTStitcher generates TIFFs with the rows/strip tag
  set to an unreasonable value.


** Developer Stuff

- Ported the source to compile natively on Win32 using MSVC.



* Version 2.0

Released on October 17, 2004.

** Improvements

- Support for signed and unsigned 16-bit, 32-bit, single- and double-
  precision floating point pixel types.

- Sophisticated memory/disk balancing.  You can tell Enblend how much
  memory it is allowed to use, and it will swap to disk after that.

- Support for huge panoramas.  I have tested that Enblend can blend a
  1.2 gigapixel, 16-bit per channel color image.  You should be able
  to go right up to the 4 gigabyte limit of the TIFF format.


** Bug Fixes

- Fixed the banding artifacts that often appeared in skies.


** New Commandline Options

- Optional blending in CIE L*a*b* color space.

- Option to use LZW compression for the output image, if your libtiff
  supports it.  This option is selected by default in the prebuilt
  Windows executable.

- The -s option for sequential blending is now the default.  Enblend
  cannot accurately determine how many blending levels to use when
  there are multiple disjoint overlap regions in one blending
  iteration.  It is better to manually tell Enblend the order in which
  the images should be blended. If you still want Enblend to assemble
  non-overlapping images first, use the -a flag.

- The -l option now tells Enblend the exact number of blending levels
  that you want to use.  The geometry of your images may force Enblend
  to use a smaller number of levels.  In this case a message will be
  printed.

- Gimp (ver. < 2) and Cinepaint exhibit unusual behaviors when loading
  images with unassociated alpha channels.  Use the -g flag to work
  around this.  With this flag Enblend will create the output image
  with the associated alpha tag set, even though the image is really
  unassociated alpha.


** Developer Stuff

- Ported Enblend to the VIGRA Computer Vision Library.




* Version 1.3

Released May 18, 2004.

** Bug Fixes

- Added a configure test for the endian-ness of the machine.  I
  changed the way enblend reads and writes 8-bit color fields in
  32-bit pixel words to reflect the endian-ness of the machine.  This
  should get enblend working on powerpc machines.

This release adds no new features.



* Version 1.2

Released April 26, 2004.

** Bug Fixes

- Fixed a bug where 8-bit TIFFs would not be identified properly on
  big-endian machines.

- A second (better) fix for the boundary condition problem that lead
  to horizontal or vertical seams to appear in the output.



* Version 1.1

Released April 3, 2004.

** Bug Fixes

- Fixed a bug in reading from temporary files that appeared on
  machines with different versions of GCC.

- Fixed a boundary condition problem that lead to horizontal or
  vertical seams to appear in the output.

- Fixed a bug where segments of an input image would appear on the far
  side of a blending zone.  This would cause strange wedge-shaped
  artifacts in some output images.



* Version 1.0

Released March 27, 2004.

** New Commandline Options

- Added options to limit the number of blending levels used.  This can
  reduce memory usage and improve speed, at a loss of quality.

- Added an option to blend around the -180/+180 degree boundary.
  There is still an open issue as to how to handle the zenith and
  nadir.

- Added an option to blend the input images sequentially in the order
  given on the command line.  Sometimes the assembler can make poor
  choices and seams will still be visible in the output.

** Developer Stuff

- Replaced erosive thinning algorithm for mask creation with a much
  faster nearest feature transform.

- Reduced memory requirements.  Enblend now swaps most of its data to
  disk as temporary files.  Enblend also calculates the region of
  pixels that are involved in each blending step and only does math on
  those pixels, improving speed and memory usage.



* Version 0.9

Released on March 4, 2004.




Local Variables:
mode: outline
End: