pub struct Gaussian3dRenderOutputAutodiff<AB>where
AB: AutodiffBackend,{
pub colors_rgb_2d: Tensor<AB, 3>,
pub positions_2d_grad_norm_ref: Tensor<AB, 1>,
pub radii: Tensor<<AB as AutodiffBackend>::InnerBackend, 1, Int>,
}
Expand description
3DGS rendering output (autodiff enabled).
Fields§
§colors_rgb_2d: Tensor<AB, 3>
2D Colors in RGB space.
The shape is [I_y, I_x, 3]
.
I_y
: Image height.I_x
: Image width.
It is the rendered image.
positions_2d_grad_norm_ref: Tensor<AB, 1>
Its gradient is the gradient norm of the 2D positions.
The gradient shape is [P]
.
P
: Point count.
§Usage
ⓘ
use burn::backend::autodiff::grads::Gradients;
let mut grads: Gradients = todo!();
let positions_2d_grad_norm =
positions_2d_grad_norm_ref.grad_remove(&mut grads);
radii: Tensor<<AB as AutodiffBackend>::InnerBackend, 1, Int>
Visible radii of 3D Gaussians.
The shape is [P]
.
P
: Point count.
Trait Implementations§
source§impl<AB> Clone for Gaussian3dRenderOutputAutodiff<AB>
impl<AB> Clone for Gaussian3dRenderOutputAutodiff<AB>
source§fn clone(&self) -> Gaussian3dRenderOutputAutodiff<AB>
fn clone(&self) -> Gaussian3dRenderOutputAutodiff<AB>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreAuto Trait Implementations§
impl<AB> Freeze for Gaussian3dRenderOutputAutodiff<AB>where
<<AB as AutodiffBackend>::InnerBackend as Backend>::IntTensorPrimitive: Freeze,
<AB as Backend>::FloatTensorPrimitive: Freeze,
<AB as Backend>::QuantizedTensorPrimitive: Freeze,
impl<AB> RefUnwindSafe for Gaussian3dRenderOutputAutodiff<AB>where
<<AB as AutodiffBackend>::InnerBackend as Backend>::IntTensorPrimitive: RefUnwindSafe,
<AB as Backend>::FloatTensorPrimitive: RefUnwindSafe,
<AB as Backend>::QuantizedTensorPrimitive: RefUnwindSafe,
impl<AB> Send for Gaussian3dRenderOutputAutodiff<AB>
impl<AB> Sync for Gaussian3dRenderOutputAutodiff<AB>
impl<AB> Unpin for Gaussian3dRenderOutputAutodiff<AB>where
<<AB as AutodiffBackend>::InnerBackend as Backend>::IntTensorPrimitive: Unpin,
<AB as Backend>::FloatTensorPrimitive: Unpin,
<AB as Backend>::QuantizedTensorPrimitive: Unpin,
impl<AB> UnwindSafe for Gaussian3dRenderOutputAutodiff<AB>where
<<AB as AutodiffBackend>::InnerBackend as Backend>::IntTensorPrimitive: UnwindSafe,
<AB as Backend>::FloatTensorPrimitive: UnwindSafe,
<AB as Backend>::QuantizedTensorPrimitive: UnwindSafe,
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more