Difference between revisions of "MIPAV change list"

From MIPAV
Jump to: navigation, search
(6.0.0 (11/7/2012))
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== Version 5.x.x change list ==
+
== Version 7.x.x change list ==
  
=== 5.4.4 (8/22/2012) ===
+
=== 7.0.1 (4/5/2013) ===
  
 
* File handling
 
* File handling
** DICOM: Fixed a number of issues in ordering the slices of some 3D and 4D datasets.
+
** DICOM: When trying to open an image with a Transfer Syntax UID that indicates that it is a compressed DICOM, but with an image tag length that implies that it is not compressed, try reading it in without decompression.
** DICOM: Added x,y,z origin information to file header display dialog.
+
** DICOM: Fixed a problem in the DICOMDIR browser that prevented it from opening.
** DICOM: Fixed enabling of z origin for DICOM files in the orientation and start location panel of the Image attributes dialog.
+
** Fixed a problem in the Open sequence tool with the use of progress bars that caused crashes for some file formats (this means that there are no progress bars when opening the sequence).
** DICOM: Fixed calculation of the LPS origin for 2D DICOM files.
+
** When writing a file without doing a 'Save as', first check to see if the file write options have an extension set.
+
** ZVI: Greatly improved reading of some files (including some zlib-compressed files).
+
** Added initial support for reading ITK MetaImage files (.mhd).
+
  
 
* Algorithms and utilities
 
* Algorithms and utilities
** Added multi-threading to DTI fiber tracking algorithm.
+
** Added new utility for correction of non-helical CT gantry tilt correction.
** Added Hurst index filter algorithm.
+
** Fixed some issues running the Prostate segementation algorithm on some systems.
** Fixed an error message in the Point area algorithm.
+
** The DialogDefaultsInterface has been added back. JDialogBase now implements this interface and provides default versions of the loadDefaults() and saveDefaults() methods.
** Fixed bug in reading the transformation matrix from a file in the Transformation algorithm.
+
** Convert 3D to 4D utility now sets the result image origin.
+
** Added Tamura texture filter algorithm.
+
** In the various concatenation utilities, added the ability to choose whether file infos should be copied to the result image.
+
** Added Rice wavelet algorithm.
+
** Added new MRI prostate segmentation algorithms.
+
** Added a new utility to swap either slices or volumes between two image datasets.
+
** In the Image calculator, fixed a bug for computing stdev in bulk for 3-5D images.
+
  
 
* VOIs and paint
 
* VOIs and paint
** Added new trim mask parameter to the MIPAV options dialog.
+
** The backspace key now behaves the same as delete when working with VOIs to delete points or entire curves (which fixes issues with using an Apple keyboard on Windows).
** Mask->Paint now works same as Mask->VOI (i.e. if no imageB is open, then imageA is assumed to be the mask image).
+
** Improved handling of some VOI selection events.
+
** Added "Select all contours of VOI" menu item.
+
** Added default keyboard shortcut 'm' to display measurements of VOIs.
+
** Renamed VOINode class to VOIContourNode to more accurately reflect its purpose.
+
** Fixed some issues calculating statistics by slice and contour from the GUI.
+
** VOI slices are now referenced using an explicit call to the plane of interest, this allows all VOIs which are part of multiple planes to be graphed and ordered appropriately.
+
  
 
* Image views and visualization
 
* Image views and visualization
** Fixed errors with the tabbed pane interface in the volume / gpu renderer. Fixed crash when the decimate button pressed.
+
** Added better handling of when the GPU volume renderer when the videocard doesn't support the required OpenGL or GLSL version.
** Fixed the inaccurate display of interpolation type in the Zoom dialog.
+
** When opening the renderer, apply the LUT that is already set for the image.
  
 
* Miscellaneous
 
* Miscellaneous
** Changed all 'Help' buttons in MIPAV to use the new MIPAV wiki-based help pages. The MIPAV help jar file and MipavUtil.showHelp() will be removed in a future release of MIPAV.  Because of this, an internet connection is required to view the MIPAV help.
+
** Fixed some issues with scripting plugins that have JDialog in their name.
** Added a new button to the status bar that allows the user to report bugs directly to the MIPAV development team.  This button collects system information and can take screen shots to give more data for bug replication.
+
** PlugInAlgorithm plugins now are displayed even when no image is open (but are disabled).
** Fixed error logging functionality as part of bug reporting system.
+
** Fixed some issues in handling command line arguments that start with two dashes instead of one.
** Fixed some user interface issues in the Image attributes dialog.
+
** Added buildSlider() method to GuiBuilder.
** Removed a number of axiom library jars that were not being used from the MIPAV installation.
+
** Auto-restart of MIPAV after a memory change on Windows is no longer supported.
 +
** MIPAV is now started the same way on 32 and 64 bit systems. Shortcuts to start with or without a debugging window are now installed.
  
=== 5.4.3 (6/11/2012) ===
+
=== 7.0.0 (3/22/2013) ===
  
* File handling
+
Updated the JREs and libraries distributed with MIPAV. On Windows and Linux, the JRE installed is based on version 1.7.0_17. The installed native libraries used are the same, except for Jogamp, which is now the Jogamp JOGL/JOCL release from 2012-11-01.
** DICOM: Fixed opening multiple files into a single frame using the DICOM browser.
+
** DICOM: Improved handling of DICOM slice ordering.  More fixes are still needed in the next MIPAV release.
+
** DICOM: Fixed an issue sorting Philips DICOM DWI data.
+
** DICOM: Fixed handling of some DICOM tags with invalid specified tag lengths.
+
** Added value column to show DICOM tag information to the Image directory tool.
+
** DTI: Added reading and writing of the fiber track files in DTI Studio format (.dat) VTK legacy (.vtk) and VTK xml (.vtp).
+
** DTI: Added reading and writing of multiple bmatrix file formats and saving of bmatrix values to DTIParameters.
+
 
+
* Algorithms and utilities
+
** Added Rician and Rayleigh noise option to the Noise utility.
+
** Enhanced Grid generation to work with complex images.
+
** Enhanced MIP generation to work with complex images.
+
** Enhanced Invert utility to work with complex images (Image math with INVERSE).
+
** Enhanced Replace value utility to work with complex images.
+
** Corrected setting of imaginary margin value in the Add margins utility.
+
** Corrected setting padding value array for color images in the Add margins utility.
+
** Fixed a minor bug in the Quantify utility.
+
** Fixed scripting and JIST-ifying of the Brain extraction (BSE) algorithm.
+
** Added tensor calculation from b-matrix values to the DTI pipeline.
+
** Added new DTI fiber tracking based on tensor.
+
** Added EPI distortion correction algorithm to DTI pipeline.
+
** Added DTI pre-processing step to resample T2 image to match B0 volume's resolutions and dimensions.
+
** Updated the DTIPipeline pre-processing panel to correctly extract the B0 volume, register it to the resampled T2 input image, update a copy of the original DWI image with the new B0 data, perform within-volume 4D registration to the B0 sub-volume, and save the new 4D DWI image, resampled T2 image, and matrices to file for the EPI-Distortion correction. In AlgorithmRegOAR35D added a new function that sorts the registration matrices for the 4D volume registration and adds the identity matrix for the reference volume (if necessary). Added code that applies the array of TransMatrix to the gradients to produce new gradients and stores the in the new DWI image.
+
** Added many new supported datatypes and clipping/promotion schemes to the 4D image calculator.
+
** In the Principal components algorithm, the optional matchImage is now matched to the closest slice and/or color in the source image by looking for the closest match of the weights of the principal components.  Normalize weight and eigenInverse[z] vectors to unit length before looking for best match.  Output Euclidean squared matching error.  Either Euclidean or Mahalanobis distance can be used in image matching.
+
 
+
* VOIs and paint
+
** The VOI statistics and property dialogs now support calculating based on the active volume only or across all volumes for 4D images.
+
** Fixed bug where the option to close a VOI in the right click popup menu only displayed when adding contour to VOI that was open.
+
** Using the ignore value functionality when calculating statistics with color images is now supported.
+
** Fixed some floating point and rounding issues related to paint in the Tri-planar view.
+
** In the VOI graph, the tab for Modify Graph Show Points check box has been replaced by Show only lines, Show points and lines, and Show only points radio buttons.
+
** Added VOI intensity histogram graph display.
+
 
