docstr: A map holding the optimum affine matrix and some other parameters
  of the optimization
  
  Parameters
  ----------
  matrix : array,
      4x4 affine matrix which transforms the moving to the static
      streamlines
  
  xopt : array,
      1d array with the parameters of the transformation after centering
  
  fopt : float,
      final value of the metric
  
  matrix_history : array
      All transformation matrices created during the optimization
  
  funcs : int,
      Number of function evaluations of the optimizer
  
  iterations : int
      Number of iterations of the optimizer
docstr_tok: ["A","map","holding","the","optimum","affine","matrix","and","some","other","parameters","of","the","optimization","Parameters","--","--","--","--","--","matrix",":","array",",","4x4","affine","matrix","which","transforms","the","moving","to","the","static","streamlines","xopt",":","array",",","1d","array","with","the","parameters","of","the","transformation","after","centering","fopt",":","float",",","final","value","of","the","metric","matrix_history",":","array","All","transformation","matrices","created","during","the","optimization","funcs",":","int",",","Number","of","function","evaluations","of","the","optimizer","iterations",":","int","Number","of","iterations","of","the","optimizer"]
code: def __init__(
      self, matopt, xopt, fopt, matopt_history, funcs, iterations
  ):
      r"""A map holding the optimum affine matrix and some other parameters
      of the optimization
  
      Parameters
      ----------
      matrix : array,
          4x4 affine matrix which transforms the moving to the static
          streamlines
  
      xopt : array,
          1d array with the parameters of the transformation after centering
  
      fopt : float,
          final value of the metric
  
      matrix_history : array
          All transformation matrices created during the optimization
  
      funcs : int,
          Number of function evaluations of the optimizer
  
      iterations : int
          Number of iterations of the optimizer
  
      """
      self.matrix = matopt
      self.xopt = xopt
      self.fopt = fopt
      self.matrix_history = matopt_history
      self.funcs = funcs
      self.iterations = iterations
  
imports: import logging
  import abc
  from itertools import combinations
  import numpy
  from dipy.core.optimize import Optimizer
  from dipy.align.bundlemin import _bundle_minimum_distance, _bundle_minimum_distance_asymmetric, distance_matrix_mdf
  from dipy.tracking.streamline import transform_streamlines, unlist_streamlines, center_streamlines, set_number_of_points, select_random_set_of_streamlines, length, Streamlines
  from dipy.segment.clustering import qbx_and_merge
  from dipy.core.geometry import compose_transformations, compose_matrix, decompose_matrix
  from time import time
label_desc: Use image node_id 1 to create a new StreamlineRegistrationMap object  with example: obj = StreamlineRegistrationMap(matopt, xopt, fopt, matopt_history, funcs, iterations)