dosma.core.numpy_routines.shares_memory
- dosma.core.numpy_routines.shares_memory(a, b, max_work=None)[source]
Determine if two medical volumes share memory.
This function implements
numpy.shares_memory()forMedicalVolume. Two volumes share memory if the pixel arrays and headers (if defined) share memory.- Parameters:
a (MedicalVolume) – Input volume.
b (MedicalVolume) – Input volume.
max_work (int, optional) – Same as
numpy.shares_memory().
- Returns:
Trueif pixel arrays and headers (if defined) share memory.- Return type:
bool
- Raises:
numpy.TooHardError – Exceeded max_work.
Examples
>>> arr = np.random.rand(3,4,5) >>> mv1 = MedicalVolume(arr, affine=np.eye(4)) >>> mv2 = MedicalVolume(arr, affine=np.eye(4)) >>> np.shares_memory(mv1, mv2) # Compare medicalVolume with same array in memory True >>> mv3 = MedicalVolume(arr.copy(), affine=np.eye(4)) >>> np.shares_memory(mv1, mv2) # Compare medicalVolume with different arrays in memory False