# pillarScatter Plugin [DEPRECATED] **This plugin is deprecated since TensorRT 10.12 and will be removed in a future release. No alternatives are planned to be provided.** **Table Of Contents** - [Description](#description) * [Structure](#structure) - [Parameters](#parameters) - [Additional resources](#additional-resources) - [License](#license) - [Changelog](#changelog) - [Known issues](#known-issues) ## Description The `pillarScatterPlugin` performs scatter of voxels for PointPillars model. This operation is roughly a sparse to dense conversion and similar to ordinary scatter operation. The difference is `pillarScatterPlugin` will only scatter voxels that are marked as valid and do nothing for invalid voxels. `pillarScatterPlugin` implements a sparse to dense conversion of voxels. The plugin takes sparse voxel values and their corresponding indices and produces a dense representation of the voxels(pillars). This plugin is optimized for the above steps and it allows you to do PointPillars inference in TensorRT. ### Structure The `pillarScatterPlugin` takes 3 inputs; `voxels`, `voxel_coords`, and `num_pillar`. `voxels` The tensor of voxel values. The shape of this tensor is `[N, P, C]`, where `N` is the batch size, `P` is the maximum number of pillars per frame, and `C` is the number of features for each pillar. `voxel_coords` The dense coordinates of `voxels`. This tensor contains the coordinate of each voxel in `voxels`. The coordinates will determine which voxel goes to which index in the output dense tensor. This tensor has a shape of `[N, P, 4]`, where `N, P` are as above and `4` is the length of the coordinates encoded as `(frame_id, z, y, x)`. `num_pillar` The number of valid pillars. For each frame, the number of voxels(pillars) can be lower than the maximum pillar number `P`. Only valid pillars will be considered in this operation. Invalid pillars will simply be ignored. The dimension of this tensor is simply `[N]`. The `pillarScatterPlugin` generates the following 1 output: `dense_feature_map` The result of this operation is a dense feature map with the shape `[N, C, H, W]`, where `N, C` are as above and `H, W` are the height and width of the dense feature map. This tensor usually is a highly sparse tensor. ## Parameters `pillarScatterPlugin` has plugin creator class `pillarScatterPluginCreator` and plugin class `pillarScatterPlugin`. The parameters are defined below and consists of the following attributes: | Type | Parameter | Description |----------|--------------------------|-------------------------------------------------------- |`list of ints` | `dense_shape` | The shape(h, w) of the dense feature map that will be generated by this operation. ## Additional resources The following resources provide a deeper understanding of the `pillarScatterPlugin` plugin: **Networks:** - [PointPillars](https://arxiv.org/pdf/1812.05784) **Documentation:** - [PointPillars](https://arxiv.org/pdf/1812.05784) ## License For terms and conditions for use, reproduction, and distribution, see the [TensorRT Software License Agreement](https://docs.nvidia.com/deeplearning/sdk/tensorrt-sla/index.html) documentation. ## Changelog May 2025 Add deprecation note. Feb 2023 Fixed a bug where PillarScatter would incorrectly report support for `HWC8` formats. Dec 2021 This is the first release of this `README.md` file. ## Known issues There are no known issues in this plugin.