TIFFTODICOM(1)
π TIFFTODICOM(1) π
okay bestie, today we're looking at TIFFToDicom π it takes a TIFF image and turns it into a DICOM image of a specified or appropriate SOP Class β¨ grab a snack π this one has a lot of options
β¨ NAME β¨
TIFFToDicom is the one that reads a TIFF image input format file and creates an image of a specified or appropriate SOP Class π¦
π SYNOPSIS π
this is how the command line is structured, no cap:
TIFFToDicom jsonfile inputFile outputFilePrefix [modality [SOPClass
[TransferSyntax]]] [ADDTIFF|DONOTADDTIFF] [USEBIGTIFF|DONOTUSEBIGTIFF]
[ALWAYSWSI|NOTALWAYSWSI] [ADDPYRAMID|DONOTADDPYRAMID]
[MERGESTRIPS|SPLITSTRIPS] [ADDDCMSUFFIX|DONOTADDDCMSUFFIX]
[INCLUDEFILENAME|DONOTINCLUDEFILENAME] [CHANNELFILE channelfile]
[SPACINGMM spacingmm] [SPACINGROWCOLMM spacingrowmm(y) spacingcolmm(x)]
[THICKNESSMM thickness]
π DESCRIPTION π
bestie, this section is literally just one line π
Error: Incorrect number of arguments or bad arguments
so if you see that, your args are either the wrong count or not it π
πΈ OPTIONS πΈ
these are the vibes for each argument, let's go π
jsonfileβ the JSON file that describes the functional groups, plus the attributes and values to be added or replaced πinputFileNameβ the input file πoutputFilePrefixπ·outputFileSuffixπ·modalityβ may be null π«§sopClassβ may be null π«§transferSyntaxβ may be null. it's used if the image is multiframe, but ignored if it's single frame, and single frame is always written uncompressed π¦addTIFFβ whether or not to add a TIFF IFD in the DICOM preamble, so you get a dual=personality DICOM-TIFF file sharing the same pixel data πuseBigTIFFβ whether or not to make a BigTIFF instead of a Classic TIFF file πalwaysWSIβ whether or not to add WSI-related info even when it's not a WSI SOP Class, like when float gets converted to a parametric map π₯addPyramidβ whether or not to add multi-resolution pyramid (downsampled) layers to the TIFF IFD, plus a matching DICOM private data element in the same file β¨mergeStripsβ whether or not to merge an image with more than one strip into one single DICOM image, or make a separate image or frame for each strip π§channelFileβ may be null π«§includeFileNameβ whether or not to record the original filename in the DICOM output π«Άspacingrowmmβ the PixelSpacing 1st value. it's the spacing between adjacent rows (aka the "y" spacing), in mm. use it to override the base layer spacing if that's wrong or missing. may be 0 if not supplied πspacingcolmmβ the PixelSpacing 2nd value. it's the spacing between adjacent columns (aka the "x" spacing), in mm. same deal, it overrides the base layer spacing if that's wrong or missing. may be 0 if not supplied πthicknessmmβ the SliceThickness and ImagedVolumeDepth value, in mm. may be 0 if not supplied π
π§ EXAMPLES π§
here's a real example you can copy and run β¨
$ TIFFToDicom /etc/pixelmed/TIFFToDicom.WSI.json CMU-1.svs my_wsi SM 1.2.840.10008.5.1.4.1.1.77.1.6
π«Ά AUTHOR π«Ά
this manual page was written by Mathieu Malaterre <malat@debian.org> for the Debian GNU/Linux system (but may be used by others) πΈ
π SEE ALSO π
go check out OrthancWSIDicomizer too, it's giving main character energy π
that's the whole tea, bestie π«Ά this was TIFFToDicom version 20220313 from March 2022, so go be iconic with your TIFFs π ππ¦
π¦ where this page comes from
- debian bookworm: pixelmed-apps 20220618+dfsg-1 Β· BSD-3-Clause
- debian trixie: pixelmed-apps 20250211+dfsg-2 Β· BSD-3-Clause
- ubuntu noble: pixelmed-apps 20220618+dfsg-2 Β· BSD-3-Clause
- ubuntu questing: pixelmed-apps 20250211+dfsg-2
- ubuntu resolute: pixelmed-apps 20251203+dfsg-2 Β· BSD-3-Clause
- ubuntu stonking: pixelmed-apps 20251203+dfsg-2 Β· BSD-3-Clause
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms