| 26. Problem running the 3D Tool | 2008-07-23 |
On some systems, Java is updated automatically. This may cause problems with the Java3D component which is used for the PMOD 3D tool.
Accordingly, an error message "No J3D in java library path please install Java3D extension" is shown when starting P3D.
Solution:
To solve the problem please repeat the Java3D installation. The latest Java3D installers can be downloaded
here. |
 |
| 25. Problems with 64Bit MacOSX Systems | 2008-07-08 |
Currently, Java 1.6 on 64Bit MacOSX Systems does not interoperate correctly with PMOD.
Solution: Use Java 1.5 by the following changes in the start script 'RunPmod.command':
java=/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home/bin/java
$java -version
$java -Xmx768M -classpath .:./java_ext/WkJavaApi.jar:./java_ext/mysql-connector-java-3.1.13-bin.jar:./java_ext/jmf.jar:./java_ext/jai_imageio.jar pmclass.Pmod
|
 |
| 24. How to combine multiple static frames into a single dynamic series [PVIEW] | 2008-05-07 |
The solution of this task is easy:
1. Start the View tool.
2. Load all static scans in the right order. You might use column sorting after you have brought the series into the "Selected" area.
3. On the "View" page, go to the "Tools" tab and select the "Merge(T)" button. See http://www.pmod.com/technologies/doc/pbas/819.htm. The result of this operation is a single dynamic series.
4. The aquisition timing must be edited to make sure the time course is correct. This can be done using the "I" image information button to the upper right of the image, and then "Edit frame times".
5. Finally, save the new series as DICOM, Interfile or Ecat(for saving the times) using the Save button on the "Load/Save tab.
|
 |
| 23. USB Key Drivers with 64-Bit Operating Systems | 2008-03-19 |
64-Bit Linux Systems: Currently there are problems with using the 64-Bit version of the USB key drivers. Please use the 32-Bit version of both Java and the WIBU USB key drivers.
Windows XP 64: Please use either the 64-Bit version of Java and the USB key drivers, or the 32-Bit version of both components.
::
Downloads:
Java 6 Update 5.
USB Key Drivers: WIBUKey Section of Download area. |
 |
| 22. Rigid Matching Options | 2008-02-07 |
Matching with differerent modalities: 'Normalized Mutual Information' should be used as the 'Dissimilarity Function'. Note that the sampling must be dense enough to provide enough samples for the histograms.
Matching within the same modality: Good results can be obtained with 'Absolute Difference Sum' or 'Squared Difference Sum'. These 'Dissimilarity Functions' should be combined with the 'Normalize values to (0,1)' option .
|
 |
| 21. Incompatibility with Mac OSX 10.5 (Leopard) | 2008-01-07 |
Problem: After upgrading Mac systems to the latest OSX version 10.5, all PMOD installations with version 2.9 and below will not run correctly. Some of the user interface elements will not operate properly.
Workaround: Possible workarounds are temporarily using the PMOD license on a Mac with OSX 10.4, on a Linux or on a Windows system.
Fix: Version 2.95 (Feb. 2008) will solve the problem by using Mac-specific user interface elements. |
 |
| 20. PMOD Version 2.9, Build 1: Problem of Reference Models in PKIN | 2007-12-04 |
Scope: The problem only occurs with PMOD 2.9 Build 1, released at October 23rd 2007. Affected are all reference tissue models in PKIN.
Problem: In simple reference model calculations (eg after changing one of the parameters, or switching the reference region) always the FIRST region in the list was used as the reference region, not the selected one. However, as soon as the "Fit current region" was activated, the right region was used, and the results were correct.
Effect: "Manual fitting" by changing the parameters interactively might have resulted in wrong results, but the results of automatic fitting were correct.
Solution: Download and install PMOD 2.9, Build 2.
|
 |
| 19. PMOD 2.7 freezes when switching windows | 2007-11-11 |
| PMOD version 2.7 should be used with Java 1.5. Due to a Java incompatibility, such a freeze may occur after the installation of Java 1.6.
|
 |
| 18. Reading compressed DICOM data fails | 2007-03-31 |
| In some installations the reading of compressed DICOM data fails because of library problems, although jai_imageio.jar is present in the command call. In these cases it is recommended to install the Java Advanced Image I/O Tools (jre) which can be downloaded from
here. |
 |
