def __init__( self, num_features: int = 500, mr_size: float = 6.0, scale_pyr_module: nn.Module = ScalePyramid(3, 1.6, 15), resp_module: nn.Module = BlobHessian(), nms_module: nn.Module = ConvSoftArgmax3d((3, 3, 3), (1, 1, 1), (1, 1, 1), normalized_coordinates=False, output_value=True), ori_module: nn.Module = PassLAF(), aff_module: nn.Module = PassLAF(), minima_are_also_good: bool = False, scale_space_response=False, ): super(ScaleSpaceDetector, self).__init__() self.mr_size = mr_size self.num_features = num_features self.scale_pyr = scale_pyr_module self.resp = resp_module self.nms = nms_module self.ori = ori_module self.aff = aff_module self.minima_are_also_good = minima_are_also_good # scale_space_response should be True if the response function works on scale space # like Difference-of-Gaussians self.scale_space_response = scale_space_response
def __init__(self, num_features: int = 500, mr_size: float = 6.0, scale_pyr_module: nn.Module = ScalePyramid(3, 1.6, 10), resp_module: nn.Module = BlobHessian(), nms_module: nn.Module = ConvSoftArgmax3d( (3, 3, 3), (1, 1, 1), (1, 1, 1), normalized_coordinates=False, output_value=True), ori_module: nn.Module = PassLAF(), aff_module: nn.Module = PassLAF()): super(ScaleSpaceDetector, self).__init__() self.mr_size = mr_size self.num_features = num_features self.scale_pyr = scale_pyr_module self.resp = resp_module self.nms = nms_module self.ori = ori_module self.aff = aff_module return