+
* Image views and visualization
+
** The user can now display the T2 image with any of the fiber tracks properly embedded in the volume visualization.
+
** Fixed the within-volume embedded display for all VOIs and DTI glyphs.
+
** Fixed the two-volume image display so the user can load the T2 image with the color map image and view both.
+
 
+
* Miscellaneous
+
** Fixed off-by-one error in setting the provenance timestamp month.
+
** Removed the DTI tab from the Image attributes dialog.
+
** Added the ability to capture screenshots in MIPAV to the system clipboard instead of to a file or frame.
+
 
+
=== 5.4.2 (4/9/2012) ===
+
  
 
* File handling
 
* File handling
** Fixed an issue that could occur while performing multiple file read/write actions at the same time due to the use of static variables.
+
** PARREC: Fixed bug reading orientations and FOV from some files.
** DICOM: Fixed sorting of DICOM slices to be based on Patient position (if present) first instead of just Image/Instance number or file name.
+
** PARREC: Fixed reading of 4th dim unit of measure and resolution.
** DICOM: Fixed private tag VM values for named private tags.
+
** PARREC: Added patient name reading and included it in file header dialog information.
** DICOM: Fixed handling of L2R/R2L orientation bug for some sagittal images.
+
** PARREC: When reading sagittal files for sliceAngle and offCentre arrays put minus signs in front of sliceAngle[2] and offCentre[2] to reflect change from RL in PARREC to LR in MIPAV.
** DICOM: Improved handling of origin for 4D images.
+
** Added support for reading AFNI matrix (.1D file) to TransMatrix.
** DICOM: Enhanced support for implicit tags where previous DICOM writer was unable to figure out proper VR.
+
** Allowed ViewImageFileFilter to be extended, added .1d file format to list, made accept() method insensitive to capitalization differences.
** PARREC: Fixed handling of L2R/R2L orientation bug for some sagittal images.
+
** ViewImageFileFilter now explicitly implements java.io.FileFilter to improve performance.
** MIPAV XML: Fixed an issue reading the origin for 4D images.
+
** DICOM: Fixed the reading of some chunked DICOM encapsulated lossless JPEG files.
** Improved memory management while reading some files from the Image sequence dialog.
+
** DICOM: Added a dictionary of private tags, which supplies them with names in the view header dialog.
 +
** DICOM: Fixed error reading some images that included an icon image in a sequence tag.
 +
** DICOM: Changed tag reading to assume that finding 0028,0008 - Number of Frames means that the DICOM is multi-frame.  Before, a 0002,0002 - Media Storage SOP Class UID that indicated enhanced MR, CT or XA was required.  This caused a problem for a multi-frame OCT dataset from JHU.
 +
** DICOM: Changed error message when the slice data extents are 0.  Indicate that there was a problem in reading extents/image data, not that we think it's a spectroscopy dataset.
 +
** Added TrackVis file support.
 +
** AFNI: Added afni implementation of subBrick names and statistical distributions.
 +
** Implemented ability to programmatically read in just the header of most images, those images where this is not possible print out that information to the Preferences.debug output and return null.
  
 
* Algorithms and utilities
 
* Algorithms and utilities
** Fixed bug in handling of Full Powell's method checkbox in OAR 3.5D algorithm.
+
** Added Multi-exponential to Time fitting Systems analysis tool.
** Fixed the handling of non-isotropic cases in Circle utility.
+
** The Time fitting tool can now use a custom DICOM tag for the time values.
** Fixed a bug in the scripting of the Image math utility.
+
** In the utility Match images, fixed a bug in the handling of when the images' units of measure are unknown or do not match.
** Updated the Tre T2 user interface.
+
** Added Spectral clustering tool to Systems analysis.
** Added new ELSUNC OAR algorithm, which can be selected from the various OAR dialogs.
+
** K-means algorithm no longer trys to read text points file twice.
** The Concatenate multi 3D to 4D, Convert 3D to 4D, Extract slices, Insert slices, and Mosaic to slices utilities now set the axis and image orientations of the result image.
+
** Added Spatial color compactness algorithm to Segmentation menu.
** The Insert volume, Remove time slices, and Subset utilities now copy DICOM tags from the source image to the result image.
+
** Added OpenCL-based image Deconvolution algorithm.
** Fixed a L2R/R2L bug for sagittal images in the Reorientation utility.
+
** Fixed OAR3D transformation directory saving logic.
 +
** Subset image now transfers LUT to result image.
 +
** In Transformation algorithm, fixed readTransformMatrixFile() to work with 4D images.
 +
** Fixed a number of issues in scripting with filters that now support opencl processing.  Some algorithms didn't properly set up the params or use them when trying to run the algorithm.  GaussianBlur didn't record at all when run using opencl.
 +
** Fixed the Median algorithm progress bar.
  
 
* VOIs and paint
 
* VOIs and paint
** VOI UID is now displayed in the VOI properties dialog.
+
** Fixed a bug handling VOI stats on 2d images.
** Replaced Save VOIs in LPS coordinates checkbox with Save VOIs in LPS mm. coordinates radio button and Save VOIs in voxel coordinates radio button.
+
** Fixed a bug displaying VOI statistics results table for color images.
** Added import and export of VOIs as polygons.
+
  
 
* Image views and visualization
 
* Image views and visualization
** Moved DTI color display plugin to be under Systems analysis -> DTI -> DTI color display.
+
** Major updates to the GPU volume renderer. Changed supported version of OpenGL to 3 core profile and GLSL to shading language 330.  These changes should fix the GPU renderer on MacOS 10.7 and above.
** Fixed an issue with properly cleaning up the image contained in the Image directory tool.
+
** Fixed mouse wheel scrolling in the GPU renderer on Macs.
** Added labels to display the surface mesh volume and surface area calculations in the GPU volume renderer.
+
** Removed a number of old, unused GLSL shaders.
** Added reading/writing of the fiber tracks as VTK .vtp (xml format) files. Added new vtkPolyline.xsd.
+
** Updated the WildMagic library: Changed Vector2f, Vector3f, Vector4f, Vector2d, Vector3d, Vector4d, Matrix2f, Matrix3f, Matrix3d, Matrix4f so that most functions return 'this', enabling chaining of multiple vector or matrix operations. The original functions were deprecated and the new functions now begin with a lower-case letter. All classes using Vector3f and Matrix3f were also updated to use the non-deprecated functions.
** Changed GPU volume renderer to save QuickTime movies instead of AVI files.  A JMF problem on 64-bit systems was causing issues writing AVI files.
+
** GPU renderer now supports displaying a grayscale image and a color image at the same time.
** Remove all the stl binary saving and loading routinesFor now, when the surface file specified as the .stl, we only save the ascii stl format.
+
** Fixed some issues with loading and changing the inital display/lut methodRemoved 'Default' option, but left in support for that value when reading in legacy files.
** Enhanced many utilities to support processing complex images.
+
** Fixed auto-loading of saved win/level (first and last point of transfer function were being set up incorrectly).
** The Insert volume and Correct spacing utilities no longer prohibits color images.
+
** TransferFunction methods to remove points now return the removed points.
 +
** Added t-score LUT option that mimics AFNI.
 +
** Fixed a minor bug in the Zoom dialog.
  
 
* Miscellaneous
 
