From d609eb1a80b44d70a5baf37cb1333d6e9bbb9167 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Sch=C3=B6nberger?= Date: Sat, 30 Nov 2013 22:21:12 +0100 Subject: [PATCH] Attempt to fix Python 3 error --- skimage/feature/orb.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/skimage/feature/orb.py b/skimage/feature/orb.py index ac9631db..7512054a 100644 --- a/skimage/feature/orb.py +++ b/skimage/feature/orb.py @@ -110,6 +110,11 @@ class ORB(FeatureDetector, DescriptorExtractor): self.fast_threshold) keypoints = corner_peaks(fast_response, min_distance=1) + if len(keypoints) == 0: + return (np.zeros((0, 2), dtype=np.double), + np.zeros((0, ), dtype=np.double), + np.zeros((0, ), dtype=np.double)) + mask = _mask_border_keypoints(octave_image.shape, keypoints, distance=16) keypoints = keypoints[mask] @@ -293,6 +298,12 @@ class ORB(FeatureDetector, DescriptorExtractor): keypoints, orientations, responses = \ self._detect_octave(octave_image) + if len(keypoints) == 0: + keypoints_list.append(keypoints) + responses_list.append(responses) + descriptors_list.append(np.zeros((0, 256), dtype=np.bool)) + continue + descriptors, mask = self._extract_octave(octave_image, keypoints, orientations)