code: def test_shape(self, batch_size, device, dtype):
      B: int = batch_size
      E_mat = torch.rand(B, 3, 3, device=device, dtype=dtype)
      K1 = torch.rand(B, 3, 3, device=device, dtype=dtype)
      K2 = torch.rand(
          1, 3, 3, device=device, dtype=dtype
      )  # check broadcasting
      F_mat = epi.fundamental_from_essential(E_mat, K1, K2)
      assert F_mat.shape == (B, 3, 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 2 for calling the TestFundamentlFromEssential obj's underlying member method code with example usage: obj.test_shape(batch_size, device, dtype) without return types