Read Me
IQWorks v0.7.2
Copyright (C) 2001-2015 IQWorks Contributors.
Introduction
Welcome to IQWorks, a platform for the objective assessment and optimisation of image quality.
Please refer to the IQWorks website http://www.iqworks.org for documentation and to find out how to lodge feedback or support requests. Presentations and publications on how the IQWorks system can be used are also available.
IQWorks Distribution and Licence
IQWorks is open source software and is distributed under the terms of the GNU General Public License. Full licensing details of IQWorks and its dependencies are provided in the accompanying Licence.rtf file. This file shows your rights and duties on how to use, redistribute and / or modify it.
Copyright details are provided in Copyright.rtf and a list of contributing authors in Authors.rtf.
Disclaimer
This software is provided as is, with no warranty or guarantee whatsoever of suitability for a particular purpose. It is intended to be used by qualified medical imaging professionals who understand the algorithms being implemented and the results presented. It must not be used to make decisions affecting the clinical management of patients. There will certainly be bugs, and no guarantee can be given for the overall stability of the package. Therefore, it should not be installed on any mission critical computer system. In particular, it should not be installed on systems classified as "medical devices" by any commonly accepted definition of the term.
Prerequisites
IQWorks will run under Microsoft Windows, version 2000 or later, and requires the .NET Framework version 2.0 or greater to be installed. The presence of the .NET Framework will not be verified by the installer and must be installed manually. It can be downloaded from http://www.microsoft.com/en-us/download/default.aspx, or can be installed automatically by browsing to http://update.microsoft.com.
To view PDF reports generated by IQWorks you will need a PDF viewer (such as Adobe Reader – available from http://get.adobe.com/reader/ or FoxIt Reader - available from http://www.foxitsoftware.com/Secure_PDF_Reader/).
RTF reports are displayed best if a dedicated word processor is installed, such as Microsoft Word, OpenOffice.org or LibreOffice.
If installing IQWorks on a network drive there will be security issues relating to the configuration of the .NET framework. These can be quite tricky to resolve and may produce error messages which seem unrelated to the problem. If you experience unexpected crashes when trying to load DICOM files, please contact andrew@iqworks.org for advice. Troubleshooting tips for frequently encountered issues will be added to the IQWorks website.
IQWorks Release Notes
Version 0.7.2 – Released 27th January 2015.
- Updated CVIPtools library from 5.3g to 5.5d - latest version.
- Added ability to save and load CVIP images.
- Set FormMain AutoScaleMode to Dpi to cater for high DPI displays.
- Stack profile analysis now uses image number for x axis if Z slice position is unavailable.
- Implemented bug fix that prevented object references being passed to drop down lists.
- Initial experiment with using AppDomains to implement cviptools.dll rather than a separate helper executable. This will improve performance cross-operating system compatibility. Core program flow remains unchanged.
Version 0.7.1 – Released 8th October 2013.
- Resolved interpolation bug in MTF and PSF routines.
- Added check for infinite values when using non-linear signal calibrators.
- Added facility to override mismatches in pixel size when loading / generating multi-layer images.
- Modified Display Calibration module so that the default instrument does not rely on the presence of proprietary X-Rite libraries. This will prevent the form crashing when instantiated if the library is not present.
Version 0.7 – Released at UKRC Meeting, Manchester, UK. 25th June 2012.
- Project migrated to Visual Studio 2010.
- Because the ClearCanvas DICOM libraries have hooks into version 3.0 of the .NET framework it was necessary to add <SpecificVersion>true</SpecificVersion> entries to the .csproj files for IQWorks and IQAutoLUT. End user presentation is unaffected.
- To open with Visual Studio 2008, need to open the .sln file and change version number from 11.00 to 10.00 in the first line of the file. The solution will then load successfully. Any warnings which are flagged can be safely ignored.
- Resolved issue with CVIPTools on 64 bit platforms. Build target set explicitly to x86 rather than "Any CPU".
- Ability to clear analysis tree from current image.
- Fixed bug with non-rectangular ROIs where min or max value could be the top left pixel of the bounding rectangle, even if this was not within the ROI.
- Rotation of image by an arbitrary angle to resolve alignment issues.
- File dialog boxes remember previous directories browsed to.
- Root directory for analysis trees can be set globally. e.g. to a network drive.
- Fuji CR AntiLog Signal Calibrator removed.
- New option to ignore pixel scaling factor in MRI images.
- Upgraded to latest version of CVIPTools - 5.3g. Canny Edge detection does not work at present.
- LocalThresholdFraction and LocalThresholdFractionShrink introduced as new edge detection algorithms.
Version 0.6 – Released at IPEM Quantitative Image Analysis Meeting, 4th October 2010.
- Regions of Interest
- Introduction of Annular Elliptical ROIs
- Introduction of Annular Rectangular ROIs
- Introduction of ability to select a 'Processed Point' for all ROI types, which can be the centre of the ROI or the max or min point. This can be passed to other analysis modules.
- Improvements to ROI drawing code, to ensure ROIs cannot be resized to be less than zero width or height
- Additional AppInfo stored preference for multiplier which determines default size of inner region of annular ROIs
- Charts can now be included in reports, if this has been specifically provided for as ZOutputs in the code for individual 'IProcess' processing modules
- Noise images
- Fixed bug in dimensions of new images
- Added functionality to generate a specified number of layers
- Image Information dialogue now displays and updates pixel size for multi-layered images correctly.
- GeneralFixer now updates pixels size for multi-layered images correctly.
- Event logging / Application profiling
- Default location of log file now c:\IQWorks\log.txt
- Event logging and location of log file now fully customisable through Preferences dialog box. Preferences are preserved between sessions through storing to configuration file when the application is closed.
- Time between log entries is now expressed as the total number of whole and fractional milliseconds.
- NPS
- Multi-ROI
- Visual labelling of ROIs when selected
- Auto-ROI
- Automatic placement of ROIs within a larger "base" ROI is now possible, encompassing full functionality of underlying NPS calculation algorithm
- Underlying algorithm
- Introduced logging functionality to enable identification of bottlenecks and improve algorithm optimisation
- Introduced the ability to take into account regional signal variations (e.g. due to heel effect) by normalising ROI signal values by the mean value on a reference ROI, or the global mean
- Extended NNPS calculation routine to enable normalisation by the mean of a specified ROI, or the global mean.
- Introduced ability to exclude specified ROIs from the calculation (e.g. due to detector artefacts)
- Considerable speed improvements through R interface optimisation
- Restructured linked classes to reduce code duplication and ensure identical algorithm is being applied regardless of ROI selection / placement method
- Progress bars introduced when loading images, processing analysis trees on multiple images, generating reports and storing data.
- Check performed when ReporterGeneral objects are loaded in an analysis tree that all DataExport results they refer to are actually available in the tree. This had previously prevented some older trees storing data.
- Edge Detector
- New edge detection type of "ThresholdFraction" added which aims to find the edge thresholded by a specified fraction of the range between the min and max pixel values in the ROI
- Options added to calculate area encompassed by the detected edge.
- DICOM Browser
- Bug fixed which caused an exception to be thrown when selecting a new study when multiple series were already selected
- Added label which indicates the number of data files corresponding to the current selection
- Bug fixed in caching routine which sometimes prevent updated files from being detected
- SimpleMath processing module added. This enables numerical operations (sum, subtract, multiply, divide, average, std dev, variance, max, min, square, square root, raise to power, absolute) to be performed on the outputs of other processing modules.
- Fixed bug which prevent loading of Varian HNx images.
- Updated file-open dialogue box code so that file formats are tested in a more sensible order before IQWorks attempts to display them in the preview pane.
- Ability to generate sum and difference images of multi-layer images, directly from main GUI.
- CNR
- Able to accommodate more than one ROI for the noise region
- Calculates noise from difference image when a two layered image is loaded.
- More robust interpolation algorithms have been implemented throughout the code.
- MTF
- Droege Method
- Implemented optional MethodOfThree aliasing correction
- Immediate processing methods
- Graphing of result values
- Command line test mode
- Ability to hide overlaid structures when displaying images
- Statistical comparison module, allowing pixel values within ROIs to be compared to determine whether they are from different distributions. Tests include: Student 's t pooled, Student's t unpooled and Mann Whitney.
Version 0.3 - First Public Release of Executable and Source Code
- Launched at the UK CT User Group Meeting, Leeds, 21st October 2008.
- Completed removal of dependencies on non-distributable libraries.
- Removed dependency on .NET Framework 3.5. The whole package will now run under .NET Fraemwork 2.0, which is installed automatically from Windows XP SP2+ and is available for Windows 2000+. We had been experimenting with the parallel processing framework introduced with .NET 3.5, but these features will be left for a future release.
- Various user interface changes.
- Tidied up analysis trees. Only trees which definitely work are now included. Catphan trees augmented.
- Migrated DICOM handling code to use ClearCanvas DICOM library. This is a native .NET implementation so requires less overheads, is faster and results in a smaller download. Compressed and multi-frame DICOM images can now be loaded.
- Implemented a global exception catcher. IQWorks now crashes less frequently and less spectacularly.
Version 0.2 - First Public Release of Executable
- Launched at the Annual Scientific Meeting of the Institute of Physics and Engineering in Medicine, Bath, 4th September 2008.
- Removed many dependencies on proprietary libraries.
- Many changes to user interface.
- Many changes to numerical analysis routines.
Version 0.1 - Closed Development Release