| 17. Saving of Quicktime movies fails | 2007-03-30 |
| In some installations the generation of Quicktime movies fails because of library problems, although jmf.jar is present in the command call. In these cases it is recommended to install the Java Media Framework (JMF) which can be downloaded from
here. |
 |
| 16. How PMOD interprets times in PET objects | 2007-03-15 |
Pmod requires frames start times and end times. DICOM PET objects do not provide that information directly. It needs to be derived from other elements.
Unfortunately equipment manufacturers do not follow the same interpretations of the values they store in their objects.
::
For gated series Pmod uses the Trigger Time (0x00181060) as a frame start time and derives end time from the Trigger Time and Frame Time (0x00181063). Both values are specified in ms.
For non gated series two scenarios exist:
-
The frame start time is determined as: a time elapsed between acquisition reference time (combination of 0x00080022 and 0x00080032)
and series reference time (combination of 0x00080021 and 0x00080031) or,
-
by the Frame Reference Time (0x00541300).
The end time of non gated series is determined with the use of the Actual Frame Duration (0x00181242). Again Frame Reference Time and Actual Frame Duration are specified in ms.
::
Pmod configuration option of Dicom Special Case 'PET time in sec' allows to correctly handle images with time values specified in seconds instead of miliseconds.
The scenario used to determine frame times for non gated series depend on the equipment manufacturer coded in the object. The first approach is currently used for CPS and Philips data.
Pmod versions prior to 2.75 used only the second approach for non gated imges. As the exact meaning of the Frame Reference Time (0x00541300) is not
specified in the standard but the interpretation of the phrase 'the time that the pixel values in the Image occurred' is left to the equipment manufacturer Pmod do not use that value as a frame time.
Instead the middle of the frame start time and the frame end time is used. When creating a PET object Pmod will store frame start times in the Frame Reference Time (0x00541300). |
 |
| 15. It can be observed that not all left right regions are symmetrical in the template. [PVIEW] | 2007-02-01 |
For example consider Frontal* and Amygdala regions. Do you have any idea why these regions are asymmetric?
::
The reason for this asymmetry is that the "new" MNI template these regions are based on isn't symmetrically anymore.
The template used for spm95 was artificially symmetrical but since then the MNI template shows the same asymmetry as normal brains do.
If you want to compare left and right hemisphere directly you have to mirror a brain before normalization in order to get the left side of brain A
the same size and positioning as the right side of non-mirrored brain B. |
 |
| 14. VOI definition from AAL template [PVIEW] | 2007-02-01 |
I am planning to extract out a few VOIs from the MNI ROIs/VOIs form PMODs template resources so that those could be used in Kinetic modeling.
Could you please point out the process of mapping labels to regions so that I can create *.vois using them as reference.
::
Converting Template VOIs to Contour VOIs
If the template VOIs are contiguous, it may be possible to create contour VOIs from them using the Auto-VOI tool. The procedure is illustrated below using the AAL template file.
1. Data Loading
The template file MNI_AAL_V4 is available in Analyze format in the resources/templates/voitemplates directory has not HFS orientation.
During loading into the PVIEW tool it must be rotated by 180 deg. around the z-Axis.
2. Iso-Contour Definition
Each VOI has a well-defined numeric value in the template file. For instance, Precentral_L pixels have a value of 2001.
To get a Precentral_L contour VOI the following steps should be carried out:
- Create a new VOI. Define a large bounding box which encompasses at least all Precentral_P pixels. In the example shown below a big rectangle was generated and propagated to all slices. It is called BBOX.
- To be able to reuse the BBOX VOI copy it to the buffer, create a new VOI, and paste the VOI in. Label this VOI as Precentral_L.
- Start the Auto-VOI tool. Select the Equal mode, Absolute threshold, and enter the value 2001. Then activate Ok to start the contour tracing in all slices of the VOI.
After completion, the box VOI is replaced by the resulting contour VOI. To select several VOs mit contiguous numbers use the Range mode.
- To continue with another VOI create a new VOI, copy the BBOX VOI to it, bring up the Auto-VOI tool, and perform the contouring with its numeric label value.
- After all relevant contour VOIs have been defined, delete the BBOX VOI and save the VOIs in a file using the Save button.
Note: If several disconnected areas have the same value in a slice, auto-contouring will result in only a single contour around one of the areas.
|
 |
