Changes for IMOD 3.5.3

Release Notes

IMOD 3.5.3 contained some major functional enhancements plus the usual assortment of bug fixes. The highlights of this version include:

Detailed Change Log

Changes marked with ** are particularly noteworthy, ones marked with * may also be of interest to typical users.

Changes in Tomography Processing

* 10/28/04: Added options to Finishjoin to get a report on the size needed to hold the aligned images, and to get a trial stack with a subset of sections.

* 10/21/04: Added ability for Tilt to adjust the backprojection position for Z-height in the reconstructed slice, which is needed when there is specimen stretch along an oblique axis.

* 10/24/04: Changed Tiltalign to use matrix products instead of explicit equations for computing the projection matrix and its derivatives, converted to PIP input, added an option to solve for a single stretch during projection, added ability to group rotation angles during global solution, and added outputs of factors for adjusting back-projection position as a function of Z height, both into a separate file for global factors and into the local alignment file.

* 10/7/04: Added a script, tomosnapshot, to collect information for diagnosing tomogram building problems.

* 8/28/04: Added command-line argument interface to Makejoincom; changed the procedures so that scaling is computed in Makejoincom and done by Newstack in startjoin.com (for samples) and in Finishjoin (for the joined volume); fixed coordinate problems when rotating; made a new version of joining info file so that it would work with scaling information and with spaces in the directory names; changed Finishjoin to use this new version and do the scaling.

* 7/21/04: Made makejoincom put out commands to make a stack with averages of the top and bottom slices in each section. Added new options to Xfalign to break the alignment at given sections instead of just skipping sections, and to work with averaged samples from serial tomograms and produce only one transform per tomogram.

* 7/21/04: Added scripts Splittilt and Splitcombine for splitting up backprojection and volcombine operations to run on multiple processors with Processchunks.

* 7/13/04: Converted Combinefft to PIP input and added an option for reducing amplitudes in the missing wedge regions to match the reduction in the combined data region, and an option for more sophisticated weighting.

* 7/12/04: Implemented a mode in Midas to make it easier to align chunks of sections (e.g., slices from serial tomograms) to each other. Makejoincom will output the appropriate command line for running Midas in this mode.

3/25/05: Fixed bugs in Tiltalign: multiple nondefault grouping lists could get off if there were excluded views; rotation variable mapping was not being done right with linear mapping and one fixed angle, or with block mapping; separate view groups were not remapped properly when views were excluded.

3/1/05: Changed Copytomocom's test for whether to set the log base to 32768 so that it is based on a negative mean instead of a negative maximum.

2/28/05: A procedure in Warpvol for determining the size of input that needs to be loaded for each output cube had to be run iteratively to avoid crashes in extreme cases.

2/15/05: Made Tiltalign put the prealigned stack size in the fid.xyz file, so that Solvematch will now work properly if tomograms are made from centered subsets instead of from the whole aligned image.

2/3/05: Fixed problem in Tomopitch with model on very thick whole tomogram.

1/28/05: Fixed bug in Copytomocom's handling of exclude list in new align.com.

12/5/04: Fixed problem with converting backslashes in Makejoincom.

11/9/04: Fixed a problem in the way warpvol determined range of data to load for each cube, which was giving gray areas in interior of volume.

10/21/04: Changed Combinefft so that the default method of reducing the power in the missing wedge regions is to use spherical shells and comparisons between the different regions.

10/12/04: Fixed a bug in Tilt in the Y-positioning of a tomogram when it falls back to old style X-axis tilting, and fixed/optimized fallback strategies for X-axis tilting and cosine stretch when running out of memory.

10/8/04: Fixed Tiltalign's failure to give both model and residual output with a filename containing a period.

9/29/04: Made Splitcombine check for writability of user's temporary directory to avoid runaway failures.

9/17/04: Made Finishjoin detect if there is a large rotation between sections and warn that a reference section entry will probably be needed.

9/16/04: Made Tiltalign try several metro factors when the search fails, made it give an error when there is more than one point per view in a contour, and had it not leave an empty fid.xyz file if it fails.

8/28/04: Converted Densmatch to PIP input and provided an option to compute scaling without scaling file.

7/23/04: Added progress output to Rotatevol, Matchvol, and Warpvol.

Changes in eTomo

** 11/22/04: eTomo now includes an interface for joining serial section tomograms, with the ability to select the component tomograms, specify slices for samples, align samples automatically or with Midas, build a trial joined volume with a small subset of images, and easily set the size and offset of the joined volume.

* 2/8/05: Added tabs for multiple data sets loaded into eTomo.

