code: def export() -> None:
      X = np.arange(9).astype(np.float32)
      X.shape = (1, 1, 3, 3)
      W = np.ones((1, 1, 2, 2), dtype=np.float32)
  
      # Convolution with padding
      offset_with_padding = np.zeros((1, 8, 4, 4), dtype=np.float32)
      offset_with_padding[
          0, 0, 0, 0
      ] = 0.5  # h-coord of [0, 0] element of kernel, at output position [0, 0]
      offset_with_padding[
          0, 5, 1, 2
      ] = (
          -0.1
      )  # w-coord of [1, 0] element of kernel, at output position [1, 2]
  
      node_with_padding = onnx.helper.make_node(
          "DeformConv",
          inputs=["X", "W", "offset_with_padding"],
          outputs=["Y_with_padding"],
          kernel_shape=[2, 2],
          pads=[1, 1, 1, 1],
      )
      Y_with_padding = np.array(
          [
              [
                  [
                      [
                          0.0,
                          1.0,
                          3.0,
                          2.0,
                      ],  # (1, 1, 4, 4) output tensor
                      [3.0, 8.0, 11.9, 7.0],
                      [9.0, 20.0, 24.0, 13.0],
                      [6.0, 13.0, 15.0, 8.0],
                  ]
              ]
          ]
      ).astype(np.float32)
      expect(
          node_with_padding,
          inputs=[X, W, offset_with_padding],
          outputs=[Y_with_padding],
          name="test_basic_deform_conv_with_padding",
      )
  
      # Convolution without padding
      offset_without_padding = np.zeros((1, 8, 2, 2), dtype=np.float32)
      offset_without_padding[
          0, 0, 0, 0
      ] = 0.5  # h-coord of [0, 0] element of kernel, at output position [0, 0]
      offset_without_padding[
          0, 5, 0, 1
      ] = (
          -0.1
      )  # w-coord of [1, 0] element of kernel, at output position [0, 1]
  
      node_without_padding = onnx.helper.make_node(
          "DeformConv",
          inputs=["X", "W", "offset_without_padding"],
          outputs=["Y_without_padding"],
          kernel_shape=[2, 2],
          pads=[0, 0, 0, 0],
      )
      Y_without_padding = np.array(
          [
              [
                  [
                      [9.5, 11.9],  # (1, 1, 2, 2) output tensor
                      [20.0, 24.0],
                  ]
              ]
          ]
      ).astype(np.float32)
      expect(
          node_without_padding,
          inputs=[X, W, offset_without_padding],
          outputs=[Y_without_padding],
          name="test_basic_deform_conv_without_padding",
      )
  
file_path: onnx/onnx/backend/test/case/node/deformconv.py
imports: import numpy
  import onnx
  from onnx.backend.test.case.base import Base
  from onnx.backend.test.case.node import expect
label_desc: Use image node_id 1 for calling the DeformConv obj's underlying member method code with example usage: obj.export() without return types