# Can someone look over this image position patient logic please - DICOM

This is a discussion on Can someone look over this image position patient logic please - DICOM ; Hello all, I am trying to figure out how to read the direction the rows and columns of DICOM images travel using the image orientation patient tag, I am presenting here how I would read it. Could someone please verify ...

# Thread: Can someone look over this image position patient logic please

1. ## Can someone look over this image position patient logic please

Hello all,

I am trying to figure out how to read the direction the rows and
columns of DICOM images travel using the image orientation patient tag,
I am presenting here how I would read it. Could someone please verify
if this is correct? Thanks.

The orientation tag has 6 components, xyz orientation of both the ROWS
*then* COLUMNS of the image. So there is this mapping for both rows and
columns:

if (CosineComponentX < 0)
x component goes towards the RIGHT.
else
x component goes towards the LEFT.

if (CosineComponentY < 0)
y component goes towards the ANTERIOR.
else
y component goes towards the POSTERIOR.

if (CosineComponentZ < 0)
z component goes towards the FEET.
else
z component goes towards the HEAD.

This is a sample orientation:
0.000000\1.000000\0.000000\0.000000\0.000000\-1.000000

So the y cosines are:
0.000000\1.000000\0.000000

The x cosines are:
0.000000\0.000000\-1.000000

So the orientations of the rows are then:
Towards the n/a, POSTERIOR, n/a.

And the orientations of the columns are then:
Towards the n/a, n/a, FEET.

I guess you can tell the 'major' direction they are traveling based on
which of the component values are greatest (their absolute values)?

I ask because if there is a fictional orientation string like (for cols
lets say):
0.000000\0.200000\-1.000000

Then there must be movement along another axis, but the major direction
is towards the FEET. But the 0.2 in the y component means that columns
are also traveling to the POSTERIOR. So major direction FEET, minor
direction POSTERIOR.

Thanks for reading through and any suggestions.

2. ## Re: Can someone look over this image position patient logic please

See

http://www.dclunie.com/medical-image...COMOrientation

markww wrote:
> Hello all,
>
> I am trying to figure out how to read the direction the rows and
> columns of DICOM images travel using the image orientation patient tag,
> I am presenting here how I would read it. Could someone please verify
> if this is correct? Thanks.
>
> The orientation tag has 6 components, xyz orientation of both the ROWS
> *then* COLUMNS of the image. So there is this mapping for both rows and
> columns:
>
> if (CosineComponentX < 0)
> x component goes towards the RIGHT.
> else
> x component goes towards the LEFT.
>
> if (CosineComponentY < 0)
> y component goes towards the ANTERIOR.
> else
> y component goes towards the POSTERIOR.
>
> if (CosineComponentZ < 0)
> z component goes towards the FEET.
> else
> z component goes towards the HEAD.
>
> This is a sample orientation:
> 0.000000\1.000000\0.000000\0.000000\0.000000\-1.000000
>
> So the y cosines are:
> 0.000000\1.000000\0.000000
>
> The x cosines are:
> 0.000000\0.000000\-1.000000
>
> So the orientations of the rows are then:
> Towards the n/a, POSTERIOR, n/a.
>
> And the orientations of the columns are then:
> Towards the n/a, n/a, FEET.
>
> I guess you can tell the 'major' direction they are traveling based on
> which of the component values are greatest (their absolute values)?
>
> I ask because if there is a fictional orientation string like (for cols
> lets say):
> 0.000000\0.200000\-1.000000

Illegal ... some of the squares must be 1 ... these are UNIT vectors.

> Then there must be movement along another axis, but the major direction
> is towards the FEET. But the 0.2 in the y component means that columns
> are also traveling to the POSTERIOR. So major direction FEET, minor
> direction POSTERIOR.

3. ## Re: Can someone look over this image position patient logic please

Thank you very much David. The code you present in your webpage has
been working well. Have you been using that code yourself consistently?
I am extremely paranoid about presenting an incorrect orientation to
the user, which could have the effect of a doctor making a call on an
organ which really belongs to the other side of the patient. Is there
really any other way to interpret the orientation tags? It looks like
this is a safe method,

Thanks