Loading autocnet/matcher/outlier_detector.py +1 −2 Original line number Diff line number Diff line Loading @@ -192,13 +192,12 @@ class SpatialSuppression(Observable): if self.k > len(self.df): warnings.warn('Only {} valid points, but {} points requested'.format(len(self.df), self.k)) self.k = len(self.df) search_space = np.linspace(self.min_radius, self.max_radius / 16, 250) search_space = np.linspace(self.min_radius, self.max_radius, 250) cell_sizes = (search_space / math.sqrt(2)).astype(np.int) min_idx = 0 max_idx = len(search_space) - 1 while True: mid_idx = int((min_idx + max_idx) / 2) r = search_space[mid_idx] cell_size = cell_sizes[mid_idx] n_x_cells = int(self.domain[0] / cell_size) Loading autocnet/matcher/tests/test_outlier_detector.py +10 −1 Original line number Diff line number Diff line Loading @@ -10,7 +10,7 @@ import pandas as pd sys.path.append(os.path.abspath('..')) from .. import matcher, outlier_detector from autocnet.matcher.outlier_detector import SpatialSuppression class TestOutlierDetector(unittest.TestCase): Loading Loading @@ -94,3 +94,12 @@ class TestSpatialSuppression(unittest.TestCase): self.suppression_obj.suppress() self.assertIn(self.suppression_obj.mask.sum(), list(range(27, 34))) def spatial_suppression_testing(self): r = np.random.RandomState(12345) df = pd.DataFrame(r.uniform(0,1,(500, 3)), columns=['x', 'y', 'strength']) minimum = SpatialSuppression(df, (1,1), k = 1) minimum.suppress() df.plot(kind = 'scatter', x = 'x', y = 'y') notebooks/spatial_suppression_testing.ipynb +19 −92 File changed.Preview size limit exceeded, changes collapsed. Show changes Loading
autocnet/matcher/outlier_detector.py +1 −2 Original line number Diff line number Diff line Loading @@ -192,13 +192,12 @@ class SpatialSuppression(Observable): if self.k > len(self.df): warnings.warn('Only {} valid points, but {} points requested'.format(len(self.df), self.k)) self.k = len(self.df) search_space = np.linspace(self.min_radius, self.max_radius / 16, 250) search_space = np.linspace(self.min_radius, self.max_radius, 250) cell_sizes = (search_space / math.sqrt(2)).astype(np.int) min_idx = 0 max_idx = len(search_space) - 1 while True: mid_idx = int((min_idx + max_idx) / 2) r = search_space[mid_idx] cell_size = cell_sizes[mid_idx] n_x_cells = int(self.domain[0] / cell_size) Loading
autocnet/matcher/tests/test_outlier_detector.py +10 −1 Original line number Diff line number Diff line Loading @@ -10,7 +10,7 @@ import pandas as pd sys.path.append(os.path.abspath('..')) from .. import matcher, outlier_detector from autocnet.matcher.outlier_detector import SpatialSuppression class TestOutlierDetector(unittest.TestCase): Loading Loading @@ -94,3 +94,12 @@ class TestSpatialSuppression(unittest.TestCase): self.suppression_obj.suppress() self.assertIn(self.suppression_obj.mask.sum(), list(range(27, 34))) def spatial_suppression_testing(self): r = np.random.RandomState(12345) df = pd.DataFrame(r.uniform(0,1,(500, 3)), columns=['x', 'y', 'strength']) minimum = SpatialSuppression(df, (1,1), k = 1) minimum.suppress() df.plot(kind = 'scatter', x = 'x', y = 'y')
notebooks/spatial_suppression_testing.ipynb +19 −92 File changed.Preview size limit exceeded, changes collapsed. Show changes