Papers
Topics
Authors
Recent
Search
2000 character limit reached

Overview of Position Adaptive Convolution (PAC)

Updated 9 July 2026
  • Position Adaptive Convolution (PAC) is a family of operators that adapt convolutional behavior based on local spatial features to improve image and 3D data processing.
  • Variants modulate fixed filters with guidance features, learn continuous offsets, or predict per-pixel kernels, yielding flexible receptive fields and improved accuracy.
  • PAC methods are applied in image restoration, interpolation, and point cloud segmentation, demonstrating enhanced performance and efficiency over standard convolutions.

Position Adaptive Convolution (PAC) denotes a family of convolution operators in which the effective kernel, the sampling geometry, or both depend on spatial position or local content rather than remaining fully shared across the domain. On image grids, PAC is often used synonymously with pixel-adaptive convolution, where a shared spatial filter is modulated by a spatially varying kernel derived from guidance features; related formulations instead learn continuous sampling offsets, predict full per-pixel kernels, or multiplicatively gate a base kernel. On irregular domains such as point clouds, the same principle appears as dynamically assembled kernels conditioned on local geometry. The literature therefore treats PAC less as a single canonical operator than as a design pattern for position-conditioned convolution (Su et al., 2019, Jeon et al., 2017, Xu et al., 2021).

1. Scope and operator family

The canonical reference formulation on image grids starts from standard spatial convolution

vi  =  jΩ(i)W[pipj]vj  +  b,\mathbf{v}'_i \;=\; \sum_{j \in \Omega(i)} \mathbf{W}\big[\mathbf{p}_i - \mathbf{p}_j\big]\, \mathbf{v}_j \;+\; \mathbf{b},

where Ω(i)\Omega(i) is an s×ss \times s neighborhood, W[Δ]\mathbf{W}[\Delta] is the filter slice at spatial offset Δ\Delta, and vi\mathbf{v}'_i is the output at pixel ii. Pixel-Adaptive Convolution modifies this by introducing a spatially varying kernel K(fi,fj)K(\mathbf{f}_i,\mathbf{f}_j) derived from adapting features f\mathbf{f}: vi  =  jΩ(i)K ⁣(fi,fj)W[pipj]vj  +  b.\mathbf{v}'_i \;=\; \sum_{j \in \Omega(i)} K\!\left(\mathbf{f}_i, \mathbf{f}_j\right)\, \mathbf{W}\big[\mathbf{p}_i - \mathbf{p}_j\big]\, \mathbf{v}_j \;+\; \mathbf{b}. In this form, PAC generalizes spatial convolution, bilateral filtering, and pooling (Su et al., 2019).

The same underlying idea recurs in several distinct parameterizations. Some works adapt the kernel weights while keeping the sampling grid fixed; some learn the sampling positions themselves; some predict a full local kernel for each pixel; and some factorize the dynamic kernel through bases, atoms, or a weight bank. This suggests that “position adaptive convolution” is best understood as an umbrella term for convolutions whose effective receptive pattern is conditioned on position-dependent information.

Variant Adaptation mechanism Representative paper
Pixel-Adaptive Convolution Ω(i)\Omega(i)0 modulates shared Ω(i)\Omega(i)1 (Su et al., 2019)
Active Convolution Unit Learnable continuous offsets Ω(i)\Omega(i)2 (Jeon et al., 2017)
Adaptive Convolution for interpolation Per-pixel kernels over two input frames (Niklaus et al., 2017)
LAConv Patch-conditioned Ω(i)\Omega(i)3 gate scales base kernel (Jin et al., 2021)
PPAC PAC plus confidence gating and advanced normalization (Wannenwetsch et al., 2020)
PAConv Dynamic kernel assembling from a Weight Bank (Xu et al., 2021)
ACDA Per-pixel dynamic atoms over multi-scale bases (Wang et al., 2021)

2. Feature-conditioned PAC on image grids

In the formulation of Su et al., the adapting signal enters through local features Ω(i)\Omega(i)4, typically with a Gaussian kernel

Ω(i)\Omega(i)5

The modulation is usually scalar per neighbor and then broadcast across channels, although the framework allows channel-aware variants. Because the operator preserves the standard convolutional neighborhood specification—filter size, stride, padding, and dilation—it can be used as a drop-in replacement for pretrained convolutions. The same work also defines PAC-Ω(i)\Omega(i)6, where learned spatial compatibility tensors and Gaussian kernels over features replace the high-dimensional filtering of Fully-Connected CRFs, yielding an efficient mean-field update on fixed windows with optional dilation (Su et al., 2019).

LAConv instantiates the same PAC principle in a structured multiplicative form. For a local patch Ω(i)\Omega(i)7, a shared kernel bank Ω(i)\Omega(i)8, and a patch-conditioned gate Ω(i)\Omega(i)9, the paper defines

s×ss \times s0

where s×ss \times s1 duplicates s×ss \times s2 across channels. In explicit PAC language, this corresponds to

s×ss \times s3

with s×ss \times s4 produced from the local patch. LAConv augments this with a dynamic bias s×ss \times s5 generated from s×ss \times s6, so that

s×ss \times s7

The paper positions LAConv as a per-pixel, patch-conditioned alternative to sample-conditioned dynamic convolutions such as CondConv and DYConv, and as distinct from deformable convolution because the sampling grid remains fixed while the kernel values are adapted (Jin et al., 2021).

Probabilistic Pixel-Adaptive Convolution extends PAC by incorporating explicit per-pixel confidence. If s×ss \times s8 denotes the confidence associated with neighbor s×ss \times s9, then PPAC uses

W[Δ]\mathbf{W}[\Delta]0

Its purpose is not merely image-adaptive smoothing but also preferential propagation from high-confidence neighbors into less reliable regions while respecting boundaries. This is paired with an “advanced normalization” in which an auxiliary constant input is passed through the same operator using a strictly positive normalization kernel W[Δ]\mathbf{W}[\Delta]1, and the output is divided by the auxiliary response before adding bias. The paper argues that kernel-only normalization is insufficient because the effective magnitude depends jointly on W[Δ]\mathbf{W}[\Delta]2, W[Δ]\mathbf{W}[\Delta]3, and local neighborhood structure (Wannenwetsch et al., 2020).

3. Learnable sampling geometry and full kernel synthesis

A distinct PAC line adapts the sampling positions rather than—or in addition to—the kernel weights. The Active Convolution Unit replaces the fixed grid W[Δ]\mathbf{W}[\Delta]4 of standard convolution with learnable continuous synapse positions W[Δ]\mathbf{W}[\Delta]5. With position parameters W[Δ]\mathbf{W}[\Delta]6, ACU computes

W[Δ]\mathbf{W}[\Delta]7

Because W[Δ]\mathbf{W}[\Delta]8 and W[Δ]\mathbf{W}[\Delta]9 are generally fractional, the sampled feature Δ\Delta0 is obtained by bilinear interpolation from the four neighbors Δ\Delta1. This makes the output differentiable with respect to Δ\Delta2 almost everywhere, enabling backpropagation of the sampling geometry itself. The operator generalizes conventional convolution, dilated convolution, shifted kernels, and arbitrary sparse or fractional sampling patterns. In the reported implementation, Δ\Delta3 is fixed at Δ\Delta4, offsets are shared across spatial positions and typically across kernels in a layer, initialization uses the regular Δ\Delta5 grid, and position updates use a normalized gradient with a smaller learning rate than weights (Jeon et al., 2017).

Video frame interpolation via adaptive convolution represents an even more explicit per-pixel synthesis operator. For each output location Δ\Delta6, the interpolated midpoint frame is defined by two spatially adaptive sub-kernels Δ\Delta7 and Δ\Delta8: Δ\Delta9 The paper instantiates vi\mathbf{v}'_i0, so the concatenated kernel has vi\mathbf{v}'_i1 elements. A fully convolutional network predicts these logits from co-centered vi\mathbf{v}'_i2 receptive-field patches from the two frames, followed by a spatial softmax across both sub-kernels jointly. This imposes non-negativity and a sum-to-one constraint over the concatenated kernel, while leaving the two sub-kernels free to allocate negligible mass to one frame under occlusion. In this formulation, kernel mass concentration encodes local motion and per-frame mass allocation encodes visibility and blending, thereby replacing the traditional motion-estimation-plus-warping pipeline with a single learned convolution process (Niklaus et al., 2017).

Adaptive Convolutions with Per-pixel Dynamic Filter Atom move further toward full per-pixel kernel construction while factorizing the dynamic kernel to control computation and memory. ACDA defines

vi\mathbf{v}'_i3

where vi\mathbf{v}'_i4 are shared channel-mixing coefficients and vi\mathbf{v}'_i5 are per-pixel dynamic atoms. Each atom is itself expanded over fixed multi-scale bases: vi\mathbf{v}'_i6 The atom coefficients vi\mathbf{v}'_i7 are produced by a lightweight two-layer CNN, while the bases vi\mathbf{v}'_i8 are fixed. This yields explicit adaptive receptive fields because different positions can upweight different scales, yet the operator preserves strict translation equivariance since the conditioning network is convolutional and the sampling positions are fixed (Wang et al., 2021).

4. Position-adaptive convolution on point clouds

On point clouds, the regular-grid assumptions of 2D convolution fail because positions are continuous, neighborhoods are unordered, and permutation invariance is required. PAConv addresses this by dynamically assembling a position-adaptive kernel from a small Weight Bank rather than predicting a full kernel per edge. For a neighborhood vi\mathbf{v}'_i9, basis matrices ii0, and ScoreNet coefficients ii1, the kernel is

ii2

and the per-point output is

ii3

In practice, PAConv uses MAX pooling as the symmetric aggregation, so permutation invariance is retained (Xu et al., 2021).

The ScoreNet input can include relative offsets, absolute coordinates of the center point, and Euclidean distance,

ii4

and a small MLP followed by softmax yields ii5 with ii6. The implementation exploits a CUDA-friendly reformulation,

ii7

so that transformed features ii8 can be precomputed and then assembled with scalar coefficients. To encourage diversity among basis matrices, the paper adds a correlation loss

ii9

PAConv is explicitly designed as a plug-and-play replacement for PointNet, DGCNN, and PointNet++ blocks without changing the surrounding network configurations (Xu et al., 2021).

5. Optimization, normalization, and systems considerations

The PAC literature devotes substantial attention to stabilization because position adaptation couples convolution with additional latent variables—features, offsets, confidence maps, or routing coefficients. In ACU, the gradients with respect to offsets follow directly from the bilinear interpolation terms, and the paper uses normalized offset gradients

K(fi,fj)K(\mathbf{f}_i,\mathbf{f}_j)0

with

K(fi,fj)K(\mathbf{f}_i,\mathbf{f}_j)1

together with a warm-up stage in which weights are trained while positions remain fixed for several iterations. This is used to avoid poor local minima caused by unstable early offset motion (Jeon et al., 2017).

Normalization is a central issue in PAC and PPAC. Standard PAC implementations may normalize only the kernel K(fi,fj)K(\mathbf{f}_i,\mathbf{f}_j)2, but the PPAC paper shows that the effective response magnitude also depends on the learned spatial filter K(fi,fj)K(\mathbf{f}_i,\mathbf{f}_j)3 and on how much mass is concentrated in a structured region. Its advanced normalization therefore computes an auxiliary response

K(fi,fj)K(\mathbf{f}_i,\mathbf{f}_j)4

with K(fi,fj)K(\mathbf{f}_i,\mathbf{f}_j)5 constrained to be strictly positive by learning it in log-space, and normalizes the actual filtered output by K(fi,fj)K(\mathbf{f}_i,\mathbf{f}_j)6. This choice is particularly important when convolution weights may contain negative entries (Wannenwetsch et al., 2020).

Per-pixel kernel prediction is often limited more by systems cost than by parameter count. In video interpolation, predicting a K(fi,fj)K(\mathbf{f}_i,\mathbf{f}_j)7-dimensional kernel per pixel is compute- and memory-intensive; the paper therefore exploits the fully convolutional structure through a “shift-and-stitch” strategy, reducing HD inference from K(fi,fj)K(\mathbf{f}_i,\mathbf{f}_j)8 seconds for K(fi,fj)K(\mathbf{f}_i,\mathbf{f}_j)9 per-pixel forward passes to approximately f\mathbf{f}0 seconds on a Titan X. ACU reports a forward pass approximately f\mathbf{f}1 slower than standard convolution in the provided Caffe implementation because of bilinear interpolation. PAConv addresses the analogous issue on point clouds by predicting only f\mathbf{f}2 routing coefficients per edge and reusing a Weight Bank, while the released CUDA implementation reduces memory from more than f\mathbf{f}3GB to approximately f\mathbf{f}4GB for f\mathbf{f}5 points. ACDA makes the same design move in dense images: instead of materializing a full per-pixel kernel, it stores compact atom coefficients and shared mixing weights; the paper notes that naive per-pixel gradients for a single layer with f\mathbf{f}6 and f\mathbf{f}7 would consume approximately f\mathbf{f}8GB (Niklaus et al., 2017, Xu et al., 2021, Wang et al., 2021).

