code: def test_smoke(self, device, dtype):
      # Sample two points of the rectangle
      points = torch.rand(1, 4, device=device, dtype=dtype)
  
      # Fill according missing points
      bbox = torch.zeros(1, 4, 2, device=device, dtype=dtype)
      bbox[0, 0] = points[0][:2]
      bbox[0, 1, 0] = points[0][2]
      bbox[0, 1, 1] = points[0][1]
      bbox[0, 2] = points[0][2:]
      bbox[0, 3, 0] = points[0][0]
      bbox[0, 3, 1] = points[0][3]
  
      # Validate
      assert validate_bbox(bbox)
  
imports: import torch
  import kornia
  from kornia.geometry.bbox import infer_bbox_shape, infer_bbox_shape3d, nms, transform_bbox, validate_bbox, validate_bbox3d
  from kornia.testing import assert_close, gradcheck, tensor_to_gradcheck_var
label_desc: Use image node_id 1 for calling the TestBbox2D obj's underlying member method code with example usage: obj.test_smoke(device, dtype) without return types