:nosearch: .. _op_ai_onnx_DeformConv-19: DeformConv - version 19 ======================= This page documents version **19** of operator **DeformConv**. See :doc:`DeformConv` for the latest version (since version 22). - **Domain**: ``ai.onnx`` - **Since version**: 19 Performs deformable convolution as described in https://arxiv.org/abs/1703.06211 and https://arxiv.org/abs/1811.11168. This operator specification supports the general N-D case. Note that most common use cases have 2D or 3D data. **Inputs** - **X** (*T*): Input data tensor. For 2D image data, it has shape (N, C, H, W) where N is the batch size, C is the number of input channels, and H and W are the height and width. In general, the shape is (N, C, D1, D2, ... , Dn) for n-dimensional data, where D1 to Dn are the spatial dimension sizes. Most common use cases have n = 2 or 3. - **W** (*T*): Weight tensor that will be used in the convolutions. It has shape (oC, C/group, kH, kW), where oC is the number of output channels and kH and kW are the kernel height and width. For more than 2 dimensions, it has shape (oC, C/group, k1, k2, ... , kn). - **offset** (*T*): Offset tensor denoting the offset for the sampling locations in the convolution kernel. It has shape (N, offset_group \* kH \* kW \* 2, oH, oW) for 2D data or (N, offset_group \* k1 \* k2 \* ... \* kn \* n, o1, o2, ... , on) for nD data. Use linear interpolationfor fractional offset values. Sampling locations outside of the padded input tensor gives zero. - **B** (*T*): Optional 1D bias of length oC to be added to the convolution. Default is a tensor of zeros. - **mask** (*T*): The mask tensor to be applied to each position in the convolution kernel. It has shape (N, offset_group \* kH \* kW, oH, oW) for 2D data or (N, offset_group \* k1 \* k2 \* ... \* kn \* n, o1, o2, ... , on) for nD data. Default is a tensor of ones. **Outputs** - **Y** (*T*): Output data tensor that contains the result of convolution. It has shape (N, oC, oH, oW) for 2D data or (N, oC, o1, o2, ..., on) for nD data **Type Constraints** - **T**: Constrain input and output types to float tensors. Allowed types: tensor(double), tensor(float), tensor(float16).