class_docstr: Test class that defines the dwconv2d slice test
code: def out_shape(self, in_shape, dilated_filt_shape, stride):
      in_batch, in_height, in_width, _ = in_shape
      filt_height, filt_width, _, num_filt = dilated_filt_shape
      out_height = (in_height - filt_height) // stride[0] + 1
      out_width = (in_width - filt_width) // stride[1] + 1
      out_channel = num_filt
      return in_batch, out_height, out_width, out_channel
  
imports: import numpy
  import tvm
  import tvm.testing
  import tvm.topi.hexagon.qnn
  from tvm.topi.testing import depthwise_conv2d_python_nhwc
  from tvm.topi.hexagon.slice_ops.dwconv2d import dwconv2d_compute, dwconv2d_schedule
  from tvm.contrib.hexagon import allocate_hexagon_array
  from ...infrastructure import transform_numpy, quantize_np
label_desc: Use image node_id 2 for calling the Testdwconv2dSlice obj's underlying member method code with example usage: obj.out_shape(in_shape, dilated_filt_shape, stride) and returns: in_batch,  out_height,  out_width,  out_channel