pub struct GLProcessorThreaded { /* private fields */ }Expand description
OpenGL multi-threaded image converter. The actual conversion is done in a
separate rendering thread, as OpenGL contexts are not thread-safe. This can
be safely sent between threads. The convert() call sends the conversion
request to the rendering thread and waits for the result.
Implementations§
Source§impl GLProcessorThreaded
impl GLProcessorThreaded
Sourcepub fn set_int8_interpolation_mode(
&mut self,
mode: Int8InterpolationMode,
) -> Result<(), Error>
pub fn set_int8_interpolation_mode( &mut self, mode: Int8InterpolationMode, ) -> Result<(), Error>
Sets the interpolation mode for int8 proto textures.
Sourcepub fn decode_masks_atlas(
&mut self,
detect: &[DetectBox],
proto_data: ProtoData,
output_width: usize,
output_height: usize,
) -> Result<(Vec<u8>, Vec<MaskRegion>), Error>
pub fn decode_masks_atlas( &mut self, detect: &[DetectBox], proto_data: ProtoData, output_width: usize, output_height: usize, ) -> Result<(Vec<u8>, Vec<MaskRegion>), Error>
Decode all detection masks into a compact atlas via the GL thread.
Returns (atlas_pixels, regions) where atlas_pixels is a contiguous
Vec<u8> of shape [atlas_h, output_width] (compact, bbox-sized strips)
and regions describes each detection’s location within the atlas.
Sourcepub fn create_pbo_image(
&self,
width: usize,
height: usize,
format: PixelFormat,
) -> Result<Tensor<u8>, Error>
pub fn create_pbo_image( &self, width: usize, height: usize, format: PixelFormat, ) -> Result<Tensor<u8>, Error>
Create a PBO-backed [Tensor<u8>] image on the GL thread.
Trait Implementations§
Source§impl Debug for GLProcessorThreaded
impl Debug for GLProcessorThreaded
Source§impl Drop for GLProcessorThreaded
impl Drop for GLProcessorThreaded
Source§impl ImageProcessorTrait for GLProcessorThreaded
impl ImageProcessorTrait for GLProcessorThreaded
Source§fn convert(
&mut self,
src: &TensorDyn,
dst: &mut TensorDyn,
rotation: Rotation,
flip: Flip,
crop: Crop,
) -> Result<()>
fn convert( &mut self, src: &TensorDyn, dst: &mut TensorDyn, rotation: Rotation, flip: Flip, crop: Crop, ) -> Result<()>
Converts the source image to the destination image format and size. The
image is cropped first, then flipped, then rotated Read more
Source§fn draw_masks(
&mut self,
dst: &mut TensorDyn,
detect: &[DetectBox],
segmentation: &[Segmentation],
) -> Result<()>
fn draw_masks( &mut self, dst: &mut TensorDyn, detect: &[DetectBox], segmentation: &[Segmentation], ) -> Result<()>
Draw pre-decoded detection boxes and segmentation masks onto
dst. Read moreSource§fn draw_masks_proto(
&mut self,
dst: &mut TensorDyn,
detect: &[DetectBox],
proto_data: &ProtoData,
) -> Result<()>
fn draw_masks_proto( &mut self, dst: &mut TensorDyn, detect: &[DetectBox], proto_data: &ProtoData, ) -> Result<()>
Draw masks from proto data onto image (fused decode+draw). Read more
impl Send for GLProcessorThreaded
impl Sync for GLProcessorThreaded
Auto Trait Implementations§
impl Freeze for GLProcessorThreaded
impl !RefUnwindSafe for GLProcessorThreaded
impl Unpin for GLProcessorThreaded
impl UnsafeUnpin for GLProcessorThreaded
impl !UnwindSafe for GLProcessorThreaded
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> 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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.