Loading autocnet/matcher/subpixel.py +13 −4 Original line number Diff line number Diff line Loading @@ -868,14 +868,18 @@ def subpixel_register_point_smart(point, destination_node = nodes_cache[measure.imageid] log.info(f'Registering measure {measure.id} (image: {measure.imageid}, serial: {measure.serial})') match_kwargs = parameters[0]['match_kwargs'] reference_roi = roi.Roi(source_node.geodata, source.apriorisample, source.aprioriline) source.aprioriline, size_x=match_kwargs['image_size'][0], size_y=match_kwargs['image_size'][1]) moving_roi = roi.Roi(destination_node.geodata, measure.apriorisample, measure.aprioriline, ) size_x=match_kwargs['image_size'][0], size_y=match_kwargs['image_size'][1]) try: baseline_affine = estimate_local_affine(moving_roi, reference_roi) Loading @@ -892,8 +896,13 @@ def subpixel_register_point_smart(point, # If the image read center plus buffer is outside the image, clipping # raises an index error. Handle and set the measure false. try: reference_clip = reference_roi.clip(affine=baseline_affine, buffer=10) moving_clip = moving_roi.clip(buffer=5) reference_clip = reference_roi.clip(affine=baseline_affine, buffer=10, size_x=match_kwargs['image_size'][0], size_y=match_kwargs['image_size'][1]) moving_clip = moving_roi.clip(buffer=5, size_x=match_kwargs['image_size'][0], size_y=match_kwargs['image_size'][1]) except Exception as e: log.error(e) m = {'id': measure.id, Loading autocnet/transformation/roi.py +6 −4 Original line number Diff line number Diff line import logging from math import floor import numpy as np import scipy.ndimage as ndimage import numpy as np from skimage import transform as tf from skimage.util import img_as_float32 from autocnet.io.geodataset import AGeoDataset log = logging.getLogger(__name__) class Roi(): """ Region of interest (ROI) object that is a sub-image taken from Loading Loading @@ -212,7 +214,7 @@ class Roi(): min_y = self._whole_y - self.size_y - buffer x_read_length = (self.size_x * 2) + (buffer * 2) y_read_length = (self.size_y * 2) + (buffer * 2) log.debug('XY ROI read start and read length: ', min_x, min_y, x_read_length, y_read_length) # series of checks to make sure all pixels inside image limits raster_xsize, raster_ysize = self.data.raster_size if min_x < 0 or min_y < 0 or min_x+x_read_length > raster_xsize or min_y+y_read_length > raster_ysize: Loading Loading
autocnet/matcher/subpixel.py +13 −4 Original line number Diff line number Diff line Loading @@ -868,14 +868,18 @@ def subpixel_register_point_smart(point, destination_node = nodes_cache[measure.imageid] log.info(f'Registering measure {measure.id} (image: {measure.imageid}, serial: {measure.serial})') match_kwargs = parameters[0]['match_kwargs'] reference_roi = roi.Roi(source_node.geodata, source.apriorisample, source.aprioriline) source.aprioriline, size_x=match_kwargs['image_size'][0], size_y=match_kwargs['image_size'][1]) moving_roi = roi.Roi(destination_node.geodata, measure.apriorisample, measure.aprioriline, ) size_x=match_kwargs['image_size'][0], size_y=match_kwargs['image_size'][1]) try: baseline_affine = estimate_local_affine(moving_roi, reference_roi) Loading @@ -892,8 +896,13 @@ def subpixel_register_point_smart(point, # If the image read center plus buffer is outside the image, clipping # raises an index error. Handle and set the measure false. try: reference_clip = reference_roi.clip(affine=baseline_affine, buffer=10) moving_clip = moving_roi.clip(buffer=5) reference_clip = reference_roi.clip(affine=baseline_affine, buffer=10, size_x=match_kwargs['image_size'][0], size_y=match_kwargs['image_size'][1]) moving_clip = moving_roi.clip(buffer=5, size_x=match_kwargs['image_size'][0], size_y=match_kwargs['image_size'][1]) except Exception as e: log.error(e) m = {'id': measure.id, Loading
autocnet/transformation/roi.py +6 −4 Original line number Diff line number Diff line import logging from math import floor import numpy as np import scipy.ndimage as ndimage import numpy as np from skimage import transform as tf from skimage.util import img_as_float32 from autocnet.io.geodataset import AGeoDataset log = logging.getLogger(__name__) class Roi(): """ Region of interest (ROI) object that is a sub-image taken from Loading Loading @@ -212,7 +214,7 @@ class Roi(): min_y = self._whole_y - self.size_y - buffer x_read_length = (self.size_x * 2) + (buffer * 2) y_read_length = (self.size_y * 2) + (buffer * 2) log.debug('XY ROI read start and read length: ', min_x, min_y, x_read_length, y_read_length) # series of checks to make sure all pixels inside image limits raster_xsize, raster_ysize = self.data.raster_size if min_x < 0 or min_y < 0 or min_x+x_read_length > raster_xsize or min_y+y_read_length > raster_ysize: Loading