* 1/18/05: Etomo log files can be placed in a chosen directory by defining the environment variable ETOMO_LOG_DIR with the path to the directory. The log files will be given a date/time stamp; the directory will be purged to 60 files.

* 1/14/05: Etomo tomogram generation has a new field to specify additional views to exclude.

* 1/11/05: eTomo can now generate tomograms using the Z-dependent factors from a Tiltalign stretch solution. The check boxes to use Z factors and to do local alignments are now disabled when the last alignment did not produce the appropriate file.

* 1/3/05: Converted Tiltalign command files to PIP input; eTomo has been modified to handle new or old files and output new files and it now allows grouping of global rotations and easy selection of skew-only distortion solution, and produces a Z factor file when distortion solution is obtained.

* 12/13/04: eTomo now saves the .edf as well as the .ejf file automatically at various points when processes are run and upon exit. This will enable it to keep track of processing state better between sessions.

* 12/3/04: Added interface on the eTomo post-processing page to run Squeezevol on the trimmed volume.

* 11/30/04: eTomo now presents an option for reducing vertically and horizontally oriented amplitudes in Combinefft, to avoid crosshatched noise in combined tomograms.

* 8/30/04: eTomo now runs the combine operation using combine.com so that processing will continue if you exit the program and log out.

3/10/05: Fixed an eTomo bug in which a process finishing on one axis could start the next process on the other axis.

3/1/05: Fixed synchronization of parameters between eTomo panels when Done is pressed (e.g., Z offset between fine alignment and positioning).

2/18/05: Fixed problem with eTomo not keeping track of fiducialless, local alignment, whole tomogram positioning and Z factor states separately for two axes.

2/11/05: Fixed problem of no transferfid log when there is an error.

2/11/05: Fixed problems with Makejoincom's handling of Windows filenames; stopped eTomo join interface from running Rotatevol on everything.

2/11/05: Fixed bug in tab function in eTomo; eliminated Window menu as redundant to prevent problems on Mac.

1/27/05: When tilt angles are specified as start and increment values, eTomo now provides defaults for the central view number parameters needed when transferring fiducials from other axis; it also stores all transferfid parameters in the edf file. Progress monitors have been added for 2D filtering, mathvol and matchorwarp steps.

12/13/04: Fixed bug in running 3dmod from eTomo in some cases, created by fixes for spaces in the path on 12/3/04.

12/3/04: Fixed some eTomo problems in combine and joining when there are spaces in the path to the working directory.

9/9/04: Fixed a problem that led to combine.com not running.

9/2/04: Message now sent from eTomo to make object type be scattered points in matching models.

Changes in 3dmod

** 11/21/04: Added undo and redo capability to 3dmod. Virtually all modeling changes can now be undone.

** 2/8/05: Added ability to rotate, stretch and scale contours as well as shift them in the Zap window, using same mouse buttons as in Midas. This mode now stays on until turned off. It works with multiply selected contours.

** 11/1/04: Implemented multiple contour selection with Ctrl and first mouse button or with Ctrl-A to select all contours on a section or inside rubberband.

* 3/23/05: Added a and b hot keys (for Apply and More) to image processing window and made the grow and shrink functions be options in the threshold panel.

* 2/18/05: Added ability to set center of contour rotation and stretching and display of center as in midas, and allowed contour adjustment when no current point is defined (as is the case after Ctrl-A).

* 1/7/05: Added median filtering option to Clip and to 3dmod image processing dialog, 2D or 3D, with adjustable size.

* 12/2/04: Added ability for 3dmod to read raw image files; properties can be defined with command-line options and/or in a dialog box that comes up when a file cannot be read otherwise.

* 12/1/04: Dragging with Ctrl and first mouse button will now add any contours in the current object that the cursor crosses to the multiple selection.

* 11/29/04: Added ability for 3dmod to read in images and take snapshots in any of the file formats supported by Qt's QImage class (e.g., PNG, JPEG, PNM). The snapshot format can be selected in place of an RGB snapshot in the preferences dialog, and JPEG quality can also be set.

* 11/23/04: Added options for controlling whether contours are joined by adding all of their points together end to end, versus connecting them or splicing them together at nearest or selected points. The default settings will now be best for joining fragmentary contours. Multiple contours can be selected and joined at once.

* 11/11/04: Added ability to take FFT of subset area from image processing dialog.

* 11/6/04: Implemented Fourier filtering and taking an FFT in the 3dmod image processing dialog. Fixed problems with intensity scaling and floating in when processing, and changed some of the existing functions to avoid saturation or loss of dynamic range.

* 11/4/04: 3dmod will now automatically mirror FFTs around the origin when the input file has an odd dimension in X.

