# [16 - bit monochrome2] pixel data representation question - DICOM

This is a discussion on [16 - bit monochrome2] pixel data representation question - DICOM ; hi, I got image with the following parameters (TransferSyntax - implicit LittleEndian): (...) (0028,0002) US 1 # 2 Samples per Pixel (0028,0004) CS [MONOCHROME2] # 12 Photometric Interpretation (0028,0010) US 512 # 2 Rows (0028,0011) US 512 # 2 Columns ...

# Thread: [16 - bit monochrome2] pixel data representation question

1. ## [16 - bit monochrome2] pixel data representation question

hi,

I got image with the following parameters (TransferSyntax - implicit
LittleEndian):
(...)
(0028,0002) US 1
# 2 Samples per Pixel
(0028,0004) CS [MONOCHROME2] # 12
Photometric Interpretation
(0028,0010) US 512
# 2 Rows
(0028,0011) US 512
# 2 Columns
(0028,0030) DS [0.6250000000\0.6250000000]
# 26 Pixel Spacing
(0028,0100) US 16
# 2 Bits Allocated
(0028,0101) US 16
# 2 Bits Stored
(0028,0102) US 15
# 2 High Bit
(0028,0103) US 1
# 2 Pixel Representation
(0028,0106) US 0
# 2 Smallest Image Pixel Value
(0028,0120) SS (no value available)
# 2 Pixel Padding Value
(0028,1052) DS [-1024]
# 6 Rescale Intercept
(0028,1053) DS [1]
# 2 Rescale Slope
(...)

and then I got stream of bytes as a piece of pixel data:

byte 0: 00000000
byte 1: 10000000
byte 2: 00000000
byte 3: 10000000
....and so on....

i wonder how to interpret that stream of pixel datas, because
byte1byte0 (LittleEndian) means 1000000000000000, which assuming pixel
representation = 1 (2's complement) is equals to -32768.... but the
Smallest Image Pixel Value is 0.
Any idea how to interpret that portion of image data ?

best regards
darek

2. ## Re: [16 - bit monochrome2] pixel data representation question

What is Pixel Padding Value ?

David

darod wrote:
> hi,
>
> I got image with the following parameters (TransferSyntax - implicit
> LittleEndian):
> (...)
> (0028,0002) US 1
> # 2 Samples per Pixel
> (0028,0004) CS [MONOCHROME2] # 12
> Photometric Interpretation
> (0028,0010) US 512
> # 2 Rows
> (0028,0011) US 512
> # 2 Columns
> (0028,0030) DS [0.6250000000\0.6250000000]
> # 26 Pixel Spacing
> (0028,0100) US 16
> # 2 Bits Allocated
> (0028,0101) US 16
> # 2 Bits Stored
> (0028,0102) US 15
> # 2 High Bit
> (0028,0103) US 1
> # 2 Pixel Representation
> (0028,0106) US 0
> # 2 Smallest Image Pixel Value
> (0028,0120) SS (no value available)
> # 2 Pixel Padding Value
> (0028,1052) DS [-1024]
> # 6 Rescale Intercept
> (0028,1053) DS [1]
> # 2 Rescale Slope
> (...)
>
> and then I got stream of bytes as a piece of pixel data:
>
> byte 0: 00000000
> byte 1: 10000000
> byte 2: 00000000
> byte 3: 10000000
> ...and so on....
>
> i wonder how to interpret that stream of pixel datas, because
> byte1byte0 (LittleEndian) means 1000000000000000, which assuming pixel
> representation = 1 (2's complement) is equals to -32768.... but the
> Smallest Image Pixel Value is 0.
> Any idea how to interpret that portion of image data ?
>
>
> best regards
> darek
>

3. ## Re: [16 - bit monochrome2] pixel data representation question

Ignore that ... your dump says Pixel Padding Value is not
present.

David

David Clunie wrote:
> What is Pixel Padding Value ?
>
> David
>
> darod wrote:
>> hi,
>>
>> I got image with the following parameters (TransferSyntax - implicit
>> LittleEndian):
>> (...)
>> (0028,0002) US 1
>> # 2 Samples per Pixel
>> (0028,0004) CS [MONOCHROME2] # 12
>> Photometric Interpretation
>> (0028,0010) US 512
>> # 2 Rows
>> (0028,0011) US 512
>> # 2 Columns
>> (0028,0030) DS [0.6250000000\0.6250000000]
>> # 26 Pixel Spacing
>> (0028,0100) US 16
>> # 2 Bits Allocated
>> (0028,0101) US 16
>> # 2 Bits Stored
>> (0028,0102) US 15
>> # 2 High Bit
>> (0028,0103) US 1
>> # 2 Pixel Representation
>> (0028,0106) US 0
>> # 2 Smallest Image Pixel Value
>> (0028,0120) SS (no value available)
>> # 2 Pixel Padding Value
>> (0028,1052) DS [-1024]
>> # 6 Rescale Intercept
>> (0028,1053) DS [1]
>> # 2 Rescale Slope
>> (...)
>>
>> and then I got stream of bytes as a piece of pixel data:
>>
>> byte 0: 00000000
>> byte 1: 10000000
>> byte 2: 00000000
>> byte 3: 10000000
>> ...and so on....
>>
>> i wonder how to interpret that stream of pixel datas, because
>> byte1byte0 (LittleEndian) means 1000000000000000, which assuming pixel
>> representation = 1 (2's complement) is equals to -32768.... but the
>> Smallest Image Pixel Value is 0.
>> Any idea how to interpret that portion of image data ?
>>
>>
>> best regards
>> darek
>>