Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Pixel-Adaptive Convolutional Neural Networks (CVPR '19)
| Date | Stars |
|---|---|
| 2026-07-24 | 516 |
| 2026-07-25 | 516 |
| 2026-07-28 | 516 |
| 2026-07-30 | 516 |
| 2026-07-31 | 516 |
| 2026-08-06 | 516 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.00%/day
## Pixel-Adaptive Convolutional Neural Networks
#### [Project page](https://suhangpro.github.io/pac/index.html) | [Paper](https://arxiv.org/abs/1904.05373) | [Video](https://youtu.be/gsQZbHuR64o)
Pixel-Adaptive Convolutional Neural Networks<br>
[Hang Su](https://suhangpro.github.io/), [Varun Jampani](https://varunjampani.github.io/), [Deqing Sun](http://research.nvidia.com/person/deqing-sun), [Orazio Gallo](https://research.nvidia.com/person/orazio-gallo), [Erik Learned-Miller](http://people.cs.umass.edu/~elm/), and [Jan Kautz](http://jankautz.com/).<br>
CVPR 2019.
### License
Copyright (C) 2019 NVIDIA Corporation. All rights reserved.
Licensed under the CC BY-NC-SA 4.0 license (https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode).
### Installation
* Make sure you have Python>=3.5 (we recommend using a Conda environment).
* Add the project directory to your Python paths.
* Install dependencies:
* PyTorch v0.4-1.1 (incl. torchvision) with CUDA: see [PyTorch instructions](https://pytorch.org/get-started/locally/).
* Additional libraries:
```bash
pip install -r requirements.txt
```
* (Optional) Verify installation:
```bash
python -m unittest
```
### Layer Catalog
We implemented 5 types of PAC layers (as PyTorch `Module`):
* `PacConv2d`: the standard variant
* `PacConvTranspose2d`: the transposed (fractionally-strided) variant for upsampling
* `PacPool2d`: the pooling variant
* `PacCRF`: Mean-Field (MF) inference of a CRF
* `PacCRFLoose`: MF inference of a CRF where the MF steps do not share weights
More details regarding each layer is provided below.
#### `PacConv2d`
`PacConv2d` is the PAC counterpart of `nn.Conv2d`. It accepts most standard `nn.Conv2d` arguments (including in_channels, out_channels, kernel_size, bias, stride, padding, dilation, but not groups and padding_mode),
and we make sure that when the same arguments are used, `PacConv2d` and `nn.Conv2d` have the exact same output sizes.
A few additional optional arguments are available:
```
Args (in addition to those of Conv2d):
kernel_type (str): 'gaussian' | 'inv_{alpha}_{lambda}[_asym][_fixed]'. Default: 'gaussian'
smooth_kernel_type (str): 'none' | 'gaussian' | 'average_{sz}' | 'full_{sz}'. Default: 'none'
normalize_kernel (bool): Default: False
shared_filters (bool): Default: False
filler (str): 'uniform'. Default: 'uniform'
Note:
- kernel_size only accepts odd numbers
- padding should not be larger than :math:`dilation * (kernel_size - 1) / 2`
```
When used to build computation graphs, this layer takes two input tensors and generates one output tensor:
```python
in_ch, out_ch, g_ch = 16, 32, 8 # channel sizes of input, output and guidance
f, b, h, w = 5, 2, 64, 64 # filter size, batch size, input height and width
input = torch.rand(b, in_ch, h, w)
guide = torch.rand(b, g_ch, h, w) # guidance feature ('f' in Eq.3 of paper)
conv = nn.Conv2d(in_ch, out_ch, f)
out_conv = conv(input) # standard spatial convolution
pacconv = PacConv2d(in_ch, out_ch, f)
out_pac = pacconv(input, guide) # PAC
out_pac = pacconv(input, None, guide_k) # alternative interface
# guide_k is pre-computed 'K' (see Eq.3 of paper)
# of shape [b, g_ch, f, f, h, w]. packernel2d can be
# used for its creation.
```
Use `pacconv2d` (in conjunction with `packernel2d`) for its functional interface.
#### `PacConvTranspose2d`
`PacConvTranspose2d` is the PAC counterpart of `nn.ConvTranspose2d`. It accepts most standard `nn.ConvTranspose2d`
arguments (including in_channels, out_channels, kernel_size, bias, stride, padding, output_padding, dilation, but not groups and padding_mode), and we make sure that when the same arguments are used,
`PacConvTranspose2d` and `nn.ConvTranspose2d` hExcerpt of 18,766 characters
Read on GitHub4
1
Would you bet a product on this? Bounded 0–100 and slow moving.
matched fp:6d4676065daeb0ba, topic:deep-learning
matched fp:6d4676065daeb0ba, topic:computer-vision