From 61106a5f5dd7a86a4a87b168e76b813f8323bf2d Mon Sep 17 00:00:00 2001 From: Thiago Franco de Moraes Date: Fri, 30 Apr 2021 16:14:15 -0300 Subject: [PATCH] Fixed problem with uint16 bitmap files --- invesalius/data/imagedata_utils.py | 10 ++++++---- invesalius/gui/widgets/slice_menu.py | 4 ++-- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/invesalius/data/imagedata_utils.py b/invesalius/data/imagedata_utils.py index 9dad2dc..96a0b64 100644 --- a/invesalius/data/imagedata_utils.py +++ b/invesalius/data/imagedata_utils.py @@ -345,6 +345,8 @@ def bitmap2memmap(files, slice_size, orientation, spacing, resolution_percentage for n, f in enumerate(files): image_as_array = bitmap_reader.ReadBitmap(f) + print(image_as_array.dtype) + image = converters.to_vtk(image_as_array, spacing=spacing,\ slice_number=1, orientation=orientation.upper()) @@ -374,9 +376,9 @@ def bitmap2memmap(files, slice_size, orientation, spacing, resolution_percentage array = numpy_support.vtk_to_numpy(image.GetPointData().GetScalars()) if array.dtype == 'uint16': - array = array - 32768/2 - - array = array.astype("int16") + new_array = np.empty_like(array, dtype=np.int16) + new_array = array - 32768 + array = new_array if orientation == 'CORONAL': array.shape = matrix.shape[0], matrix.shape[2] @@ -622,4 +624,4 @@ def random_sample_sphere(radius=3, size=100): r = np.random.uniform(0, 1, (size, 1)) ** 1.5 scale = radius * np.divide(r, norm) xyz = scale * uvw - return xyz \ No newline at end of file + return xyz diff --git a/invesalius/gui/widgets/slice_menu.py b/invesalius/gui/widgets/slice_menu.py index 6a825b5..b51e167 100644 --- a/invesalius/gui/widgets/slice_menu.py +++ b/invesalius/gui/widgets/slice_menu.py @@ -262,8 +262,8 @@ class SliceMenu(wx.Menu): if self.cdialog is None: slc = sl.Slice() histogram = slc.histogram - init = slc.matrix.min() - end = slc.matrix.max() + init = int(slc.matrix.min()) + end = int(slc.matrix.max()) nodes = slc.nodes self.cdialog = ClutImagedataDialog(histogram, init, end, nodes) self.cdialog.Show() -- libgit2 0.21.2