6. Empirical behavior, applications, and nomenclature

Empirically, PAC variants have been used in classification, dense prediction, image restoration, interpolation, fusion, and 3D geometric learning. On CIFAR-10 and CIFAR-100, replacing six f\mathbf{f}9 convolutions with ACUs in a plain CNN improved test error from vi  =  jΩ(i)K ⁣(fi,fj)W[pipj]vj  +  b.\mathbf{v}'_i \;=\; \sum_{j \in \Omega(i)} K\!\left(\mathbf{f}_i, \mathbf{f}_j\right)\, \mathbf{W}\big[\mathbf{p}_i - \mathbf{p}_j\big]\, \mathbf{v}_j \;+\; \mathbf{b}.0 to vi  =  jΩ(i)K ⁣(fi,fj)W[pipj]vj  +  b.\mathbf{v}'_i \;=\; \sum_{j \in \Omega(i)} K\!\left(\mathbf{f}_i, \mathbf{f}_j\right)\, \mathbf{W}\big[\mathbf{p}_i - \mathbf{p}_j\big]\, \mathbf{v}_j \;+\; \mathbf{b}.1 and from vi  =  jΩ(i)K ⁣(fi,fj)W[pipj]vj  +  b.\mathbf{v}'_i \;=\; \sum_{j \in \Omega(i)} K\!\left(\mathbf{f}_i, \mathbf{f}_j\right)\, \mathbf{W}\big[\mathbf{p}_i - \mathbf{p}_j\big]\, \mathbf{v}_j \;+\; \mathbf{b}.2 to vi  =  jΩ(i)K ⁣(fi,fj)W[pipj]vj  +  b.\mathbf{v}'_i \;=\; \sum_{j \in \Omega(i)} K\!\left(\mathbf{f}_i, \mathbf{f}_j\right)\, \mathbf{W}\big[\mathbf{p}_i - \mathbf{p}_j\big]\, \mathbf{v}_j \;+\; \mathbf{b}.3, respectively, with only vi  =  jΩ(i)K ⁣(fi,fj)W[pipj]vj  +  b.\mathbf{v}'_i \;=\; \sum_{j \in \Omega(i)} K\!\left(\mathbf{f}_i, \mathbf{f}_j\right)\, \mathbf{W}\big[\mathbf{p}_i - \mathbf{p}_j\big]\, \mathbf{v}_j \;+\; \mathbf{b}.4 added parameters; on Places365, replacing AlexNet vi  =  jΩ(i)K ⁣(fi,fj)W[pipj]vj  +  b.\mathbf{v}'_i \;=\; \sum_{j \in \Omega(i)} K\!\left(\mathbf{f}_i, \mathbf{f}_j\right)\, \mathbf{W}\big[\mathbf{p}_i - \mathbf{p}_j\big]\, \mathbf{v}_j \;+\; \mathbf{b}.5 convolutions with ACUs improved Top-1 from vi  =  jΩ(i)K ⁣(fi,fj)W[pipj]vj  +  b.\mathbf{v}'_i \;=\; \sum_{j \in \Omega(i)} K\!\left(\mathbf{f}_i, \mathbf{f}_j\right)\, \mathbf{W}\big[\mathbf{p}_i - \mathbf{p}_j\big]\, \mathbf{v}_j \;+\; \mathbf{b}.6 to vi  =  jΩ(i)K ⁣(fi,fj)W[pipj]vj  +  b.\mathbf{v}'_i \;=\; \sum_{j \in \Omega(i)} K\!\left(\mathbf{f}_i, \mathbf{f}_j\right)\, \mathbf{W}\big[\mathbf{p}_i - \mathbf{p}_j\big]\, \mathbf{v}_j \;+\; \mathbf{b}.7 and Top-5 from vi  =  jΩ(i)K ⁣(fi,fj)W[pipj]vj  +  b.\mathbf{v}'_i \;=\; \sum_{j \in \Omega(i)} K\!\left(\mathbf{f}_i, \mathbf{f}_j\right)\, \mathbf{W}\big[\mathbf{p}_i - \mathbf{p}_j\big]\, \mathbf{v}_j \;+\; \mathbf{b}.8 to vi  =  jΩ(i)K ⁣(fi,fj)W[pipj]vj  +  b.\mathbf{v}'_i \;=\; \sum_{j \in \Omega(i)} K\!\left(\mathbf{f}_i, \mathbf{f}_j\right)\, \mathbf{W}\big[\mathbf{p}_i - \mathbf{p}_j\big]\, \mathbf{v}_j \;+\; \mathbf{b}.9 (Jeon et al., 2017). The original Pixel-Adaptive Convolution paper reports state-of-the-art performance for deep joint image upsampling and competitive PAC-Ω(i)\Omega(i)00 refinement, with PAC-Ω(i)\Omega(i)01 yielding Ω(i)\Omega(i)02 ms for a single Ω(i)\Omega(i)03 kernel with dilation Ω(i)\Omega(i)04, and a two-kernel configuration improving Pascal VOC mIoU by Ω(i)\Omega(i)05 on validation and Ω(i)\Omega(i)06 on test over FCN-8s unaries (Su et al., 2019).