* Miscellaneous
** The MIPAV installer now prompts the user to set the initial memory heap limit for MIPAV's Java Virtual Machine.  The default starting heap allocation is 300MB and the default maximum heap allocation is 1000MB.  Setting the memory allocation from within MIPAV will still set the starting and maximum allocations to the same value, as was done before.
+
** Fixed the Report bug button.
** The MIPAV installer now prompts the user to determine whether the library files installed to /Library/Java/Extensions/ should replace any files found in that directory with the same names.
+
** Added button to the MIPAV options dialog to reset all values to defaults.
** Added buttons to the toolbar for starting ImageJ from within MIPAV, converting an image in memory from MIPAV format to ImageJ, and vise-versa.
+
** Fixed a number of installer-related issues on multiple platforms.
** Improved support for installing ImageJ plugins via the MIPAV Install plugin dialog.
+
** Added ability to change the Java look and feel in the MIPAV options.
** Further improvements to the DTI data import, pre-processing, fiber estimation (LLMSE from Camino), statistics, visualization, and processing pipeline.
+
** Added preference for using DICOM ordering when opening AFNI files in the MIPAV options dialog.
** DTI pipeline now has capability to read dtiStudio, MIPAV standard, FSL, dcm2nii, and miscellaneous bval/grad files.
+
** Added preference for automatically using LUTs stored in images in the MIPAV options dialog.
** Optimized color image calculation from DTI image for faster processing.
+
** In TransMatrixd, changed routine name from transformAsPoint3Df to transformAsPoint3Dd.
** Modified the DTI output image to be consistent with the Susumu Mori book.
+
** Fixed minor bugs in ModelImage methods: set(int[], Number), set(int[], boolean), set(int[], byte), set(int[], short), set(int[], int), set(int[], long), set(int[], float), and set(int[], double).
** Fixed the DTI visualization for the ellipsoids, cylinders and arrows so that they align with the fiber track.
+
** Changed a number of methods and fields in file- and view-related classes to protected.
** Adding new vabra code for image registration and deformation field calculation for the diffusion-tensor pipeline.
+
** Improved display of toolbar buttons on Macs.
** Added the ability to load any tri-mesh surface and use that surface as a VOI region for inclusion / exclusion for fiber tracking.
+
** Added better handling of unavailable OpenCL dependencies.
+
** Updated version of ImageJ to current version on imagej.nih.gov.
+
** Added double precision version of TransMatrix: TransMatrixd.
+
** Removed a number of jar files related to XML processing and web services that were no longer used by MIPAV.
+
  
=== 5.4.1 (2/17/2012) ===
 
  
* Algorithms and utilities
+
== Version 6.x.x change list ==
** Fixed handling of units of measure in OAR 3D algorithm.
+
 
+
* Miscellaneous
+
** Fixed an issue loading OpenCL kernel files.
+
  
=== 5.4.0 (2/16/2012) ===
+
=== 6.0.1 (11/14/2012) ===
  
 
* File handling
 
* File handling
** DICOM: Added ability to add new DICOM tags through the GUI.
+
** Changed start location in FileRawChunk.readImage to long instead of int to support reading some large files.  This affected a number of different file format readers.
** DICOM: Improved interface for editing DICOM tags.
+
** DICOM: Anonymizer plugin (PlugInAnonymizeDicom) now supports sequence tags.
+
** DICOM: Improved support for DWI tags in Philips DICOM files.
+
** DICOM: Fixed discovery of the image tag location for some implicit DICOM images.
+
** DICOM: Added catch-all display type to support invalid transfer syntax settings.
+
** DICOM: Added VR for implicit length tags and fixed VM.
+
** DICOM: Fixed DICOM slice sorting for some datasets.
+
** DICOM: Added support for some non-enhanced 4D DICOM datasets.
+
** DICOM: Fixed a bug where some images where incorrectly assumed to be enhanced DICOM.
+
** TIFF: Fixed error in creating file infos for each slice.
+
** TIFF: Fixed reading of resolution/unit of measure.
+
** TIFF: Incorrect Long values in the Tiff header are now tolerated.
+
** MIPAV XML: Added DTI parameter section to the MIPAV XML header.
+
** MGH: Fixed a bug in getting the image orientation under some circumstances.
+
** PARREC: Fixed a problem handling writing some 2D images.
+
** PARREC: Fixed an issue handling the units of measure of some images.
+
** PARREC: Fixed reading of dim2 in some files.
+
** PARREC: Fixed an issue reading image resolutions.
+
** PARREC: Fixed writing of current extents to file header.
+
** PARREC: Fixed writing of image orientation.
+
** AFNI: Changed AFNI reader to allow reading of files where the file name and SCENE_DATA type indicate tlrc, but the number of WARP_POINTS indicate ACPC (30 instead of 360).
+
** NIFTI: Added selection of which type of NIFTI file (.nii/.img and .hdr) to write out when performing a Save or SaveAs in a MIPAV script.
+
 
+
* Algorithms and utilities
+
** '''Added beta OpenCL GPU processing to Gaussian blur, Gradient magnitude, and Laplacian algorithms.''' A modern GPU with updated drivers is required.
+
** Improved efficiency of Concatenate multiple 3D to 4D utility.
+
** Improved efficiency of Convert 3D to 4D utility.
+
** Fixed a bug setting the units of measure in the Concatenate multiple 2D to 3D utility.
+
** Added JIST algorithm parameter discovery to SWI algorithm.
+
** Added new SNR algorithm to compare any two images (not just MRI).
+
** Improved Flip utility's handling of some image orientations.
+
** The Transformation algorithm now correctly handles VOI contours enclosed within other contours of the same VOI.
+
** Fixed an issue in the Transformation algorithm handling VOIs with multiple contours.
+
** Improved efficiency of handling VOIs in the Transformation algorithm.
+
** Added support for transforming VOIs to the BSpline registration algorithm.
+
** Improved bin calculation in AHE, AHE local, and Histogram match algorithms.
+
** Added Edge extraction by FIRE operators, Fuzzy minimization, Fuzzy minimization De and Chatterji, and Rule based contrast enhancement algorithms.
+
** Added DTI EPI distortion correction algorithm.
+
** Added rotation-only constrained registration to the OAR 2D algorithm.
+
** The Least squares registration algorithm now tolerates non-point VOIs and can handle points being in different VOIs.
+
** The Least squares registration algorithm now can transform non-point VOIs from the source image to the result image.
+
** The Thin-plate spline registration algorithm now tolerates non-point VOIs and can handle points being in different VOIs.
+
** The Thin-plate spline registration algorithm now can transform non-point VOIs from the source image to the result image.
+
** Multiple improvements to the K means algorithm, including new methods and weighting.
+
** Added new utility to insert a user specified or blank volume into a 4D dataset.
+
** Added aggregated ellipse generation to Circle generation algorithm.
+
** Added the ability to generate circles/ellipses with different sizes to Circle generation algorithm.
+
** Added resolution-aware circle generation method to Circle generation algorithm.
+
** Improved updating of NIFTI file information in result images of many algorithms and utilities.
+
** Reduced the aggressiveness of multi-threading in OAR algorithms due to race conditions that could lead to inconsistent results.
+
** Added ActionDiscovery support to ID objects algorithm.
+
 
+
* VOIs and paint
+
** Fixed a bug in the tri-planar view protractor angle calculation.
+
** Added more options for tri-planar view image rotation/transformation.
+
** Fixed a bug in detecting clicks near a line VOI in some situations.
+
** Fixed an issue in the calculation of VOI area.
+
** Added Open paint, Save paint, and Save paint as menu items.
+
** Added paint bitmap file type (.bpm) for saved paint masks.
+
** Added VOI trim parameter item to VOI pop-up menu.
+
  
 
* Image views and visualization
 
* Image views and visualization
** Added reading/writing of all supported surface file types from the volume renderer, including GIFTI files.
+
** Updated the multi-histogram display. Fixed the display panel gradient mag. graph. Added a 'window' option for the triangle widget by moving the green control point up/down. Fixed reload error when the renderer is closed and then opened again. Fixed save / load file bug for triangle widget.
** Added preference to MIPAV options dialog that allows the user to select how images should be displayed initially when they are opened.
+
** Added a new default lookup table/transfer function option that mimics the behavior of ImageJ.
** Fixed some bugs with the brain surface flattener renderer.
+
** Fixed rotation error with the J3D volume renderer eye clipping.
+
** Improved performance of image display with the lightbox open and checkboarding on with 2 images.
+
  
* Miscellaneous
+
=== 6.0.0 (11/7/2012) ===
** Improved error output when calling algorithms using JIST-style parameter discovery interface.
+
** DTI parameter information now stored in ModelImage (acquired from Philips/Siemens DWI files or Image attributes DTI tab).
+
** Added headless functionality and explanation for how to change memory usage in non-GUI instances of MIPAV.
+
** Added new UI for DTI data import, processing, and visualization.
+
  
