# Opening a Siemens MPR CT series

**URL:** <https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008>\
**Category:** Support\
**Created:** [February 2, 2018, 8:47am UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008 "2018-02-02T08:47:56Z")\
**Posts on this page:** 15\
**Page:** 1

<div class="post-metadata">

**Author:** ![opetne](https://avatars.discourse-cdn.com/v4/letter/o/71e660/32.png) [@opetne](https://discourse.slicer.org/u/opetne)\
**Post date:** [February 2, 2018, 8:47am UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008/1 "2018-02-02T08:47:56Z")

</div>

Operating system: Windows  
Slicer version:18/01/14 nightly  
Expected behavior:  
Actual behavior:

Hello,

I have a series of animal cardiac CT made on a Siemens Somatom Sensation Cardiac. Since the ECG differs from the humans I made an MPR from 0-100% of the cardiac cycle. If I want to open this series only a small wave like series appears and I can’t select any special timepoint of the cardiac cycle.  
Do you now a soultion for that?

Thanks in advance,

Ors

---

<div class="post-metadata">

**Author:** ![pieper](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/pieper/32/8_2.png) [@pieper](https://discourse.slicer.org/u/pieper)\
**Post date:** [February 2, 2018, 11:50pm UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008/2 "2018-02-02T23:50:59Z")

</div>

I don’t know if anyone has experience with this. Since it’s not human data maybe you could share it and maybe someone could have a look?

---

<div class="post-metadata">

**Author:** ![opetne](https://avatars.discourse-cdn.com/v4/letter/o/71e660/32.png) [@opetne](https://discourse.slicer.org/u/opetne)\
**Post date:** [February 3, 2018, 3:19pm UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008/3 "2018-02-03T15:19:04Z")

</div>

Dear Steve,

Thank you forthe idea. How can I share the dataset? It says the file format is not authorised. It’s a zipped folder

Ors

---

<div class="post-metadata">

**Author:** ![pieper](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/pieper/32/8_2.png) [@pieper](https://discourse.slicer.org/u/pieper)\
**Post date:** [February 3, 2018, 4:58pm UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008/5 "2018-02-03T16:58:27Z")

</div>

Hi Ors - Usually we use google drive, dropbox, or similar service and then post the link here.  
-Steve

---

<div class="post-metadata">

**Author:** ![opetne](https://avatars.discourse-cdn.com/v4/letter/o/71e660/32.png) [@opetne](https://discourse.slicer.org/u/opetne)\
**Post date:** [February 5, 2018, 8:31am UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008/6 "2018-02-05T08:31:16Z")

</div>

Dear Steve,

Here is the link. I hope it works.  
[https://tinyurl.com/y7zjc23q](https://tinyurl.com/y7zjc23q)

Best,

Ors

---

<div class="post-metadata">

**Author:** ![pieper](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/pieper/32/8_2.png) [@pieper](https://discourse.slicer.org/u/pieper)\
**Post date:** [February 5, 2018, 2:34pm UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008/7 "2018-02-05T14:34:17Z")

</div>

Hi Ors -

Interesting data - I can import it via the dicom module but not with the Add Data menu. As far as I can see there’s just one volume here (1051 slices). If you export a time series it might load as a multivolume.

The image positions are not in a form Slicer can use, so you get warnings when loading the volume and it uses a default spacing of 1mm. If I manually change that to .13mm (edit in the Volumes module as shown in the image) I get something that looks better, but perhaps you know the correct value.

HTH,  
Steve

 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/0/1/01a0e9ff8ab24f6ff39edb1a146739b53e0194d5.jpeg)

---

<div class="post-metadata">

**Author:** ![opetne](https://avatars.discourse-cdn.com/v4/letter/o/71e660/32.png) [@opetne](https://discourse.slicer.org/u/opetne)\
**Post date:** [February 5, 2018, 4:16pm UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008/8 "2018-02-05T16:16:11Z")

</div>

Dear Steve,

The dataset comes from a turkey cardiac CT series and contains the images  
of the whole cardiac cycle. The “funny” appearance comes from this  
phenomena, I think. Since the ECG and the triggering is adapted for the  
human ECG the timepoints saved by the machine doesn’t represent the real  
systole or diastole of the turkey. It is very complicated to save the raw  
data from the CT directly this is why I saved the cardiac cycle from 0 to  
100%.  
There is an option if I upload this series to the syngovia software and  
reconstruct it at certain cycle phase and save it again. I was wondering if  
I could do this with the Slicer without this step. The other question is if  
I could make a video out of it with the Slicer?

Ors

---

<div class="post-metadata">

**Author:** ![pieper](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/pieper/32/8_2.png) [@pieper](https://discourse.slicer.org/u/pieper)\
**Post date:** [February 5, 2018, 4:37pm UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008/9 "2018-02-05T16:37:50Z")

</div>

Hi Ors -

Ah, yes, that explains a little more about the why it loaded the way it did and looks “funny”.

You may be able to use the MultiVolumeImporter module if you know the dicom tags that differentiate the frames of the cine sequence. (See the Advanced section, I know the default ones don’t recognize this as a time series). If you find a tag that works of this data it might make sense to add it as another default.

[https://www.slicer.org/wiki/Documentation/4.8/Modules/MultiVolumeImporter](https://www.slicer.org/wiki/Documentation/4.8/Modules/MultiVolumeImporter)

You can also look at the Sequences extension:

[https://www.slicer.org/wiki/Documentation/Nightly/Extensions/Sequences](https://www.slicer.org/wiki/Documentation/Nightly/Extensions/Sequences)

Once you have the data loaded you can make a movie with ScreenCapture.

[https://www.slicer.org/wiki/Documentation/4.8/Modules/ScreenCapture](https://www.slicer.org/wiki/Documentation/4.8/Modules/ScreenCapture)

HTH,  
Steve

---

<div class="post-metadata">

**Author:** ![opetne](https://avatars.discourse-cdn.com/v4/letter/o/71e660/32.png) [@opetne](https://discourse.slicer.org/u/opetne)\
**Post date:** [February 5, 2018, 6:29pm UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008/10 "2018-02-05T18:29:16Z")

</div>

Dear Steve,

Sorry for being a bad padavan but I couldn’t open it with anything you  
suggested. The multivolume importer doesn’t do anything. I checked the  
metadata of the image series but there were not such data the module  
requires (this is a CT series, so no echo and repetition time and flip  
angle).  
It would be realy nice to be able to open the series somehow and make a  
video out of it to check the best timepoint for diastole and systole.

Best,

Ors

---

<div class="post-metadata">

**Author:** ![pieper](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/pieper/32/8_2.png) [@pieper](https://discourse.slicer.org/u/pieper)\
**Post date:** [February 5, 2018, 7:04pm UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008/11 "2018-02-05T19:04:49Z")

</div>

Hi Ors -

Right - the MultiVolumeImporter only sees a single frame here (see the error log after clicking import), I hope @fedorov can advise on this.

With the data imported and selected in the Slicer dicom database you can bring up the metadata as shown below and see which tags are changing and ImageComments seems like it would work to delineate the frames, but it’s not clear how to make this work for the MultiVolumeImporter.

-Steve

 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/0/5/058497285bf5e4a9a4978d052b29e0c82a553051.png)

---

<div class="post-metadata">

**Author:** ![fedorov](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/fedorov/32/14_2.png) [@fedorov](https://discourse.slicer.org/u/fedorov)\
**Post date:** [February 6, 2018, 5:00pm UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008/12 "2018-02-06T17:00:07Z")

</div>

@opetne indeed, the dataset, as is, cannot be parsed as a multivolume node, but looking at the dataset - this is expected.

Multivolume DICOM plugin makes certain assumptions about the dataset to be able to parse it:

1. The dataset has a fourth dimension, and the frames in the dataset can be sorted into groups by that fourth dimension. The result of this sorting should be such that each group have the same number of frames, and that group of frames should be possible to reconstruct into a valid 3-d volume.

2. The heuristics of how frames should be sorted into groups is defined by the DICOM tags that will be examined for sorting as defining the 4th dimension. The current list of tags that will be examined are here: [MultiVolumeImporter/MultiVolumeImporterPlugin.py at master · fedorov/MultiVolumeImporter · GitHub](https://github.com/fedorov/MultiVolumeImporter/blob/master/MultiVolumeImporterPlugin.py#L35-L53)

Looking at your dataset, the multivolume frames are identified by “ImageComments”, but also “ScanOptions”. And conveniently, cardiac cycle is already parsed out of the first item in the “ScanOptions” tag ([contributed](https://github.com/fedorov/MultiVolumeImporter/commit/8b6cff76ee7cae048c91619ba2668381e80c85fb) by @lassoan!).

However, your dataset does not satisfy the first assumption. After I sorted the files in your dataset by “ImageComments”, I see that the number of frames is not identical for every unique value of “ImageComments” (compare 0% and 10%, for example)

 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/e/f/ef66d781a84fd96c35c5645a7c555d5fdd5d960c.png)

To fix this, I did the following:

1. ran [this script](https://github.com/fedorov/DICOMScripts/blob/master/separateByTagValue.py) to sort by “ImageComments”
2. removed the folder that corresponds to 0%, as it was the only one with the inconsistent number of frames (of course, a better way is to find the specific offending frame, and remove that one file, but I didn’t have a handy tools to do this quickly)
3. used “DICOM Patcher” module of Slicer to normalize the file path, since “ImageComments” has special characters and import was failing.
4. Imported the “clean” dataset from the output folder produced by DICOM Patcher.

Once this is done, I am able to load the dataset (minus 0% frame) into Slicer as a multivolume - see a demo here: [https://www.screencast.com/t/ggcHB3Z1](https://www.screencast.com/t/ggcHB3Z1)

---

<div class="post-metadata">

**Author:** ![opetne](https://avatars.discourse-cdn.com/v4/letter/o/71e660/32.png) [@opetne](https://discourse.slicer.org/u/opetne)\
**Post date:** [February 6, 2018, 9:00pm UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008/13 "2018-02-06T21:00:00Z")

</div>

Dear Andrey,

I am totaly impressed, thank you! That is a very promising result.

Thanks,

Ors

---

<div class="post-metadata">

**Author:** ![opetne](https://avatars.discourse-cdn.com/v4/letter/o/71e660/32.png) [@opetne](https://discourse.slicer.org/u/opetne)\
**Post date:** [February 7, 2018, 11:36am UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008/14 "2018-02-07T11:36:40Z")

</div>

Dear Andrey,

Thank you for your help. I don’t have such developed skills in script  
running, so I asked onee of my colleagues. He modified the script a bit,  
like the output path and we experineced that the 0% folder conatins always  
1 more image than the others. I could open the series successfuly.  
One more question of course, if you have time to anser it. At some of the  
animals I’m not sure wether the systole or diastole was saved at the  
correct timepoint. As stepping through the frames, I can see exactly what  
the real systole or diastole is. Is there a chance to see what cardiac  
cycle they belong? I mean which phase (%) between 0 and 100%? On the graph  
there is only the signal intensity showed.

Best,

Ors

---

<div class="post-metadata">

**Author:** ![fedorov](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/fedorov/32/14_2.png) [@fedorov](https://discourse.slicer.org/u/fedorov)\
**Post date:** [February 7, 2018, 2:56pm UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008/15 "2018-02-07T14:56:45Z")

</div>

In the MultiVolumeExplorer there is a slider for selecting the frame to be shown, and the frame number. Knowing that your frames are in 5% increments, you can calculate the phase %.

 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/5/7/577877d43b35a89871243c5fde06f14814818a4f.png)

---

<div class="post-metadata">

**Author:** ![opetne](https://avatars.discourse-cdn.com/v4/letter/o/71e660/32.png) [@opetne](https://discourse.slicer.org/u/opetne)\
**Post date:** [February 7, 2018, 8:12pm UTC](https://discourse.slicer.org/t/opening-a-siemens-mpr-ct-series/2008/16 "2018-02-07T20:12:05Z")

</div>

Thank you! I was not sure that there is a direct link between the frame  
number and the cardiac cycle.

Ors

Andrey Fedorov [slicer@discoursemail.com](mailto:slicer@discoursemail.com) (időpont: 2018. febr. 7., Sze,  
16:07) ezt írta:
