def coverage_ratio(self, clean_keys=[]): """ Compute the ratio $area_{convexhull} / area_{imageoverlap}$. Returns ------- ratio : float The ratio $area_{convexhull} / area_{imageoverlap}$ """ if self.homography is None: raise AttributeError('A homography has not been computed. Unable to determine image overlap.') matches = self.matches # Build up a composite mask from all of the user specified masks matches, _ = self._clean(clean_keys) d_idx = matches['destination_idx'].values keypoints = self.destination.get_keypoint_coordinates(d_idx) if len(keypoints) < 3: raise ValueError('Convex hull computation requires at least 3 measures.') source_geom, proj_geom, ideal_area = self.compute_homography_overlap() ratio = convex_hull_ratio(keypoints, ideal_area) return ratio
def coverage_ratio(self, clean_keys=[]): """ Compute the ratio $area_{convexhull} / area_{imageoverlap}$. Returns ------- ratio : float The ratio $area_{convexhull} / area_{imageoverlap}$ """ if self.homography is None: raise AttributeError( 'A homography has not been computed. Unable to determine image overlap.' ) matches = self.matches # Build up a composite mask from all of the user specified masks if clean_keys: mask = np.prod([self._mask_arrays[i] for i in clean_keys], axis=0, dtype=np.bool) matches = matches[mask] d_idx = matches['destination_idx'].values keypoints = self.destination.keypoints.iloc[d_idx][['x', 'y']].values if len(keypoints) < 3: raise ValueError( 'Convex hull computation requires at least 3 measures.') source_geom, proj_geom, ideal_area = self.compute_homography_overlap() ratio = convex_hull_ratio(keypoints, ideal_area) return ratio
def coverage_ratio(self, clean_keys=[]): """ Compute the ratio $area_{convexhull} / area_{imageoverlap}$. Returns ------- ratio : float The ratio $area_{convexhull} / area_{imageoverlap}$ """ if self.homography is None: raise AttributeError('A homography has not been computed. Unable to determine image overlap.') matches = self.matches # Build up a composite mask from all of the user specified masks if clean_keys: mask = np.prod([self._mask_arrays[i] for i in clean_keys], axis=0, dtype=np.bool) matches = matches[mask] d_idx = matches['destination_idx'].values keypoints = self.destination.keypoints.iloc[d_idx][['x', 'y']].values if len(keypoints) < 3: raise ValueError('Convex hull computation requires at least 3 measures.') source_geom, proj_geom, ideal_area = self.compute_homography_overlap() ratio = convex_hull_ratio(keypoints, ideal_area) return ratio
def coverage_ratio(self, clean_keys=[]): """ Compute the ratio $area_{convexhull} / area_{total}$ Returns ------- ratio : float The ratio of convex hull area to total area. """ ideal_area = self.geodata.pixel_area if not hasattr(self, '_keypoints'): raise AttributeError('Keypoints must be extracted already, they have not been.') matches, mask = self._clean(clean_keys) keypoints = self._keypoints[mask][['x', 'y']].values ratio = convex_hull_ratio(keypoints, ideal_area) return ratio
def coverage_ratio(self, clean_keys=[]): """ Compute the ratio $area_{convexhull} / area_{total}$ Returns ------- ratio : float The ratio of convex hull area to total area. """ ideal_area = self.geodata.pixel_area if not hasattr(self, '_keypoints'): raise AttributeError('Keypoints must be extracted already, they have not been.') if clean_keys: mask = np.prod([self._mask_arrays[i] for i in clean_keys], axis=0, dtype=np.bool) keypoints = self._keypoints[mask] keypoints = self._keypoints[['x', 'y']].values ratio = convex_hull_ratio(keypoints, ideal_area) return ratio
def coverage_ratio(self, clean_keys=[]): """ Compute the ratio $area_{convexhull} / area_{total}$ Returns ------- ratio : float The ratio of convex hull area to total area. """ ideal_area = self.handle.pixel_area if not hasattr(self, 'keypoints'): raise AttributeError( 'Keypoints must be extracted already, they have not been.') if clean_keys: mask = np.prod([self._mask_arrays[i] for i in clean_keys], axis=0, dtype=np.bool) keypoints = self.keypoints[mask] keypoints = self.keypoints[['x', 'y']].values ratio = convex_hull_ratio(keypoints, ideal_area) return ratio