From cd5e32b8436e7f0cea9a04f2a3e93b1a09e00bb9 Mon Sep 17 00:00:00 2001 From: Richard Bowman Date: Tue, 30 Mar 2021 17:40:19 +0100 Subject: [PATCH] Removed deprecated np.float numpy 1.20 deprecates np.float, which was only ever an alias for ``float``. I've replaced all occurrences of np.float with float, as recommended. There should be no change in functionality. --- .../api/default_extensions/autofocus.py | 18 +++++++++--------- .../recalibrate_utils.py | 4 ++-- openflexure_microscope/json.py | 4 ++-- openflexure_microscope/stage/sanga.py | 6 +++--- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/openflexure_microscope/api/default_extensions/autofocus.py b/openflexure_microscope/api/default_extensions/autofocus.py index 339291ca..ed6fd813 100644 --- a/openflexure_microscope/api/default_extensions/autofocus.py +++ b/openflexure_microscope/api/default_extensions/autofocus.py @@ -127,16 +127,16 @@ def monitor_sharpness(microscope: Microscope): m.stop() -def sharpness_sum_lap2(rgb_image: np.ndarray) -> np.float: +def sharpness_sum_lap2(rgb_image: np.ndarray) -> float: """Return an image sharpness metric: sum(laplacian(image)**")""" - image_bw: np.float = np.mean(rgb_image, 2) - image_lap: np.float = ndimage.filters.laplace(image_bw) - return np.mean(image_lap.astype(np.float) ** 4) + image_bw: float = np.mean(rgb_image, 2) + image_lap: float = ndimage.filters.laplace(image_bw) + return np.mean(image_lap.astype(float) ** 4) -def sharpness_edge(image: np.ndarray) -> np.float: +def sharpness_edge(image: np.ndarray) -> float: """Return a sharpness metric optimised for vertical lines""" - gray: np.float = np.mean(image.astype(float), 2) + gray: float = np.mean(image.astype(float), 2) n: int = 20 edge: np.ndarray = np.array([[-1] * n + [1] * n]) return np.sum( @@ -169,7 +169,7 @@ class AutofocusExtension(BaseExtension): def measure_sharpness( self, microscope: Microscope, metric_fn: Callable = sharpness_sum_lap2 - ) -> np.float: + ) -> float: """Measure the sharpness of the camera's current view.""" if hasattr(microscope.camera, "array") and callable( @@ -185,7 +185,7 @@ class AutofocusExtension(BaseExtension): dz: List[int], settle: float = 0.5, metric_fn: Callable = sharpness_sum_lap2, - ) -> Tuple[List[int], List[np.float]]: + ) -> Tuple[List[int], List[float]]: """Perform a simple autofocus routine. The stage is moved to z positions (relative to current position) in dz, and at each position an image is captured and the sharpness function @@ -197,7 +197,7 @@ class AutofocusExtension(BaseExtension): stage: BaseStage = microscope.stage with set_properties(stage, backlash=256), stage.lock, camera.lock: - sharpnesses: List[np.float] = [] + sharpnesses: List[float] = [] positions: List[int] = [] # Some cameras may not have annotate_text. Reset if it does diff --git a/openflexure_microscope/api/default_extensions/picamera_autocalibrate/recalibrate_utils.py b/openflexure_microscope/api/default_extensions/picamera_autocalibrate/recalibrate_utils.py index 0392720e..445687a9 100644 --- a/openflexure_microscope/api/default_extensions/picamera_autocalibrate/recalibrate_utils.py +++ b/openflexure_microscope/api/default_extensions/picamera_autocalibrate/recalibrate_utils.py @@ -106,7 +106,7 @@ def lst_from_channels(channels: np.ndarray) -> np.ndarray: logging.info("Generating a lens shading table at %sx%s", *lst_resolution) lens_shading: np.ndarray = np.zeros( - [channels.shape[0]] + lst_resolution, dtype=np.float + [channels.shape[0]] + lst_resolution, dtype=float ) for i in range(lens_shading.shape[0]): image_channel: np.ndarray = channels[i, :, :] @@ -193,7 +193,7 @@ def recalibrate_camera(camera: PiCamera): _ = rgb_image(camera) # Fix the AWB gains so the image is neutral - channel_means = np.mean(np.mean(rgb_image(camera), axis=0, dtype=np.float), axis=0) + channel_means = np.mean(np.mean(rgb_image(camera), axis=0, dtype=float), axis=0) old_gains = camera.awb_gains camera.awb_gains = ( channel_means[1] / channel_means[0] * old_gains[0], diff --git a/openflexure_microscope/json.py b/openflexure_microscope/json.py index 025b6cb8..56aba734 100644 --- a/openflexure_microscope/json.py +++ b/openflexure_microscope/json.py @@ -21,8 +21,8 @@ class JSONEncoder(LabThingsJSONEncoder): # Numpy integers elif isinstance(o, np.integer): return int(o) - # Numpy floats - elif isinstance(o, np.float): + # Numpy floats are just Python floats + elif isinstance(o, float): return float(o) # Numpy arrays elif isinstance(o, np.ndarray): diff --git a/openflexure_microscope/stage/sanga.py b/openflexure_microscope/stage/sanga.py index 6ad68a28..6aaf8328 100644 --- a/openflexure_microscope/stage/sanga.py +++ b/openflexure_microscope/stage/sanga.py @@ -277,11 +277,11 @@ class SangaDeltaStage(SangaStage): logging.debug(self.R_camera) # Transformation matrix converting delta into cartesian - x_fac: np.float = -1 * np.multiply( + x_fac: float = -1 * np.multiply( np.divide(2, np.sqrt(3)), np.divide(self.flex_b, self.flex_h) ) - y_fac: np.float = -1 * np.divide(self.flex_b, self.flex_h) - z_fac: np.float = np.multiply( + y_fac: float = -1 * np.divide(self.flex_b, self.flex_h) + z_fac: float = np.multiply( np.divide(1, 3), np.divide(self.flex_b, self.flex_a) )