The probabilistic extension shows that explicit uncertainty can further sharpen PAC behavior. For optical flow refinement, PPAC improves over PAC and over simple convolutional refinement, and on Pascal VOC 2012 it improves DeepLabv3+ from Ω(i)\Omega(i)07 to Ω(i)\Omega(i)08 mIoU while reducing boundary artifacts (Wannenwetsch et al., 2020). For image fusion, LAResNet equipped with LAConv and dynamic bias reports the best quantitative results across the listed WV3, GF2, QB, and CAVE settings, and Table 13 reports Ω(i)\Omega(i)09 parameters for LAResNet, the lowest among the listed CNNs, while the ablation identifies LAC+DYB as the strongest of the six tested configurations on WV3 Tripoli (Jin et al., 2021). In video frame interpolation, the adaptive-convolution model ranks best on Evergreen and Basketball, second on Dumptruck, and third on Backyard among Middlebury real-world scenes, while qualitative results emphasize sharp interpolation under occlusion, blur, and abrupt brightness change (Niklaus et al., 2017).

On point clouds, PAConv improves classical MLP-based backbones without redesigning them. The paper reports PointNet baseline Ω(i)\Omega(i)10 versus PointNet + PAConv Ω(i)\Omega(i)11 on ModelNet40, DGCNN baseline class mIoU Ω(i)\Omega(i)12 versus DGCNN + PAConv class mIoU Ω(i)\Omega(i)13 with voting on ShapeNet Part, and PointNet++ baseline Ω(i)\Omega(i)14 versus PAConv Ω(i)\Omega(i)15 mIoU with voting on S3DIS Area-5 (Xu et al., 2021). ACDA, although framed as adaptive convolutions with per-pixel dynamic atoms rather than explicitly as PAC, belongs to the same broader family and reports improvements across toy multi-scale pattern detection, CIFAR-10/100, ImageNet, crowd counting, real-world super-resolution, and real-world denoising, particularly on tasks with significant intra-image variance (Wang et al., 2021).

A recurring source of confusion is nomenclature. In vision papers, “PAC” commonly denotes Pixel-Adaptive Convolution, and some literature refers to “Position-Adaptive Convolution” synonymously because the adaptation depends on pixel position through guidance features. In 3D vision, PAConv uses the phrase “Position Adaptive Convolution” explicitly for point clouds. By contrast, PAC in coding theory denotes polarization-adjusted convolutional codes, where the acronym refers to a concatenation of convolutional and polar transforms and has no relation to adaptive convolution operators (Wannenwetsch et al., 2020, Sun et al., 2021).

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to Position Adaptive Convolution (PAC).