TensorRT 8.6.1
|
A convolution layer in a network definition. More...
#include <NvInfer.h>
Public Member Functions | |
TRT_DEPRECATED void | setKernelSize (DimsHW kernelSize) noexcept |
Set the HW kernel size of the convolution. More... | |
TRT_DEPRECATED DimsHW | getKernelSize () const noexcept |
Get the HW kernel size of the convolution. More... | |
void | setNbOutputMaps (int32_t nbOutputMaps) noexcept |
Set the number of output maps for the convolution. More... | |
int32_t | getNbOutputMaps () const noexcept |
Get the number of output maps for the convolution. More... | |
TRT_DEPRECATED void | setStride (DimsHW stride) noexcept |
Get the stride of the convolution. More... | |
TRT_DEPRECATED DimsHW | getStride () const noexcept |
Get the stride of the convolution. More... | |
TRT_DEPRECATED void | setPadding (DimsHW padding) noexcept |
Set the padding of the convolution. More... | |
TRT_DEPRECATED DimsHW | getPadding () const noexcept |
Get the padding of the convolution. If the padding is asymmetric, the pre-padding is returned. More... | |
void | setNbGroups (int32_t nbGroups) noexcept |
Set the number of groups for a convolution. More... | |
int32_t | getNbGroups () const noexcept |
Get the number of groups of the convolution. More... | |
void | setKernelWeights (Weights weights) noexcept |
Set the kernel weights for the convolution. More... | |
Weights | getKernelWeights () const noexcept |
Get the kernel weights of the convolution. More... | |
void | setBiasWeights (Weights weights) noexcept |
Set the bias weights for the convolution. More... | |
Weights | getBiasWeights () const noexcept |
Get the bias weights for the convolution. More... | |
TRT_DEPRECATED void | setDilation (DimsHW dilation) noexcept |
Set the dilation for a convolution. More... | |
TRT_DEPRECATED DimsHW | getDilation () const noexcept |
Get the dilation for a convolution. More... | |
void | setPrePadding (Dims padding) noexcept |
Set the multi-dimension pre-padding of the convolution. More... | |
Dims | getPrePadding () const noexcept |
Get the pre-padding. More... | |
void | setPostPadding (Dims padding) noexcept |
Set the multi-dimension post-padding of the convolution. More... | |
Dims | getPostPadding () const noexcept |
Get the post-padding. More... | |
void | setPaddingMode (PaddingMode paddingMode) noexcept |
Set the padding mode. More... | |
PaddingMode | getPaddingMode () const noexcept |
Get the padding mode. More... | |
void | setKernelSizeNd (Dims kernelSize) noexcept |
Set the multi-dimension kernel size of the convolution. More... | |
Dims | getKernelSizeNd () const noexcept |
Get the multi-dimension kernel size of the convolution. More... | |
void | setStrideNd (Dims stride) noexcept |
Set the multi-dimension stride of the convolution. More... | |
Dims | getStrideNd () const noexcept |
Get the multi-dimension stride of the convolution. More... | |
void | setPaddingNd (Dims padding) noexcept |
Set the multi-dimension padding of the convolution. More... | |
Dims | getPaddingNd () const noexcept |
Get the multi-dimension padding of the convolution. More... | |
void | setDilationNd (Dims dilation) noexcept |
Set the multi-dimension dilation of the convolution. More... | |
Dims | getDilationNd () const noexcept |
Get the multi-dimension dilation of the convolution. More... | |
void | setInput (int32_t index, ITensor &tensor) noexcept |
Append or replace an input of this layer with a specific tensor. More... | |
![]() | |
LayerType | getType () const noexcept |
Return the type of a layer. More... | |
void | setName (char const *name) noexcept |
Set the name of a layer. More... | |
char const * | getName () const noexcept |
Return the name of a layer. More... | |
int32_t | getNbInputs () const noexcept |
Get the number of inputs of a layer. More... | |
ITensor * | getInput (int32_t index) const noexcept |
Get the layer input corresponding to the given index. More... | |
int32_t | getNbOutputs () const noexcept |
Get the number of outputs of a layer. More... | |
ITensor * | getOutput (int32_t index) const noexcept |
Get the layer output corresponding to the given index. More... | |
void | setInput (int32_t index, ITensor &tensor) noexcept |
Replace an input of this layer with a specific tensor. More... | |
void | setPrecision (DataType dataType) noexcept |
Set the computational precision of this layer. More... | |
DataType | getPrecision () const noexcept |
get the computational precision of this layer More... | |
bool | precisionIsSet () const noexcept |
whether the computational precision has been set for this layer More... | |
void | resetPrecision () noexcept |
reset the computational precision for this layer More... | |
void | setOutputType (int32_t index, DataType dataType) noexcept |
Set the output type of this layer. More... | |
DataType | getOutputType (int32_t index) const noexcept |
get the output type of this layer More... | |
bool | outputTypeIsSet (int32_t index) const noexcept |
whether the output type has been set for this layer More... | |
void | resetOutputType (int32_t index) noexcept |
reset the output type for this layer More... | |
void | setMetadata (char const *metadata) noexcept |
Set the metadata for this layer. More... | |
char const * | getMetadata () const noexcept |
Get the metadata of the layer. More... | |
Protected Member Functions | |
virtual | ~IConvolutionLayer () noexcept=default |
![]() | |
virtual | ~ILayer () noexcept=default |
![]() | |
INoCopy ()=default | |
virtual | ~INoCopy ()=default |
INoCopy (INoCopy const &other)=delete | |
INoCopy & | operator= (INoCopy const &other)=delete |
INoCopy (INoCopy &&other)=delete | |
INoCopy & | operator= (INoCopy &&other)=delete |
Protected Attributes | |
apiv::VConvolutionLayer * | mImpl |
![]() | |
apiv::VLayer * | mLayer |
A convolution layer in a network definition.
This layer performs a correlation operation between 3-dimensional filter with a 4-dimensional tensor to produce another 4-dimensional tensor.
An optional bias argument is supported, which adds a per-channel constant to each value in the output.
|
protectedvirtualdefaultnoexcept |
|
inlinenoexcept |
Get the bias weights for the convolution.
|
inlinenoexcept |
Get the dilation for a convolution.
|
inlinenoexcept |
Get the multi-dimension dilation of the convolution.
|
inlinenoexcept |
Get the HW kernel size of the convolution.
|
inlinenoexcept |
Get the multi-dimension kernel size of the convolution.
|
inlinenoexcept |
Get the kernel weights of the convolution.
|
inlinenoexcept |
Get the number of groups of the convolution.
|
inlinenoexcept |
Get the number of output maps for the convolution.
|
inlinenoexcept |
Get the padding of the convolution. If the padding is asymmetric, the pre-padding is returned.
|
inlinenoexcept |
|
inlinenoexcept |
Get the multi-dimension padding of the convolution.
If the padding is asymmetric, the pre-padding is returned.
|
inlinenoexcept |
Get the post-padding.
|
inlinenoexcept |
Get the pre-padding.
|
inlinenoexcept |
Get the stride of the convolution.
|
inlinenoexcept |
Get the multi-dimension stride of the convolution.
|
inlinenoexcept |
Set the bias weights for the convolution.
Bias is optional. To omit bias, set the count value of the weights structure to zero.
The bias is applied per-channel, so the number of weights (if non-zero) must be equal to the number of output feature maps.
|
inlinenoexcept |
Set the dilation for a convolution.
Default: (1,1)
If executing this layer on DLA, both height and width must be in the range [1,32].
|
inlinenoexcept |
Set the multi-dimension dilation of the convolution.
Default: (1, 1, ..., 1)
If executing this layer on DLA, only support 2D padding, both height and width must be in the range [1,32].
|
inlinenoexcept |
Append or replace an input of this layer with a specific tensor.
index | the index of the input to modify. |
tensor | the new input tensor |
The indices are as follows:
Input 0 is the input activation tensor. Input 1 is the kernel tensor. If used, the kernel weights parameter must be set to empty weights. Input 2 is the bias tensor. If used, the bias parameter must be set to empty weights.
|
inlinenoexcept |
Set the HW kernel size of the convolution.
If executing this layer on DLA, both height and width of kernel size must be in the range [1,32].
|
inlinenoexcept |
Set the multi-dimension kernel size of the convolution.
If executing this layer on DLA, only support 2D kernel size, both height and width of kernel size must be in the range [1,32].
|
inlinenoexcept |
Set the kernel weights for the convolution.
The weights are specified as a contiguous array in GKCRS
order, where G
is the number of groups, K
the number of output feature maps, C
the number of input channels, and R
and S
are the height and width of the filter.
|
inlinenoexcept |
Set the number of groups for a convolution.
The input tensor channels are divided into nbGroups
groups, and a convolution is executed for each group, using a filter per group. The results of the group convolutions are concatenated to form the output.
Default: 1
If executing this layer on DLA, the max number of groups is 8192.
|
inlinenoexcept |
Set the number of output maps for the convolution.
If executing this layer on DLA, the number of output maps must be in the range [1,8192].
|
inlinenoexcept |
Set the padding of the convolution.
The input will be zero-padded by this number of elements in the height and width directions. Padding is symmetric.
Default: (0,0)
If executing this layer on DLA, both height and width of padding must be in the range [0,31], and the padding size must be less than the kernel size.
|
inlinenoexcept |
Set the padding mode.
Padding mode takes precedence if both setPaddingMode and setPre/PostPadding are used.
Default: kEXPLICIT_ROUND_DOWN
|
inlinenoexcept |
Set the multi-dimension padding of the convolution.
The input will be zero-padded by this number of elements in each dimension. Padding is symmetric.
Default: (0, 0, ..., 0)
If executing this layer on DLA, only support 2D padding, both height and width of padding must be in the range [0,31], and the padding must be less than the kernel size.
|
inlinenoexcept |
Set the multi-dimension post-padding of the convolution.
The end of the input will be zero-padded by this number of elements in each dimension.
Default: (0, 0, ..., 0)
If executing this layer on DLA, only support 2D padding, both height and width of padding must be in the range [0,31], and the padding must be less than the kernel size.
|
inlinenoexcept |
Set the multi-dimension pre-padding of the convolution.
The start of the input will be zero-padded by this number of elements in each dimension.
Default: (0, 0, ..., 0)
If executing this layer on DLA, only support 2D padding, both height and width of padding must be in the range [0,31], and the padding must be less than the kernel size.
|
inlinenoexcept |
Get the stride of the convolution.
Default: (1,1)
If executing this layer on DLA, both height and width of stride must be in the range [1,8].
|
inlinenoexcept |
Set the multi-dimension stride of the convolution.
Default: (1, 1, ..., 1)
If executing this layer on DLA, only support 2D stride, both height and width of stride must be in the range [1,8].
|
protected |