Canon 4DCT TimeMIP Import into Pinnacle

Skip to first unread message

Jason Searle

Oct 18, 2023, 10:15:16 AM10/18/23
to pinnacle3-users

I'd be interested in hearing from anyone who has successfully imported TimeMIP datasets into Pinnacle from a Toshiba or Canon CT scanner?

At the moment the data imports with the table positions offset from the positions of the associated 4D phase datasets.

Kind Regards,


Claudia Widmaier-Mohr und Dr. Peter Mohr

Oct 19, 2023, 12:42:56 PM10/19/23
to 'Jason Searle' via pinnacle3-users
Hi Jason,

as I have not seen any reply to your question, I share some thoughts and earlier experience with Toshiba/Canon CT scanners.

In our hospital I had two possibilities to import CT scans into Pinnacle:
a) directly: from the scanner to Pinnacle
b) indirectly, two steps: from the scanner to the PACS and from the PACS to Pinnacle
The resulting Pinnacle image sets were offset in the patient craniocaudal direction. The reason for the difference was
related to two different coordinate spaces (I don't remember the precise names, the problem was around 2008 after
installation of the CT scanners; the two names were something like "DICOM" and "DICOM-local").

It seems to me that your problem is similar. Maybe, my above thoughts help to identify the problem or to find a
workaround. Furthermore, it is not too complicated to modify the Pinnacle "ImageSet" files by hand - at least for
testing whether the 4D data sets can be used in Pinnacle. If you need support for this manual editing, let me know.

Best regards,
Peter Mohr


| Dr. Peter Mohr
| Medizinphysikexperte
| Klingenäcker 28
| D-74523 Schwäbisch Hall
| phone : +49-7907-9435954 / fax : +49-7907-9435953
| email :
> --
> --
> You received this message because you are subscribed to the Google
> Groups "pinnacle3-users" group.
> To post to this group, send email to
> To subscribe to this group, send email to
> To unsubscribe from this group, send email to
> For more options, visit this group at
> <>
> ---
> You received this message because you are subscribed to the Google Groups "pinnacle3-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to
> <>.
> To view this discussion on the web visit
> <>.

Robert Ross

Nov 2, 2023, 9:51:06 AM11/2/23
to pinnacle3-users
Hi Jason

I can do this with Pinnacle 16.2.1 and our Canon Aquilion LB.  I had to write software to alter the MIP with some additional tags.  Interestingly, our MIPs would not import at all without this intervention.  The Pinnacle dicom conformance statement does tell you which tags are required, but I found a bit of trial and error was needed.  Basically, I take the position data from the phase 0% series and use it to add the position to the MIP data.

In Python, using pydicom and a reading a MIPS CT dicom object called ct:

#add the phase0 coordinate value corresponding to the InstanceNumber key in the phase0_dict
  ct.add_new([0x0020, 0x00032],'DS',phase0_dict[ct.InstanceNumber])
#add a whole bunch of required tags
                       ct[0x0008, 0x0016].value='1.2.840.10008.' #CT Image Storage SOP, for Intensity Projection Image Datasets Only
                            ct.add_new([0x0018, 0x0050],'DS','3.0')#(0018,0050) DS Slice Thickness
                            slice_thickness = True
                            slice_thickness = False
    #add kvp
                            ct.add_new([0x0018, 0x0060],'DS','120')#(0018,0060) DS KVP
                            kvp = True
                            kvp = False
    #add frame of reference UID, should match primary image set (dummy value for now)
                            ct.add_new([0x0020, 0x0052],'UI','1.2.392.200036.9116.')#(0020,0052) UI Frame of Reference UID
                            frame_of_ref_uid = True
                            frame_of_ref_uid = False
    #add tags required as VNAP (vnap, value not always present) in the 'Presence of Module' category of the dicom conformance statement
    ##position reference indicator, table 64
                            ct.add_new([0x0020, 0x1040],'LO', '')#(0020,1040) LO Position Reference Indicator
                            position_ref_indicator = True
                            position_ref_indicator = False
    #add tags required as ANAP (attribute present in specified condition, value must be present if attribute exists) in the 'Presence of Module' category of the dicom conformance statement
    ##note the specified condition is not known, but the 'examine dicom issues' option in Pinnacle lists the first problematic tag
    ##patient position, table 63 - note that I'm making an assumption about HFS, it's not in the file anywhere in this format, but could be worked out from ImageOrientationPatient
                            ct.add_new([0x0018, 0x5100],'CS' ,'HFS')#(0018,5100) CS Patient Position
                            patient_position = True
                            patient_position = False
    #from section 8.5.3, table 200
    #private creator codes
                            ct.add_new([0x00F1, 0x0010],'LO','ELSCINT1')    
                            s00f10010 = True
                            s00f10010 = False
    #couch id
                            ct.add_new([0x00E1, 0x1042],'LO','Couch')  
                            couch_id = True
                            couch_id = False
    #gating, specifies intensity projection type as MIP, MinIP or AIP
                            ct.add_new([0x01F1, 0x1039],'LO','AIP')
                            gating_code = True
                            gating_code = False
    #add in a dummy acquisition number.  This is Type 2 (non essential) but throws a warning when importing to Aria
    #and we don't want people to ignore warnings.
                            ct.add_new([0x0020, 0x0012],'IS','1') # 2023-03-09
                            acquisition_number = True
                            acquisition_number = False

There's a bit more complexity to it - you need to get the corresponding position from the phase 0% slices etc, but happy to discuss further.

Kind regards
Reply all
Reply to author
0 new messages