Cannot open DICOM file

18 views (last 30 days)
Marcus Glover
Marcus Glover on 8 May 2020
Commented: Walter Roberson on 12 May 2020
I have DICOM files that come from a Philips MR scanner that I cannot seem to open properly using dicomread or dicomreadVolume. I can open other DICOM files from different scanners with no issue. I have attached an example here of a file that will not open. There is image data there, as I can view this file on my PACS system and it has a larger filesize than a typical single slice image. The entire series of ~9 images is apparently included in ths one file, which makes me believe it is an enhanced DICOM file. Most other MR scanners give me one slice per DICOM file and those open with dicomread no problem.
dicomread does not give an error, but gives an empty matrix. isdicom shows true, and dicominfo successfully opens the header. dicomreadVolume does give an error- Input must have more than one image slice.
Is there another way that would be able to open this image data?
Thanks.
  5 Comments
Walter Roberson
Walter Roberson on 9 May 2020
I have not been able to find any images stored in that file. I did find some hidden data, but nothing you could use to create an image out of. For example,
buffer(native2unicode(typecast(info.Private_2005_1132.Item_4.Private_2005_1144.','uint8'),'utf8'),128).'
29×128 char array
' B �← - d , CGEN_ena_IQT_par � CGEN_ena_bidspec_mode '
' CGEN_adaptive_filt_ecg D CGEN_adaptive_filt_delay Bk$�C��% � CGEN_b1rms_averaging_win'
'dow }-@� � CGEN_high_weight_SAR_factors | CGEN_high_weight_range Z CG'
'EN_sar_alert_Wpkg �C��%C� D 4 CGEN_sar_max_Wpkg >J@8]A_��Bk CGEN_sar_max_legacy_Wpkg '
'c]� � CGEN_sed_limits CGEN_pediatric_age_limit CGEN_hea'
'rt_rate_update_interval � " CGEN_phys_simulation �.n�$Q@�~] � CGEN_simulate_gradient_dist '
' CGEN_phys_use_timestamps CGEN_sim_nr_rr_intervals 3D f CGEN_sim_rr_in'
'terval_arr A;G�Bf�� d 8 CGEN_sim_nr_resp_intervals �k→�� � CGEN_sim_insp_interval_arr d '
' h CGEN_sim_exp_interval_arr d � CGEN_enlarge_range ԬB�K�Cy�&C7 $→ CGEN_rf_idle_time �'
'k→��/Z@��^A� �→ CGEN_gr_idle_time T→ CGEN_hos_idle_time &→ '
' CGEN_force_par_mode 'C�� D CGEN_boost_mode ��]@%�_A̛�B��C� CGEN_disable_flame_checks ݓ�'
'�Z�_ CGEN_rt_simulation � CGEN_pns_model �!D � CGEN_pn'
's_thresholds (�Cy�(C֭!D � CGEN_pns_filter_taus B��a@��`A�� � CGEN_pns_filter_weights Y '
' � CGEN_pns_logging_enabled � CGEN_pns_question_model � CGEN_pns_quest'
'ion_thresholds C��) CGEN_acoustic_safe_level �� �c@ CGEN_cuda_sar_model_used '
' $ CGEN_ena_distortion_par � CGEN_coil_ui_selection_mode $D � CGEN_coil_ui_allow_p'
're_exclusion � CGEN_ext_test_mode ݵ� l CGEN_pns_non_cart_extra_factors � '
' CGEN_cem43_pars ,C�%D � � � � � � � � � � � � �'
' � � � � � 3 � � � � � � � � 3 � L B 8 .'
' $ � � � � � � � � � � � � � � � 4 H \ p � � � L ` t �'
' � � � � � � � � � � � � � � � � � � �'
' � l l l l l l l l � l � � � � l �'
' � � � � l X � � � L � x � � @ r � l �'
' .→ `→ �→ �→ �→ (↵ �↵ �↵ (↵ (↵ (↵ (↵ (↵ (↵ x x x x x x (↵ x (↵ x (↵ x � � �'
' � � � � � � � � � � � < � h h h h h h h h 0 t � � h < � < '
' � h t � 0 � � � h 6 � � n < ↵ � � t B � � �↵ � H �← t'
' � < � h � 0 � � \ � � P � � � � � � � � � '
' � @F\? ?��?��7@ B C C @��L@ A A @��L@ A B @��L'
'@ A �A �@ @@ �? �? �? B 8B 8B↵ף>33�@�G?�Ga> �B �B �B �B �B33�? �? @ D �>��l@ff�?��? '
Oddly, in the same sequence of bytes, some of the text is single byte and some of it is double byte
Walter Roberson
Walter Roberson on 12 May 2020
The private dicom dictionary name for the above is info.MRBlobDataObjectArray.Item_4.MRBlobData

Sign in to comment.

Answers (1)

drummer
drummer on 8 May 2020
If dicomread didn't show any errors, try this after reading them again:
figure
imshow(yourDicom, 'DisplayRange', []);
I did not open your file, so be careful to load a slice where you know there´s anatomy.
Check if your retrieve from your PACS worked, as Walter Robson mentioned there´s no image in your file.
Good luck
  7 Comments
Walter Roberson
Walter Roberson on 12 May 2020
http://godzilla.kennedykrieger.org/dicomfiles/dicomeread.zip has a philips dictionary with a most (but not all) of the entries used in the file here.
The MATLAB script there to read enhanced images says that this particular image is not enhanced.
I do not find anything using the dictionary that I had not already found and reported above in https://www.mathworks.com/matlabcentral/answers/523943-cannot-open-dicom-file#comment_844097
drummer
drummer on 12 May 2020
I´m aware of the issue. That´s why I mentioned 'In another topic'.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!