# Hanging protocol for displaying PET/CT images

**URL:** https://discourse.slicer.org/t/hanging-protocol-for-displaying-pet-ct-images/28598
**Category:** Feature requests
**Tags:** pet
**Created:** [March 27, 2023, 12:46pm UTC](https://discourse.slicer.org/t/hanging-protocol-for-displaying-pet-ct-images/28598 "2023-03-27T12:46:01Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![nick.reynders](https://avatars.discourse-cdn.com/v4/letter/n/f0a364/32.png) [@nick.reynders](https://discourse.slicer.org/u/nick.reynders)
#### Post date: [March 27, 2023, 12:46pm UTC](https://discourse.slicer.org/t/hanging-protocol-for-displaying-pet-ct-images/28598/1 "2023-03-27T12:46:02Z")

</div>

Is is possible to add on a feature that saves a user’s preferred modality-specific viewing settings. I view PET/CT images regularly and it would be great to be able to have my view settings saved so I’m always viewing PET with PET-Heat in 0-20SUV, then CT in CT Abdomen Window without having to adjust this every single time I load a new case. Having custom view settings for a given user where it loads up the same way each time would be great!

---

<div class="post-metadata">

### Author: ![lassoan](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/lassoan/32/13_2.png) [@lassoan](https://discourse.slicer.org/u/lassoan)
#### Post date: [March 27, 2023, 3:09pm UTC](https://discourse.slicer.org/t/hanging-protocol-for-displaying-pet-ct-images/28598/2 "2023-03-27T15:09:11Z")

</div>

Thanks for the suggestion. A task-specific view setup, so called “hanging protocol” is indeed a useful feature. In Slicer, currently hanging protocols must be specified in Python.

For example, if you copy-paste [this code snippet](https://slicer.readthedocs.io/en/latest/developer_guide/script_repository.html#activate-hanging-protocol-by-keyboard-shortcut) into the Pyhon console or into the Slicer startup file (.slicerrc.py) then a PET/CT hanging protocol can be applied by using the Ctrl+9 keyboard shortcut.

Defining hanging protocol in a Python script has the advantage that it is possible to set very sophisticated image display set selection criteria, visualization options, even any kind of pre-processing, registration, etc.

However, **it is not easy to create hanging protocols and distribute them to users**. **It would be also nice to be able to load/save hanging protocols from/to DICOM** (see [IOD](https://dicom.innolitics.com/ciods/hanging-protocol) and some [slides](https://dicom.nema.org/dicom/Conf-2005/Day-2_Selected_Papers/B305_Morgan_HangProto_v1.pdf)) or some JSON description (see for example [OHIF](https://v3-docs.ohif.org/platform/extensions/modules/hpModule)).
