# Creating Volume from Numpy

**URL:** <https://discourse.slicer.org/t/creating-volume-from-numpy/658>\
**Category:** Support\
**Created:** [July 10, 2017, 1:03am UTC](https://discourse.slicer.org/t/creating-volume-from-numpy/658 "2017-07-10T01:03:12Z")\
**Posts on this page:** 1\
**Showing post:** 18

<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:** [July 19, 2019, 1:12am UTC](https://discourse.slicer.org/t/creating-volume-from-numpy/658/18 "2019-07-19T01:12:40Z")

</div>

This works well for me:

```python
import SampleData
[input1Volume, input2Volume] = SampleData.SampleDataLogic().downloadDentalSurgery()

import slicer.util
a = slicer.util.arrayFromVolume(input1Volume)
b = slicer.util.arrayFromVolume(input2Volume)

c = b-a

volumeNode = slicer.modules.volumes.logic().CloneVolume(input1Volume, "Difference")
slicer.util.updateVolumeFromArray(volumeNode, c)
setSliceViewerLayers(background=volumeNode)

```

---

_[View the full topic](https://discourse.slicer.org/t/creating-volume-from-numpy/658)._
