class_docstr: Class for modeling a non-linear 2D localization problem.
  
  The state is composed of a planar orientation and position, and is thus a
  member of SE(2).
  A sensor provides the linear and angular speed, while another one provides
  sparse position observations.
docstr: Get the observation covariance.
  
  For an observation y and an orientation theta, the modified observation
  considered for the innovation is :math:`R(\theta)^T y` [BB2017], so the
  covariance N is rotated accordingly as :math:`R(\theta)^T N R(\theta)`.
  
  Parameters
  ----------
  state : array-like, shape=[dim]
      Vector representing a state.
  observation_cov : array-like, shape=[dim_obs, dim_obs]
      Covariance matrix associated to the sensor.
  
  Returns
  -------
  covariance : array-like, shape=[dim_obs, dim_obs]
      Covariance of the observation.
docstr_tok: ["Get","the","observation","covariance",".","For","an","observation","y","and","an","orientation","theta",",","the","modified","observation","considered","for","the","innovation","is",":","math",":","`","R","(","\\theta",")","^T","y","`","[","BB2017","]",",","so","the","covariance","N","is","rotated","accordingly","as",":","math",":","`","R","(","\\theta",")","^T","N","R","(","\\theta",")","`",".","Parameters","--","--","--","--","--","state",":","array-like",",","shape=","[","dim","]","Vector","representing","a","state",".","observation_cov",":","array-like",",","shape=","[","dim_obs",",","dim_obs","]","Covariance","matrix","associated","to","the","sensor",".","Returns","--","--","--","-","covariance",":","array-like",",","shape=","[","dim_obs",",","dim_obs","]","Covariance","of","the","observation","."]
code: def get_measurement_noise_cov(self, state, observation_cov):
      r"""Get the observation covariance.
  
      For an observation y and an orientation theta, the modified observation
      considered for the innovation is :math:`R(\theta)^T y` [BB2017], so the
      covariance N is rotated accordingly as :math:`R(\theta)^T N R(\theta)`.
  
      Parameters
      ----------
      state : array-like, shape=[dim]
          Vector representing a state.
      observation_cov : array-like, shape=[dim_obs, dim_obs]
          Covariance matrix associated to the sensor.
  
      Returns
      -------
      covariance : array-like, shape=[dim_obs, dim_obs]
          Covariance of the observation.
      """
      theta, _, _ = state
      rot = self.rotation_matrix(theta)
      return Matrices.mul(Matrices.transpose(rot), observation_cov, rot)
  
imports: import geomstats.backend
  from geomstats.geometry.euclidean import Euclidean
  from geomstats.geometry.matrices import Matrices
  from geomstats.geometry.special_euclidean import SpecialEuclidean
label_desc: Use image node_id 10 for calling the Localization obj's underlying member method code with example usage: obj.get_measurement_noise_cov(state, observation_cov) and returns: Matrices