I just updated my version of MRIcroGL to 1.2.20220720 and I started getting this error when I convert my dicom images to nifti:
Unsupported transfer syntax: ‘1.2.840.10008.1.2.4.90’.
Previously I had a version from 2016 and it worked with the same dataset. I downloaded the compiled version from https://www.nitrc.org/ for Mac, so I don’t know if it has something to do with JPEG2000.
I tried searching for similar issues and attempted a few things, but nothing worked, so I would be really grateful if someone could help
This question is underspecified, perhaps you want to generate a new issue on the MRIcroGL github page which provides a template that helps you provide the information necessary for trouble shooting. At the minimum, it might help to know your operating system: macOS, Linux or Windows. You can always replace the version of dcm2niix that MRIcroGL is calling by going here.
It should be noted that the DICOM standard only requires tools to support uncompressed transfer syntaxes. Therefore, using a compressed transfer syntax may cause problems with many DICOM compliant tools. In addition, the JPEG-2000 lossless transfer syntax (1.2.840.10008.1.2.4.90) is extremely inefficient and you may want to consider a disk or file based compression scheme that will compress both image data and header information (which for many DICOMs is larger than the image data). While dcm2niix can be optionally compiled to support the DICOM specific compression methods, it does result in a much larger executable.
Thanks for the prompt response! I apologize if my question was not well formulated.The operating system is macOS 10.10.5.
Is it so that the newest release is not compiled to support JPEG-2000 syntax? Should I then use an older version of dcm2niix?
Your question remains underspecified. You may want to submit a new issue on the MRIcroGL github where the template asks you to copy the details from the 'About` box, which would specify if you are using a macOS computer with an Intel (x86-64) or Apple (M1/M2) CPU. At the moment, macOS supports both CPUs, which makes supporting them a bit tricky. Your about box should look like this:
1.2.20220720c Cocoa ARM64 LLVM
Author: Chris Rorden
License: BSD 2-Clause
Version 11.7 (Build 20G817) MacBookAir10,1
Retina Scale: 2
Apple; OpenGL= 2.1 Metal - 71.7.1; Shader=1.20
2.1 Max 3D texture: 2048
Current texture: 207×256×215 43mb
If you want, you can build dcm2niix for your specific computer with the JPEG2000 support following this recipe to include the OPENJPEG library:
git clone https://github.com/rordenlab/dcm2niix.git
mkdir build && cd build
cmake -DZLIB_IMPLEMENTATION=Cloudflare -DUSE_JPEGLS=ON -DUSE_OPENJPEG=ON ..
This should create a new dcm2niix executable specific to your architecture that supports JPEG2000. You can either run it directly from the command line, or choose to
Show Package Contents for your MRIcroGL executable and replace its copy of dcm2niix with your custom version.
I followed your steps and now it works. Thank you so much!