class_docstr: Class for Pinhole Camera models.
docstr: Initializes the Pinhole Camera instance with given parameters.
  
  Parameters:
      width: int - Width of the camera frame.
      height: int - Height of the camera frame.
      near: float - Near clipping plane.
      far: float - Far clipping plane.
      device: torch.device - The device where tensor computations will be performed.
docstr_tok: ["Initializes","the","Pinhole","Camera","instance","with","given","parameters",".","Parameters",":","width",":","int","-","Width","of","the","camera","frame",".","height",":","int","-","Height","of","the","camera","frame",".","near",":","float","-","Near","clipping","plane",".","far",":","float","-","Far","clipping","plane",".","device",":","torch.device","-","The","device","where","tensor","computations","will","be","performed","."]
code: def __init__(
      self,
      width: int,
      height: int,
      near: float,
      far: float,
      device: torch.device = "cuda",
  ) -> None:
      """
      Initializes the Pinhole Camera instance with given parameters.
  
      Parameters:
          width: int - Width of the camera frame.
          height: int - Height of the camera frame.
          near: float - Near clipping plane.
          far: float - Far clipping plane.
          device: torch.device - The device where tensor computations will be performed.
      """
      super().__init__(width, height, device)
      self.near = near
      self.far = far
  
imports: from abc import ABC, abstractmethod
  from typing import List
  import numpy
  import torch
label_desc: Use image node_id 1 to create a new PinholeCamera object from inherited base classes: Camera with example: obj = PinholeCamera(width, height, near, far, device)