Update EmbeddingResult format and dependent tasks.
PiperOrigin-RevId: 486186491
This commit is contained in:
committed by
Copybara-Service
parent
66e591d4bc
commit
5e1a2fcdbb
@@ -34,3 +34,18 @@ mediapipe_proto_library(
|
||||
"//mediapipe/tasks/cc/components/calculators:score_calibration_calculator_proto",
|
||||
],
|
||||
)
|
||||
|
||||
mediapipe_proto_library(
|
||||
name = "embedder_options_proto",
|
||||
srcs = ["embedder_options.proto"],
|
||||
)
|
||||
|
||||
mediapipe_proto_library(
|
||||
name = "embedding_postprocessing_graph_options_proto",
|
||||
srcs = ["embedding_postprocessing_graph_options.proto"],
|
||||
deps = [
|
||||
"//mediapipe/framework:calculator_options_proto",
|
||||
"//mediapipe/framework:calculator_proto",
|
||||
"//mediapipe/tasks/cc/components/calculators:tensors_to_embeddings_calculator_proto",
|
||||
],
|
||||
)
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
/* Copyright 2022 The MediaPipe Authors. All Rights Reserved.
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
==============================================================================*/
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package mediapipe.tasks.components.processors.proto;
|
||||
|
||||
option java_package = "com.google.mediapipe.tasks.components.processors.proto";
|
||||
option java_outer_classname = "EmbedderOptionsProto";
|
||||
|
||||
// Shared options used by all embedding extraction tasks.
|
||||
message EmbedderOptions {
|
||||
// Whether to normalize the returned feature vector with L2 norm. Use this
|
||||
// option only if the model does not already contain a native L2_NORMALIZATION
|
||||
// TF Lite Op. In most cases, this is already the case and L2 norm is thus
|
||||
// achieved through TF Lite inference.
|
||||
optional bool l2_normalize = 1;
|
||||
|
||||
// Whether the returned embedding should be quantized to bytes via scalar
|
||||
// quantization. Embeddings are implicitly assumed to be unit-norm and
|
||||
// therefore any dimension is guaranteed to have a value in [-1.0, 1.0]. Use
|
||||
// the l2_normalize option if this is not the case.
|
||||
optional bool quantize = 2;
|
||||
}
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
/* Copyright 2022 The MediaPipe Authors. All Rights Reserved.
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
==============================================================================*/
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package mediapipe.tasks.components.processors.proto;
|
||||
|
||||
import "mediapipe/framework/calculator.proto";
|
||||
import "mediapipe/tasks/cc/components/calculators/tensors_to_embeddings_calculator.proto";
|
||||
|
||||
message EmbeddingPostprocessingGraphOptions {
|
||||
extend mediapipe.CalculatorOptions {
|
||||
optional EmbeddingPostprocessingGraphOptions ext = 476346926;
|
||||
}
|
||||
|
||||
// Options for the TensorsToEmbeddings calculator encapsulated by the
|
||||
// EmbeddingPostprocessingGraph.
|
||||
optional mediapipe.TensorsToEmbeddingsCalculatorOptions
|
||||
tensors_to_embeddings_options = 1;
|
||||
|
||||
// Whether output tensors are quantized (kTfLiteUint8) or not (kFloat32).
|
||||
optional bool has_quantized_outputs = 2;
|
||||
|
||||
// TODO: add options to control whether timestamp aggregation
|
||||
// should be used or not.
|
||||
}
|
||||
Reference in New Issue
Block a user