# Coordinates registered on DICOM

**URL:** <https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578>\
**Category:** Support\
**Tags:** registration, dicom\
**Created:** [May 25, 2022, 1:43am UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578 "2022-05-25T01:43:22Z")\
**Posts on this page:** 17\
**Page:** 1

<div class="post-metadata">

**Author:** ![Takahashi](https://avatars.discourse-cdn.com/v4/letter/t/f1d935/32.png) [@Takahashi](https://discourse.slicer.org/u/Takahashi)\
**Post date:** [May 25, 2022, 1:43am UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/1 "2022-05-25T01:43:22Z")

</div>

I want to integrate the coordinates acquired by 3DSlicer and Checkpoint software (Stratovan) in one file.  
Before integrating, I checked the coherence of coordinates for several anatomical landmarks registered with the two software. Then, they were completely different from each other, both in value and the plus/minus sign.

Both were registered on the same DICOM data, not STL.  
In 3DSlicer, I used “load DICOM” to import data.

Do you have any idea for the reason and any resolution?  
Do they have the different coordinate system? or, should I take another process when importing DICOM data?

Operating system: Mac OS  
Slicer version: 4.11

Thank you in advance,

---

<div class="post-metadata">

**Author:** ![muratmaga](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/muratmaga/32/3622_2.png) [@muratmaga](https://discourse.slicer.org/u/muratmaga)\
**Post date:** [May 25, 2022, 3:06am UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/2 "2022-05-25T03:06:18Z")

</div>

> [@Takahashi](#):
>
> Before integrating, I checked the coherence of coordinates for several anatomical landmarks registered with the two software. Then, they were completely different from each other, both in value and the plus/minus sign.

I do not now what coordinate system Checkpoint uses. You need to get that information from them. Slicer internally uses RAS coordinates, while DICOM uses LPS (as far as I know). That transformation is simply a sign (but not a value) difference in the first two axis. So a point at 100,100,100 recorded under RAS should would be equivalent to -100, -100, 100 in LPS.

If your data was imported into Slicer through the DICOM module, and no error/warning was generated you shouldn’t really need any other modification.

---

<div class="post-metadata">

**Author:** ![Takahashi](https://avatars.discourse-cdn.com/v4/letter/t/f1d935/32.png) [@Takahashi](https://discourse.slicer.org/u/Takahashi)\
**Post date:** [May 25, 2022, 7:25am UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/3 "2022-05-25T07:25:02Z")

</div>

Thank you for your reply.

My data was imported into Slicer through DICOM module.  
I heard before that the data is imported into a different morpho-space when it is imported through “load DICOM” , and through “load data” with unchecked of “single file”.

Do you have any idea for the effect on the coordinates?

Thank you.

---

<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:** [May 25, 2022, 12:07pm UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/4 "2022-05-25T12:07:54Z")

</div>

I agree with @muratmaga, Slicer’s coordinates are well defined and you can easily understand them with a little research. I don’t know Checkpoint, but for any commercial software you are dependent on the vendor to define and explain their conventions. If they don’t, well, you are stuck reverse engineering.

[https://www.slicer.org/wiki/Coordinate\_systems](https://www.slicer.org/wiki/Coordinate_systems)

---

<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:** [May 25, 2022, 12:20pm UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/5 "2022-05-25T12:20:38Z")

</div>

You could post screenshots of both Slicer and Checkpoint that shows how they display the coordinates. For example, it is possible that you compare voxel coordinates to physical coordinates.

---

<div class="post-metadata">

**Author:** ![muratmaga](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/muratmaga/32/3622_2.png) [@muratmaga](https://discourse.slicer.org/u/muratmaga)\
**Post date:** [May 25, 2022, 3:54pm UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/6 "2022-05-25T15:54:15Z")

</div>

> [@Takahashi](#):
>
> I heard before that the data is imported into a different morpho-space when it is imported through “load DICOM” , and through “load data” with unchecked of “single file”.

That was in quite older versions. If you were working with DICOMs, you should use the DICOM module to import data into Slicer.

---

<div class="post-metadata">

**Author:** ![Takahashi](https://avatars.discourse-cdn.com/v4/letter/t/f1d935/32.png) [@Takahashi](https://discourse.slicer.org/u/Takahashi)\
**Post date:** [May 26, 2022, 12:18pm UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/7 "2022-05-26T12:18:50Z")

</div>

Thank you for sharing.  
As @lassoan suggested, I’m preparing for share the screenshots.

I think that the differences could come from XYZ and RAS coordinate systems.  
(It may be a basic inquiry, but is it right that XYZ is voxel coordinates and RAS is physical coordinates?)  
Does Slicer have any modules or programs to transform coordinates from RAS to XYZ?

---

<div class="post-metadata">

**Author:** ![Takahashi](https://avatars.discourse-cdn.com/v4/letter/t/f1d935/32.png) [@Takahashi](https://discourse.slicer.org/u/Takahashi)\
**Post date:** [May 27, 2022, 4:32am UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/8 "2022-05-27T04:32:13Z")

</div>

Here I attached the screenshots of both Slicer and Checkpoint software.  
Sample names are concealed with black boxes.

 ![Checkpoint](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/6/6/662a228ade8a5d2a1963b6f4489313d236cb8e40.jpeg)  
 ![Checkpoint_export_landmarks](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/5/f/5f429c29d7b20ce139ef5d75ce0e3aad50145306.png)  
 ![Slicer](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/0/6/06d314dca12c5d01106c2c75f51c4176245390f9.jpeg)

---

<div class="post-metadata">

**Author:** ![muratmaga](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/muratmaga/32/3622_2.png) [@muratmaga](https://discourse.slicer.org/u/muratmaga)\
**Post date:** [May 27, 2022, 8:38pm UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/9 "2022-05-27T20:38:55Z")

</div>

Given the checkpoint reports landmarks in hundreds range, those are likely IJK coordinates of the voxel data. Slicer always report in the physical coordinates (in this case RAS) converting those to millimeters. If you expand the data probe module (where you covered the subject name), you will see those as well, when you hover your mice over that point (see below)

 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/d/b/db2687fc7656c0104983f53a4bbc999d9ffe4f6c.png)

---

<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:** [May 27, 2022, 10:49pm UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/10 "2022-05-27T22:49:11Z")

</div>

@Takahashi Could you place your landmark points in Checkpoint in the 8 corners of the image cube? From those coordinates most likely we can tell what coordinate system that software is using.

By the way, is there any specific reason for using the Checkpoint software instead of 3D Slicer?

---

<div class="post-metadata">

**Author:** ![Takahashi](https://avatars.discourse-cdn.com/v4/letter/t/f1d935/32.png) [@Takahashi](https://discourse.slicer.org/u/Takahashi)\
**Post date:** [May 30, 2022, 6:22am UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/11 "2022-05-30T06:22:04Z")

</div>

Thanks.  
Do you mean that the values shown in the line “B” indicates IJK coordinates?

 ![2022-05-30 15.16.25](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/7/6/760f4a18c5c04181753ff9620c7694262266cb02.jpeg)

---

<div class="post-metadata">

**Author:** ![Takahashi](https://avatars.discourse-cdn.com/v4/letter/t/f1d935/32.png) [@Takahashi](https://discourse.slicer.org/u/Takahashi)\
**Post date:** [May 30, 2022, 6:37am UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/12 "2022-05-30T06:37:42Z")

</div>

Thank you for your recommend.  
Could you tell the difference in the coordinates system by this image?  
(Points 4-11 are eight corners landmarks)

I wish I could register the whole landmarks by Slicer, but we have more than a hundred of coordinates acquired by Checkpoint and we want to use them again in a new study. Now, we want to add landmarks which can be acquired only by Slicer in addition to previous landmarks.

 ![8points_landmarks_checkpoint](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/1/2/12b5f90e9321de711650fb1ce943372b9375aee0.png)

---

<div class="post-metadata">

**Author:** ![muratmaga](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/muratmaga/32/3622_2.png) [@muratmaga](https://discourse.slicer.org/u/muratmaga)\
**Post date:** [May 30, 2022, 5:55pm UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/13 "2022-05-30T17:55:27Z")

</div>

Yes, but it represents the IJK coordinates of the voxel where mouse is pointing at (You can see that RAS values are not identical to your F-1 point). You should be able to write a little script which will convert RAS coordinates to IJK.

However, my suggestion would have been to use Slicer for everything. so Instead trying to migrate Slicer data to checkpoint, migrate checkpoint coordinates to Slicer once and for all, and continue your data collection and do your analysis in Slicer.

---

<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:** [May 30, 2022, 7:16pm UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/14 "2022-05-30T19:16:14Z")

</div>

These are the 8 corner coordinates in the screenshot above:

```auto
4	44.2	-78.9	24.4
5	44.3	-78.9	-44.8
6	202.3	-78.9	-45.5
7	202.3	-78.1	24.5
8	44.4	151	24.5
9	45.4	150	-45.5
10	202	151	-45.5
11	202	151	24.5

```

These look like anatomical coordinates in millimeters.

Could you mark these points (in the same order) in 3D Slicer as well and copy-paste them here to see what the relationship is between them? Please do not copy screenshot but go to Markups module, Control points section, select all the rows in the table, hit Ctrl-C to copy the coordinates to the clipboard; you can then paste that into your Slicer forum post.

---

<div class="post-metadata">

**Author:** ![Takahashi](https://avatars.discourse-cdn.com/v4/letter/t/f1d935/32.png) [@Takahashi](https://discourse.slicer.org/u/Takahashi)\
**Post date:** [June 1, 2022, 5:11am UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/15 "2022-06-01T05:11:38Z")

</div>

Here are the eight corner coordinates in 3DSlicer.

- 4&nbsp;&nbsp;-26.00&nbsp;&nbsp;-79.46&nbsp;&nbsp;78.44
- 5 &nbsp;&nbsp;44.37&nbsp;&nbsp;-79.01 &nbsp;&nbsp;80.10
- 6 &nbsp;&nbsp;43.36 &nbsp;&nbsp;79.10 &nbsp;&nbsp;80.10
- 7 &nbsp;&nbsp;-27.01 &nbsp;&nbsp;78.66 &nbsp;&nbsp;78.44
- 8 &nbsp;&nbsp;-20.57 &nbsp;&nbsp;-79.43 &nbsp;&nbsp;-151.27
- 9 &nbsp;&nbsp;49.815 &nbsp;&nbsp;-78.98 &nbsp;&nbsp;-149.61
- 10 &nbsp;&nbsp;48.80 &nbsp;&nbsp;79.14 &nbsp;&nbsp;-149.61
- 11 &nbsp;&nbsp;-21.587 &nbsp;&nbsp;78.69 &nbsp;&nbsp;-151.27

---

<div class="post-metadata">

**Author:** ![Takahashi](https://avatars.discourse-cdn.com/v4/letter/t/f1d935/32.png) [@Takahashi](https://discourse.slicer.org/u/Takahashi)\
**Post date:** [June 1, 2022, 5:22am UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/16 "2022-06-01T05:22:28Z")

</div>

> [@muratmaga](#):
>
> You should be able to write a little script which will convert RAS coordinates to IJK.

Sould I run the script using Slicer, or any other software like MATLAB or R?

Or, if I may migrate checkpoint coordinates to Slicer, is there any script to convert IJK coordinates to RAS?

---

<div class="post-metadata">

**Author:** ![Takahashi](https://avatars.discourse-cdn.com/v4/letter/t/f1d935/32.png) [@Takahashi](https://discourse.slicer.org/u/Takahashi)\
**Post date:** [June 2, 2022, 11:47am UTC](https://discourse.slicer.org/t/coordinates-registered-on-dicom/23578/17 "2022-06-02T11:47:11Z")

</div>

I apologize for late response.  
Here are the eight corner coordinates in 3DSlicer.

```auto
4	-26.00 -79.46 78.44
5	44.37 -79.01 80.10
6	43.36 79.10 80.10
7	-27.01 78.66 78.44
8	49.815 -78.98 -149.61
9	49.815 -78.98 -149.61
10	48.80 79.14 -149.61
11	-21.587 78.69 -151.27

```

I hope this could be helpful for understanding the relationship of two landmarks.  
Any ideas would be appreciated. Thank you.
