			PTAssembler Readme



	*****Introduction*****


PTAssembler is an easy to use, but extremely powerful image stitching/panorama
creation program for Microsoft Windows.  It can be used to assemble single
row "panoramic" images, or multi-row "mosaic" images.  Images with unlimited
size can be created.

For the latest version and help on PTAssembler, check:

      http://www.tawbaware.com/ptasmblr.htm.



	*****Installation Instructions*****

After downloading and unzipping PTAssembler's "zip" file, use the setup.exe
program to install PTAssembler.

IMPORTANT: PTAssembler was written using Visual Basic 6 and requires some
"helper" (a.k.a. "Runtime") files in order to work properly.  These helper files
are freely available, and your system probably already has them.  However, If you
cannot launch PTAssembler without an error, download them from the link on
PTAssembler's page (http://www.tawbaware.com/vb6tawba.htm).



	*****Version Changes*****

version 6.3.0 (July 2017)

      Feature: Masks "snap to" edge of images.
      Feature: Added ability to copy all masks in one image to all other images.
      Feature: Added ability to save/load masks.
      Feature: Added filesize information to Step 1 screen and tooltip on Step 3.
      Feature: Added option to remove image from project from popup menu on
         Step 3 screen by right-clicking on tab-strip above image viewers.
      Feature: Added several new options to configure how photometric optimization
         works.
      Feature: Added "Load from EXIF" button to photometric optimization screen.
      Feature: Added EXIF shutter speed, aperture and ISO display to Step 1 screen.
      Feature: Added ability to extract/parse GPS data from EXIF fields.
      Feature: Added ability to specify GPS/EXIF/UTC offsets in an external file
         for individual cameras over defined time windows.  See the new 
         "GPS and Location Features" section in PTAssembler's help file for details.
      Feature: Added ability to read GPS lat/lon/elevtation from EXIF data.
      Feature: Added ability to "fast parse" GPX files (speeds up parsing of GPX
         files where trackpoints are in chronological order).
      Feature: Added ability to use tokens ({project_dir}, {image_dir}, {app_dir}
         when specifying directories to search for GPS data files.
      Feature: Added ability to specify EXIF/UTC and Local/UTC offsets for different
         cameras and/or different time periods in an external file
         (gps_exif_utc_offsets.txt).  See help file for more information.
      Feature: Improved default name for photometric preset generation (to avoid
         overwriting existing presets)
      Feature: Improved algorithm for detecting best photometric preset for current
         project; added color coding to show match quality.
      Feature: Added ability to interpolate yaw, pitch and/or roll for specific
         images.


      Change: Rearranged optimizer configuration screen to incorporate photometric
         option parameters.  Added menu item (File -> Configure Optimizer).
      Change: Improved photometric optimization algorithm.  Results should be
         better for majority of projects.
      Change: Reorganized EXIF parsing logic handling; changed default setting so
         that if a file doesn't contain EXIF data, try to locate and extract EXIF
         data from associated RAW file
      Change: Changed URLs listed to show a map of image location from GPS data

      Bug Fix: Corrected photometric algorithm that could lead to a single image
         showing incorrect exposure.
      Bug Fix: Corrected handing of masks when doing photometric optimization.
      Bug Fix: Photometric preset can be loaded by double-clicking list entry.
      Bug Fix: Corrected loading of output file format when loading project.


version 6.2.0 (August 2013)

      Feature: Added support for Multiblend (alternative blending plugin program
         written by David Horman).

      Feature: Added option to copy mask region from one image to all others.
         (Right-click on image viewer on Step 3 screen).

      Feature: Added ability to configure the number of data points that
          the photometric optimizer uses.  (Fewer points make optimization process
          more quickly, but results may be less accurate).

      Feature: Added ability to run PTAPicker in "single-row" mode, for faster
          creation of control points in single-row panoramic images. (hold
          Ctrl key down while clicking the "Auto-Create" or "Generate
          controlpoints" buttons).

      Change: Photometric optimizer ignores over/underexposed regions of image
          when calculating photometric (i.e. exposure/vignetting) adjustments.
          this should improve the quality of the results calculated by optimizer.

      Change: Photometric optimizer "balances" exposure adjustments when exposure
          is optimized and the reference image is auto-selected.  This ensures that
          exposure adjustments across all images average to zero (to minimize
          the amount by which any individual image's exposure is adjusted).

      Bug Fix: Fixed bug in photometric optimizer to make it select more evenly
          distributed points.

version 6.1.0 (May 2013)

      Feature: Added PTAPicker as a new control point picker program.  PTAPicker
         is written by Tawbaware and is a fast, patent-free, control point
         detection program.

      Feature: Added ability to detect control points in a user-specified regions
         of an image.  Right-click and drag mouse (while pressing shift key) in
         viewer windows on Step 3 screen to define regions.  PTAPicker
         will search for control points when regions are defined in both viewers.
         See help for more details on this feature.

      Feature: Added support for CPFind as a control point picker program.

      Feature: Added ability to save and load photometric settings.  This allows
         the user to apply photometric settings from one project to another.

      Change: Removed support for Autopano-SIFT and Autopano-SIFT-C as control
         point picker programs.  If you wre using one of these programs
         with an earlier version of PTAssembler, you will have to choose
         an alternate.  PTAPicker is the suggested program.


Version 6.0.2 (August 2012)

      Bug Fix: Fixed bug that could cause PTAStitcher to crash on 64 bit systems
         when generating images with wide field of view.


Version 6.0.1 (August 2012)

      Bug Fix: Removed dependency on MSVC100R.DLL. This cause preview viewer to fail
         on systems that lacked this file.


Version 6.0.0 (August 2012)

      Note: PTAssembler 6.0 is  major upgrade from PTAssembler 5.0. It adds
         several major new features including photometric adjustment, masks,
         camera position paremeters and 64 bit processing.  More details are
         listed here in and in the PTAssembler documentation.


      Feature: Added "Photometric Adjusmtne" to allow for correction of
         exposure, whitebalance and vignetting in input images.  Adjustments
         can be specified manually, or automatically determined from images
         in project.  Use the "View->Show exposure/whitebalance/vignette adjustments"
         menu item to show photometric adjusmtne adjustment screen.  This can also
         be invoked from the preview viewer screen.

      Feature: 64-bit processing.  Image stitching (PTAStitcher), optimization
         (PTAStitcher) and exposure/focus blending (TuFuse) are performed
         using 64 bit processing (on 64 bit operating systems).  32 bit processing
         is retained for older/32 bit operating systems.

      Feature: Added "Camera Position Parameters" to allow creation of panoramas
         using images taken from different locations (i.e. images not taken by
         rotating camera around entrance pupil/nodal point).  For more details,
         consult PTAssembler documentation or see:
            http://www.tawbaware.com/ptasmblr_help_camera_position.htm

      Feature: Added ability to create "masks" on images (Step 3 screen).  Regions
         of the image(s) that are "masked" are excluded from processing by the
         stitcher.  This feature can be used to explicitly exclude features (such
         as moving people) from the final result.  See help for more details.

      Feature: Added ability to preform "layer blending".  Images within stacks are
         assigned a layer ID (Step 1), and PTAssembler can be configured to
         blend images that share the same layer ID prior to stacking.

      Feature: Added support for "EXIF oriented" images.  These are images that
         include an EXIF tag to indicate that the software that loads the image
         should rotate the image prior to displaying it.  If PTAssembler detects
         an EXIF orientation tag, it assigns the image the appropriate amount of
         rotation for the roll parameter, and displays the image in the correct
         orientation on screen.

      Feature: Added new menu option to create a "layout image" showing thumbnail
         versions of all the images in the project arranged in a grid.  Menu item
         is part of the "Tools" menu in PTAssembler. PTAssembler places the images
         at the appropriate locations in the grid based on the yaw, pitch and roll
         values for the images in the project.

      Feature: Added support for Panomatic as a control point picker plugin.
         Empirical testing suggests that Panomatic works well with very large
         numbers of images, assuming enough memory is available.  2GB RAM seems
         sufficient for projects with 150+ images sized at 15 megapixels each, on
         a 2-core machine.  Depending on image size and the amount of memory installed,
         more than 2 cores may be useful.  By default, PTAssembler limits Panomatic
         to using only 2 threads/cores to avoid memory problems.  Panomatic seems
         to run quickly for small/medium sized projects and generates very well
         distributed control points.
         See: http://aorlinsk2.free.fr/panomatic/?p=home to download Panomatic.

      Feature: Added support for Autopano-SIFT-C as a control point picker plugin.  Based
         on Autopano-SIFT, Autopano-SIFT-C is a single command line program that runs
         more quickly than the original Autopano-SIFT.
         See: http://tksharpless.net/ to download Autopano-SIFT-C.

      Feature: Numerous GUI speed enhancements. Redesigned several time intensive
         operations such as reading/writing project and script files, displaying
         control point information, thinning images, etc.  PTAssembler should
         feel more responsive and operate more quickly...particularly noticeable
         for projects containing large numbers of images and/or control points.

      Feature: Added option (on the processing options screen) to remove
         input and/or intermediate files when creating blended TIFF output.  Input
         (i.e. original) files are awlays sent to recycle bin if removed.  Intermediate
         files can be sent to recycle bin or permanently deleted if removed (configured
         via new option on behavior tab of preferences screen).

      Feature: Added ability to delete multiple control points from preview screen
         by holding ctrl key down, right-clicking and dragging mouse to draw a rectangular
         region around points to be deleted.

      Feature: Made the "control points" and "Yaw/Pitch" display options on the
         preview viewer sticky...i.e. last settings are remembered between sessions.

      Feature: Added new syntax when invoking PTAssembler from the command line.
         Using the "-" token in a file list will cause PTAssembler to "expand"
         the list of files using neighboring filenames, and assuming files are
         named using sequential numbering.  For example these two
         commands are equivalent:

            ptasmblr /autocreate img_0200.tif img_0201.tif img_0202.tif img_0203.tif
            ptasmblr /autocreate img_0200.tif - img_0203.tif

      Feature: Added new command line options:
            /nodisplay  Causes PTAssembler not to display (preview or final)
                        image after autocreating or stitching a project
            /overwrite  Causes PTAssembler to overwrite an existing project
                        file during autocreate (default bahavior is to save
                        project using a new/unique filename).


      Feature: EXIF Summary display line on Step 1 screen indicates whether
          multiplier was found in lookup file or calculated from EXIF data
          using "L" (lookup) or "E" (EXIF) symbols.

      Feature: PTAutomate included in PTAssembler distribution.
         See: http://www.tawbaware.com/ptasmblr_help_ptauto.htm or
         PTAutomate Help shortcut in start menu.

      Feature: PTAssembler installer creates registry file associations
         for .ptp (PTAssembler project file) and .pta (PTAutomate file)
         files.

      Feature: Added new context menu item (available via popup menu on
         Step 1 screen) to "Link parameters to another image...".  This
         will link all parameters (yaw, pitch, roll, , b, c, d, e, g, t)
         for the highlighted image on Step 1 to another (used selected) image.

      Feature: If files are missing from project, the file number is colored
         in red on the step 1 screen.  Added information text in display
         beneath listview if file is missing or EXIF data cannot be found.

      Feature: Added "Stack ID" column to control point information screen.

      Feature: Added more information about number of images to process
         to the Processing Options screen.

      Feature: Cropping of output images (Processing Options screen) is
         now allowed on multiple images, when using "Multiple Image TIFF"
         output.

      Feature: Improved performance of TuFuse by rewriting part of core logic
         to utilize multiple cores, if detected.  Speed improvements will
         vary depending on image count, image size, number of cores,
         processor speed, hard-drive speed, etc.  Tests using 15 megapixel
         images on a 2 core Pentium-D processor show approximately 15% speed
         improvement.  The main factor in TuFuse processing speed is primarily
         hard-drive read/write speeds.

      Feature: Added +/- buttons next to Field of View input boxes on preview
         viewer screen.  Clicking these buttons adjusts the FOV and displays
         guidelines on the preview viewer indicating the new FOV for the image.

      Feature: Added optimizer scale factors.  These factors adjust the internal
         scaling of values used by the optimizer and the default factors should
         help the optimizer to converge upon a good solution more often, and
         more quickly.  The factors can be adjusted on the Optimizer Configuration
         screen.

      Feature: Added two new interpolation algorithms to PTAStitcher:
         Sinc256 and Sinc1024.  Very high quality, but quite slow and typically
         not worth the extra time involved.

      Feature: Improved logic used by PTAStitcher when attempting to determine
         optimal number of simultaneous threads to use while processing.

      Bug Fix: Corrected problem that could produce incorrect statistics
         about control point information on Step 1 screen.

      Bug Fix: Fixed Autocreate so that it requests the number of control
         points specified by user on Autocreate tab.  (Note the number of control
         points cannot be accurately specified for all three supported control
         point picker programs, so PTAssembler tries to request the specified
         number as best as possible, depending on which control point picker
         program is used).

      Bug Fix: Corrected problem displaying incorrectly positioned image on
         preview screen after deleting a control point.

      Bug Fix: Corrected operation of option to "Auto-detect stacking groups,
         and perform stacking" during Autocreate.  This was not working
         correctly.  Autocreate also performs "thin by stack ID" operation
         when stacking groups are identified.

      Bug Fix: Corrected behavior when invoked from command line using "/stitch"
         option.

      Bug Fix: Prevented PTAssembler from creating zero byte size files, if files
         are missing from project.


      Bug Fix: Solved problem computing distortion mapping for coordinates at center
         of image.

      Bug Fix: Solved problem that could cause the "Auto Size Parameters" feature to
         calculate an incorrect size when processing images with odd-sized
         dimensions.

      Change: The way in which PTAssembler determines the focal length multiplier
         has changed.  Previously, PTAssembler would attempt to calculate the
         multiplier from EXIF data.  If this was not possible, then PTAssembler
         would consult the "multiplier file" (pta_multiplier.txt) to try and
         find the appropriate value based on the camera model name.  The order
         has now been reversed so that the multipler file is consulted first,
         and the EXIF data is only used if a value is not found in the multipler
         file.  This change was made because many popular cameras report incorrect
         EXIF data which caused PTAssembler to calculate incorrect values for
         the multiplier.  PTAssembler reports whether the lookup file was used
         or if the value was calculated from EXIF data with a "L" (for lookup)
         or "E" (for EXIF) character next to the multiplier value on the EXIF
         summary display on the Step 1 screen.

      Change: Updated Control Point Picker configuration screen and changed
         default options for some control point picker programs.  Note that
         when running control point picker program manually (i.e. not via autocreate),
         you can specify the number of points to create by modifying the command
         line options for the appropriate program.  Consult the documentation
         for the control point picker program to learn how to specify the number
         of points to request.

      Change: Removed option (behavior tab of preferences screen) not to show
         control point info on step 1 screen.

      Change: Removed option (autocreate tab of preferences screen) to specify
         maximum control point placement error.  Wasn't implemented correctly,
         and this can be specified by modifying the command line options for the
         appropriate control point picker program (see documentation for
         control point picker program).

      Change: After adding a new straight line control point (e.g. type t3, t4, etc.)
         on step 3 screen, the line type selector box is set to the type of the
         most recently added line type.

      Change: On preview viewer screen, when control points are displayed, holding
         the alt key down will cause PTAssembler to show only those control points
         that are not part of a stacking group (previous version of PTAssembler used
         the ctrl key for this function).

      Change: Project file is saved during Autocreate even if control points can't be
         found for all images.

      Change: Numerous internal changes to the way in which the project execution script
         is created.

      Change: Changed the way in which PTAStitcher handles images with alpha/transparency
         channels.  When interpolating (i.e. remapping images), only those pixels that are
         completely unmasked (i.e. fully saturated alpha channel) are used during
         interpolation.  As a result, in resulting output image, no pixels should be
         partially transparent. All output pixels should be either fully masked
         (alpha channel equals zero) or fully unmasked (alpha channel equals 255 or 65535
         for 8 or 16 bit images).

      Change: PTAssembler auxiliary programs are now compiled using Microsoft Visual C++
         rather than GCC.  Numerous program syntax changes had to be made to allow
         programs to compile correctly using MSVC.  These changes should not impact the
         operation of any programs.

      Change: Modified default value for rows per strip in each TIFF file output
         by PTAssembler to improve compression.

      Change: Changed auto-create routine to assign project stacking option
         prior to prompt for output creation.

      Change: Improved logic to detect focal length multiplier by looking for additional
         EXIF tags.

      Change: Made Panomatic the defalt control picker program.  Autopano 1.03 appears
         not to work on 64 bit systems, so is a poor default choice.

      Change: Updated to latest versions of JPEG, TIFF and ZLIB libraries.



Version 5.0.0 (June 2009)

      Note: PTAssembler 5.0 is  major upgrade from PTAssembler 4.0, largely
         due to the fact that it now includes its own stitching and optimizing
         program: PTAStitcher.  PTAssembler can now operate completely independently
         of Panorama Tools, although it can still be configured to work with
         Panorama Tools if desired.

         PTAStitcher performs the same image optimizing duties as PTOptimizer, and
         the same image stitching duties as PTStitcher and/or PTMender.  However,
         PTAStitcher adds a number of enhancements such as
         faster operation, multi-threading, better ability to handle very
         large images, new output formats, more image projections and other
         features.

         PTOptimizer, PTStitcher and PTMender are still supported, but
         PTAStitcher is the default choice for both optimizing and stitching.
         Support for PTOptimizer, PTStitcher and/or PTMender may be removed
         in future versions of PTAssembler.


      Feature: Added support for Photoshop large file (PSB) format (PTAStitcher only).

      Feature: Added support for new standard output projections (PTAStitcher only):

         Miller Cylindrical (http://mathworld.wolfram.com/MillerCylindricalProjection.html)
         Lambert Azimuthal Equal Area (http://mathworld.wolfram.com/LambertAzimuthalEqual-AreaProjection.html)
         Orthographic (http://mathworld.wolfram.com/OrthographicProjection.html)
         Cassini (http://mathworld.wolfram.com/CassiniProjection.html)
         Cylindrical Equal Area (http://mathworld.wolfram.com/CylindricalEqual-AreaProjection.html)
         Lambert Cylindrical (http://mathworld.wolfram.com/LambertCylindricalEqual-AreaProjection.html)
         Behrmann Cylindrical (http://mathworld.wolfram.com/BehrmannCylindricalEqual-AreaProjection.html)
         Cylindrical Equidistant (http://mathworld.wolfram.com/CylindricalEquidistantProjection.html)
         Miller Equidistant 1,2,3 (http://mathworld.wolfram.com/MillerEquidistantProjection.html)

      Feature: Added support for several newly created, non-standard output
         projections (PTAStitcher only):

         Squeezed Rectilinear. Rectilinear in central region, and "squeezed"
            towards edges to minimize stretching typically visible in
            rectilinear projections.  Both horizontal lines and vertical lines
            are rendered as straight lines throughout entire image.

         Compressed Rectilinear. Horizontal and vertical lines are straight,
            user can configure the amount of compression.

         Rectilindrical. Configurable projection that can produce "intermediate"
            projections that are a combination of rectilinear, cylindrical and
            equirectangular projections.

         Trans Merc Rectilinear.  A combination of transverse mercator and
            rectilinear projections.  Both horizontal lines and vertical lines
            are rendered as straight lines throughout entire image.

         Recti-Perspective. Vertical and radial lines are straight.  Useful
            for "perspective" type images.

         Recti-Cylindrical. Rectilinear in central region, transitioning
            to cylindrical at edges.

         Hybrid. User selects one projection for each quadrant of
            output image, creating a composite projection.

         User Defined. User specifies formulas that are used to perform all
            projection math by PTAStitcher/PTAssembler.  User defined projections
            are slower than built-in projections, but are useful for
            experimenting/prototyping new projections.  Little error checking...
            The user is responsible for ensuring that the formulas are valid.


      For more details on these and other projections please visit:

            http://www.tawbaware.com/projections.htm

      Feature: Added support for new lens projections (PTAStitcher only):

         Stereographic
         Mercator
         Transverse Mercator
         Sinusoidal
         Miller Cylindrical
         Equisolid Fisheye (http://mathworld.wolfram.com/LambertAzimuthalEqual-AreaProjection.html)
         Orthographic
         Cassini
         Trans Merc Rectilinear
         Lambert Cylindrical Equal Area
         Behrmann Cylindrical Equal Area
         Miller Equidistant 1,2,3
         Rectilindrical

         Note that the "Lambert Azimuthal Equal Area" panorama projection is the
         same as the "Equisolid fisheye" lens projection.

      Feature: Added optimizer configuration dialog on Step 4 screen to control
         optimizer behavior (PTAStitcher only).

      Feature: Holding Shift button while clicking the "Preview" button on
         step 5 screen creates a preview using currently selected choices
         for FOV and width/height ratio rather than "autosizing" these values
         when starting preview viewer.

      Feature: Projection formats, Lens Types, Output Formats, Interpolator
         choices and other screens change depending on selected stitching and
         optimizing program (PTStitcher, PTMender, PTOptimizer or PTAStitcher).

      Feature: Added ability to add vertical/horizontal line control points
         on preview screen. Left-click and drag the mouse to add a vertical
         line control points.  Hold shift key down while left-clicking and
         dragging to add a horizontal line control point.  Vertical and
         horizontal line points give the optimizer useful information on how
         to position images so as to straighten horizons, ensure that vertical
         lines are rendered as vertical, etc.  Also, See next feature.

      Feature: Added ability to invoke optimizer from preview screen.  Added
         a new button on preview that screen that allows the user to run the
         optimizer and see the resulting image without leaving the preview
         screen.  This is useful if the user has added horizontal and/or
         vertical control points on the preview screen (see previous feature).
         Note that PTAssembler decides which parameters to optimize automatically
         depending on the number and type of vertical/horizontal control
         points that the project contains.  If possible (i.e. field of view
         less than 180 degrees), PTAssembler uses rectilinear projection
         when invoking the optimizer from this screen.  Otherwise, equirectangular
         projection is used when optimizing.

         For more complete control over the optimizer, use PTAssembler's step 4 screen.

      Feature: Added option to display short version of filename (without path
         or extension) as part of tab on control points screen (Step 3).  See
         the "Show image names on Control Point screen tabs" checkbox on the
         display tab of the preferences screen.

      Feature: Tabs above images on control point screen indicate images with
         which control points are shared with an asterisk, and number of shared
         control points in parentheses.

      Feature: Cancel button, OK button and "Esc" key close preview screen
         while preview is still generating.

      Feature: Added keyboard shortcuts to preview screen:
          L,R; Shift image (l)eft or (r)ight by one degree
          U,D: Shift image (u)p or (d)own by one degree
          C,A: Rotate image (c)lockwise or (a)nticlockwise one degree
          V,H: Expand (v)ertical or (h)orizonal field of view by one degree
               Contract field of view if shift-v or Shift-h key pressed

      Feature: Control points dispayed on preview viewer are square if they belong
          to an image that is part of a stacking group.  Added ability to
          display either "stacking" control points, "non-stacking" control points
          or both.

      Feature: Added ability to "link" individual lens parameters for groups
          of images.  See Step 4 screen.

      Feature: added menu item to show ptassembler's "ini" file.  Useful when
          submitting bug reports.


      Bug Fix: Fixed problem running GreyCStoration.
      Bug Fix: Removed popup warning about converting from FOV to focal length
         when typing in FOV on Step 2.
      Bug Fix: Fixed divide by zero error when loading 360 degree images.
      Bug Fix: Removed warning message when opening lens preset screen from Step 2.
      Bug Fix: Eliminated error message encountered if trying to set reference
         point on image with yaw, pitch or roll impossible to display using
         specified lens projection.
      Bug Fix: Fixed operation of "Correct Pitch" button on preview viewer screen.
      Bug Fix: Fixed incomplete parsing of project file when PTAssembler is launched
         from command line with project name.
      Bug Fix: Fixed accuracy of yaw,pitch derived from Reference Point Picker screen
         when image is rotated.


      Change: Removed support for exotic (largely untested) output formats
         (e.g. IVR, VRML, PAN, etc.)
      Change: Modified formula used to calculate focal length multiplier
      Change: Changed display names of some lens and panorama projection formats
         (e.g. "Fisheye" became "Fisheye (equidistant)", so as allow distinction
          between equidistant and equisolid fisheye lenses).


Version 4.0.1 (February 2008)

      Bug Fix: Fixed problem that caused Tufuse to be invoked with incorrect arguments.
      Bug Fix: Fixed problem that caused incorrect reporting of TuFuse installation.
      Bug Fix: Fixed problem 50003 on some Vista machines when opening some screens.


      Change: Removed warning message: "If image FOV is not linked, panorama
         dimensions may need to be adjusted manually for best results" when autosizing
         panorama.


Version 4.0.0 (February 2008)

      Note: PTAssembler 4 includes support for creating "stacked" images and
         panoramas.  Stacking is commonly used to overcome two photographic difficulties,
         and capture scenes that have either (1) an extremely wide lighting range
         from shadows to highlight or (2) a extremely large range of subject
         distances (foreground to background).  In the first case, stacking
         can be used to achieve a "blended exposure" (or an "extended dynamic
         range") image that better captures the range of shadows and
         highlights than a single image. In the second case, stacking can be
         used to create a "extended focus" image that exhibits a much
         greater depth of field than would be possible with a single image.

         PTAssembler 4 is distributed with its own stacking program called
         TuFuse.  TuFuse is capable of performing both exposure blending
         and focus blending.  See the PTAssembler and TuFuse documentation
         for more information.

         PTAssembler also supports two additional (third-party) stacking programs:
         Enfuse (for exposure blending) and CombineZM (for focus blending).
         See the PTAssembler documentation for details on where to download
         these programs and how to configure PTAssembler to use them.


      Feature: Added support for exposure blending and focus blending using
         "stack" processing.  Images in a PTAssembler project can be grouped
         into "stacks" and each stack can be processed (i.e. exposure blended
         or focus blended) to create an image before blending.  Stacks can be
         assigned manually via the Step 1 screen, or determined automatically
         based on position (i.e. yaw/pitch).

      Feature: Added new "processing options" dialog to configure and
         examine processing workflow options (i.e. pre-processing,
         stitching / remapping, post-processing, stacking, blending and
         cropping).  See documentation for details.

      Feature: Added "auto-align" feature, to quickly perform image registration
         on a group of images and create one aligned ("registered") image.
         Aligned images can be processed by stacking program (e.g. TuFuse)
         to create a single focus/exposure blended image.  See documentation
         for more details.

      Feature: Added new auto-optimizer instructions: "linkX" and "unlinkX"
         for all lens/fov parameters.  Note: global parameters
         (e.g. project FOV) are propogated to lens parameters (e.g. lens FOV)
         when an "unlink" instruction is encountered.

      Feature: global lens parameter values are propogated to image lens
         parameter values when Step 2 screen is exited, and parameters
         are linked.

      Feature: Added logic to search for EXIF data in raw files (dng, crw, cr2)
         in same or parent directory if image file is missing.

      Feature: Up/Down buttons on Step 1 screen work for multiple images.

      Feature: Added "Apply parameters from another image" choice to popup
         menu (right-click) on Step 1 screen.

      Feature: Updated documentation, wizard text.

      Bug Fix: Corrected parsing of auto-optimizer "opv" instruction.


Version 3.6.0 (October 2007)

      Note: If upgrading from a previous version of PTAssembler, this version will not use your
        current preferences, because of the new location where the ptasmblr.ini preferences
        file is stored (see below for details). If you want to keep your current preferences,
        here is the recommended procedure:

           1. Install the latest version of PTAssembler.
           2. Make sure that PTAssembler is not currently running.
           3. Copy your old version of ptasmblr.ini (usually found in "C:\program files\ptasmblr\")
              into the new preferences directory (usually "C:\Users\{username}\AppData\Roaming\PTAssembler"
              or "C:\Documents and Settings\{username}\Application Data\PTAssembler").
           4. Restart PTAssembler.


      Feature: Added interactive preview viewer/editor screen.  This eliminates
         the need to use a external application to view preview (small-scale)
         images. The new preview viewer/editor also allows for interactive
         adjustments to the panorama (i.e. FOV, yaw, pitch, roll, projection,
         etc.) and immediate previews of these adjustments.  An option to use
         an external application for previews is retained.

      Feature: Added option to "pre-process" images with GREYCstoration noise
         reduction program before stitching.  Added interactive screen
         to evaluate and preview the impact of various GREYCstoration
         parameters on a test image.
         See: http://www.greyc.ensicaen.fr/~dtschump/greycstoration/

      Feature: Removed option to assume all images have same file size (improved
         speed to detect file dimensions, so this option is no longer needed)

      Feature: changed implementation of Auto-level and Auto-Rotate buttons
         on Step 4 screen so that they are (a) faster and (b) no longer use
         the optimizer.

      Feature: Added numerical transform dialog to allow repositioning of
         images in project, while maintaining relative positioning.

      Feature: Numerous improvements to internal projection logic.  Autosize
         routine should work more accurately.

      Feature: Enhanced Shutdown feature on Step 4 screen to shutdown after
         optimizer completes as well as after auto-optimizer completes.

      Feature: Added logic to ignored EXIF data used to report sensor size for
         (used to calculate focal length multiplier) for Canon G9...EXIF data
         reports incorrect values, and cannot be used.

      Feature: If image files do not contain necessary EXIF data to compute
         focal length/multiplier, added logic to search for RAW files
         (dng, crw, cr2 formats) in same or parent directory and extract
         EXIF data, if possible.

      Feature: Changed data reported by Help|Check Installation menu item to
         report additional information including versions and dates for all
         required Visual Basic system files.

      Feature: Changed location for PTAssembler's preferences file (PTAsmblr.ini)
         and lens database file (lens_settings.txt). These files are now stored
         in PTAssembler's sub folder in the "user application data folder".
         The folder name varies depending on the version of Windows, but is
         typially something like:

           C:\Documents and Settings\{username}\Application Data (XP)
           C:\Users\{username}\AppData\Roaming                   (Vista)

         Older versions of Windows still store these files in the same
         directory as PTAssembler.

      Bug Fix: Modified logic to calculate region of interest when producing
         cropped output in PTMender.


Version 3.5.0 (January 2007)


      Note 1: PTAssembler 3.5.0 includes numerous changes over previous versions,
         many of which are internal.  As such, these changes should be transparent
         to the user.  The most significant internal change is a rewrite of the
         way in which PTAssembler controls external programs (e.g. PTStitcher,
         PTMender, Enblend, Smartblend) and tracks their progress during the image
         creation process.

         This should allow more reliability, more flexibility (i.e. a second
         panorama can be launched while the first is still processing), and more
         feedback during processing to enable easier debugging of problems.  It
         also allows for the execution of projects outside of PTAssembler.

      Note 2: Starting with this version of PTAssembler, PTMender and PTOptimizer
         no longer depend on any external DLL files.  This means that the file
         sizes for PTMender and PTOptimizer are larger than in older versions,
         but eliminates the possibility for any problems due to mismatched
         versions of these programs with pano12.dll or pano13.dll.  PTStitcher
         still requires pano12.dll to function correctly.

      Feature: Added ability to crop the final blended TIFF file (if using
         Enblend or Smartblend) to the "interior bounding box".  This feature
         preserves as much of the image as possible while removing all
         extraneous "empty space" around the final image.
      Feature: Added option to launch final image in viewer application
         after stitching completes.
      Feature: Added support for Autopano-SIFT as a plugin.  (Although
         confusingly named, "Autopano-SIFT" and "Autpano" are two different
         applications written by two different authors.)  PTAssembler requires
         two programs from the Autopano-SIFT distribution (Autopano.exe
         and generatekeys.exe).  See:
         http://user.cs.tu-berlin.de/~nowozin/autopano-sift/
      Feature: Added option to "pre-process" images with Neat Image noise reduction
         software before stitching.  See: http://www.neatimage.com
      Feature: Added ability to include/exclude images for stitching on Step 5
         screen.
      Feature: Added right-click popup menu for unlinked lens parameter
         selection boxes on Step 4 screen.
      Feature: Added Sunrise/Sunset calculations as part of project properties.
      Feature: Added EXIF/UTC and Local/UTC time offset fields on GPS tab
         of preferences screen.  (Useful for sunrise/sunset calculations and
         cameras with internal clock not set to local time).
      Feature: Changed URL for google maps to generate "hybrid" maps.
      Feature: Added prompt to save project when exiting...only occurs if
         PTAssembler detects a change in the project since last save.
      Feature: If "shift" key is pressed when exiting, PTAssembler exits
         immediately without prompting to save any existing project.
      Feature: If "shift" key is pressed while File|Save As... menu choice
         is selected, PTAssembler will generate a new default name for the
         project by reanalyzing the file names in the project.
      Feature: Added option to use system default viewer as viewing
         application.  This is on by default, but can be turned off via
         preferences screen.
      Feature: Moved checkbox to use cropped TIFF output (PTMender) from
         step 5 to preferences screen.
      Feature: Added menu choice to write project execution script (writes
         a batch file that can be used to execute project outside of
         PTAssembler).
      Feature: Improved algorithm to pick widely distributed control points
         from Autopano during Autocreate process.
      Feature: Added additional information to "check installation" feature.
      Feature: Added "thin by location" option to control point screen.  This
         removes control points, keeping those that are most widely dispersed
         throughout overlap region.
      Feature: Added ability to thin control points (i.e. remove control poitns)
         by optimized distance, or by location on
         Step 3 screen.  Use the "H" button to thin by optimized distance, "H"
         button with shift key pressed to thin by location.  Keyboard shortcuts
         of H and Shift-H perform same functions.
      Feature: Numerous improvements in speed to reading and writing project
         files and PTStitcher/PTMender/PTOptimizer scripts.
      Feature: Added ability to launch multiple processes simultaneously when
         stitching TIFF_m/TIFF Blended format.  Produces large speed gains
         when used on multi-processor machines.  Configurable via Misc tab of
         preferences screen.

      Bug Fix: Fixed problem parsing morph-to-fit data from PTOptimizer
         output.
      Bug Fix: Fix to incorrect positioning of cursor in opposite viewer window
         when setting control points near t1, t2, t+ control points.
      Bug Fix: changed auto-optimize logic so that yaw is never optimized,
         even if project contains horizontal line control points.


Version 3.4.0 (June 17 2006)

      Feature: Added support for Smartblend.  New options added to Plugins
         tab of preferences screens to configure Smartblend and switch
         between Enblend and Smartblend.
      Feature: Renamed output format on Step 5 from "TIFF_m/Enblended" to
         "Blended TIFF".
      Feature: Includes latest Panorama Tools files as of June 14, 2006.


      Bug Fix: Corrected problem with "Copy to clipboard" button on Panorama
         Tools installation check dialog box.



Version 3.3.1 (June 13 2006)

      Note: No changes to PTAssembler.  This distribution includes updated
         versions of Pano12.dll, PTMender.exe and PTOptimizer.exe.  Projects
         with 360/180 degree fields of view should now be better processed
         using PTMender.


Version 3.3.1 (June 11 2006)

      Note: No changes to PTAssembler.  This distribution includes updated
         versions of Pano12.dll, PTMender.exe and PTOptimizer.exe.  Brightness
         and colour correction should now work with PTMender.exe.


Version 3.3.1 (June 6 2006)

      Note: No changes to PTAssembler.  This version includes recompiled versions
         of Pano12.dll, PTMender.exe and PTOptimizer.exe.



Version 3.3.1 (June 4 2006)

      Bug Fix: Prevented auto-optimizer from creating script with FOV>180 and
         rectilinear projection.



Version 3.3.0 (June 2006)

      Note: PTAssembler 3.3.0 adds support for PTMender: a faster, more
        memory efficient replacement for PTStitcher.  PTMender is an
        open-source, free program and can be used instead of PTStitcher.
        To instuct PTAssembler to use PTMender, specify PTMender's location
        on the "Files/Dirs" tab of the preferences screen.  PTMender
        is distributed with PTAssembler, and its source-code can be downloaded
        from the Pano Tools sourceforge site.


      Feature: Added support for PTMender: a faster, more memory efficient
         replacement for PTStitcher.
      Feature: LZW compressed files are generated for TIFF_m and TIFF_mask
         format when using PTMender.  These are considerably smaller than
         the files generated by PTStitcher, and are more compatible with
         Photoshop than the TIFF files output by PTStitcher.
      Feature: Added checkbox for cropped TIFF output on step 5.
      Feature: Added support for 4 new output projection formats: mercator,
         transverse mercator, stereographic & sinusoidal.  These formats
         require pano12.dll version 2.8.3 or later.  Older versions of
         pano12.dll will not operate correctly if any one of these output
         formats is selected.
      Feature: Added suggested uses for projection on Panorama Projection
         drop down box (step 2 screen).
      Feature: changed stitcher syntax to improve compatibility with
         other stitching software.
      Feature: Enabled Pano Tools fast-transform by default (added "f0"
         to m line for stitcher script).
      Feature: Updated usertools.txt with new syntax options.
      Feature: Improved auto-size algorithm for output images using
         cylindrical projection.
      Feature: Added ability to query pano12.dll to request feature list.
         using "Check Panorama Tools installation" menu item.
      Feature: Added more sophisticated checking and warning for
         mathemtically impossible or undesirable FOV and projection
         types (e.g. rectilinear projection and 200 degree FOV) before
         stitching and optimizing.
      Feature: Changed preview/temporary JPEG filenames to include
         date/time, FOV and projection.
      Feature: Updated wizard text.


      Bug Fix: Moved position of circle in magnifier window that
         illustrates position of selected control point
      Bug Fix: Corrected auto-optimizer settings (replaced eq_yaw with eqyaw)
      Bug Fix: Fixed "invalid property" message when minimizing message
         windows via toolbar icon.
      Bug Fix: Changed crop factor for Canon 20D to 1.59 from 1.60.



Version 3.2.0 (December 2005)

      Feature: Added new properties screen to hold metadata about project.
      Feature: Changed EXIF parsing routine to read "DateTimeOriginal" tag,
         rather than "DateTime" tag (better compatibility with TIFF files
         produced by Raw Shooter Essentials).
      Feature: Added GPS capabilities:
         Ability to parse GPX (GPS information) data files
         Ability to cross-reference GPS data time with image data time and deduce
            longitude, latitude and elevation
         Ability to display GPS information on properties screen
         Ability to map locations via configurable URLs
         Ability to store GPS data as part of project file
      Feature: Added ability to launch PTAssembler from command line and
         stitch or autocreate a project.  See documentation.

      Bug Fix: TIFF files can now be read correctly on Win XP SP2 systems.


version 3.1.3 (October 2005)

      Bug Fix: Added more logic to deal with incorrectly specified or missing
         preview viewer.
      Bug Fix: Solved bug that prevented Enblend from being launched after
         stitching.


version 3.1.2 (October 2005)

      Feature: Added ability to resize image in reference point picker window.
      Feature: Tool-tip text on Step 3 image tabs includes image name.
      Feature: Added ability to launch image in preview viewer from popup menu
         on Step 3 screen.
      Feature: Added fallback logic in case preview viewer isn't specified or
         not found...PTAssembler attempts to use default system viewer.
      Feature: Improved caching logic to speed up "next"/"previous" buttons
         on Step 3 screen.
      Feature: Added ability to check/uncheck multiple boxes simultaneously
         in the "Use control points from...", "Lens parameters", "Yaw",
         "Pitch", "Roll" boxes on Step 4 screen (select multiple images
          and right-click to activate).
      Feature: Step 4 parameter editor dialog allows for the new value to
          either (a) add or (b) replace current value.
      Feature: Added new error messages to warn if user has requested
          post-processing, but not specified a post processing command.

      Bug Fix: Corrected parsing of "Optimize b" setting when reading project
         file.
      Bug Fix: Added error handling to deal with bad EXIF data that reports
         lens focal length = 0mm.


version 3.1.1 (October 2005)

      Feature: Added support for mousewheel.  Mousewheel scrolls images in Step 3
         viewers.  Click wheel to alternate horizontal/veritcal scroll.
      Feature: Added option (on by default/see preferences screen) to show
         Micro-position distance next to control points on viewers in Step 3.
      Feature: Hitting "Cancel" on dialog that appears after exiting PTAssembler
         and being prompted to save project will cause PTAssembler not to quit.
      Feature: Modifications to auto-optimize logic to work more intelligently
         with horizontal and vertical line control points.  See documentation.
      Feature: Microposition feature for t1/t2 control points can be
         enabled/disabled via preferences screen (disabled by default)
      Feature: Improved auto-resize algorithm for columns in table on Step 1
         screen.  Can be disabled via preferences screen.
      Feature: 'f0' is added as an extra m_line parameter by default for new
         installations of PTAssembler.  See 'Misc' tab of preferences screen.


      Bug Fix: More than 255 images can be displayed on Step 3 screen.
      Bug Fix: PTAssembler now only attempts to microposition t0 type control
         points.
      Bug Fix: EXIF data is updated on step 1 screen after navigation with
         keyboard.


version 3.1.0 (September 2005)

      Feature: Added workaround for Autopano's 8-bit image limitation...16 bit
         TIFF files are converted to 8 bit versions by PTAssembler before
         launching Autopano.
      Feature: Default sort order of control point screen is now reverse order
         for optimized control point distance.
      Feature: Added ability to interpolate values for yaw, pitch and roll
         between images.  Right click on table on Step 1 screen.
      Feature: EXIF data on Screen 1 now includes date/time.
      Feature: Project Properties dialog shows total count of all pixels in
         input images.

      Bug Fix: Allowed no arguments to be specified for Enblend, and
         saved correctly between sessions.
      Bug Fix: Autopano output parsed correctly when images are contained
         in different directories.


version 3.0.4 (May 2005)

      Bug Fix: Fixed problem entering lens params on Step 4 screen when FOV
         is unlinked.
      Bug Fix: Fixed problem with Batch Processor incorrectly specifiying
         path to images.
      Bug Fix: Fixed bug that caused error when trying to import more than
         32,000 control points from project.
      Bug Fix: Fixed bug that caused non-fatal error when launching project
         with a large number (i.e. 180+) of images


version 3.0.3 (April 2005)

      Feature: Changed method used by Autocreate to filter control points from
         Autopano output.

      Bug Fix: Fixed problem where too many control points could get
         filtered using Autocreate prior to second optimization.
      Bug Fix: Fixed problem with non-integer settings for zoom factor on
         preferences screen.


version 3.0.2 (February 2005)

      Bug Fix: Relaxed logic that assumes a 360x180 degree panorama is user's
         intention when autosizing projects with large FOV.


version 3.0.1 (February 2005)

      Bug Fix: Fixed "Unhandled exception parsing line *** in project file"
         error when loading some project files.


version 3.0.0 (January 2005)

      Note: Starting with this version, the necessary files from the Panorama
         Tools (PTStitcher.exe, PTOptimizer.exe and Pano12.dll) are distributed
         and installed with PTAssembler.  PTAssembler will not overwrite any
         existing version of these files.

      Feature: Added 'Auto-Create' feature.  PTAssembler automates all steps
         needed to create a final panorama without any user intervention.
         Load images onto Step 1 screen, and press the 'Auto-Create' button
         to produce a final panorama.
      Feature: Added 'Auto-rotate' feature on Step 4.  PTAssembler rotates
         all images in project to ensure maximum usable vertical area (useful
         for images taken on a tripod with "sag" where all images are
         slightly rolled.
      Feature: Speeded up switching to next images by re-using images loaded
         in opposite viewers.
      Feature: Added option to start PTAssembler as maximized window.
      Feature: Last used lens parameters (a, b, c, FOV, multiplier, etc.) are
         populated on step 2 screen when PTAssembler is started.
      Feature: Added "reset" button to reset lens parameters to default values
         on Step 2 screen.
      Feature: Added hard-coded focal length multiplier for Canon 20D (to
         workaround bug in the way Canon 20D records EXIF data).
      Feature: Added small database of focal length multiplier information for
         selected cameras.
      Feature: Added ability to  assume a focal length multiplier if not found
         in EXIF data and/or to override focal length multiplier (see misc tab
         of preferences screen).
      Feature: Split Auto-size padding factor into FOV padding factor and
         width/height padding factor (see preferences screen).
      Feature: Increased preferences dialog size and moved a few options around.
      Feature: Added warning if trying to stitch images on a non-writable disk.
         (Pano Tools requires images and scripts to reside on a writable disk.)
      Feature: Color-coded "important" buttons on GUI to help new users.
      Feature: Added check for Enblend and Autopano installation in help menu.
      Feature: Median control point distance statistic not computed for projects
          with a lot of control points (takes too much time).
      Feature: Added more status dialogs when performing lengthy tasks (e.g.
          reading/writing large projects).
      Feature: Ctrl-left-click on control point screen sets reference point, but
          does not reset roll parameter.
      Feature: Added logic to try and determine user's intention to create a
          360x180 degree panorama, and auto-size parameters (Step 5) accordingly.
      Feature: Added abilty to delete control points on Step 3 screen using
          delete key in control point list view.
      Feature: Enhanced "Check panorama tools installation" menu item to report
          on installation status of Enblend and Autopano.

      Bug Fix: Corrected "intelligent" positioning of scroll bars on viewers
         when some scroll bars are not visible.
      Bug Fix: Fixed problem parsing Exif data for shutter speed in APEX format.
      Bug Fix: Fixed error computing median control point distance statistic.
      Bug Fix: Enblend thread priority set correctly.
      Bug Fix: Magnifier cursor icon reset when switching to new screen from
         step 3.
      Bug Fix: Fixed problem where images got deleted from project if Step 1
         screen wasn't fully populated before switching to another screen.



version 2.5.0 (October 2004)

      Feature: Added ability decrease magnification of main viewer windows on
         Control Point setting screen (Use [, ], and shift keys on Step 3).
      Feature: Added ability to zoom in/out on any point in viewer windows on
         Control Point setting screen (Use Alt/Ctrl keys and mouse click on
         Step 3).
      Feature: Added ability to edit selected image/project parameters directly
         on Optimizer screen...right click on parameter(s) to modify (Step 4).
      Feature: Added project properties dialog.
      Feature: Changed PTAssembler icon.
      Feature: Changed labels for "Horizontal" control points to "Vertical Line",
         and "Vertical" control points to "Horizontal Line", in response to
         popular request.  Note: This terminology is opposite from the terms
         used in the Panorama Tools documentation.
      Feature: Changed labels for "Window Controls" on Step 3 screen to make
         labels consistent with keyboard shortcuts
      Feature: Added "cheat-sheet" listing of all keyboard shortcuts on Step 3
         screen (Click the "?" button on Step 3).
      Feature: Zoom window is hidden if caught by mouse-cursor.
      Feature: Lighten/Darken image buttons on step 3 screen modified to
         increase/decrease contrast.
      Feature: Added "Select All" button to Step 1 screen.
      Featrue: Added "Reset" buttons to Step 4 screen...resets all parameters
         to zero, except for reference image (if reference image has been
         selected).
      Feature: Reference image is written to, and read from, PTAssembler project
         file.
      Feature: Focus is set to reference image box on Step 4 screen when
         switching screens.
      Feature: Support for Enblend 2.0...memory allocation suggestion when
         resetting default Enblend arguments on preferences screen.

version 2.4.3 (October 2004)

      Bug Fix: Fixed problem displaying "Control Point Settings" window when called
         from "Control Point Information" window.


version 2.4.2 (August 2004)

      Bug Fix: Fixed problem with Auto-pano on systems that use "," as a decimal
         separator.


version 2.4.1 (July 2004)

      Bug Fix: Fixed problem with registration.


version 2.4.0 (July 2004)

      Feature: Added support for Autopano 1.03 (See: http://autopano.kolor.com/).
      Feature: Added "autolevel horizon" button on Step 4 screen.
      Feature: Added ability include "autolevel horizon" in auto-optimize commands.
      Feature: Added auto-optimizer presets, and selection screen.
      Feature: Added ability to "Post Process" output files.
      Feature: Added options to "thin" control points on Step 3 and Control
         point information screen.
      Feature: Added "refresh" and "delete all control points" on control point
         information screen.
      Feature: Made control point information screen non-modal.
      Feature: Added ability to add extra parameters to m-line (for alternative
         pano12.dll implementations).  See Misc tab of preferences screen.

      Bug Fix: Autoposition mouse cursor now only works with t0 control points.


version 2.3.4 (June 2004)

      Bug Fix: Fixed "Error 28" when drawing unmatched line pair in viewer window.


version 2.3.3 (May 2004)

      Feature: Added option to assume all images in a project are the
         same size...speeds up loading new images.
      Feature: Added option to allow reference point selection to set
         roll for all images in project.

      Bug Fix: Fixed error with viewers when control point is selected.


version 2.3.2 (March 2004)

      Bug Fix: Fixed problem parsing t1, t2, t+ control points from project
         files.


version 2.3.1 (March 2004)

      Feature: Added support for Enblend (http://www-cad.eecs.berkeley.edu/~mihal/enblend/).
            Options added for new "Enblended" output type on step 5 screen.
            Configurable on preferences screen.
      Feature: Added ability microposition multiple control points. Added 'm'
            button on Step 3 screen, and new item under Tools menu.
      Feature: Added information about micropositioning on control point table.


version 2.3.0 (March 2004)

      IMPORTANT REGISTRATION NOTE:  In an effort to combat increasing
             software piracy, this version of PTAssembler requires an updated
             registration code.  There is no charge to users who have already
             registered to acquire a new registration code.

             If you haven't already received an updated code in your e-mail,
             please send me an e-mail to maxlyons@tawbaware.com, with your
             name and current regsitration code.

             Once you have your new code, you can enter it on the registration
             screen (found under the help menu) to activate the full version
             of PTAssembler 2.3.0.


      Feature: Added ability to automatically move cursor to likely position in
             opposite viewer when selecting matching point in control point
             pair.
      Feature: Added magnified view of selected control point while choosing
             matching point in control point pair.
      Feature: Added circular cursor in zoom window while selecting control
             points.  (Adjustable size in preferences screen).
      Feature: Added support for Autopano (http://autopano.kolor.com/).
             Configurable on Preferences dialog.  Activated on Step 1 and/or
             Step 3 screens.
      Feature: Added display of control points information for each image on
             Step 1 screen.  Configurable on preferences screen.
      Feature: Added ability to launch selected images on Step 1 screen in
             viewers on Step 3 screen.
      Feature: Zoom window disappears when cursor moves out of viewer windows
             on step 3 screen.
      Feature: Colors of control point markers should contrast with underlying
             image.
      Feature: Added progress dialogs while parsing Pano Tools output.
      Feature: Shift-Scroll now retains relative position of scroll bars when
             scrolling.
      Feature: Shift-Ctrl-Scroll resets relative position of scroll bars when
             scrolling.
      Feature: Changed the default optimizer steps followed when using
             auto-optimizer button.  See help file for how to modify defaults.

      Bug Fix: Fixed problem with auto-shutdown after batch processing.
      Bug Fix: Fixed problem reading control point settings from project file.


version 2.2.3 (December 2003)

      Feature: Added option to shut down computer when auto-optimizer completes
      Feature: Added "dummy check" to warn if creating a rectilinear panorama
             with a FOV of more than 120 degrees.
      Feature: Added Shift-P, Shift-N keyboard shorcuts to change images in
             different directions in viewer windows.
      Feature: Increased speed when loading "all control points" table.
      Feature: Added tooltip help to viewer tabs indicating adjacent images
             with shared control points for loaded image.
      Feature: Added all/none buttons for selecting/deselecting images to use
             when optimizing
      Feature: Added ability to reset/update/remove multiple images on Step 1
             screen


      Bug Fix: Corrected bug that prevented multi-img TIFF filenames from being
             generated correctly when added to batch processor.
      Bug Fix: Removed warning about invalid C lines when running a project in
             batch processor.
      Bug Fix: Fixed problem displaying scripts and/or Pano Tools output if file
             is greater than 64KB (problem existed only on Win 95/98/ME systems).
      Bug Fix: Fixed problem determining if batch processing completed successfully
             for some image formats.
      Bug Fix: Fixed incorrect image numbering when moving files up/down on
             Step 1 screen.

version 2.2.2 (August 2003)

      Bug Fix: Changed way in which image dimensions are calculated to work
             around VB bug.

version 2.2.1 (August 2003)

      Bug Fix: Fixed incomplete display of "auto-optimize" results message.

version 2.2.0 (August 2003)

      Added "Save" menu item (in addition to existing "Save as...")
      Added option to shutdown computer when processing finishes.  Note: This
         may not work on all hardware and/or operating systems.
      Added ability to generate preview after auto-optimizing without
         auto-sizing  parameters (hold shift key down while clicking "yes").
      Added ability to adjust the amount of "black-space" around panorama (hold
         shift key while clicking +/- buttons on Step 5 screen).
      Updated help documentation.


version 2.1.5 (August 2003)

      Bug Fix: Another fix to morph-to-fit parsing logic.
      Bug Fix: Change to eliminate occasional error message after generating
         preview image.

version 2.1.4 (July 2003)

      Feature: Added help menu link to Tawbaware field-of-view, depth-of-field
         and mosaic calculators.
      Bug Fix: Fixed problem reading morph-to-fit data from optimizer output in
         projects that use control-point alignment other than t0 (horizontal
         & vertical).

version 2.1.3 (July 2003)

      Feature: Updated links on help menu.
      Bug Fix: Fixed problem where some users installed PTAssembler and
         evaluation period was already expired.

version 2.1.2 (July 2003)

      Bug Fix: Fixed problem that prevented some EXIF data/focal length from
         parsing correctly.

version 2.1 (February 2003)

      Added ability to read EXIF data from JPEG and TIFF files.  Most digital
         cameras produce images that contain EXIF data.  This data contains
         information about camera settings such as shutter speed, aperture,
         focal length, etc.  PTAssembler can retrieve the focal-length (if
         stored in the EXIF data) and populate the appropriate field on the
         step 2 screen.  Some cameras also store enough EXIF information to
         allow PTAssembler to compute the focal length multiplier on the step
         2 screen.

         Not all digital cameras store all the EXIF information necessary to
         compute the horizontal FOV value on the Step 2 screen.  However, if
         your images contain EXIF data, you will see a button titled "Calculate
         using image EXIF data" on the Step 2 screen.  You can also display a
         summary of the EXIF data by clicking on an image in the Step 1 screen.

      Added option to run Panorama Tools as low-priority process.  Running
         Panorama Tools as a low-priority process (instead of normal-priority)
         can make the system more responsive while Panorama Tools is stitching.
         This option is turned on by default, and can be changed on the
         preferences screen.

      Added right-click option on Step 3 screen to toggle on and off
         micro-positioning for each control point.

      Added more keyboard support on Step 3 screen:
         up/down/left/right arrows move cursor.
         Enter key simulates left mouse click (i.e. sets a control point).
         + and - keys increase/decrease zoom factor.
         Windows right-mouse keybard button activates popup menu.

      Added more accurate computation of yaw/pitch in center picker screen.

      Added ability to compute FOV from focal length for fisheye lenses on Step 2 screen.

      Improved auto-size parameter estimates on Step 5 screen.

      Added link on help menu to an on-line PTAssembler tutorial for beginners.

      Bug Fix: Fixed problem parsing output file format for projects using JPEG, PAN
         or IVR format. (Version 2.1.1).


version 2.0 (January 2003)


IMPORTANT DISTRIBUTION NOTE: Version 2.0 of PTAssembler is a significant upgrade to version 1.x.
Numerous new features have been added, and several bugs with version 1.x (including problems
running on non-English versions of Windows) have been resolved.  Support for existing and new
features in Panorama Tools has been added.  The program is now more than twice as large as the
last release of version 1.x.


   SCREEN-SPECIFIC CHANGES:

      Step 1. Source Images Screen:

         Added support for TIFF files (8 & 16 bit).

         Added input fields for a, b, c, d, e, g, t, Field-of-view (FOV) for each
            image (See Step 2).

         Added Preview button to display source image in preview viewer.

         Added right mouse button support (add/remove/preview/etc.).

         Images are sorted alphabetically when added to project.

         "Save as..." now defaults to directory that contains source images.

         Added ability to read/write project files that do not contain full-path
            information for each file (allows used to move project files and
             images to different directories without editing project file).
             Version 2.0.11.


      Step 2. Lens/Settings Screen:

         Added new morph-to-fit option: "Morph Selected Control Points Only".  See
            Morph-To-Fit improvements below.

         Added support for horizontal and vertical shear parameters (g,t). Requires
            "patched" version of Panorama Tools 2.6b1
             (see http://www.tawbaware.com/maxlyons/pano12ml.htm).

         Added ability to "unlink" lens parameters (a,b,c,d,e,g,t,FOV) to differ between
            images.  Can be used to add images taken with different orientations, focal
            lengths, etc. to the same project.  See more details about unlinking lens
            parameters below.

         Added Lens Parameter Presets -- quickly store and retrieve lens parameters.

         Added ability to allow user to input focal length multiplier and focal length
            to compute FOV (useful for digital camera users).  PTAssembler computes
            "35mm effective focal length", and FOV from actual focal length and
            multiplier.

         Added label to indicate assumed orientation (landscape or portrait) when
            computing FOV from focal length.

         Added error checking to ensure that user selects a valid image number for
            color correction. Note: Although Panorama Tools internally numbers the first
            image in a project as number '0', all PTAssembler references start counting
            at '1'.

         Added support for all 8 Panorama Tools interpolator settings.


      Step 3. Control Points Screen:

         Added support for "straight line" control points. Requires "patched" version of
            Panorama Tools 2.6b1 (see http://www.tawbaware.com/maxlyons/pano12ml.htm).

         Added indicators next to control point markers to visually identify control
            point type (horizontal/t1, vertical/t2 or Straight Line) and morph-to-fit
            setting.

         Added temporary markers (small circles) after clicking on control point screen
            to assist in selecting control points.

         Added ability to center selected control point in viewer windows (by clicking
            on control point list).

         Added toggle (ascending/descending) sorting for all fields in control point
            table.

         Added right-mouse support for control points windows.  Right click on a control
            point to select and display control point options (delete, alignment, scroll,
            etc.).  Right click on an empty region to display viewer options (show next
            images, maximize viewer size, swap images, etc.).

         Added option (via right mouse button) to specify if a control point should be
            used for optimizing (default), morphing when stitching, or both.  See
            Morph-To-Fit improvements below.

         Added ability to scroll viewer windows together (hold shift key down while
            scrolling scroll-bars).


      Step 4.  Optimizer Screen:

         Added ability to optimize shift (d, e) and shear (g, t).  Requires "patched"
            version of Panorama Tools 2.6b1
            (see http://www.tawbaware.com/maxlyons/pano12ml.htm).

         If parameters are unlinked (see Step 2), optimizer screen displays options
            to optimize a, b, c, d, e, g, t, and/or FOV for each image.  Added
            'Equalize' buttons for d, e, g, t to recenter values around 0 pixels.

         Optimizer screen automatically resizes/repositions controls to make more use
            of space on displays with high screen resolutions.

         Optimizer uses width/height parameters from final panorama (specified on step 5),
            not preview panorama.

         Added more comments to optimizer scripts to help evaluate optimization results.

         Added ability to switch to Control Point Information screen after
            running optimizer.


      Step 5. Create Screen:

         Improved accuracy of estimates generated by "auto-size parameters" button (now
            accounts for d/e parameter and computes height/Width/FOV more accurately).


   NEW MENU ITEMS:

      Note: In addition to the new menu items listed below, see User-configurable
         menu items below.

      View | Show All Control Points.  Displays a screen that lists all the control
        points in the project.  Can be used to sort by largest optimized distance,
        delete multiple control points, etc.  Clicking on a row in the table brings
        the control point up in the image viewers on Step 3 (Control Points Screen).

      Tools | Show Lens Presets.  Displays the lens preset screen to add/recall lens
        parameter settings.

      Tools | Show Lens Calculator.  Displays stand-alone lens calculator that can be
        used to convert between focal length and field-of-view.

      Tools | Apply Parameters From Another Project.  Allows user to import all
        parameters and settings from an existing project and apply to images in
        current project.  Also provides an option to import control point positions
        from another project.

      Tools | Display Last Generated Preview Image.  Re-displays the preview image
        created by PTAssembler during current session.

      Tools | Display Last Generated Final Preview Image.  Re-displays the final image
        created by PTAssembler during current session.

      Tools | Show Current Project File In Notepad.  Opens the current project file
        in notepad.

      Tools | Explore Current Project Directory.  Opens an Explorer window at the
        current project directory.

      Help | Help.  Shows new PTAssembler help documention.

      Help | About.  Shows 'about' screen with version / date information.

      Help | Check Panorama Tools Installation.  Verifies location of required Panorama
        Tools files (PTOptimizer.exe, PTStitcher.exe, Pano12.dll) and reports version
        numbers and build dates.

      Help | Register.  Use this screen to register PTAssembler.

      Help | [web links] . Added several link to web resources (PTAssembler home page,
        Panorama Tools home page, etc.) Additional links can be added by you, the user
        (see the links.txt file for more information).


   OTHER GENERAL PROGRAM CHANGES AND ADDITIONS:


      Ability to "unlink" lens parameters.  Previous version of PTAssembler forced the
        lens parameters to be identical across all images in the project.  In other words,
        they were "linked".  This version allows you to specify different values for any
        of the lens parameters (a, b, c, d, e, g, t, FOV).  This is useful if your project
        includes images taken with different orientations, different focal lengths, or even
        different lenses.  It is also useful to vary the shift (d, e) parameters, in order
        to create a composite image from images taken where the lens moved in relation to
        the subject (e.g. a film scan broken into several smaller components).

        After "unlinking" these parameters on the Step 2 (Lens/Settings) screen, you can
        enter values on the Step 1 (Source Images) screen and values from one or more
        images on the Step 4 (Optimizer) screen.


      Morph-To-Fit improvements.  In addition to "morphing" the entire panorama to
        force all control points to align in the final image, an option has been added
        to morph only selected control points. This is useful for correction
        parallax/alignment errors that only appear in selected regions of an image,
        such as when stitching images taken hand-held, or without a panoramic tripod
        head.  Also, if you have images that show parallax error, it may be the case
        that you don't want a particular control point to be used when optimizing
        (because it will may lead the optimizer to produce incorrect values), but you
        might want to use it when performing the final stitch (i.e. morph the region
        of the panorama around the control point to ensure that the images align correctly).

        Thus, control points can now be used for either or both of the following purposes:

            1.  To provide information to the optimizer to compute the correct values
                for yaw, pitch, roll, a, b, c, etc.  (This is the default use for all
                control points.)

            2.  To provide information to the stitcher as to which points should be
                forced (i.e. morphed) to align.

        To access this feature, check the box labeled, "Morph Selected Control Points
        Only" on Step 2, and right-click on control points on Step 3 to specify whether
        a control point should be used for optimizing, morphing or both.  Prior to
        performing a final stitch, PTAssembler will automatically regenerate the
        morph-to-fit data used by Panorama Tools to ensure that the values are up-to-date.


      Lens Presets.  If you frequently use the same lens(es) for your projects, you can
        store all lens parameters (i.e. a, b, c, d, e, g, t, fov) as a 'preset' which
        can be rapidly recalled into a new project.  This eliminates the need to re-type
        all lens parameters for a new project.


      Added 'Control Point Information' screen.  The Control Point Information screen
        can be used to view details about all the control points in a project in one
        place.  Rather than just displaying information about the control points for
        two particular images (as on the Step 3/Control Points screen), the Control
        Point Information screen can be used to select/display/delete one or more
        control points in project.
        Version 2.0.10:  Added option to change morph-to-fit and/or optimize option
        for one or more control points simultaneously.


      Added stand-alone lens calculator.  The lens calculator can be used to convert
        between FOV and focal length.  Panorama Tools requires the user to input the
        field-of-view for the lens used to take the images.  Although PTAssembler
        can compute field-of-view from focal length, you may wish to enter the
        field-of-view directly if PTAssembler's calculations are not satisfactory.
        The lens calculator can assist in converting between field-of-view and focal length.


      Added several new options.  In addition to rearranging the preferences screen,
        several new options have been added.  For example, the ability to configure
        the "Auto-optimizer" has been added.  This allows the user to specify the
        sequence of optimization steps that occur when the "Auto-optimizer" button
        is pressed. An option to turn on/off 'auto-regeneration' of morph-to-fit data
        immediately prior to creating final image has been added.  An option to control
        the text font size used on the control point viewer windows has been added.

      Added new help documentation.  In addition to the existing wizard and extensive
        Tool-tip help, 'help' style documentation for PTAssembler has been added.

      User-configurable menu items.  The Tools and Help menus can now be modified by
        the user.  You can add links or programs to these menus.  See userTools.txt and
        links.txt files for more information.

      Added more error checking.  Several new warnings have and error-checks have been
        added to help the user avoid commonly made mistakes when working with Panorama Tools.

      Added ability to add control points to projects with only one image (useful for
        determining)lens distortion parameters.

      Added better choice of default directory for new projects.

      Added more information (ratio of control point distance to panorama width or height)
		to screen that displays optimizer results.

      Added experimental feature, called 'micro-position', to correct slight control
        point misalignment for precise alignment. Once a control point is placed
        this feature can be used to analyze a small region around the control point and
        suggest an alternate placement if the control point appears to be slightly
        mispositioned. This feature is not perfect, and can be fooled by image noise,
        rotated or distorted images, etc.  It is turned off by default but can be
        activated on the Advanced screen of the Preferences window.
        Version 2.0.10: Enhanced feature by speeding up performance, adding option to
        specify control point search distance and provide a graphical indicator of
        proposed alternate placement for control point.


      Added feature to try and detect an existing installation of Panorama Tools.

      Added prompt to save current project before starting a new project.

      Added ability to "Cancel" when prompted to save a project before exiting.

      Added more help information to wizard.


   BUG FIXES:

      Bug Fix: Fixed creation of multi-Image Tiff files...previous version appended
        a file extension to output name which confused Panorama Tools. (version 2.0.9).
      Bug Fix: Modified algorithm that computes FOV from Focal length on Lens
        Parameters screen. FOV estimates were incorrect if images were not 3:2 ratio.
      Bug Fix: Fixed remove button on Source Images screen (some images didn't
        always get removed).
      Bug Fix: Corrected sorting by optimized difference on control points screen.
      Bug Fix: Fixed problems running on systems that use "," as a decimal place
        separator.
      Bug Fix: Fixed problems calculating FOV/Focal length/Panorama Height on
		systems that use "," as a decimal place separator (version 2.0.8).
      Bug Fix: Fixed problem specifying non-integer gamma settings on "m" lines.
      Bug Fix: Optimizer script was not correct if some control points were not used
         during optimization.
      Bug Fix: Fixed bug that prevented adding many (i.e. 12+) files to project at one time.
      Bug fix: Fixed problem displaying very small images in viewer and center picker.
      Bug Fix: "Use Control Points" selections are now remembered during Auto-optimize.
      Bug Fix: Old parameters and user input values are reset to defaults when starting
         a new project.
      Bug Fix: Fixed minor typos and element positioning errors on several screens.



Version 1.21 (May 2002)

      Added ability to understand "," and "." as decimal place separator.


Version 1.2 (April 2002)

      Added Check/Uncheck all buttons.
      Added new hint showing largest optimized control point after optimizer run.
      Added "l" and "d" buttons to lighten/darken zoom window image.
      Suggested project name is generated for all new projects.
      Bug fix: Stopped program crashing when starting new project from optimizer window.
      Bug fix: Some projects were not getting added to recently-used menu.


Version 1.1 (rev. 2) (February 2002)

      Added lighten/darken controls on Control Point picker window.
      Fixed bug with disappearing scroll-bars on Reference Point picker window.
      Modified default position of horizontal scroll bar when no control points are set.


Version 1.1 (December 2001)

      Added support for Panorama Tools 2.6b1 color blending features.
      File extension is appended to output filenames if needed.
      Save output file type to project file.
      save "last-used" parameters to ini file.
      Stopped crashing if non-numeric data is entered in parameter fields.
         (Note use a "." not a "," to specify a decimal place).

Version 1.0 (October 2001)

      Initial release


	*****PTAssembler and Panorama tools*****

PTAssembler was originally created as a graphical user interface (GUI) for
the Panorama Tools suite of software -- a collection of free command line
software programs originally written by Helmut Dersch
(http://www.fh-furtwangen.de/~dersch/) to create panoramic images.  The center-piece
of Panorama Tools is a program called PTStitcher. PTStitcher creates stitched,
panoramic images from a series of input images.  A second important Panorama Tools
program is PTOptimizer, which is responsible for determining
the alignment of images in a series before being stitched by PTStitcher, a process
known as "optimzing" the project.

Dersch stopped working on Panorama Tools in the early 2000's and a group of
volunteer programmers continued the work as an open source project.  In early
2006, PTMender was released. PTMender is a faster replacement for PTStitcher.

Today, PTAssembler is distributed with its own stitching and optimizing
program, PTAStitcher.  PTAStitcher is much faster and offers many new features
compared to the older programs that are part of Panorama Tools.  PTAssembler
no longer needs any of the Panorama Tools programs to operate.  However,
PTAssembler can still be configured to work with these older programs.

PTAssembler is distributed with all three stitching programs (PTStitcher, PTMender
and PTAStitcher), and two optimizing programs (PTOptimizer and PTAStitcher)
although the default choice for both stitching and optimizing is PTAStitcher.
(You can switch back and forth between programs by modifying the appropriate
settings on PTAssembler's preferences screen.)

Because Panorama Tools (PTMender, PTStitcher and PTOptimizer) is licensed using
the GPL, it is free to use regardless of whether you purchase a license
for PTAssembler or not.  Source code for Panorama Tools is also distributed with
PTAssembler.  For the complete suite of Panorama Tools programs, check the Pano Tools
sourceforge project:

     http://panotools.sourceforge.net/



	*****Program Status*****

Initial versions of PTAssembler were released as freeware, but the time
and effort required to create this program makes it impossible for me to
continue to give away my work for free.  Thus, this version of PTAssembler
is released as shareware, meaning you are expected to pay a small fee
to "register" it.  The program will operate without restriction for 30 days,
after which time some features will be restricted if the program is not registered.

You can register PTAssembler on-line using the FastSpring payment processing service:

      http://sites.fastspring.com/tawbaware/product/ptassembler



	*****Distribution Status*****

You may freely redistribute PTAssembler as long as you make no modifications and this
file is included.



	*****Troubleshooting Tips*****

If you get an error when trying to start PTAssembler, you may not have the latest
Visual Basic files.  You can get the Visual Basic runtime files here:

      http://www.tawbaware.com/vb6tawba.htm

If you think you've found a bug, please feel free to report it. Instructions on
what to report are provided in PTAssembler's help file under the "Bugs and problems"
section.  Please read that section before submitting a bug report or request
for help.


	*****Disclaimer*****

Your use of this software constitutes your agreement to the following terms:

TawbaWare (http://www.tawbaware.com/) and the author take no responsibility for
any damages caused by this program.  PTAssembler is provided 'as is' without
warranty of any kind.  Use them at your own risk.  I disclaim all warranties,
either express or implied, including the warranties of merchantability and
fitness for a particular purpose. In no event shall I be liable for any damages
whatsoever including direct, indirect, incidental, consequential, loss of business
profits or special damages.

Whew!  Use at your own risk and enjoy!

Max Lyons
maxlyons@tawbaware.com
