diff --git a/april_vision/utils.py b/april_vision/utils.py index bec9fa1..7bb227d 100644 --- a/april_vision/utils.py +++ b/april_vision/utils.py @@ -5,7 +5,6 @@ from typing import Deque, NamedTuple, Optional, Tuple, Union import cv2 -import numpy as np from numpy.typing import NDArray from .marker import Marker, PixelCoordinates @@ -30,7 +29,8 @@ def from_colour_frame( if colourspace is not None: grey_frame = cv2.cvtColor(colour_frame, colourspace) else: - grey_frame = colour_frame.copy() + # mypy doesn't understand that Mat is a numpy array + grey_frame = colour_frame.copy() # type: ignore[assignment] return cls( grey_frame=grey_frame, @@ -62,7 +62,7 @@ def annotate_text( cv2.putText( frame_type, text, - np.array(location, dtype=np.int32), + location, cv2.FONT_HERSHEY_DUPLEX, text_scale, color=text_colour, # in BGR diff --git a/april_vision/vision.py b/april_vision/vision.py index 93d4b96..569e69f 100644 --- a/april_vision/vision.py +++ b/april_vision/vision.py @@ -122,7 +122,7 @@ def _annotate( for frame_type in frame: cv2.polylines( frame_type, - [integer_corners], + integer_corners.tolist(), isClosed=True, color=(0, 255, 0), # Green (BGR) thickness=line_thickness, @@ -148,7 +148,7 @@ def _annotate( cv2.polylines( frame_type, - [origin_square], + origin_square.tolist(), isClosed=True, color=(0, 0, 255), # red thickness=line_thickness, @@ -157,9 +157,10 @@ def _annotate( marker_text_scale = text_scale * normalise_marker_text(marker) # Approximately center the text - text_origin = np.array(marker.pixel_centre, dtype=np.int32) - text_origin += np.array( - [-40 * marker_text_scale, 10 * marker_text_scale], dtype=np.int32) + text_origin = ( + int(marker.pixel_centre.x - 40 * marker_text_scale), + int(marker.pixel_centre.y + 10 * marker_text_scale), + ) cv2.putText( frame_type,