pub struct FaceAnnotation {
Show 16 fields pub bounding_poly: Option<BoundingPoly>, pub fd_bounding_poly: Option<BoundingPoly>, pub landmarks: Vec<Landmark>, pub roll_angle: f32, pub pan_angle: f32, pub tilt_angle: f32, pub detection_confidence: f32, pub landmarking_confidence: f32, pub joy_likelihood: i32, pub sorrow_likelihood: i32, pub anger_likelihood: i32, pub surprise_likelihood: i32, pub under_exposed_likelihood: i32, pub blurred_likelihood: i32, pub headwear_likelihood: i32, pub recognition_result: Vec<FaceRecognitionResult>,
}
Expand description

A face annotation object contains the results of face detection.

Fields§

§bounding_poly: Option<BoundingPoly>

The bounding polygon around the face. The coordinates of the bounding box are in the original image’s scale. The bounding box is computed to “frame” the face in accordance with human expectations. It is based on the landmarker results. Note that one or more x and/or y coordinates may not be generated in the BoundingPoly (the polygon will be unbounded) if only a partial face appears in the image to be annotated.

§fd_bounding_poly: Option<BoundingPoly>

The fd_bounding_poly bounding polygon is tighter than the boundingPoly, and encloses only the skin part of the face. Typically, it is used to eliminate the face from any image analysis that detects the “amount of skin” visible in an image. It is not based on the landmarker results, only on the initial face detection, hence the fd (face detection) prefix.

§landmarks: Vec<Landmark>

Detected face landmarks.

§roll_angle: f32

Roll angle, which indicates the amount of clockwise/anti-clockwise rotation of the face relative to the image vertical about the axis perpendicular to the face. Range [-180,180].

§pan_angle: f32

Yaw angle, which indicates the leftward/rightward angle that the face is pointing relative to the vertical plane perpendicular to the image. Range [-180,180].

§tilt_angle: f32

Pitch angle, which indicates the upwards/downwards angle that the face is pointing relative to the image’s horizontal plane. Range [-180,180].

§detection_confidence: f32

Detection confidence. Range [0, 1].

§landmarking_confidence: f32

Face landmarking confidence. Range [0, 1].

§joy_likelihood: i32

Joy likelihood.

§sorrow_likelihood: i32

Sorrow likelihood.

§anger_likelihood: i32

Anger likelihood.

§surprise_likelihood: i32

Surprise likelihood.

§under_exposed_likelihood: i32

Under-exposed likelihood.

§blurred_likelihood: i32

Blurred likelihood.

§headwear_likelihood: i32

Headwear likelihood.

§recognition_result: Vec<FaceRecognitionResult>

Additional recognition information. Only computed if image_context.face_recognition_params is provided, and a match is found to a [Celebrity][google.cloud.vision.v1p4beta1.Celebrity] in the input [CelebritySet][google.cloud.vision.v1p4beta1.CelebritySet]. This field is sorted in order of decreasing confidence values.

Implementations§

source§

impl FaceAnnotation

source

pub fn joy_likelihood(&self) -> Likelihood

Returns the enum value of joy_likelihood, or the default if the field is set to an invalid enum value.

source

pub fn set_joy_likelihood(&mut self, value: Likelihood)

Sets joy_likelihood to the provided enum value.

source

pub fn sorrow_likelihood(&self) -> Likelihood

Returns the enum value of sorrow_likelihood, or the default if the field is set to an invalid enum value.

source

pub fn set_sorrow_likelihood(&mut self, value: Likelihood)

Sets sorrow_likelihood to the provided enum value.

source

pub fn anger_likelihood(&self) -> Likelihood

Returns the enum value of anger_likelihood, or the default if the field is set to an invalid enum value.

source

pub fn set_anger_likelihood(&mut self, value: Likelihood)

Sets anger_likelihood to the provided enum value.

source

pub fn surprise_likelihood(&self) -> Likelihood

Returns the enum value of surprise_likelihood, or the default if the field is set to an invalid enum value.

source

pub fn set_surprise_likelihood(&mut self, value: Likelihood)

Sets surprise_likelihood to the provided enum value.

source

pub fn under_exposed_likelihood(&self) -> Likelihood

Returns the enum value of under_exposed_likelihood, or the default if the field is set to an invalid enum value.

source

pub fn set_under_exposed_likelihood(&mut self, value: Likelihood)

Sets under_exposed_likelihood to the provided enum value.

source

pub fn blurred_likelihood(&self) -> Likelihood

Returns the enum value of blurred_likelihood, or the default if the field is set to an invalid enum value.

source

pub fn set_blurred_likelihood(&mut self, value: Likelihood)

Sets blurred_likelihood to the provided enum value.

source

pub fn headwear_likelihood(&self) -> Likelihood

Returns the enum value of headwear_likelihood, or the default if the field is set to an invalid enum value.

source

pub fn set_headwear_likelihood(&mut self, value: Likelihood)

Sets headwear_likelihood to the provided enum value.

Trait Implementations§

source§

impl Clone for FaceAnnotation

source§

fn clone(&self) -> FaceAnnotation

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for FaceAnnotation

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for FaceAnnotation

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl Message for FaceAnnotation

source§

fn encoded_len(&self) -> usize

Returns the encoded length of the message without a length delimiter.
source§

fn clear(&mut self)

Clears the message, resetting all fields to their default.
source§

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,

Encodes the message to a newly allocated buffer.
source§

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,

Encodes the message with a length-delimiter to a newly allocated buffer.
source§

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,

Decodes a length-delimited instance of the message from the buffer.
source§

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 more
source§

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 FaceAnnotation

source§

fn eq(&self, other: &FaceAnnotation) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for FaceAnnotation

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FromRef<T> for T
where T: Clone,

§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoRequest<T> for T

source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more