class_docstr: Base class to represent camera models based on distortion and projection types.
  
  Distortion is of 3 types:
      - Affine
      - Brown Conrady
      - Kannala Brandt K3
  Projection is of 2 types:
      - Z1
      - Orthographic
  
  Example:
      >>> params = torch.Tensor([328., 328., 320., 240.])
      >>> cam = CameraModelBase(BrownConradyTransform(), Z1Projection(), ImageSize(480, 640), params)
      >>> cam.params
      tensor([328., 328., 320., 240.])
class_docstr_tok: ["Base","class","to","represent","camera","models","based","on","distortion","and","projection","types",".","Distortion","is","of","3","types",":","-","Affine","-","Brown","Conrady","-","Kannala","Brandt","K3","Projection","is","of","2","types",":","-","Z1","-","Orthographic","Example",":",">",">",">","params","=","torch.Tensor","(","[","328.",",","328.",",","320.",",","240",".","]",")",">",">",">","cam","=","CameraModelBase","(","BrownConradyTransform","(",")",",","Z1Projection","(",")",",","ImageSize","(","480",",","640",")",",","params",")",">",">",">","cam.params","tensor","(","[","328.",",","328.",",","320.",",","240",".","]",")"]
docstr: Returns the principal point in y direction.
code: def cy(self) -> Tensor:
      """Returns the principal point in y direction."""
      return self._params[..., 3]
  
imports: from __future__ import annotations
  from enum import Enum
  from typing import Any, Union
  from kornia.core import Tensor, stack, zeros_like
  from kornia.geometry.vector import Vector2, Vector3
  from kornia.image import ImageSize
  from kornia.sensors.camera.distortion_model import AffineTransform, BrownConradyTransform, KannalaBrandtK3Transform
  from kornia.sensors.camera.projection_model import OrthographicProjection, Z1Projection
label_desc: Use image node_id 9 for calling the CameraModelBase obj's underlying member method code with example usage: obj.cy() and returns: self