I would like to convert models with deform_conv2d to ONNX format, but currently it’s only defined in torchvision: https://github.com/pytorch/vision/blob/master/torchvision/ops/deform_conv.py
So i add code to torchvision like this:
@parse_args('v', 'v', 'v', 'v', 'is', 'is', 'is')
def deform_conv(g, input, offset, weight, bias, stride, padding, dilation):
return g.op('DeformConv', input, offset, weight, stride, padding, dilation)
from torch.onnx import register_custom_op_symbolic
register_custom_op_symbolic('torchvision::nms', symbolic_multi_label_nms, _onnx_opset_version)
register_custom_op_symbolic('torchvision::roi_align', roi_align, _onnx_opset_version)
register_custom_op_symbolic('torchvision::roi_pool', roi_pool, _onnx_opset_version)
register_custom_op_symbolic('torchvision::deform_conv', deform_conv, _onnx_opset_version)
However, it does not work. Could you suggest me any idea to fix. What is the purpose of g.op()?