* 11/1/04: Changes to 3dmod: Changed attach function for zap, slicer and Xyz windows to enable attaching to a 3D point as long as it is visible, even if it is not on the current section. In Contour Move dialog, added ability to convert a spherical point to a set of circular contours in another object. Added menu entry to delete a whole surface. Changed meaning of model resolution to be zoom-dependent, so that continuously added points would be added at an interval appropriate for the zoom. Added help screen for Model Header dialog. Fixed Xyz window to retain floating point model point positions. Changed rubberband so that it has invariant position in image as image is panned and zoomed, and is constrained to the image not the window. Made contour join work with two selected contours or with one set contour and the current contour; provided hot key J to join. Contour deletion will delete multiple selected contours after confirmation. Contour Move dialog will also move multiple selected contours to another object or surface. In the Subset panel of the Model View - Edit Object window, showing the current surface only will now work with meshes displayed and not just with the contours displayed.

* 10/22/04: Under Linux, made 3dmod clear file system cache for each section that it reads (only effective with 2.6 kernel/FC 2). This is to prevent image memory from being swapped out in favor of file data; it may need to be controlled with a preference or environment variable.

* 9/21/04: Added ability to use multiple clipping planes per object, and to set up global clipping planes also (up to 6 in each case). Added surface labels that can be input in the Surface/Contour/Point window. Added ability to adjust the colors of multiple objects at once. Changed the model view object list window to embed checkboxes in a scrolling view, not truncate names nearly as much, allow 512 objects, and display colors of objects. Fixed synchronization of names, on/off state, and colors between 3dmod and model view components. Added a menu entry to rearrange (renumber) objects.

3/23/05: Fixed problem with float losing contrast setting after going to section with slider settings that were truncated to stay in range.

3/23/05: Fixed moving of multiple contours.

3/7/05: In 3dmod, centered FFT of subarea in the subarea so it could be visualized better; fixed problem with subarea not being updated upon resize.

3/6/05: Fixed synchronization of rubberband state and toolbar.

2/24/05: Added ability to select multiple contours from more than one object with Ctrl and first mouse button; contours from multiple objects can be deleted, shifted/transformed, and moved up and down in Z.

2/24/05: Fixed problems with using Qt Assistant for help by providing fallback for IMOD_DIR in Windows, and by putting Assistant in IMOD/bin when Qt is not being packed in distribution.

2/11/05: Fixed problems wih turning on contrast float after starting to do image processing on a section.

2/11/05: Disabled image process and reload menu items when no image or RGB images loaded, thus preventing crashes.

2/9/05: Fixed bug in anisotropic diffusion in 3dmod with non-square images.

1/27/05: Added 2D anisotropic diffusion to 3dmod image processing and to clip.

12/23/04: Fixed bug that made 3dmod lose track of the Z offset from a previous loading of a model on a subset stack.

12/3/04: Fixed bug that crashed 3dmod when pressing Delete with no current contour, and also changed Delete behavior to delete last point in a contour without deleting contour, and to delete an empty contour.

11/22/04: Implemented a new help system for 3dmod using Qt Assistant, and set up a framework for transitioning help pages into the system.

11/11/04: Fixed model view not being able to turn off Low Res mode if a file was saved in that mode.

11/11/04: Made line widths for current image point marker and slicer lines in Zap window be 1, made markers on current object have its width.

11/8/04: Fixed problem with insufficient array size in contour copying function of Line Track.

11/4/04: Image processing in 3dmod is now done in a separate thread to keep the user interface active.

11/4/04: Implemented routines to make 3dmod buttons larger when they are rounded, as in Aqua style in the Mac.

11/2/04: Allowed various drawing colors (e.g., for current point marker) to be changed as storable settings. Made the Defaults button in Edit-Options restore defaults only for the current tab. Added ability to shift a whole contour with first mouse button after activating with hot key P or button in Contour Move dialog.

9/24/04: Added interface for plugins to receive messages and added messages to open or reread align log file in Bead Fixer.

8/30/04: The Zap window Info function now reports unbinned coordinates and a correct newstack command when data are loaded binned.

8/12/04: Added message to make slicer window report its angles, and made slicer give a slice that is invariant to the relative binning in X/Y and Z.

Changes in General Processing Programs

* 3/11/05: Added nad_eed_3d, Frangakis and Hegerl's edge-enhancing anisotropic diffusion program.

* 1/17/05: Reworked Clip so that all but a few processes operate slice-by-slice instead of reading whole volume; made sure that input and output size and mode options and appending worked with this new mode of processing. Abandoned rotate, translate, and zoom processes.

* 1/6/05: Fixed brighten, contrast, and shadow options in Clip, and added options for simple filtering operations available in 3dmod: smooth, sharpen, laplacian, graham, gradient, prewitt, sobel.

