pub struct SamePadding {
pub asymmetry_mode: i32,
}Expand description
Specifies the type of padding to be used with Convolution/Deconvolution and pooling layers.
After padding, input spatial shape: \[H_in, W_in\], gets modified to the
output spatial shape \[H_out, W_out\].
With Convolution or pooling:
.. code::
H_out = int_division_round_up(H_in,stride\[0\])
W_out = int_division_round_up(W_in,stride\[1\])This is achieved by using the following padding amounts:
.. code::
totalPaddingHeight = max(0,(H_out-1) * stride\[0\] + KernelSize\[0\] - Hin)
totalPaddingWidth = max(0,(W_out-1) * stride\[1\] + KernelSize\[1\] - Win)There are two modes of asymmetry:
BOTTOM_RIGHT_HEAVY, and TOP_LEFT_HEAVY.
If the mode is BOTTOM_RIGHT_HEAVY:
.. code::
topPaddingAmount = floor(totalPaddingHeight / 2)
bottomPaddingAmount = totalPaddingHeight - topPaddingAmount
leftPaddingAmount = floor(totalPaddingWidth / 2)
rightPaddingAmount = totalPaddingWidth - leftPaddingAmountIf the mode is TOP_LEFT_HEAVY:
.. code::
bottomPaddingAmount = floor(totalPaddingHeight / 2)
topPaddingAmount = totalPaddingHeight - bottomPaddingAmount
rightPaddingAmount = floor(totalPaddingWidth / 2)
leftPaddingAmount = totalPaddingWidth - rightPaddingAmountWith Deconvolution:
.. code::
H_out = H_in * stride\[0\]
W_out = W_in * stride\[1\]Fields§
§asymmetry_mode: i32Implementations§
Source§impl SamePadding
impl SamePadding
Sourcepub fn asymmetry_mode(&self) -> SamePaddingMode
pub fn asymmetry_mode(&self) -> SamePaddingMode
Returns the enum value of asymmetry_mode, or the default if the field is set to an invalid enum value.
Sourcepub fn set_asymmetry_mode(&mut self, value: SamePaddingMode)
pub fn set_asymmetry_mode(&mut self, value: SamePaddingMode)
Sets asymmetry_mode to the provided enum value.
Trait Implementations§
Source§impl Clone for SamePadding
impl Clone for SamePadding
Source§fn clone(&self) -> SamePadding
fn clone(&self) -> SamePadding
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SamePadding
impl Debug for SamePadding
Source§impl Default for SamePadding
impl Default for SamePadding
Source§impl Hash for SamePadding
impl Hash for SamePadding
Source§impl Message for SamePadding
impl Message for SamePadding
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message to a buffer. Read more
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message to a newly allocated buffer.
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message with a length-delimiter to a buffer. Read more
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message with a length-delimiter to a newly allocated buffer.
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes an instance of the message from a buffer. Read more
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes a length-delimited instance of the message from the buffer.
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes an instance of the message from a buffer, and merges it into
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes a length-delimited instance of the message from buffer, and
merges it into
self.Source§impl PartialEq for SamePadding
impl PartialEq for SamePadding
Source§fn eq(&self, other: &SamePadding) -> bool
fn eq(&self, other: &SamePadding) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Copy for SamePadding
impl Eq for SamePadding
impl StructuralPartialEq for SamePadding
Auto Trait Implementations§
impl Freeze for SamePadding
impl RefUnwindSafe for SamePadding
impl Send for SamePadding
impl Sync for SamePadding
impl Unpin for SamePadding
impl UnsafeUnpin for SamePadding
impl UnwindSafe for SamePadding
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more