# Load GE Invenia ABUS images from DICOM

**URL:** <https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067>\
**Category:** Support\
**Tags:** feature, dicom\
**Created:** [December 15, 2020, 4:55am UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067 "2020-12-15T04:55:43Z")\
**Posts on this page:** 18\
**Page:** 1

<div class="post-metadata">

**Author:** ![Tesla2678](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/tesla2678/32/9062_2.png) [@Tesla2678](https://discourse.slicer.org/u/Tesla2678)\
**Post date:** [December 15, 2020, 4:55am UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/1 "2020-12-15T04:55:43Z")

</div>

Hello there,

I have a question about how to make the slicer of Axial displays bend?

**Expected:**

 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/f/7/f79322c64b61958bf271fc14438cd215ac3dea08.jpeg)

**Now:**

 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/2/d/2d413131dc6a99983fc78fc98c667382e6fbf9c1.jpeg)

---

<div class="post-metadata">

**Author:** ![Tesla2678](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/tesla2678/32/9062_2.png) [@Tesla2678](https://discourse.slicer.org/u/Tesla2678)\
**Post date:** [December 18, 2020, 7:09am UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/2 "2020-12-18T07:09:15Z")

</div>

Hello There,

I want to make the slicer showed in the “Red” widget curve.  
From

 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/8/2/8214b843bac794024d97f40cecd09bf0051b5786.jpeg)  
To  
 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/0/e/0eebbf9ca4a4c5f690a2725126fe3783b8aa576b.jpeg)

In order to do this, I am trying to get slice data before it was rendered.  
I have no idea how to do this, I can only get the “renderWindow” from each “sliceView”.  
How can I access the slice data and process it?

> > > renWin=slicer.app.layoutManager().sliceWidget(“Red”).sliceView().renderWindow()

> > > render=renWin.GetRenderers().GetFirstRenderer()

---

<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:** [December 19, 2020, 6:17am UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/3 "2020-12-19T06:17:27Z")

</div>

What ultrasound system do you use (brand, model, transducer type and model)? How did you export the data from the ultrasound system and into what file format? How did you import the data into Slicer?

---

<div class="post-metadata">

**Author:** ![Tesla2678](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/tesla2678/32/9062_2.png) [@Tesla2678](https://discourse.slicer.org/u/Tesla2678)\
**Post date:** [December 19, 2020, 6:59am UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/4 "2020-12-19T06:59:32Z")

</div>

Hello Iassoan,

The Breast Image is Dicom data generated by the ABUS 2.0 system.  
All the useful information I can get is:

![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/b/3/b3a78300107b03e31e50eba769a3ad2fd6076d02.png)  
 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/9/4/94a9026a6162adea8f219472cf46b9707c667843.png)  
 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/7/3/734164b0726f8510bef1a7ce19cb4b80d5d654f5.png)  
 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/0/1/0191973ebb9591f4d5b11079637f4d16632e9283.png)

I’m not getting data from the ultrasound system. I import “.dcm” from a folder by “DICOMUtils.importDicom”

---

<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:** [December 19, 2020, 7:08am UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/5 "2020-12-19T07:08:22Z")

</div>

If you can share an anonymized sample data set then I can have a look if it contains information to reconstruct a 3D volume. Right now what you get is just a stack of 2D frames.

---

<div class="post-metadata">