| 13. Left/Right Orientation [PVIEW] | 2007-02-01 |
I have another important question. In the PDF that you had attached, the region you have marked is the Left one. The MNI template image that is loaded is in HSF orientation
(i.e. the head if on the top side; supine position). So how come the VOI is on the right side of the brain? I can see a similar thing for the templates selectable from VOIs section in PVIEW from
the Template tab towards right after selecting 'ROI_MNI_V4' from the drop-down list. Could you please explain the reason of swapping left and right or am I missing something here.
::
We load HFS data using the radiological convention: right on the image display is patient left (the patient is lying in the gantry head-first, and you are looking into the gantry from the feet).
You will have the same orientation on radiology workstations. Neurological convention would be image right = patient right. |
 |
| 12. "Reslice relatively to origin" not work [PFUS] | 2007-01-19 |
I am using PMOD 2.65 and have problems to fuse the DICOM PET/CT data from a Phillips Gemini scanner with the "Reslice relatively to origin" option.
I have checked the Dicom tag 0020 0032 "Image Position Patient" in the DICOM Header of the PET images. They match to the CT images, but will not read in correctly in PMOD.
In the "Advaced slice selection" i find wrong slice locations [mm]. In another sofware (efilm) the same dataset will read in correctly so that i think that the Dicom images are ok. Any suggestions ?
::
As far as I know there is no problem with the "Reslice relatively to origin" option. Some problems may however arise with the interpretation of the origin.
I suspect you encountered the problem with wrongly constructed PET objects that we already observed with some PET/CT systems. The problem is that those systems produce internally incoherent PET
series with wrong values in the Image Index (0054,1330) elements. The Image Index and the Image Position elements (0020,0032) in those series indicate different slice order.
Since the Image Index is the element specially defined for PET series to identify the position of the image within the series, PMod gives it the priority. As a result the origins and slice locations of the PET
series do not match with the CT series. We have already prepeared a new dicom 'special case' that supress interpretation of the Image Index element for PET series. It will be available with our new upcoming version 2.85.
When working with data from PET/CT systems switching off the 'Reslice relatively to origin' option should give you matched images. |
 |
| 11. Is it possible to combine axial slices or reslice PET data to change the axial slice thickness in PXMOD or any other PMOD tool? [GENERAL] | 2006-12-26 |
In all PMOD tools there is an Interpolation functionality available which allows to calculate from a loaded image volume a new image volume with different numbers of rows, columns and slices.
This function can always be applied as soon as images have been loaded. It can be found as an external tool on the Image Processing Tab.
Please see our Users Guide in the section Image Display and Basic Processing/Handy Image Processing Tools.
Note that this procedure does not allow to specify the voxel sizes. Once the images have been calculated, they can be saved using the Diskette button (to the right of the Run button; not yet shown in the guide).
An alternative would be the use of the image fusion tool PFUS. This approach can be applied if a template study with suitable resolution and spatial coverage is available.
This template study should be first loaded as the reference. Then load the the study to be interpolated as the reslice study. It is atomatically interpolated to the template resolution and can be saved. |
 |
| 10. Regarding problems with loading certain DICOM dynamic series [GENERAL] | 2006-12-13 |
It came to our attention that some of our users experience problems with loading dicom dynamic series from certain sources.
::
Only PET images and multislice files (like NM images) support elements that unambigousely define a slice position in a dynamic set.
For single slice objects like CT, MR or SC each manufacturer tends to do it different way.
To handle that problem we designed a 'special cases' for reading Dicom objects that do not follow the same approach we use in PMod.
Attached image shows how to define a new 'special case'. In the user configuration (1) one need to choose Dicom/Special Cases tab.
After a new entry (2) is created one need to choose the appropriate multivolume case.
There are 3 sorting options available for dynamic series:
- Multivolume (sort by volume times)
- Multivolume (sort by slice position)(EBCT)
- Multivolume MR (sort by trigger times)
The 'Get from file' button (3) may be used to fill the manufacturer model and version fields.
PMod application need to be restarted after the configuration changes are confirmed.
::
 |
 |
