---
name: "dctopgm8"
section: "1"
platform: "linux"
package: "dicom3tools"
version: "1.00~20240118131615-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/dctopgm8"
---

# dctopgm8(1)

ACR/NEMA DICOM PS3 ... DICOM PS3 - DICOM image to PNM file

## NAME

dctopgm8 - ACR/NEMA DICOM PS3 ... DICOM PS3 - DICOM image to PNM file

## SYNOPSIS

**dctopgm8** \[ **-v\|verbose** \] \[ **-quiet\|silent** \] **-windowwidth width** \] **-windowlevel\|windowcenter center** \] **-ignorewindow** \] **-voilut numberfromzero** \] **-ignorevoilut** \] **-invertedgray** \] **-signed\|unsigned** \]

## DESCRIPTION

**dctopgm8** reads the named dicom or acr-nema input file, converts it to an 8 bit grayscale image by windowing or application of a VOI LUT and saves it as a PGM file.

In the absence of overriding command line options, the default behavior is to apply the first VOI LUT found, else if none, the first pair of window values in the input file, else if none, the full range of the input pixel values.

The input file must be unencapsulated.

## OPTIONS

The PGM output goes where it is specified or standard out. The verbose output goes to standard error.

The basic input switches are described in [dcintro(1)](/dcintro/1.md). Options specific to this program are:

- **-quiet\|silent**

  Suppress the normal description of image parameters.

- **-verbose**

  Display byte offset from file start and message start, in hexadecimal, and dump contents while reading, once read, during replacement, and before writing.

- **-windowwidth width**

  The window width to use (also supresses use of any VOI LUT).

- **-windowlevel\|windowcenter center**

  The window center to use (also supresses use of any VOI LUT).

- **-ignorewindow**

  Ignore window center and width values in the input file, and use the full pixel value range instead (if no other command line options).

- **-voilut numberfromzero**

  Use the selected VOI LUT from the input file (indexed from 0 not 1).

- **-ignorevoilut**

  Ignore any VOI LUTs in the input file, and use the window values or the full pixel value range instead (if no other command line options).

- **-invertedgray**

  Invert the grayscale, overriding the PhotometricInterpretation in the input file.

- **-signed\|unsigned**

  Override the sign specified in the PixelRepresentation in the input file.

## ENVIRONMENT

## EXAMPLES

% dctopgm8 file.dcm file.pgm

Read ...

	Rows = 2294

	Columns = 1914

	NumberOfFrames = 0

	PhotometricInterpretation = MONOCHROME2

	SamplesPerPixel = 1

	BitsAllocated = 16

	BitsStored = 12

	HighBit = 11

	PixelRepresentation = 0

	PlanarConfiguration = 0

	RescaleIntercept = 0

	RescaleSlope = 1

	WindowCenter = 2905

	WindowWidth = 900

	VOILUTs = 3

	PixelData Value Length = 0x85fe78

Setting window values extracted from object because present not set on command line

Using ...

	Rows = 2294

	Columns = 1914

	NumberOfFrames = 1

	PhotometricInterpretation = MONOCHROME2

	SamplesPerPixel = 1

	BitsAllocated = 16

	BitsStored = 12

	HighBit = 11

	PixelRepresentation = 0

	PlanarConfiguration = 0

	RescaleIntercept = 0

	RescaleSlope = 1

	WindowCenter =

	WindowWidth =

	VOILUTs = 0 of 3

	Rows\*Columns\*SamplesPerPixel\*BitsAllocated/8 = 0x85fe78

Writing ...

Applying VOILUT 0

## FILES

## SEE ALSO

**[dccp(1)](/dccp/1.md)**, **pnmtodc(1)**, **rawtodc(1)**, **[dctopnm(1)](/dctopnm/1.md)**, **dctoraw(1)**, **[dcintro(1)](/dcintro/1.md)**

## AUTHOR

Copyright (c) 1993-2022, David A. Clunie DBA PixelMed Publishing. All rights reserved.

## BUGS