**Author:** ![Tesla2678](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/tesla2678/32/9062_2.png) [@Tesla2678](https://discourse.slicer.org/u/Tesla2678)\
**Post date:** [December 19, 2020, 7:31am UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/6 "2020-12-19T07:31:46Z")

</div>

Hello Iassoan,

Thank you very much~  
This is the link to my “.dcm” file.

> **[test.dcm](https://drive.google.com/file/d/1FnHaV52VDyMBk4PoqhheQ2TjNe1fO03A/view?usp=sharing)**
>
> Google Drive file.

---

<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:** [December 19, 2020, 7:11pm UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/7 "2020-12-19T19:11:13Z")

</div>

Thank you, this is very helpful. The image contains geometry information in private DICOM fields and fortunately GE provides meaningful description of these fields in their [DICOM conformance statement](https://www.gehealthcare.com/-/jssmedia/4a68a30ac349457e9ad50089916a039b.pdf?la=en-us). Since you know the radius of both the transducer and the trajectory curvature, you should be able to create a transform that warps the slices accordingly.

---

<div class="post-metadata">

**Author:** ![Tesla2678](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/tesla2678/32/9062_2.png) [@Tesla2678](https://discourse.slicer.org/u/Tesla2678)\
**Post date:** [December 19, 2020, 11:48pm UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/8 "2020-12-19T23:48:37Z")

</div>

Hello Iassoan,

Yes, I can get the radius information. But I don’t know How to create a None linear transform and how to apply or warps it to the slices.  
Is this involved vtk, render or openGL?

Could you provide an example?  
Thank you very much!

---

<div class="post-metadata">

**Author:** ![Tesla2678](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/tesla2678/32/9062_2.png) [@Tesla2678](https://discourse.slicer.org/u/Tesla2678)\
**Post date:** [December 21, 2020, 5:09am UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/9 "2020-12-21T05:09:47Z")

</div>

Hello Iassoan,

Can you provide some useful function API to solve this issue?

---

<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:** [December 21, 2020, 4:12pm UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/10 "2020-12-21T16:12:56Z")

</div>

I’ve added a DICOM plugin to load GE ABUS volume with correct scan conversion. I’ll push it to the Slicer Preview Release today so it will be available on [download.slicer.org](http://download.slicer.org) starting tomorrow.

---

<div class="post-metadata">

**Author:** ![Tesla2678](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/tesla2678/32/9062_2.png) [@Tesla2678](https://discourse.slicer.org/u/Tesla2678)\
**Post date:** [December 21, 2020, 11:19pm UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/11 "2020-12-21T23:19:09Z")

</div>

Hello Iassoan,

That’s great, Thank you so much!!!

---

<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:** [December 21, 2020, 11:41pm UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/12 "2020-12-21T23:41:09Z")

</div>

The new [GE Invenia ABUS import plugin](https://github.com/Slicer/Slicer/commit/079cd6088a307f7b4a11241932036c23148847d5) is in Slicer now. Using Slicer Preview Release of tomorrow you can load the ABUS image by double-clicking on the series.

Scan conversion is applied by placing the volume under a non-linear transform. This allows quick loading, visualization, segmentation, etc. but some operations, such as volume rendering are not supported for non-linearly transformed volumes, so probably the best is to harden the transform the volume (right-click in the transform column in Data module).

 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/4/9/49fe6851cdae04544aacc33f88e766b612d441ea.png)

I could not verify image directions (if the image is not mirrored along one axis), so it would be great if you could check this by comparing this to 3D views shown in the GE review workstation (you cannot tell if the image is flipped from 2D views, as you are free to flip the image in 2D views):

 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/a/8/a85e4200433feb08822f6b74a4c41c693dc29c2f.jpeg)

---

<div class="post-metadata">

**Author:** ![Tesla2678](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/tesla2678/32/9062_2.png) [@Tesla2678](https://discourse.slicer.org/u/Tesla2678)\
**Post date:** [December 22, 2020, 12:07am UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/13 "2020-12-22T00:07:09Z")

</div>

Hello Iassoan,

You are such a wonderful person! I don’t know how to express my gratitude!  
Your selfless dedication made me feel the love and warmth of the world.  
I have to say that this is my most pleasant and grateful moment in 2020!

Sincere blessing~

---

<div class="post-metadata">

**Author:** ![Tesla2678](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/tesla2678/32/9062_2.png) [@Tesla2678](https://discourse.slicer.org/u/Tesla2678)\
**Post date:** [December 26, 2020, 5:12am UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/14 "2020-12-26T05:12:09Z")

</div>

Hello Iassoan,

I have applied your method to do the transform. However, I found the transform made the volume data changed instead of just mapping to “Axial Viewer”, the "Coronal Viewer is changed too, this will made the image distortion.

I found this by press the “shift key” while the cursor over the top of “Axial Viewer”, at this moment “Coronal Viewer” is not what we expect. It means all slicers in the “Coronal Viewer” is distorted.

 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/4/a/4a7aa18eaaaa577aab279a8590aba18560817e21.jpeg)

So Is there any idea to make the transform just work on the “Axial Viewer”?

Thank you very much~

---

<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:** [December 26, 2020, 5:29am UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/15 "2020-12-26T05:29:55Z")

</div>

As you can see in [this presentation](http://amos3.aapm.org/abstracts/pdf/124-34983-405535-125834-1725308324.pdf), the GE Invenia has a concave curvilinear transducer, moving on a linear translational stage, so it produces a cylindrical volume.

![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/a/1/a1c90530b25e7b138276cacd3e4773c78812bf4f.jpeg)

If you enable volume rendering then maybe it explains better what you see in the green (“coronal”) slice viewer.

 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/5/1/510127e015b229a08be95c73bcac8080a710c4c2.jpeg)

---

<div class="post-metadata">

**Author:** ![Tesla2678](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/tesla2678/32/9062_2.png) [@Tesla2678](https://discourse.slicer.org/u/Tesla2678)\
**Post date:** [December 27, 2020, 12:02pm UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/16 "2020-12-27T12:02:13Z")

</div>

Hello Iassoan,

I don’t know more about this problem. but I personally think the original data is true, however, the curve is just happened on “Axial Viewer”.

I will check this problem later.

Thank you for your help~

---

<div class="post-metadata">

**Author:** ![mariuszmaximus](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/mariuszmaximus/32/9356_2.png) [@mariuszmaximus](https://discourse.slicer.org/u/mariuszmaximus)\
**Post date:** [December 28, 2020, 6:08pm UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/17 "2020-12-28T18:08:26Z")

</div>

Can you post more DCM examples?

---

<div class="post-metadata">

**Author:** ![Lee\_Ho\_Jun](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/lee_ho_jun/32/4519_2.png) [@Lee\_Ho\_Jun](https://discourse.slicer.org/u/Lee_Ho_Jun)\
**Post date:** [February 21, 2024, 6:01am UTC](https://discourse.slicer.org/t/load-ge-invenia-abus-images-from-dicom/15067/18 "2024-02-21T06:01:48Z")

</div>

Hello.

I tried to load GE ABUS images however it didn’t work as beautifully as in your example  
Can you take a look?  
I append a a sample data.

> **[1.zip](https://drive.google.com/file/d/1CoV744IAzsR6jzo-CgnJ7EUMgQQLLOmL/view?usp=drive_link)**
>
> Google Drive file.

Also, it would be nice if there is a way to link different views based on the nipple location as the common location.