* 11/4/04 Clip will now no longer produce mirrored 2D FFTs and will take in either mirrored or non-mirrored FFTs. FFTs produced by Clip and Fftrans are now identical.

* 10/28/04: Added Binvol for binning a volume down in 3 dimensions.

* 9/28/04: Overhauled Imodinfo to add a volume computation that takes account of the spacing between contours connected by a mesh; to handle multiple clipping planes; and to give consistent volume and surface area results in the main output, full object, surface, and centroid outputs when there are inside contours, clipping plane, or a subset selected.

* 9/17/04: Rewrote Imodtrans to do a general 3D transformation from a file, to transform meshes correctly, to take the transformation arguments in any order and repeated if desired, and to handle situations with flipped data, Z-scaled data, and a different destination image file size.

2/10/05: Fixed bug in anisotropic diffusion for 64-bit machines and added appropriate includes to prevent other problems from implicit declarations.

2/9/05: Fixed bug in Newstack in scaling blank images when changing mode.

2/4/05: Fixed tomosnapshot problems for Windows, added file headers.

2/3/05: Fixed Imod2vrml output when the model mesh has empty polygons.

1/29/05: Made Sumdensity work properly with nested contours.

1/28/05: Made Imodsortsurf remove existing surface information to avoid empty surfaces.

1/26/05: Made imod2vrml produce sphere output for all points that have non-zero size.

1/24/05: Fixed bug that crashed imodmesh when the capping exclusion list included first and last slices in the model.

1/17/05: Doubled size of model that can be used in Fortran programs.

1/13/05: Made reducemont work with negative piece overlaps (spaces between pieces) up to 10% of frame size, made it check for image size, and increased buffer for blendmont and reducemont to hold two 4Kx4K images.

1/12/05: Fixed clip 2D correlation, broken by changes on 11/4/04.

1/11/05: In Sumdensity, added a model output of pixels above threshold and fixed a bug in the computation of the sums.

1/10/05: Added -d option to self-install script to allow installation in other than the default location (except on Windows).

1/9/05: Fixed fatal problem with Sumdensity's .adoc file.

1/6/05: Fixed Nda, Mtlengths, Resamplemod, and Mtpairing to ignore pixel size in image file header and work with pixel size in model header. Also fixed Resamplemod to line up all vectors in the same direction along the main axis before summing, even when not inverting MTs.

1/6/05: Made date/time in MRC header titles be produced in system-independent fashion for C-programs, so they will be added in Windows.

12/23/04: Fixed handling of italics, bold, and special characters in program that makes html files from man pages.

12/22/04: Added imodqtassist, a program to allow eTomo to use Qt assistant to show help pages.

12/6/04: Fixed imodinfo -a -f output_file for getting ascii file.

11/29/04: Fixed bug that prevented binning large images in newstack.

11/4/04: Improved filter function in clip to work for non-square images, to work properly for high-pass filtering, and to not have abrupt onset of filtering. Made sure it works with either or non-mirrored FFTs.

10/29/04: Fixed centering of extracted items in Boxstartend.

10/29/04: Allowed Rotatevol to run with only one option; provided defaults for output size and angles.

10/27/04: Fixed csh startup files on Linux, Mac, and SGI and scripts for running Qt programs to work if the path or the dynamic library path contains entries with spaces.

10/25/04: Added option to Midas to define a transform output file different from the input file.

10/24/04: Switched to a C version of the FFT library (a translation of the Fortran version), added a 3D FFT option to Fftrans, and speeded up clip fft 3d. Switched setupcombine to use Fftrans since it seems faster than clip.

10/15/04: Fixed bug in xfalign that prevented using a filter.

10/12/04: Fixed a bug in writing meshes in a model to an NFF file.

10/7/04: Fixed mtk to work with model built on image with pixel size in header.

9/27/04: Kept Imodmesh from combining polygons at different Z levels when there are low and high resolution meshes present, which would screw up other programs that rely on one polygon per Z plane.

9/24/04: Added reprojection option to Tilt.

9/23/04: Fixed reference mode in Midas, broken by block mode changes.

9/14/04: Made blendmont preserve pixel sizes.

9/10/04: Added a program, Sumdensity, for summing densities within contours.

9/9/04: Made Newstack work properly with PIP input when a transform file has only one line, which is needed for new startjoin command file.

8/28/04: Changed head and tail commands in all scripts to use -n before count.

8/22/04: Added workaround to Windows problem reading internal strings that could be numbers or filenames.

8/12/04: Added an option -multadd to Newstack to scale by multiplying by a factor then adding a constant.