| 9. Normalization template [PFUS] | 2006-12-07 |
I load the template (HFS T1), then the ecat or mrt file (z-axis rotation 180 degree), do the resclicing-coregristation-normalization and move to the Full screen fusion tab
and choose as a template the mni_aal_v4, the cerebellum will appear at the top of the pictures whereas on my data the cerebellum appears at the bottom.
I turn back to the coregistration-preprocessing tab, reload vs. file dialogue the t1 template supplied with pmod (no rotation on preprocessing) and move again
to the Full screen fusion tab, then the world is just in order. It appears that the mni_aal_v4 mask is loaded depending on the last choice of the preprocessing dialogue for what file ever.
I don't think it's meant to be like that?
Another point is:
if the java task reaches 820 Mbyte memory usage the behaviour of pmod becomes unpredictable. I tried different values within the pmod batch starting file,
extended memory from 1 Gbyte to 1.5 Gbyte without having a change in the described behaviour.
I feel, that repeated loading of images (replacing) does not free memory from previous pictures so that, pmod has to be started from scratch again and again.
::
The mirror problem and the wrong template orientation were caused by the bug in the initial loading operation 'flip according to Z_AXIS'. It is now fixed in the current build (version 2.8 buid 3).
::
As to the memory problem java uses automatic memory management. That greatly limits our control of the process. We are aware of the increasing memory usage with the repeated image reloading.
Our obserevations show there is usually the point at which memory usage stabilize and our efforts are mainly targeted on minimazing that level. |
 |
| 8. Saving artifacts [PFUS] | 2006-12-01 |
I am using pmod version 2.75. Normalizing ecat or analyze format data of PET or MRT origin towards the T1 template results in proper images,
however after saving and reloading the images,the 55. coronary layer appears to be mirrored across the midline axis, appearing on the other cuts as a line that does not quite fit.
This is reproducible with multiple data sets anddoes not occur after coregistration (Iterative). Another problem is, that depending on the last settings in the loading
preprocessing dialouge, the template is loaded. This is sometime annoying, sometimes making it impossible to match the data.
::
What format do you use to save the images? Does the mirror problem happens with different formats or with a particular one? I am not able to reproduce such problem.
Can you provide us with a sample data you experience that problem with? Also does that problem persist in 2.8 version?
::
As to the template loading I understand you are using templates included with PMod. You may load them with a menu option 'load brain tamplate' (image attached).
With that option template is always loaded the same way and the last loading settings remain unchanged. (Loading T1 template - (1))
You may also specify your own file as a user template and load it with option (2). In 2.75 version it must be an Analyze file, but since 2.8 other formats are also available.
You may also configure fusion module to alwys start with a specified template (3).


|
 |
| 7. How to combine two VOIs into one ? [PVIEW] | 2006-11-19 |
I would like to combine two VOIs into one VOI. Is there a way to do this without manually drawing the second VOI onto the first.
Also if I have drawn a VOI and would now like to create a mirrior of it such that the original and the mirror both remain on the VOI then is it possible to do this?
Could you please indicate how this can be done.
::
We have the possibility of different contours per VOI. This can be done by creating new Sub-ROIs. The problem with your need is that currently there is no way to copy a sub-roi and paste it into a different one.
However, a workaround is the following:
- Create a "left" VOI, outline the left structure, copy the VOI to the buffer.
- Create a second "right" VOI, paste the VOI, then y-mirror it. Move it to the correct position.
- Apply "Statistics". The "Group" entry will include the statistics of both VOIs combined.
If you have more than just the "left" and "right" VOIs you want to combine, select the Groub Tab, check "left" and "right" only, and then apply "Statistics". |
 |
