Class that performs embedding extraction on images.
mp
.
tasks
.
vision
.
ImageEmbedder
(
graph_config
:
mp
.
calculators
.
core
.
constant_side_packet_calculator_pb2
.
mediapipe_dot_framework_dot_calculator__pb2
.
CalculatorGraphConfig
,
running_mode
:
mp
.
tasks
.
vision
.
RunningMode
,
packet_callback
:
Optional
[
Callable
[[
Mapping
[
str
,
packet_module
.
Packet
]],
None
]]
=
None
)
->
None
The API expects a TFLite model with optional, but strongly recommended, TFLite Model Metadata.
Input tensor
- image input of size
[batch x height x width x channels]. - batch inference is not supported (
batchis required to be 1). - only RGB inputs are supported (
channelsis required to be 3). - if type is kTfLiteFloat32, NormalizationOptions are required to be attached to the metadata for input normalization.
At least one output tensor with: (kTfLiteUInt8/kTfLiteFloat32)
-
Ncomponents corresponding to theNdimensions of the returned feature vector for this output layer. - Either 2 or 4 dimensions, i.e.
[1 x N]or[1 x 1 x 1 x N].
Methods
close
close
()
->
None
Shuts down the mediapipe vision task instance.
RuntimeError
convert_to_normalized_rect
convert_to_normalized_rect
(
options
:
mp
.
tasks
.
vision
.
holistic_landmarker
.
image_processing_options_module
.
ImageProcessingOptions
,
image
:
mp
.
Image
,
roi_allowed
:
bool
=
True
)
->
mp
.
tasks
.
components
.
containers
.
NormalizedRect
Converts from ImageProcessingOptions to NormalizedRect, performing sanity checks on-the-fly.
If the input ImageProcessingOptions is not present, returns a default NormalizedRect covering the whole image with rotation set to 0. If 'roi_allowed' is false, an error will be returned if the input ImageProcessingOptions has its 'region_of_interest' field set.
options
image
roi_allowed
region_of_interest
field is allowed to be
set. By default, it's set to True.
cosine_similarity
@classmethodcosine_similarity ( u :mp . tasks . components . containers . Embedding, v :mp . tasks . components . containers . Embedding) -> float
Utility function to compute cosine similarity between two embedding entries.
May return an InvalidArgumentError if e.g. the feature vectors are of different types (quantized vs. float), have different sizes, or have an L2-norm of 0.
u
v
ValueError
create_from_model_path
@classmethodcreate_from_model_path ( model_path : str ) -> 'ImageEmbedder'
Creates an ImageEmbedder
object from a TensorFlow Lite model and the default ImageEmbedderOptions
.
Note that the created ImageEmbedder
instance is in image mode, for
embedding image on single image inputs.
model_path
ImageEmbedder
object that's created from the model file and the default ImageEmbedderOptions
.
ValueError
ImageEmbedder
object from the provided
file such as invalid file path.RuntimeError
create_from_options
@classmethodcreate_from_options ( options :mp . tasks . vision . ImageEmbedderOptions) -> 'ImageEmbedder'
Creates the ImageEmbedder
object from image embedder options.
options
ImageEmbedder
object that's created from options
.
ValueError
ImageEmbedder
object from ImageEmbedderOptions
such as missing the model.RuntimeError
embed
embed
(
image
:
mp
.
Image
,
image_processing_options
:
Optional
[
mp
.
tasks
.
vision
.
holistic_landmarker
.
image_processing_options_module
.
ImageProcessingOptions
]
=
None
)
->
mp
.
tasks
.
audio
.
AudioEmbedderResult
Performs image embedding extraction on the provided MediaPipe Image.
Extraction is performed on the region of interest specified by the roi
argument if provided, or on the entire image otherwise.
image
image_processing_options
ValueError
RuntimeError
embed_async
embed_async
(
image
:
mp
.
Image
,
timestamp_ms
:
int
,
image_processing_options
:
Optional
[
mp
.
tasks
.
vision
.
holistic_landmarker
.
image_processing_options_module
.
ImageProcessingOptions
]
=
None
)
->
None
Sends live image data to embedder.
The results will be available via the "result_callback" provided in the
ImageEmbedderOptions. Embedding extraction is performed on the region of
interested specified by the roi
argument if provided, or on the entire
image otherwise.
Only use this method when the ImageEmbedder is created with the live
stream running mode. The input timestamps should be monotonically increasing
for adjacent calls of this method. This method will return immediately after
the input image is accepted. The results will be available via the result_callback
provided in the ImageEmbedderOptions
. The embed_async
method is designed to process live stream data such as
camera input. To lower the overall latency, image embedder may drop the
input images if needed. In other words, it's not guaranteed to have output
per input image.
The result_callback
provides:
- An embedding result object that contains a list of embeddings.
- The input image that the image embedder runs on.
- The input timestamp in milliseconds.
image
timestamp_ms
image_processing_options
ValueError
embed_for_video
embed_for_video
(
image
:
mp
.
Image
,
timestamp_ms
:
int
,
image_processing_options
:
Optional
[
mp
.
tasks
.
vision
.
holistic_landmarker
.
image_processing_options_module
.
ImageProcessingOptions
]
=
None
)
->
mp
.
tasks
.
audio
.
AudioEmbedderResult
Performs image embedding extraction on the provided video frames.
Extraction is performed on the region of interested specified by the roi
argument if provided, or on the entire image otherwise.
Only use this method when the ImageEmbedder is created with the video running mode. It's required to provide the video frame's timestamp (in milliseconds) along with the video frame. The input timestamps should be monotonically increasing for adjacent calls of this method.
image
timestamp_ms
image_processing_options
ValueError
RuntimeError
get_graph_config
get_graph_config
()
->
mp
.
calculators
.
core
.
constant_side_packet_calculator_pb2
.
mediapipe_dot_framework_dot_calculator__pb2
.
CalculatorGraphConfig
Returns the canonicalized CalculatorGraphConfig of the underlying graph.
__enter__
__enter__
()
Return self
upon entering the runtime context.
__exit__
__exit__
(
unused_exc_type
,
unused_exc_value
,
unused_traceback
)
Shuts down the mediapipe vision task instance on exit of the context manager.
RuntimeError


