# DICOM "VOI LUT" vs. Volume Rendering

**URL:** https://discourse.slicer.org/t/dicom-voi-lut-vs-volume-rendering/41060
**Category:** Support
**Tags:** dicom, volume-rendering
**Created:** [January 13, 2025, 2:34pm UTC](https://discourse.slicer.org/t/dicom-voi-lut-vs-volume-rendering/41060 "2025-01-13T14:34:07Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![shai-ikko](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/shai-ikko/32/15765_2.png) [@shai-ikko](https://discourse.slicer.org/u/shai-ikko)
#### Post date: [January 13, 2025, 2:34pm UTC](https://discourse.slicer.org/t/dicom-voi-lut-vs-volume-rendering/41060/1 "2025-01-13T14:34:07Z")

</div>

Hi Slicerers,

The DICOM standard defines fields which can be used to map source pixel (or voxel) values to presented pixel values; this is, essentially, the “scalar opacity mapping” of the volume rendering module. The DICOM fields are called “VOI LUT” (Values Of Interest Look Up Table); the relevant DICOM tags are 0028|3002 and 0028|3006, see [here](https://dicom.nema.org/dicom/2013/output/chtml/part03/sect_C.11.html#sect_C.11.4) for more details.

AFAICT from looking at sources, when exporting a DICOM series, these tags are not used, and volume rendering is not consulted; I see them mentioned in neither Slicer sources nor the relevant ITK modules.

Has there been any attempt to use this DICOM facility from Slicer?

FWIW, this seems related to [this old question](https://discourse.slicer.org/t/volume-rendering-preset-to-dicom-or-nifti/18605).

---

<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: [January 13, 2025, 3:45pm UTC](https://discourse.slicer.org/t/dicom-voi-lut-vs-volume-rendering/41060/2 "2025-01-13T15:45:11Z")

</div>

VOI LUT interoperability has never been a high priority for us, but there’s no reason someone couldn’t add support for it. Like a lot of things in DICOM, it can be hard to know if you’ve created a valid object and whether some other system will be able to read it. Also, Slicer supports a lot of things that aren’t standardized in DICOM so there are always limitations. If you have a specific use case and target system you want to exchange data with then yes, probably it can be done.