| 6. How ro read a standard-deviation-file for multiple TAC? [PKIN] | 2006-06-08 |
I want to do a weighted least square parameter estimation with time-activity curves and the corresponding (computed) standard-deviation data.
There are 24 TAC and also 24 stdv-data. Till now, I have to read all 24 stdv-data interactively by clicking the button, then clicking the button etc. (24 times).
Is there a possibility to read all 24 stdv-data simultaneously ?
::
An easier alternative to the 24 loading operations could be to edit the original .km file externally:
- open the file in Excel (the data columns are separated by tabs)
- browse to the section "# MODEL_DATA_0"
- replace the values in the "Std.Dev" column by your calculated stdvs you want to use for weighting
- repeat the replacement for all regions ( "# MODEL_DATA_1", " "# MODEL_DATA_2", ..)
- finally save the file using the "Text (Tab separated)" format and load again in PKIN
Note that the weighting method has to be set to "L* measured" and L to 1.0 in all regions. The easiest way is to configure this weighting method in one region,
then configure the function button "Copy to all Regions" to "Noise", and select "Noise". This will copy the weighting definition (but not the weights) to all regions.
I hope this helps. If others confirm this is an important function we can think about providing a mechanism for loading all stdvs in one loading operation. |
 |
| 5. Does PMOD apply a decay correction during loading? [GENERAL] | 2005-09-04 |
| No, PMOD has no implicite decay correction. So changing the acquisition timing will not change the image values.
The only way to apply a decay correction is to use the "SEPCT normalization" filter in the preprocessing section during loading. There you have to enter the isotope halftime. |
 |
| 4. What do I have to enter to normalize uncorrected data from SPECT studies? [GENERAL] | 2004-01-08 |
The aim of SPECT normalization tool is to correct for radionuclide decay, to convert between radioactive units (including diviision by the scan duration) and to multiply the data with a calibration factor which makes it comparable with blood data. The resulting units are expected to be kBq/cc. The entire study must be in one of the supported 4D input formats. For instance, separate Analyze files for each acquisition must be concatenated to form a 4D Analzye file: example.hdr,example.img.
- Start the Viewing tool from the Pmod toolbar.
- Select form Menu File/Load Volume Data/Analyze.
- Change to the directory of your input file and select your "example" file by double-clicking and press Open.
- Specify the units of your input data. A first factor will be calculated and the data will be scaled accordingly upon loading. Eg: when specifying nCi/cc the data are multiplied by a factor 0.037. For "1/1", "kBq/cc, "kcps/cc" and "kcounts/cc" the factor is 1.0. For "counts" the factor is 0.001.
- To enter the acquisition timing information check Edit Times, then press Time edition button and enter the times. If times have been saved previously, they can be loaded using the Retrieve Times button. If you have entered a new acquisition timing, you may save the timing for later usage using the Save Time button.
- In Data Processing Tool 1 select SPECT normalization. You are shown the four parameters which you may fill in.
- Enter Half time in minutes. From the half time and the acquisition timing the decay correction (to acquisition midtime) factor is calculated: exp(tmid*ln2/half_time).
- Enter Calibration factor for camera to counter calibration. This is the third factor which is multiplied with the data.
- Set the Normalize Time flag: A "1" means that a fourth factor is applied to the data: 1/scan_duration[sec].
- Set the Normalize Volume flag: A "1" means that a fifth factor is applied to the data: 1/voxel_volume[ccm].
So in principle, if you have SPECT counts as your input data, you obtain kBq/cc after all corrections have been applied. |
 |
| 3. Why do the printed images look different from the ones in the display? [GENERAL] | 2004-01-08 |
| In order to save ink/toner, the image background can be set to white. So all image pixels with values below
the lower threshold of the color scale will be printed in white, although on the display the appear eg. as black.
This behaviour can be configured for each user and each tool as follows: Select menu Settings/Modify, and enable/disable
the "Print image with white background" checkbox on the Report page. |
 |
| 2. How can I create a smooth model curve for usage in a presentation? [PKIN] | 2004-01-08 |
This is a fundamental question. For doing the optimization in PKIN the model curve is calculated at the same
acquisition times as the measured tac, and it is shown as a polygon in the curve drawing area.
For obtaining a smooth curve for presentation purposes you may use the "Synthetic KM Study" facility
in the file menu. Push the "Set Tac Sampling" button and specify a dense acquisition timing. After pressing
ok you will see a smooth model curve which you can export with the "<" button again. |
 |
| 1. Imported data seems to be scaled/mixed up? [GENERAL] | 2001-01-01 |
When loading data PMOD tools do unit conversions ending up with kBc/cc values. To disable conversion, select the "1/1" unit. Note, that when saving loaded data, no
backwards conversion is performed!
When interpreting numbers saved in a file, two issues are important:
- The number format itself. In PMOD, three types of formats are understood: character (8Bit), word (16Bit), float (32Bit).
- The order how the bytes of a number are saved in the file: big endian (BE, Unix machines) and little endian (LE; Intel machines, Vax).
PMOD is able to read/write any byte order on any machine, but for other programs the byte order may matter. When loading Analyze data, Pmod detects the format and byte order automatically,
as well as for DICOM data. For raw data however, the user must specify the appropriate number format himself. |
 |