=== 5.3.4 (9/14/2011) ===
+
'''MIPAV is now open source!'''  See the [http://mipav.cit.nih.gov/license/license.html license information] for details.
  
 
* File handling
 
* File handling
** DICOM: Many more fixes to DICOM reading.
+
** Added basic support for dragging-and-dropping directories, single files and multifile images into MIPAV.
** DICOM: Added support for reading images with embedded icon and radiotherapy treatment planning images.
+
** DICOM: Fixed reading of some files with private tags that resemble the image tag pattern.
** DICOM: Fixed writing of DICOM files.
+
** DICOM: Fixed an issue reading some enhanced DICOM tag sequences.
** DICOM: Fixed support for 4D DICOM files.
+
** DICOM: Added support for writing enhanced MR, CT and XA.
** BMP: Improved read support for some medical BMP files.
+
** DICOM: Fixed an issue reading tags in some boolean images.
** TIFF: Corrected writing of resolution unit for some TIFF files.
+
** DICOM: Fixed handling of a number of tags in the 0018 group when reading and writing images.
** PARREC: Improved the amount of header data extracted and displayed to the user.
+
** DICOM: In writeMultiFrameImage in "0028,0010" bitsPerPixel = 16 rather than source image bitsPerPixel value so that it always reflects the short data in the written file.
** ANALYZE: Added checkbox to NIFTI save dialog to zero out the funused fields in the Analyze header.
+
** DICOM: Fixed display of min and max values for color images in the file header dialog.
 +
** DICOM: Fixed an issue reading image data when no pixel padding was specified.
 +
** DICOM: Added support for writing multiframe ushort, ARGB and ARGB_ushort data types.
 +
** DICOM: Added support for writing ARGB_ushort data types.
 +
** TIFF: Added support for reading in ImageJ ROIs stored in TIFF header.
 +
** TIFF: 4D TIFF data is written out as a set of 3D files now.
 +
** RAW: Fixed issue writing out 4D volume as 3D files.
 +
** RAW: Fixed issue reading boolean image.
 +
** ANALYZE: Fixed an issue reading some boolean images.
 +
** PARREC: Fixed resolution calculation for some images.
 +
** PARREC: Fixed processing of angulation midslice in parrec images.
 +
** PARREC: Added slice/offcenter loading for any orientation.
 +
** PARREC: Added support for reading/writing 4D data as multifile.
 +
** Added new Spar file format support.
 +
** MINC2: Fixed progress bar issue and added better support for saving image subsets (either 3D or 4D).
 +
** MINC2: Improved support for reading 3D and 4D images with some orientation/image data settings.
 +
** MINC: Added support for writing 2D and 4D images.
 +
** MINC: Added support for multifile datasets.
 +
** INTERFILE: Added multifile support.
 +
** Fixed getting image unit from abbreviation.
 +
** NIFTI: For Preferences.PREF_FLIP_NIFTI_READ the default preferences has been changed form true to false.
  
 
* Algorithms and utilities
 
* Algorithms and utilities
** Added scripting to Display pixel similarity cost functions tool.
+
** Added a new system for saving/loading algorithm and utility defaults automatically to JDialogBase. The old interface was renamed to LegacyDialogDefaultsInterface and was deprecated.  As part of this, dialogs that want to have this behavior should call super.actionPerformed(event) when the event is not handled in the subclass actionPerformed().  The new system also adds the ability to save/load parameters to different profiles.
** Improved DICOM support in the Concat multiple 3D to 4D utility.
+
** Added Locally linear embedding algorithm.
** Added a checkbox to the OAR algorithms to enable multi-threaded execution.  The multi-threaded execution is non-deterministic, but the results will be similar for similar inputs.
+
** In DTI importer, corrected anatomy fat shift options.
** Improved the logic of the OpenCL checkbox in the FFT algorithm dialog.
+
** OAR algorithms now save interpolation, resolutions, dims, transformVOIs, clip and pad in matrix file.
** Added Independent components algorithm.
+
** Transformation algorithm now reads the additional matrix file parameters if they are found.
** Fixed some performance issues in the Median filter algorithm.
+
** Switched many registration and transformation algorithms to use doubles instead of floats.
 +
** Sped up the nearest neighbor operations in the Transformation algorithm.
 +
** Added new Time fitting algorithm to the Systems analysis menu.
 +
** Removed the Skeletonize3D algorithm.
  
 
* VOIs and paint
 
* VOIs and paint
** Added scripting to Save VOI intensities (the file name defaults to the format [image_name]_[voi_name]_intensities.txt.
+
** Fixed handling of VOI bounding box checkbox in VOI properties dialog.
** Added an Interpolate image display checkbox to the MIPAV options dialog (in addition to its existing location on the LUT dialog).
+
** Fixed some issues grouping VOI contours.
** Fixed a minor bug selecting VOI points under some circumstances.
+
** Added Ctrl key angle modification for line VOIs.
 +
** Allowed line, protractor, and point vois to save in voxel coordinates.
 +
** Now able to do image statistics without having a VOI present from the VOI properties dialog.
 +
** Fixed an issue converting between VOI and mask and back again.
  
 
* Image views and visualization
 
* Image views and visualization
** Menu items for the GPU and Java3D volume renderers have been added to the Image menu.
+
** Added Bicubic image interpolation mode to image display.
** Many improvements made to the multi-histogram module of the GPU volume renderer.
+
** Made a number of improvements to the Custom zoom dialog.
 +
** Fixed J3D surface volume calculation.
 +
** Fixed bug in the slices panel for the GPU renderer.
 +
** Fixed a number of VOI issues in the GPU renderer and in surface extraction.
 +
** Created new method for image display, default transfer function now has a min/max set at the 5/95 percentiles of an image.
 +
** Added new option to the MIPAV options dialog that allows for selection of how the initial LUT for an image should be constructed.
 +
** Made a number of fixes and additions (including a triangle widget and widget save/load) to the GPU renderer multi histogram tool.
  
 
* Miscellaneous
 
* Miscellaneous
** Removed the Auto-ITK menu items due to lack of recent ITK Java bindings support.
+
** Added a new integrated bug reporting button (only works from within NIH - fixed in a future version).
** Improved support for DTI tasks, including a new DTI tab in the Image attributes dialogAdded support for saving bval/grad table in FSL, DTI Studio, or MIPAV standard format.
+
** Added the ability to drag menus out of the main MIPAV menu to separate windows.
 +
** In TransMatrix, a new version of saveMatrix can store other transform variables in addition to the TransMatrixA new version of readMatrix can read these variables. The variables are interp, oXres, oYres, oZres, oXdim, oYdim, oZdim, tVOI, clip, and pad.
 +
** Removed mipav help jar and the MipavUtil.showHelp() method that used it.  MipavUtil.showWebHelp() should now be used to show wiki-based help pages instead of the jar-based help.
  
=== 5.3.3 (7/27/2011) ===
+
== Version 5.x.x change list ==
  
* File handling
+
[[MIPAV change list 5.x.x]]
** Analyze: Fixed a bug in changing the image origins.
+
** DICOM: Rewrite of many parts of DICOM reading and writing, improving performance.
+
** DICOM: Corrected some invalid Value Representation values in the DICOM dictionary.
+
** DICOM: Fixed a JPEG2000-related bug.
+
** MATLAB: When writing, boolean images are converted in unsigned byte, since boolean is not a valid MATLAB data type.
+
  
* Algorithms and utilities
 
** Fixed handling of Nifti file info in the Reorientation utility.
 
** Fixed a bug in performing the Rotate utility on 4D images.
 
** Fixed over-verbose registration algorithm debug printouts.
 
** Improved display in Replace slice utility.
 
** Added initial version of a new algorithm to convert a 3D mosaic image to a 4D image.
 
** Fixed the Reorientation utility.
 
** Added Color saturation transformation algorithm.
 
** Added a progress bar to the Rotate utility.
 
** Fixed a bug in the multi-threaded version of the FFT algorithm for some images.
 
** The Frequency filter algorithm is no longer disabled for color images (2D/2.5D processing only).
 
** The Gabor filter algorithm is no longer disabled for color images.
 
 
* VOIs and paint
 
** Fixed a bug where the pointer cursor was not getting set properly after using the paintbrush.
 
** Fixed some issues with scripting the VOI statistics generator.
 
 
* Image views and visualization
 
** Multiple interface and functional improvements to the multi-histogram GPU volume rendering module.
 
** Added tick marks to GPU volume renderer bounding box.
 
** Fixed a problem linking Tri-planar views when not using the 2x2 view format.
 
** The active image color border size is now configurable in the MIPAV options dialog.
 
** The GLSL GPU volume rendering shader system now dynamically generates the shader program based on the options selected by the user in the GUI.  This results in a significant performance boost due to reduced shader branching.
 
 
* Miscellaneous
 
** Fixed a number of debugging output issues.
 
 
=== 5.3.2 (6/17/2011) ===
 
 
* File handling
 
** DICOM: Added support for encapsulated lossy JPEG2000 files.
 
** DICOM: Added new "AT" dicom tag element to correctly read pointer information.
 
** DICOM: Added new save option to gui for saving DICOM and non-DICOM files in enhanced DICOM format (3D and 4D).
 
** DICOM: Fixed some sequence length bugs.
 
** MATLAB: Fixed a bug in the allocation of the buffer used to decompress MATLAB files.
 
** TIFF: Changed the MAX_IFD_LENGTH to 100000.
 
** XML: When opening an image with a linked image, fixed a bug where the LUT of the linked image would not get loaded.
 
 
* Algorithms and utilities
 
** Added scripting support to Tranform non-linear.
 
** Corrected Transform non-linear naming for JIST.
 
** In the Transform dialog, when opening a matrix from file, both center and origin rotation are enabled.
 
** The ACPC dialog has been improved, addressing a number of bugs.
 
** Improved layout of Haralick texture algorithm dialog.
 
** Added a tool to concatenate multiple 3D volumes into a new 3D volume.
 
** Fixed a bug in the 3D Ultimate erode morphology algorithm.
 
** The OAR, Least squares, and Thin-plate spline registration algorithm dialogs now allow the user to specify a directory where the matrix or deformation files should be saved.
 
** Fixed a bug in the Change type utility which caused problems correctly choosing values for some data types (mostly binary).
 
** The BSE Brain segmentation algorithm now uses the morphological fill holes operation to more correctly address interior holes in the generated mask.
 
 
* VOIs and paint
 
** Fixed error in max statistics calculation, if first element was not in range and all values were < 0, MIPAV would incorrectly report max as 0.
 
** VOI statistics calculations now ignore NaN values.
 
 
* Image views and visualization
 
** Improved multi-histogram shader in the GPU volume renderer.
 
** Added NVidia-based stereo mode back into the GPU volume renderer.
 
** Fixed GPU renderer on Java Web Start release of MIPAV.
 
** Further bug fixes to the GPU volume renderer.
 
** Added ability to animate checkerboard view.
 
** Fixed bugs in surface mask creation, which improves performance when the surface changes.
 
** Fixed errors initializing the DTI visualization framework.
 
 
* Miscellaneous
 
** Added the ability to start up ImageJ from MIPAV and exchange images between the two programs.
 
** Added the ability to open ImageJ plugins from MIPAV.
 
** Added the ability to compile and run plugins for MIPAV and ImageJ from within MIPAV.
 
** Added "GPU enabled" status button next to the Multi-core button on the MIPAV status bar to indicate OpenCL support.
 
 
=== 5.3.1 (5/12/2011) ===
 
 
* VOIs and paint
 
** Improved the memory usage of VOIs.
 
 
* Image views and visualization
 
** Modified multi-histogram blending in the GPU volume renderer.
 
** Added keyboard shortcut ('s') to save the GPU volume renderer view to a .jpg file.
 
 
* Miscellaneous
 
** Fixed a an issue with the Image overlay preferences.
 
** Fixed a case-sensitivity issue when (re-)installing plugins on some OSes.
 
** Improved error handling during plugin installation.
 
 
=== 5.3.0 (5/9/2011) ===
 
 
* File handling
 
** DICOM: Fixed an issue reading in DICOM images.
 
** XML: Added Unsigned Integer type to Image XML schema.
 
** AVI: Removed MSVC, CVID and MJPEG codec support.
 
** MATLAB: Improved memory management during zlib decompression.
 
** FITS: Corrected writing of resolutions.
 
** Improved handling of (0028,0030) tags in DICOM and GE Signa 4/5X.
 
** GE Signa 4X: Added write support.
 
** GE Signa 4X: Added anonymization support.
 
** GE Signa 5X: Added write support.
 
** GE Signa 5X: Added anonymization support.
 
** Improved the Open image sequence tool.
 
** MINC2: '''Writing of Minc2 files is currently not supported.  Additionally, some Minc2 files which perform rescaling are not currently read in correctly.'''
 
 
* Algorithms and utilities
 
** Fixed a bug in the handling of complex data in the FFT algorithm.
 
** Added a checkbox to the FFT algorithm to produce an complex inverse image.
 
** Added ability to perform forward FFT on complex images.
 
** The Crop utility now works with complex images.
 
** The Add margins utility now works with complex images.
 
** Added K-means tool.
 
** Improved 3D to 4D conversion utility operation.
 
** Fixed a bug in the Generate grid utility.
 
** Added a new utility to convert 4D images to multiple 3D volumes.
 
** Removed the following algorithms for licensing reasons: XcosmEM, DenoisingBLS_GSM, DQED and Trilateral filter.
 
** Added 4D Image calculator utility.
 
** Fixed an output problem in the Transform algorithm.
 
** Fixed updating of file infos of non-DICOM images with scanner transformation matrices when algorithms or utilities complete.
 
** Added JOCL/OpenCL implementation of the FFT algorithm (only for power-of-two-sized images).
 
** Added utility to concatenate multiple 2D images into a 3D volume.
 
 
* VOIs and paint
 
** Made Select all VOIs action scriptable.
 
** Fixed a problem in paint brush display for some image resolutions.
 
** Improved error reporting if a VOI will not load into an image.
 
** Fixed reading of some VOI files.
 
** Fixed the recording of shortcuts for VOIs and the execution of VOI-related shortcuts.
 
** Added the ability to create multiple levelset/livewire VOIs by holding down the Shift key.
 
** Improved handling of very long text in the text annotation VOIs.
 
 
* Image views and visualization
 
** Fixed display of complex images if Magnitude is selected as a display option.
 
** Using the arrow keys in the Tri-planar view now moves the crosshairs accordingly.
 
** Added the ability to sync images slice number when doing linked scrolling.
 
** Fixed Tri-planar frame linking.
 
** Made it so that if imageB radio button is selected on the main controls, then when you launch the Histo LUT, the imageB tab is selected.
 
** Fixed the quickLUT operation for 4D images.
 
** Added an option so that user can open images in tiled fashion.
 
 
* Miscellaneous
 
** '''MIPAV now ships and uses a new version of JOGL from jogamp (0.9-283).'''  Additionally, we now package JOCL in the MIPAV installer.
 
** Fixed ModelStorageBase DataType enum so UINTEGER is the 15th in order.
 
** The Image attributes dialog Apply button now properly saves all changes made on any of its tabs regardless of which one is currently selected.
 
** Some minor bug fixes to the slice/time slider appearance.
 
** Added ability to run MIPAV in headless-compliant mode using the command line option '-headless'.
 
** Improved parsing of command line arguments.
 
** Added MIPAV version to the main title bar.
 
 
=== 5.2.1 (2/10/2011) ===
 
 
* File handling
 
** Analyze: Improved display of location 112 information.
 
** Matlab: Images now only load with log mag display if it is set in the preferences.
 
** Vista: Added reading and writing support for the Vista file format.
 
** Interfile: Fixed a problem reading some truncated files.
 
** PSD: Fixed support for Photoshop PSD files.
 
** Improved handling of the absence of the HDF5 libraries when trying to detect an unknown file.
 
 
* Algorithms and utilities
 
** Added more customization options to Talairach transform utility.
 
** In the transform algorithm, fixed the setting of (0020, 0032) tag when the transform alters the number of slices in a 3D volume.
 
 
* VOIs and paint
 
** Corrected a number of area/volume/conversion measurements.
 
** Added the ability to show/hide a VOI's bounding box from the right click menu.
 
** Fixed a bug in saving VOI state.
 
** Fixed a bug in the livewire VOI tool.
 
** Improved memory management when performing multiple VOI undo/redo actions.
 
 
* Image views and visualization
 
** Improved the display of complex image data values.
 
 
* Miscellaneous
 
** Added a number of enumerations for units of measure.  The unit of measure static ints are deprecated, but will not be removed for the foreseeable future.
 
** Fixed a problem with the slice slider display under some circumstances.
 
 
=== 5.2.0 (1/21/2011) ===
 
 
* File handling
 
** DICOM: Added support for Siemens mosaic image private tags.
 
** DICOM: Fixed a bug in the reading of some 4D enhanced DICOM files.
 
** JPEG/GIF/other: Added support for writing out a number of non-medical image formats when the image is not contained within an image frame.
 
** MATLAB: Added support for Matlab .mat files.
 
** Analyze: Fixed image file checking routine issue.
 
** Minc: 64-bit Mac versions of the jHDF libraries are not currently available.  Fixed the handling of not finding the libraries when trying to determine the type of a given file.
 
** Bruker: Fixed some problems in the selection of data files and added support for more fields.
 
** LIFF: Removed support for LZO compressed LIFF files.
 
** Removed DCCIE conversion code.
 
 
* Algorithms and utilities
 
** Fixed memory leak in Insert slice utility.
 
** Restructured a number of base mathematical classes to use different b-spline, optimization and integration routines.
 
** Added extended precision versions of a number of mathematical classes.
 
** Improved performance of VOI landmark registration with new VOI system.
 
** The RGB to gray utility now properly updates the (0028,0002) and (0028,0004) DICOM tags to match the image data, if run on a DICOM image.
 
** Added Complex concatenation utility.
 
** Added Complex to real conversion utility.
 
** Added more options to Maximum intensity projection algorithm.
 
** The Flip and Reorient utilities now correctly update the matrix and origin of DICOM and NIFTI files.
 
** Fixed two errors in level eight of OAR 3.5D registration.  OAR 3.5D should be used instead of the now-removed TSOAR.
 
** Linked in a working version of the Diffusion levelset ITK method.  Also, added geodesic active contour and threshold level set filters.
 
** Made ITK levelset filter algorithms scriptable and compatible with JIST.
 
** Fixed a bug in handling some Afni files using the ACPC dialog.
 
** Fixed a problem handling VOIs confined to one slice in the Watershed algorithm.
 
 
* VOIs and paint
 
** Fixed some issues with choosing custom VOI colors.
 
** Fixed VOI colors when using the Preset hue and New VOI buttons.
 
** Fixed VOI colors when using Load all VOIs from...
 
** Fixed a problem when generating VOI stats with no VOI selected.
 
** Fixed an issue handling unaffected curves during VOI splitting.
 
** Improved the bounding-box scaling of VOI contours.
 
** Added optional <Comment> field to text annotation files (.lbl).
 
** Added a tool to "manually" evolve 2D VOI boundaries.  The user can specify the amount to shrink/grow a contour in image units (i.e., mm).
 
** Added the ability to convert point VOIs to mask images, in addition to the other VOI types.
 
** The VOI statistics generator has been modified to make it extensible by plugins.
 
** Fixed issues with the VOI statistics generator in some situations.
 
** Added the ability to exclude some intensity ranges from VOI statistics calculation.
 
** Added VOI logical operations utility (replaces 'Allow VOI holes' option).
 
** Fixed a problem with the VOI livewire's determining when to finish VOI construction.
 
** Fixed VOI contour point deletion while holding down the shift key.
 
** Added ability to create circles using the VOI ellipse tool while holding down the CTRL key.  The circle diameter can also be directly edited by the user by right clicking.
 
** Added ability to create squares using the VOI rectangle tool while holding down the CTRL key.  The square length can also be directly edited by the user by right clicking.
 
 
* Image views and visualization
 
** The GPU volume renderer no longer requires images to be resized to a power to two in each dimension.
 
** The GPU volume renderer now calculates the gradient magnitude and laplace images on-demand (on checking the grad mag check box or the multi-histogram check box).
 
** Added the ability to link scrolling of images of unequal dimensions.
 
** Added a + bi and re^itheta displays for complex data when dragging in the image.
 
** The surface colors in the volume renderers should now exactly match the colors used for VOIs (based on the striped LUT).
 
** Fixed bugs in DTI visualization framework.  Systems analysis - DTI now works as expected.
 
 
=== 5.1.1 (9/20/2010) ===
 
 
* Algorithms and utilities
 
** OAR 3D now defaults to parallel operation, unless the non-orthogonal option is enabled.
 
** Increased the parallelization of the OAR 3D algorithm.
 
 
* VOIs and paint
 
** Continued to make bug fixes and improvements to the VOI components (most importantly, fixed point dragging and statistics generation bugs).
 
** Added optional <comment> tag to the voi and voi_coord XML structures.
 
 
=== 5.1.0 (9/15/2010) ===
 
 
* File handling
 
** PARREC: Improved reader support of some axis orientations.
 
** DICOM: Fixed DICOMDIR preview and opening of images.
 
** DICOM: Fixed a problem writing the q and s matrices of NIFTI images out to DICOM format.
 
** DICOM: Added a better error message when trying to open an unsupported DICOM spectroscopy file.
 
** NIFTI: Fixed reading of some files with Nifti extensions stored with gz/zip/bz2 compression.
 
** NIFTI: Corrected some Y-axis origin and matrix issues when reading NIFTI images that need to be flipped.
 
** NIFTI: Improved orientation support when writing to NIFTI from DICOM.
 
** NIFTI: Added improved NIFTI header extension support.  There is now no limit on the number of extensions.  Added ecodes for MIND, AFNI, ascii, and Caret extensions.  Improved display of extensions in header dialog.
 
** ANALYZE: Improved memory usage when reading and writing binary files.
 
** Added a better error message when trying to load an XML Image header as a VOI and vice versa.
 
** Fixed an error when creating a blank image.
 
 
* Algorithms and utilities
 
** OAR algorithms now can be performed with a non-orthogonal Powell's method (by default orthogonal line minimization is used).
 
** The Fuzzy C-Means algorithm now produces a NIFTI result image when run on a NIFTI source image.
 
** Fixed the updating of NIFTI matrices in the Flip utility.
 
** Fixed the updating of NIFTI matrices in the Reorient utility.
 
** Fixed progress bar for Anisotropic diffusion algorithm.
 
** Added Mosaic to 3D volume utility.
 
** Fixed a bug in the Crop using VOI utility.
 
 
* VOIs and paint
 
** '''Added many more VOI bug fixes and improvements related to the new VOI subsystem.'''
 
** Added a preferences file settings for changing the paint opacity.
 
** Added 2x2 brush to the set of default paint brushes.
 
 
* Image views and visualization
 
** Fixed image overlay display bug.
 
** Added ability to jump to specific coordinates in the Tri-planar view.
 
** Added tab to the Tri-planar view for Scanner RAS coordinates.
 
** Added the ability to pan around the image when the scrollbars are visible via dragging the image while holding the Shift key.
 
 
* Miscellaneous
 
** Removed missing preferences file warning dialog when running MIPAV from JWS.
 
** Added "Close all images" item to the File menu.
 
** Added -pluginDir command line argument to allow the user to specify a place in addition to $HOME/mipav/plugins/ that should be searched for plugins to be included in the Plugin menu (this location should also be included in the Java Classpath).
 
** Added a better error message when trying to run non-generic plugins from the command line.
 
 
=== 5.0.0 (07/09/2010) ===
 
 
* '''MIPAV now requires Java 1.6 or higher to run.'''
 
 
* File handling
 
** NRRD: Fixed bug writing the header for 4D images.
 
** DICOM: Fixed file pointer boundary condition check for some DICOM files.
 
** DICOM: Improved read/write compatibility for some DICOM files.
 
** DICOM: Fixed handling of DICOM dictionary entries with wildcard element numbers (related to DICOM overlays and curves).
 
** DICOM: Fixed an issue opening images as multifile when the file names were just numbers without a file extension or non-numeric prefix.
 
** DICOM: Fixed problem saving orientation matrix for some 4D files.
 
** DICOM: Improved updating of (0020,0032) and image origin when writing to disk.
 
** DICOM: Fixed a problem converting points to/from scanner space.
 
** DICOM: Fixed file separator character and character alignment bug in DICOM DIR utility.
 
** NIFTI: Eliminated extra disk write when saving nii.gz/zip/bz2 files.
 
** NIFTI: Fixed writing of nii.gz/zip/bz2 files via a script.
 
** NIFTI: If writing a DICOM image as NIFTI, the tag (0020,0037) is used to fill the rotation matrix if none was specifically set by the user.
 
** NIFTI: Fixed qmat and smat replacement from the Image attributes dialog.
 
** NIFTI: Added very basic support for reading header extensions.
 
** MINC: Eliminated extra disk write when saving mnc.gz/zip/bz2 files.
 
** MINC: Fixed some issues converting DICOM tags stored in Minc2 files when writing out to DICOM (private and sequence tags stored in the Minc2 as byte arrays are still discarded and big endian encoding is assumed).
 
** MINC: Added support for 4D Minc2 images.
 
** MINC: Fixed reading/writing of Minc2 files with data scaling.
 
** PARREC: Added read support for volumes where the 4D dataset is sorted by volume, instead of by slice.
 
** Fixed writing of unsigned integer data in a number of formats.
 
** Fixed boolean support for a number of file formats.
 
** Improved performance of a number of image data reader methods, which has sped up compressed file reading considerably.
 
** Removed the option to save a MIPAV XML header when writing out Analyze files.
 
** Fixed some instances where FileUtility methods were not properly trimming white space from file names and paths.
 
 
* Algorithms and utilities
 
** Despot algorithms renamed to Tre, with improved 4D processing, parallelism, scripting and JIST support.
 
** Improvements to SM2 algorithm.
 
** Improvements to Thin plate spline registration.
 
** Improvements to Constrained non-linear fitting algorithm.
 
** Image calculator modified to allow n-1 dimensional images to be selected for the multiplication operation only.  Also, fixed spacing of image names and radio buttons.
 
** Correlation ratio now selected as default OAR/BSpline registration cost function for all grayscale images.
 
** Removed a number of algorithms and utilities from the source tree that were no longer being used.
 
** Fixed a problem in Talairach transform where the origin was not being updated properly and axis orientations when going from acpc to orig or tlrc to orig were not correct.
 
** Added JIST support to most algorithms and utilities.  Some of the more complex algorithms are not supported, yet.
 
** The Convert type utility now has the option to retain the same file info header as the original image for some file formats.
 
** Fixed a bug in the Swap dims utility when exchanging dims 1 and 4.
 
** The Add margins utility and Transform algorithm now properly update the DICOM extent tags (0028,0010) and (0028,0011)
 
** Added inverse (1/intensity) operation to Image math utility.  If intensity is 0, the pixel is set to Float.NaN.
 
 
* VOIs and paint
 
** '''Changed underlying VOI structures to better support 3D.'''  Many VOI-related features are now available from the Triplanar and GPU-based Volume renderer views.  A number of VOI methods have been deprecated (or removed, if deprecation was not an option).  If you have plugins that use the VOI system, you will want to test to ensure compatibility.
 
** Added toolbar buttons for 3D VOI intersection and union.
 
** Saving VOIs no longer causes the DICOM matrix to be saved as well for some images.
 
** Improved data output along with the VOI boundary intensity graph.
 
** Writing of .voi files is no longer allowed.  They can still be opened to allow for backward compatibility.  Users should write out all VOIs in XML format.
 
** Added coordinate-space element to voi.xsd and text.xsd to better support switching between saving voxel and scanner coordinates.
 
 
* Image views and visualization
 
** Fixed image linking in the Triplanar view.
 
** Improved Triplanar view support for 4D volumes.
 
 
* Miscellaneous
 
** Removed the option to show platform dependent file chooser dialogs.
 
** Refactored slice, time and imageA/B blending sliders to be more consistent.
 
** Removed SwingWorker version 3 in favor of using the Java 1.6 SwingWorker.
 
** Fixed quick list problem that sometimes caused the wrong file to be opened.
 
** Moved MipavMath class to package gov.nih.mipav.util.
 
** Refactored contents of gov.nih.mipav.util package to remove unused classes and create new ones as needed (ArrayUtil, ThreadUtil).
 
  
 
== Version 4.x.x change list ==
 
== Version 4.x.x change list ==

Latest revision as of 16:08, 8 April 2013

Version 7.x.x change list

7.0.1 (4/5/2013)

  • File handling
    • DICOM: When trying to open an image with a Transfer Syntax UID that indicates that it is a compressed DICOM, but with an image tag length that implies that it is not compressed, try reading it in without decompression.
    • DICOM: Fixed a problem in the DICOMDIR browser that prevented it from opening.
    • Fixed a problem in the Open sequence tool with the use of progress bars that caused crashes for some file formats (this means that there are no progress bars when opening the sequence).
  • Algorithms and utilities
    • Added new utility for correction of non-helical CT gantry tilt correction.
    • Fixed some issues running the Prostate segementation algorithm on some systems.
    • The DialogDefaultsInterface has been added back. JDialogBase now implements this interface and provides default versions of the loadDefaults() and saveDefaults() methods.
  • VOIs and paint
    • The backspace key now behaves the same as delete when working with VOIs to delete points or entire curves (which fixes issues with using an Apple keyboard on Windows).
  • Image views and visualization
    • Added better handling of when the GPU volume renderer when the videocard doesn't support the required OpenGL or GLSL version.
    • When opening the renderer, apply the LUT that is already set for the image.
  • Miscellaneous
    • Fixed some issues with scripting plugins that have JDialog in their name.
    • PlugInAlgorithm plugins now are displayed even when no image is open (but are disabled).
    • Fixed some issues in handling command line arguments that start with two dashes instead of one.
    • Added buildSlider() method to GuiBuilder.
    • Auto-restart of MIPAV after a memory change on Windows is no longer supported.
    • MIPAV is now started the same way on 32 and 64 bit systems. Shortcuts to start with or without a debugging window are now installed.

7.0.0 (3/22/2013)

Updated the JREs and libraries distributed with MIPAV. On Windows and Linux, the JRE installed is based on version 1.7.0_17. The installed native libraries used are the same, except for Jogamp, which is now the Jogamp JOGL/JOCL release from 2012-11-01.

  • File handling
    • PARREC: Fixed bug reading orientations and FOV from some files.
    • PARREC: Fixed reading of 4th dim unit of measure and resolution.
    • PARREC: Added patient name reading and included it in file header dialog information.
    • PARREC: When reading sagittal files for sliceAngle and offCentre arrays put minus signs in front of sliceAngle[2] and offCentre[2] to reflect change from RL in PARREC to LR in MIPAV.
    • Added support for reading AFNI matrix (.1D file) to TransMatrix.
    • Allowed ViewImageFileFilter to be extended, added .1d file format to list, made accept() method insensitive to capitalization differences.
    • ViewImageFileFilter now explicitly implements java.io.FileFilter to improve performance.
    • DICOM: Fixed the reading of some chunked DICOM encapsulated lossless JPEG files.
    • DICOM: Added a dictionary of private tags, which supplies them with names in the view header dialog.
    • DICOM: Fixed error reading some images that included an icon image in a sequence tag.
    • DICOM: Changed tag reading to assume that finding 0028,0008 - Number of Frames means that the DICOM is multi-frame. Before, a 0002,0002 - Media Storage SOP Class UID that indicated enhanced MR, CT or XA was required. This caused a problem for a multi-frame OCT dataset from JHU.
    • DICOM: Changed error message when the slice data extents are 0. Indicate that there was a problem in reading extents/image data, not that we think it's a spectroscopy dataset.
    • Added TrackVis file support.
    • AFNI: Added afni implementation of subBrick names and statistical distributions.
    • Implemented ability to programmatically read in just the header of most images, those images where this is not possible print out that information to the Preferences.debug output and return null.
  • Algorithms and utilities
    • Added Multi-exponential to Time fitting Systems analysis tool.
    • The Time fitting tool can now use a custom DICOM tag for the time values.
    • In the utility Match images, fixed a bug in the handling of when the images' units of measure are unknown or do not match.
    • Added Spectral clustering tool to Systems analysis.
    • K-means algorithm no longer trys to read text points file twice.
    • Added Spatial color compactness algorithm to Segmentation menu.
    • Added OpenCL-based image Deconvolution algorithm.
    • Fixed OAR3D transformation directory saving logic.
    • Subset image now transfers LUT to result image.
    • In Transformation algorithm, fixed readTransformMatrixFile() to work with 4D images.
    • Fixed a number of issues in scripting with filters that now support opencl processing. Some algorithms didn't properly set up the params or use them when trying to run the algorithm. GaussianBlur didn't record at all when run using opencl.
    • Fixed the Median algorithm progress bar.
  • VOIs and paint
    • Fixed a bug handling VOI stats on 2d images.
    • Fixed a bug displaying VOI statistics results table for color images.
  • Image views and visualization
    • Major updates to the GPU volume renderer. Changed supported version of OpenGL to 3 core profile and GLSL to shading language 330. These changes should fix the GPU renderer on MacOS 10.7 and above.
    • Fixed mouse wheel scrolling in the GPU renderer on Macs.
    • Removed a number of old, unused GLSL shaders.
    • Updated the WildMagic library: Changed Vector2f, Vector3f, Vector4f, Vector2d, Vector3d, Vector4d, Matrix2f, Matrix3f, Matrix3d, Matrix4f so that most functions return 'this', enabling chaining of multiple vector or matrix operations. The original functions were deprecated and the new functions now begin with a lower-case letter. All classes using Vector3f and Matrix3f were also updated to use the non-deprecated functions.
    • GPU renderer now supports displaying a grayscale image and a color image at the same time.
    • Fixed some issues with loading and changing the inital display/lut method. Removed 'Default' option, but left in support for that value when reading in legacy files.
    • Fixed auto-loading of saved win/level (first and last point of transfer function were being set up incorrectly).
    • TransferFunction methods to remove points now return the removed points.
    • Added t-score LUT option that mimics AFNI.
    • Fixed a minor bug in the Zoom dialog.
  • Miscellaneous
    • Fixed the Report bug button.
    • Added button to the MIPAV options dialog to reset all values to defaults.
    • Fixed a number of installer-related issues on multiple platforms.
    • Added ability to change the Java look and feel in the MIPAV options.
    • Added preference for using DICOM ordering when opening AFNI files in the MIPAV options dialog.
    • Added preference for automatically using LUTs stored in images in the MIPAV options dialog.
    • In TransMatrixd, changed routine name from transformAsPoint3Df to transformAsPoint3Dd.
    • Fixed minor bugs in ModelImage methods: set(int[], Number), set(int[], boolean), set(int[], byte), set(int[], short), set(int[], int), set(int[], long), set(int[], float), and set(int[], double).
    • Changed a number of methods and fields in file- and view-related classes to protected.
    • Improved display of toolbar buttons on Macs.


Version 6.x.x change list

6.0.1 (11/14/2012)

  • File handling
    • Changed start location in FileRawChunk.readImage to long instead of int to support reading some large files. This affected a number of different file format readers.
  • Image views and visualization
    • Updated the multi-histogram display. Fixed the display panel gradient mag. graph. Added a 'window' option for the triangle widget by moving the green control point up/down. Fixed reload error when the renderer is closed and then opened again. Fixed save / load file bug for triangle widget.
    • Added a new default lookup table/transfer function option that mimics the behavior of ImageJ.

6.0.0 (11/7/2012)

MIPAV is now open source! See the license information for details.

  • File handling
    • Added basic support for dragging-and-dropping directories, single files and multifile images into MIPAV.
    • DICOM: Fixed reading of some files with private tags that resemble the image tag pattern.
    • DICOM: Fixed an issue reading some enhanced DICOM tag sequences.
    • DICOM: Added support for writing enhanced MR, CT and XA.
    • DICOM: Fixed an issue reading tags in some boolean images.
    • DICOM: Fixed handling of a number of tags in the 0018 group when reading and writing images.
    • DICOM: In writeMultiFrameImage in "0028,0010" bitsPerPixel = 16 rather than source image bitsPerPixel value so that it always reflects the short data in the written file.
    • DICOM: Fixed display of min and max values for color images in the file header dialog.
    • DICOM: Fixed an issue reading image data when no pixel padding was specified.
    • DICOM: Added support for writing multiframe ushort, ARGB and ARGB_ushort data types.
    • DICOM: Added support for writing ARGB_ushort data types.
    • TIFF: Added support for reading in ImageJ ROIs stored in TIFF header.
    • TIFF: 4D TIFF data is written out as a set of 3D files now.
    • RAW: Fixed issue writing out 4D volume as 3D files.
    • RAW: Fixed issue reading boolean image.
    • ANALYZE: Fixed an issue reading some boolean images.
    • PARREC: Fixed resolution calculation for some images.
    • PARREC: Fixed processing of angulation midslice in parrec images.
    • PARREC: Added slice/offcenter loading for any orientation.
    • PARREC: Added support for reading/writing 4D data as multifile.
    • Added new Spar file format support.
    • MINC2: Fixed progress bar issue and added better support for saving image subsets (either 3D or 4D).
    • MINC2: Improved support for reading 3D and 4D images with some orientation/image data settings.
    • MINC: Added support for writing 2D and 4D images.
    • MINC: Added support for multifile datasets.
    • INTERFILE: Added multifile support.
    • Fixed getting image unit from abbreviation.
    • NIFTI: For Preferences.PREF_FLIP_NIFTI_READ the default preferences has been changed form true to false.
  • Algorithms and utilities
    • Added a new system for saving/loading algorithm and utility defaults automatically to JDialogBase. The old interface was renamed to LegacyDialogDefaultsInterface and was deprecated. As part of this, dialogs that want to have this behavior should call super.actionPerformed(event) when the event is not handled in the subclass actionPerformed(). The new system also adds the ability to save/load parameters to different profiles.
    • Added Locally linear embedding algorithm.
    • In DTI importer, corrected anatomy fat shift options.
    • OAR algorithms now save interpolation, resolutions, dims, transformVOIs, clip and pad in matrix file.
    • Transformation algorithm now reads the additional matrix file parameters if they are found.
    • Switched many registration and transformation algorithms to use doubles instead of floats.
    • Sped up the nearest neighbor operations in the Transformation algorithm.
    • Added new Time fitting algorithm to the Systems analysis menu.
    • Removed the Skeletonize3D algorithm.
  • VOIs and paint
    • Fixed handling of VOI bounding box checkbox in VOI properties dialog.
    • Fixed some issues grouping VOI contours.
    • Added Ctrl key angle modification for line VOIs.
    • Allowed line, protractor, and point vois to save in voxel coordinates.
    • Now able to do image statistics without having a VOI present from the VOI properties dialog.
    • Fixed an issue converting between VOI and mask and back again.
  • Image views and visualization
    • Added Bicubic image interpolation mode to image display.
    • Made a number of improvements to the Custom zoom dialog.
    • Fixed J3D surface volume calculation.
    • Fixed bug in the slices panel for the GPU renderer.
    • Fixed a number of VOI issues in the GPU renderer and in surface extraction.
    • Created new method for image display, default transfer function now has a min/max set at the 5/95 percentiles of an image.
    • Added new option to the MIPAV options dialog that allows for selection of how the initial LUT for an image should be constructed.
    • Made a number of fixes and additions (including a triangle widget and widget save/load) to the GPU renderer multi histogram tool.
  • Miscellaneous
    • Added a new integrated bug reporting button (only works from within NIH - fixed in a future version).
    • Added the ability to drag menus out of the main MIPAV menu to separate windows.
    • In TransMatrix, a new version of saveMatrix can store other transform variables in addition to the TransMatrix. A new version of readMatrix can read these variables. The variables are interp, oXres, oYres, oZres, oXdim, oYdim, oZdim, tVOI, clip, and pad.
    • Removed mipav help jar and the MipavUtil.showHelp() method that used it. MipavUtil.showWebHelp() should now be used to show wiki-based help pages instead of the jar-based help.

Version 5.x.x change list

MIPAV change list 5.x.x


Version 4.x.x change list

MIPAV change list 4.x.x


Version 3.x.x change list

MIPAV change list 3.x.x


Version 2.x change list

MIPAV change list 2.x


Version 1.xx change list

MIPAV change list 1.xx


Pre-1.0 change list

MIPAV change list pre-1.0