class_docstr: A general purpose model that handles bounding boxes as part of input.
class_docstr_tok: ["A","general","purpose","model","that","handles","bounding","boxes","as","part","of","input","."]
docstr: Args:
      x (torch.tensor): input tensor
      bboxes (torch.tensor): accociated bounding boxes.
          The format is N*5 (Index, X_1,Y_1,X_2,Y_2) if using RoIAlign
          and N*6 (Index, x_ctr, y_ctr, width, height, angle_degrees) if
          using RoIAlignRotated.
docstr_tok: ["Args",":","x","(","torch.tensor",")",":","input","tensor","bboxes","(","torch.tensor",")",":","accociated","bounding","boxes",".","The","format","is","N","*","5","(","Index",",","X_1",",","Y_1",",","X_2",",","Y_2",")","if","using","RoIAlign","and","N","*","6","(","Index",",","x_ctr",",","y_ctr",",","width",",","height",",","angle_degrees",")","if","using","RoIAlignRotated","."]
code: def forward(self, x: torch.Tensor, bboxes: torch.Tensor):
      """
      Args:
          x (torch.tensor): input tensor
          bboxes (torch.tensor): accociated bounding boxes.
              The format is N*5 (Index, X_1,Y_1,X_2,Y_2) if using RoIAlign
              and N*6 (Index, x_ctr, y_ctr, width, height, angle_degrees) if
              using RoIAlignRotated.
      """
      features = self.model(x)
      out = self.detection_head(features, bboxes)
      return out.view(out.shape[0], -1)
  
file_path: pytorchvideo/pytorchvideo/models/net.py
imports: from typing import List, Optional
  import torch
  import torch.nn
  from pytorchvideo.layers.utils import set_attributes
  from pytorchvideo.models.weight_init import init_net_weights
label_desc: Use image node_id 2 for calling the DetectionBBoxNetwork obj's underlying member method code with example usage: obj.forward(x, bboxes) and returns: out