class_docstr: A dataset class to generate circle poses.
class_docstr_tok: ["A","dataset","class","to","generate","circle","poses","."]
docstr: Initializes a new CirclePosesDataset instance.
  
  Parameters:
      size (int): Number of samples in the dataset.
      height (int): Height of the image.
      width (int): Width of the image.
      default_fovx (float): Default field of view in x-direction.
      default_fovy (float): Default field of view in y-direction.
      default_radius (float): Default radius of the circle.
      default_polar (float): Default polar angle.
      default_azimuth (float): Default azimuth angle.
      angle_overhead (float): Overhead angle.
      angle_front (float): Frontal angle.
      near (float): Near clipping distance.
      far (float): Far clipping distance.
      device (torch.device): Device to generate data on.
docstr_tok: ["Initializes","a","new","CirclePosesDataset","instance",".","Parameters",":","size","(","int",")",":","Number","of","samples","in","the","dataset",".","height","(","int",")",":","Height","of","the","image",".","width","(","int",")",":","Width","of","the","image",".","default_fovx","(","float",")",":","Default","field","of","view","in","x-direction",".","default_fovy","(","float",")",":","Default","field","of","view","in","y-direction",".","default_radius","(","float",")",":","Default","radius","of","the","circle",".","default_polar","(","float",")",":","Default","polar","angle",".","default_azimuth","(","float",")",":","Default","azimuth","angle",".","angle_overhead","(","float",")",":","Overhead","angle",".","angle_front","(","float",")",":","Frontal","angle",".","near","(","float",")",":","Near","clipping","distance",".","far","(","float",")",":","Far","clipping","distance",".","device","(","torch.device",")",":","Device","to","generate","data","on","."]
code: def __init__(
      self,
      size: int = 100,
      height: int = 256,
      width: int = 256,
      default_fovx: float = 20.0,
      default_fovy: float = 20.0,
      default_radius: float = 3.2,
      default_polar: float = 90.0,
      default_azimuth: float = 0.0,
      angle_overhead: float = 30.0,
      angle_front: float = 60.0,
      near: float = 0.01,
      far: float = 1000.0,
      device: torch.device = "cpu",
  ) -> None:
      """
      Initializes a new CirclePosesDataset instance.
  
      Parameters:
          size (int): Number of samples in the dataset.
          height (int): Height of the image.
          width (int): Width of the image.
          default_fovx (float): Default field of view in x-direction.
          default_fovy (float): Default field of view in y-direction.
          default_radius (float): Default radius of the circle.
          default_polar (float): Default polar angle.
          default_azimuth (float): Default azimuth angle.
          angle_overhead (float): Overhead angle.
          angle_front (float): Frontal angle.
          near (float): Near clipping distance.
          far (float): Far clipping distance.
          device (torch.device): Device to generate data on.
      """
      super().__init__()
      self.size = size
      self.height = height
      self.width = width
  
      self.default_fovx = default_fovx
      self.default_fovy = default_fovy
      self.default_radius = default_radius
      self.default_polar = default_polar
      self.default_azimuth = default_azimuth
  
      self.angle_overhead = angle_overhead
      self.angle_front = angle_front
      self.near = near
      self.far = far
  
      self.device = device
  
      # TODO(ahmadki): make camera type a parameter
      self.camera = PinholeCamera(
          width=self.width,
          height=self.height,
          near=self.near,
          far=self.far,
          device=self.device,
      )
  
file_path: NeMo/nemo/collections/multimodal/data/nerf/circle_poses.py
imports: from typing import Dict, Union
  import numpy
  import torch
  from torch.utils.data import Dataset
  from nemo.collections.multimodal.data.nerf.cameras import PinholeCamera
  from nemo.collections.multimodal.data.nerf.utils import compute_look_at_vectors, construct_poses, get_rays, get_view_direction
label_desc: Use image node_id 1 to create a new CirclePosesDataset object from inherited base classes: Dataset with example: obj = CirclePosesDataset(size, height, width, default_fovx, default_fovy, default_radius, default_polar, default_azimuth, angle_overhead, angle_front, near, far, device)