code: def test_shape(self, device, dtype):
      lines = torch.rand(2, 4, 3, device=device, dtype=dtype)
      points = torch.rand(2, 4, 2, device=device, dtype=dtype)
      perp = epi.get_perpendicular(lines, points)
      assert perp.shape == (2, 4, 3)
  
imports: from typing import Dict
  import pytest
  import test_common
  import torch
  from torch.autograd import gradcheck
  import kornia.geometry.epipolar
  import kornia.testing
  from kornia.testing import assert_close
label_desc: Use image node_id 1 for calling the TestPerpendicular obj's underlying member method code with example usage: obj.test_shape(device, dtype) without return types