Merge branch 'master' into ios-task-files
This commit is contained in:
commit
c61f0a457f
|
@ -567,7 +567,7 @@ cc_library(
|
|||
name = "packet_thinner_calculator",
|
||||
srcs = ["packet_thinner_calculator.cc"],
|
||||
deps = [
|
||||
"//mediapipe/calculators/core:packet_thinner_calculator_cc_proto",
|
||||
":packet_thinner_calculator_cc_proto",
|
||||
"//mediapipe/framework:calculator_context",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
"//mediapipe/framework/formats:video_stream_header",
|
||||
|
@ -584,7 +584,7 @@ cc_test(
|
|||
srcs = ["packet_thinner_calculator_test.cc"],
|
||||
deps = [
|
||||
":packet_thinner_calculator",
|
||||
"//mediapipe/calculators/core:packet_thinner_calculator_cc_proto",
|
||||
":packet_thinner_calculator_cc_proto",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
"//mediapipe/framework:calculator_runner",
|
||||
"//mediapipe/framework/formats:video_stream_header",
|
||||
|
@ -762,7 +762,7 @@ cc_library(
|
|||
srcs = ["packet_resampler_calculator.cc"],
|
||||
hdrs = ["packet_resampler_calculator.h"],
|
||||
deps = [
|
||||
"//mediapipe/calculators/core:packet_resampler_calculator_cc_proto",
|
||||
":packet_resampler_calculator_cc_proto",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
"//mediapipe/framework:collection_item_id",
|
||||
"//mediapipe/framework/deps:mathutil",
|
||||
|
@ -786,7 +786,7 @@ cc_test(
|
|||
],
|
||||
deps = [
|
||||
":packet_resampler_calculator",
|
||||
"//mediapipe/calculators/core:packet_resampler_calculator_cc_proto",
|
||||
":packet_resampler_calculator_cc_proto",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
"//mediapipe/framework:calculator_runner",
|
||||
"//mediapipe/framework/formats:video_stream_header",
|
||||
|
@ -852,10 +852,10 @@ cc_test(
|
|||
name = "flow_limiter_calculator_test",
|
||||
srcs = ["flow_limiter_calculator_test.cc"],
|
||||
deps = [
|
||||
":counting_source_calculator",
|
||||
":flow_limiter_calculator",
|
||||
":flow_limiter_calculator_cc_proto",
|
||||
"//mediapipe/calculators/core:counting_source_calculator",
|
||||
"//mediapipe/calculators/core:pass_through_calculator",
|
||||
":pass_through_calculator",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
"//mediapipe/framework:calculator_runner",
|
||||
"//mediapipe/framework:test_calculators",
|
||||
|
@ -1302,7 +1302,7 @@ cc_test(
|
|||
srcs = ["packet_sequencer_calculator_test.cc"],
|
||||
deps = [
|
||||
":packet_sequencer_calculator",
|
||||
"//mediapipe/calculators/core:pass_through_calculator",
|
||||
":pass_through_calculator",
|
||||
"//mediapipe/framework:calculator_cc_proto",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
"//mediapipe/framework:subgraph",
|
||||
|
|
|
@ -76,7 +76,11 @@ constexpr char kMaxInFlightTag[] = "MAX_IN_FLIGHT";
|
|||
// }
|
||||
// output_stream: "gated_frames"
|
||||
// }
|
||||
class RealTimeFlowLimiterCalculator : public CalculatorBase {
|
||||
//
|
||||
// Please use FlowLimiterCalculator, which replaces this calculator and
|
||||
// defines a few additional configuration options.
|
||||
class ABSL_DEPRECATED("Use FlowLimiterCalculator instead.")
|
||||
RealTimeFlowLimiterCalculator : public CalculatorBase {
|
||||
public:
|
||||
static absl::Status GetContract(CalculatorContract* cc) {
|
||||
int num_data_streams = cc->Inputs().NumEntries("");
|
||||
|
|
|
@ -66,12 +66,16 @@ class SequenceShiftCalculator : public Node {
|
|||
// The number of packets or timestamps we need to store to output packet[i] at
|
||||
// the timestamp of packet[i + packet_offset]; equal to abs(packet_offset).
|
||||
int cache_size_;
|
||||
bool emit_empty_packets_before_first_packet_ = false;
|
||||
};
|
||||
MEDIAPIPE_REGISTER_NODE(SequenceShiftCalculator);
|
||||
|
||||
absl::Status SequenceShiftCalculator::Open(CalculatorContext* cc) {
|
||||
packet_offset_ = kOffset(cc).GetOr(
|
||||
cc->Options<mediapipe::SequenceShiftCalculatorOptions>().packet_offset());
|
||||
emit_empty_packets_before_first_packet_ =
|
||||
cc->Options<mediapipe::SequenceShiftCalculatorOptions>()
|
||||
.emit_empty_packets_before_first_packet();
|
||||
cache_size_ = abs(packet_offset_);
|
||||
// An offset of zero is a no-op, but someone might still request it.
|
||||
if (packet_offset_ == 0) {
|
||||
|
@ -96,6 +100,8 @@ void SequenceShiftCalculator::ProcessPositiveOffset(CalculatorContext* cc) {
|
|||
// Ready to output oldest packet with current timestamp.
|
||||
kOut(cc).Send(packet_cache_.front().At(cc->InputTimestamp()));
|
||||
packet_cache_.pop_front();
|
||||
} else if (emit_empty_packets_before_first_packet_) {
|
||||
LOG(FATAL) << "Not supported yet";
|
||||
}
|
||||
// Store current packet for later output.
|
||||
packet_cache_.push_back(kIn(cc).packet());
|
||||
|
|
|
@ -23,4 +23,8 @@ message SequenceShiftCalculatorOptions {
|
|||
optional SequenceShiftCalculatorOptions ext = 107633927;
|
||||
}
|
||||
optional int32 packet_offset = 1 [default = -1];
|
||||
|
||||
// Emits empty packets before the first delayed packet is emitted. Takes
|
||||
// effect only when packet offset is set to positive.
|
||||
optional bool emit_empty_packets_before_first_packet = 2 [default = false];
|
||||
}
|
||||
|
|
|
@ -378,8 +378,8 @@ cc_library(
|
|||
name = "scale_image_calculator",
|
||||
srcs = ["scale_image_calculator.cc"],
|
||||
deps = [
|
||||
":scale_image_calculator_cc_proto",
|
||||
":scale_image_utils",
|
||||
"//mediapipe/calculators/image:scale_image_calculator_cc_proto",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
"//mediapipe/framework/formats:image_format_cc_proto",
|
||||
"//mediapipe/framework/formats:image_frame",
|
||||
|
@ -747,8 +747,8 @@ cc_test(
|
|||
tags = ["desktop_only_test"],
|
||||
deps = [
|
||||
":affine_transformation",
|
||||
":image_transformation_calculator",
|
||||
":warp_affine_calculator",
|
||||
"//mediapipe/calculators/image:image_transformation_calculator",
|
||||
"//mediapipe/calculators/tensor:image_to_tensor_converter",
|
||||
"//mediapipe/calculators/tensor:image_to_tensor_utils",
|
||||
"//mediapipe/calculators/util:from_image_calculator",
|
||||
|
|
|
@ -92,8 +92,8 @@ class GlTextureWarpAffineRunner
|
|||
|
||||
constexpr GLchar kVertShader[] = R"(
|
||||
in vec4 position;
|
||||
in mediump vec4 texture_coordinate;
|
||||
out mediump vec2 sample_coordinate;
|
||||
in highp vec4 texture_coordinate;
|
||||
out highp vec2 sample_coordinate;
|
||||
uniform mat4 transform_matrix;
|
||||
|
||||
void main() {
|
||||
|
@ -104,7 +104,7 @@ class GlTextureWarpAffineRunner
|
|||
)";
|
||||
|
||||
constexpr GLchar kFragShader[] = R"(
|
||||
DEFAULT_PRECISION(mediump, float)
|
||||
DEFAULT_PRECISION(highp, float)
|
||||
in vec2 sample_coordinate;
|
||||
uniform sampler2D input_texture;
|
||||
|
||||
|
|
|
@ -68,8 +68,8 @@ class GlProcessor : public ImageToTensorConverter {
|
|||
|
||||
constexpr GLchar kExtractSubRectVertexShader[] = R"(
|
||||
in vec4 position;
|
||||
in mediump vec4 texture_coordinate;
|
||||
out mediump vec2 sample_coordinate;
|
||||
in highp vec4 texture_coordinate;
|
||||
out highp vec2 sample_coordinate;
|
||||
uniform mat4 transform_matrix;
|
||||
|
||||
void main() {
|
||||
|
@ -86,7 +86,7 @@ class GlProcessor : public ImageToTensorConverter {
|
|||
)";
|
||||
|
||||
constexpr GLchar kExtractSubRectFragBody[] = R"(
|
||||
DEFAULT_PRECISION(mediump, float)
|
||||
DEFAULT_PRECISION(highp, float)
|
||||
|
||||
// Provided by kExtractSubRectVertexShader.
|
||||
in vec2 sample_coordinate;
|
||||
|
|
|
@ -22,8 +22,8 @@ cc_library(
|
|||
name = "alignment_points_to_rects_calculator",
|
||||
srcs = ["alignment_points_to_rects_calculator.cc"],
|
||||
deps = [
|
||||
":detections_to_rects_calculator",
|
||||
":detections_to_rects_calculator_cc_proto",
|
||||
"//mediapipe/calculators/util:detections_to_rects_calculator",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
"//mediapipe/framework:calculator_options_cc_proto",
|
||||
"//mediapipe/framework/formats:detection_cc_proto",
|
||||
|
|
|
@ -226,13 +226,13 @@ cc_library(
|
|||
":mediapipe_internal",
|
||||
],
|
||||
deps = [
|
||||
":calculator_cc_proto",
|
||||
":graph_service",
|
||||
":mediapipe_options_cc_proto",
|
||||
":packet_generator_cc_proto",
|
||||
":packet_type",
|
||||
":port",
|
||||
"//mediapipe/framework:calculator_cc_proto",
|
||||
"//mediapipe/framework:mediapipe_options_cc_proto",
|
||||
"//mediapipe/framework:packet_generator_cc_proto",
|
||||
"//mediapipe/framework:status_handler_cc_proto",
|
||||
":status_handler_cc_proto",
|
||||
"//mediapipe/framework/port:any_proto",
|
||||
"//mediapipe/framework/port:status",
|
||||
"//mediapipe/framework/tool:options_map",
|
||||
|
@ -328,10 +328,10 @@ cc_library(
|
|||
":thread_pool_executor",
|
||||
":timestamp",
|
||||
":validated_graph_config",
|
||||
"//mediapipe/framework:calculator_cc_proto",
|
||||
"//mediapipe/framework:packet_generator_cc_proto",
|
||||
"//mediapipe/framework:status_handler_cc_proto",
|
||||
"//mediapipe/framework:thread_pool_executor_cc_proto",
|
||||
":calculator_cc_proto",
|
||||
":packet_generator_cc_proto",
|
||||
":status_handler_cc_proto",
|
||||
":thread_pool_executor_cc_proto",
|
||||
"@com_google_absl//absl/base:core_headers",
|
||||
"@com_google_absl//absl/container:fixed_array",
|
||||
"@com_google_absl//absl/container:flat_hash_map",
|
||||
|
@ -369,7 +369,7 @@ cc_library(
|
|||
visibility = [":mediapipe_internal"],
|
||||
deps = [
|
||||
":graph_service",
|
||||
"//mediapipe/framework:packet",
|
||||
":packet",
|
||||
"@com_google_absl//absl/status",
|
||||
],
|
||||
)
|
||||
|
@ -379,7 +379,7 @@ cc_test(
|
|||
srcs = ["graph_service_manager_test.cc"],
|
||||
deps = [
|
||||
":graph_service_manager",
|
||||
"//mediapipe/framework:packet",
|
||||
":packet",
|
||||
"//mediapipe/framework/port:gtest_main",
|
||||
],
|
||||
)
|
||||
|
@ -391,6 +391,7 @@ cc_library(
|
|||
visibility = [":mediapipe_internal"],
|
||||
deps = [
|
||||
":calculator_base",
|
||||
":calculator_cc_proto",
|
||||
":calculator_context",
|
||||
":calculator_context_manager",
|
||||
":calculator_state",
|
||||
|
@ -407,10 +408,9 @@ cc_library(
|
|||
":packet_set",
|
||||
":packet_type",
|
||||
":port",
|
||||
":stream_handler_cc_proto",
|
||||
":timestamp",
|
||||
":validated_graph_config",
|
||||
"//mediapipe/framework:calculator_cc_proto",
|
||||
"//mediapipe/framework:stream_handler_cc_proto",
|
||||
"//mediapipe/framework/port:core_proto",
|
||||
"//mediapipe/framework/port:integral_types",
|
||||
"//mediapipe/framework/port:logging",
|
||||
|
@ -466,6 +466,7 @@ cc_library(
|
|||
hdrs = ["calculator_state.h"],
|
||||
visibility = [":mediapipe_internal"],
|
||||
deps = [
|
||||
":calculator_cc_proto",
|
||||
":counter",
|
||||
":counter_factory",
|
||||
":graph_service",
|
||||
|
@ -475,7 +476,6 @@ cc_library(
|
|||
":packet",
|
||||
":packet_set",
|
||||
":port",
|
||||
"//mediapipe/framework:calculator_cc_proto",
|
||||
"//mediapipe/framework/port:any_proto",
|
||||
"//mediapipe/framework/port:logging",
|
||||
"//mediapipe/framework/tool:options_map",
|
||||
|
@ -583,7 +583,7 @@ cc_library(
|
|||
hdrs = ["executor.h"],
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
"//mediapipe/framework:mediapipe_options_cc_proto",
|
||||
":mediapipe_options_cc_proto",
|
||||
"//mediapipe/framework/deps:registration",
|
||||
"//mediapipe/framework/port:status",
|
||||
"//mediapipe/framework/port:statusor",
|
||||
|
@ -670,11 +670,11 @@ cc_library(
|
|||
":collection_item_id",
|
||||
":input_stream_manager",
|
||||
":input_stream_shard",
|
||||
":mediapipe_options_cc_proto",
|
||||
":mediapipe_profiling",
|
||||
":packet",
|
||||
":packet_set",
|
||||
":packet_type",
|
||||
"//mediapipe/framework:mediapipe_options_cc_proto",
|
||||
"//mediapipe/framework/deps:registration",
|
||||
"//mediapipe/framework/port:ret_check",
|
||||
"//mediapipe/framework/port:status",
|
||||
|
@ -784,12 +784,12 @@ cc_library(
|
|||
":calculator_context_manager",
|
||||
":collection",
|
||||
":collection_item_id",
|
||||
":mediapipe_options_cc_proto",
|
||||
":output_stream_manager",
|
||||
":output_stream_shard",
|
||||
":packet_set",
|
||||
":packet_type",
|
||||
":timestamp",
|
||||
"//mediapipe/framework:mediapipe_options_cc_proto",
|
||||
"//mediapipe/framework/deps:registration",
|
||||
"//mediapipe/framework/port:logging",
|
||||
"//mediapipe/framework/port:status",
|
||||
|
@ -875,10 +875,10 @@ cc_library(
|
|||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
":packet",
|
||||
":packet_generator_cc_proto",
|
||||
":packet_set",
|
||||
":packet_type",
|
||||
":port",
|
||||
"//mediapipe/framework:packet_generator_cc_proto",
|
||||
"//mediapipe/framework/deps:registration",
|
||||
"//mediapipe/framework/port:core_proto",
|
||||
"//mediapipe/framework/port:status",
|
||||
|
@ -896,13 +896,13 @@ cc_library(
|
|||
":delegating_executor",
|
||||
":executor",
|
||||
":packet",
|
||||
":packet_factory_cc_proto",
|
||||
":packet_generator",
|
||||
":packet_generator_cc_proto",
|
||||
":packet_type",
|
||||
":port",
|
||||
":thread_pool_executor",
|
||||
":validated_graph_config",
|
||||
"//mediapipe/framework:packet_factory_cc_proto",
|
||||
"//mediapipe/framework:packet_generator_cc_proto",
|
||||
"//mediapipe/framework/port:core_proto",
|
||||
"//mediapipe/framework/port:logging",
|
||||
"//mediapipe/framework/port:ret_check",
|
||||
|
@ -1019,10 +1019,10 @@ cc_library(
|
|||
hdrs = ["status_handler.h"],
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
":mediapipe_options_cc_proto",
|
||||
":packet_set",
|
||||
":packet_type",
|
||||
":port",
|
||||
"//mediapipe/framework:mediapipe_options_cc_proto",
|
||||
"//mediapipe/framework/deps:registration",
|
||||
"//mediapipe/framework/port:status",
|
||||
"@com_google_absl//absl/memory",
|
||||
|
@ -1035,10 +1035,10 @@ cc_library(
|
|||
hdrs = ["subgraph.h"],
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
":calculator_cc_proto",
|
||||
":graph_service",
|
||||
":graph_service_manager",
|
||||
":port",
|
||||
"//mediapipe/framework:calculator_cc_proto",
|
||||
"//mediapipe/framework/deps:registration",
|
||||
"//mediapipe/framework/port:ret_check",
|
||||
"//mediapipe/framework/port:status",
|
||||
|
@ -1060,7 +1060,7 @@ cc_library(
|
|||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
":calculator_framework",
|
||||
"//mediapipe/framework:test_calculators_cc_proto",
|
||||
":test_calculators_cc_proto",
|
||||
"//mediapipe/framework/deps:mathutil",
|
||||
"//mediapipe/framework/formats:matrix",
|
||||
"//mediapipe/framework/port:integral_types",
|
||||
|
@ -1097,7 +1097,7 @@ cc_library(
|
|||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
":executor",
|
||||
"//mediapipe/framework:thread_pool_executor_cc_proto",
|
||||
":thread_pool_executor_cc_proto",
|
||||
"//mediapipe/framework/deps:thread_options",
|
||||
"//mediapipe/framework/port:logging",
|
||||
"//mediapipe/framework/port:status",
|
||||
|
@ -1162,22 +1162,22 @@ cc_library(
|
|||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
":calculator_base",
|
||||
":calculator_cc_proto",
|
||||
":calculator_contract",
|
||||
":graph_service_manager",
|
||||
":legacy_calculator_support",
|
||||
":packet",
|
||||
":packet_generator",
|
||||
":packet_generator_cc_proto",
|
||||
":packet_set",
|
||||
":packet_type",
|
||||
":port",
|
||||
":status_handler",
|
||||
":status_handler_cc_proto",
|
||||
":stream_handler_cc_proto",
|
||||
":subgraph",
|
||||
":thread_pool_executor_cc_proto",
|
||||
":timestamp",
|
||||
"//mediapipe/framework:calculator_cc_proto",
|
||||
"//mediapipe/framework:packet_generator_cc_proto",
|
||||
"//mediapipe/framework:status_handler_cc_proto",
|
||||
"//mediapipe/framework:stream_handler_cc_proto",
|
||||
"//mediapipe/framework:thread_pool_executor_cc_proto",
|
||||
"//mediapipe/framework/port:core_proto",
|
||||
"//mediapipe/framework/port:integral_types",
|
||||
"//mediapipe/framework/port:logging",
|
||||
|
@ -1202,11 +1202,11 @@ cc_test(
|
|||
name = "validated_graph_config_test",
|
||||
srcs = ["validated_graph_config_test.cc"],
|
||||
deps = [
|
||||
":calculator_cc_proto",
|
||||
":calculator_framework",
|
||||
":graph_service",
|
||||
":graph_service_manager",
|
||||
":validated_graph_config",
|
||||
"//mediapipe/framework:calculator_cc_proto",
|
||||
"//mediapipe/framework/api2:node",
|
||||
"//mediapipe/framework/api2:port",
|
||||
"//mediapipe/framework/port:gtest_main",
|
||||
|
@ -1233,6 +1233,7 @@ cc_test(
|
|||
linkstatic = 1,
|
||||
deps = [
|
||||
":calculator_base",
|
||||
":calculator_cc_proto",
|
||||
":calculator_context",
|
||||
":calculator_context_manager",
|
||||
":calculator_registry",
|
||||
|
@ -1242,7 +1243,6 @@ cc_test(
|
|||
":output_stream_shard",
|
||||
":packet_set",
|
||||
":packet_type",
|
||||
"//mediapipe/framework:calculator_cc_proto",
|
||||
"//mediapipe/framework/port:gtest_main",
|
||||
"//mediapipe/framework/port:status",
|
||||
"//mediapipe/framework/tool:status_util",
|
||||
|
@ -1256,11 +1256,11 @@ cc_test(
|
|||
srcs = ["calculator_contract_test.cc"],
|
||||
linkstatic = 1,
|
||||
deps = [
|
||||
":calculator_cc_proto",
|
||||
":calculator_contract",
|
||||
":calculator_contract_test_cc_proto",
|
||||
"//mediapipe/framework:calculator_cc_proto",
|
||||
"//mediapipe/framework:packet_generator_cc_proto",
|
||||
"//mediapipe/framework:status_handler_cc_proto",
|
||||
":packet_generator_cc_proto",
|
||||
":status_handler_cc_proto",
|
||||
"//mediapipe/framework/port:gtest_main",
|
||||
"//mediapipe/framework/port:parse_text_proto",
|
||||
],
|
||||
|
@ -1368,6 +1368,7 @@ cc_test(
|
|||
srcs = ["calculator_context_test.cc"],
|
||||
linkstatic = 1,
|
||||
deps = [
|
||||
":calculator_cc_proto",
|
||||
":calculator_context",
|
||||
":calculator_context_manager",
|
||||
":calculator_state",
|
||||
|
@ -1376,7 +1377,6 @@ cc_test(
|
|||
":output_stream_shard",
|
||||
":packet_set",
|
||||
":packet_type",
|
||||
"//mediapipe/framework:calculator_cc_proto",
|
||||
"//mediapipe/framework/port:gtest_main",
|
||||
"//mediapipe/framework/port:parse_text_proto",
|
||||
"//mediapipe/framework/port:status",
|
||||
|
@ -1403,6 +1403,7 @@ cc_test(
|
|||
":executor",
|
||||
":input_stream_handler",
|
||||
":lifetime_tracker",
|
||||
":mediapipe_options_cc_proto",
|
||||
":output_stream_poller",
|
||||
":packet_set",
|
||||
":packet_type",
|
||||
|
@ -1410,13 +1411,12 @@ cc_test(
|
|||
":subgraph",
|
||||
":test_calculators",
|
||||
":thread_pool_executor",
|
||||
":thread_pool_executor_cc_proto",
|
||||
":timestamp",
|
||||
":type_map",
|
||||
"//mediapipe/calculators/core:counting_source_calculator",
|
||||
"//mediapipe/calculators/core:mux_calculator",
|
||||
"//mediapipe/calculators/core:pass_through_calculator",
|
||||
"//mediapipe/framework:mediapipe_options_cc_proto",
|
||||
"//mediapipe/framework:thread_pool_executor_cc_proto",
|
||||
"//mediapipe/framework/port:gtest_main",
|
||||
"//mediapipe/framework/port:logging",
|
||||
"//mediapipe/framework/port:parse_text_proto",
|
||||
|
@ -1481,12 +1481,12 @@ cc_test(
|
|||
],
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
":calculator_cc_proto",
|
||||
":calculator_framework",
|
||||
":test_calculators",
|
||||
"//mediapipe/calculators/core:counting_source_calculator",
|
||||
"//mediapipe/calculators/core:mux_calculator",
|
||||
"//mediapipe/calculators/core:pass_through_calculator",
|
||||
"//mediapipe/framework:calculator_cc_proto",
|
||||
"//mediapipe/framework/port:gtest_main",
|
||||
"//mediapipe/framework/port:logging",
|
||||
"//mediapipe/framework/port:parse_text_proto",
|
||||
|
@ -1630,8 +1630,8 @@ cc_test(
|
|||
srcs = ["packet_generator_test.cc"],
|
||||
deps = [
|
||||
":packet_generator",
|
||||
":packet_generator_cc_proto",
|
||||
":packet_type",
|
||||
"//mediapipe/framework:packet_generator_cc_proto",
|
||||
"//mediapipe/framework/port:gtest_main",
|
||||
"//mediapipe/framework/tool:validate_type",
|
||||
"@com_google_absl//absl/strings",
|
||||
|
|
|
@ -20,9 +20,14 @@ load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
|
|||
|
||||
licenses(["notice"])
|
||||
|
||||
package(default_visibility = [
|
||||
"//mediapipe:__subpackages__",
|
||||
])
|
||||
package_group(
|
||||
name = "mediapipe_internal",
|
||||
packages = [
|
||||
"//mediapipe/...",
|
||||
],
|
||||
)
|
||||
|
||||
package(default_visibility = ["mediapipe_internal"])
|
||||
|
||||
bzl_library(
|
||||
name = "expand_template_bzl",
|
||||
|
@ -214,6 +219,9 @@ cc_library(
|
|||
name = "registration",
|
||||
srcs = ["registration.cc"],
|
||||
hdrs = ["registration.h"],
|
||||
visibility = [
|
||||
"mediapipe_internal",
|
||||
],
|
||||
deps = [
|
||||
":registration_token",
|
||||
"//mediapipe/framework/port:logging",
|
||||
|
|
|
@ -26,7 +26,7 @@ licenses(["notice"])
|
|||
mediapipe_proto_library(
|
||||
name = "detection_proto",
|
||||
srcs = ["detection.proto"],
|
||||
deps = ["//mediapipe/framework/formats:location_data_proto"],
|
||||
deps = [":location_data_proto"],
|
||||
)
|
||||
|
||||
mediapipe_register_type(
|
||||
|
@ -38,7 +38,7 @@ mediapipe_register_type(
|
|||
"::std::vector<::mediapipe::Detection>",
|
||||
"::std::vector<::mediapipe::DetectionList>",
|
||||
],
|
||||
deps = ["//mediapipe/framework/formats:detection_cc_proto"],
|
||||
deps = [":detection_cc_proto"],
|
||||
)
|
||||
|
||||
mediapipe_proto_library(
|
||||
|
@ -105,8 +105,8 @@ cc_library(
|
|||
srcs = ["matrix.cc"],
|
||||
hdrs = ["matrix.h"],
|
||||
deps = [
|
||||
":matrix_data_cc_proto",
|
||||
"//mediapipe/framework:port",
|
||||
"//mediapipe/framework/formats:matrix_data_cc_proto",
|
||||
"//mediapipe/framework/port:core_proto",
|
||||
"//mediapipe/framework/port:logging",
|
||||
"//mediapipe/framework/port:ret_check",
|
||||
|
@ -142,7 +142,7 @@ cc_library(
|
|||
srcs = ["image_frame.cc"],
|
||||
hdrs = ["image_frame.h"],
|
||||
deps = [
|
||||
"//mediapipe/framework/formats:image_format_cc_proto",
|
||||
":image_format_cc_proto",
|
||||
"@com_google_absl//absl/base",
|
||||
"@com_google_absl//absl/base:core_headers",
|
||||
"@com_google_absl//absl/memory",
|
||||
|
@ -166,8 +166,8 @@ cc_library(
|
|||
srcs = ["image_frame_opencv.cc"],
|
||||
hdrs = ["image_frame_opencv.h"],
|
||||
deps = [
|
||||
":image_format_cc_proto",
|
||||
":image_frame",
|
||||
"//mediapipe/framework/formats:image_format_cc_proto",
|
||||
"//mediapipe/framework/port:opencv_core",
|
||||
],
|
||||
)
|
||||
|
@ -194,7 +194,7 @@ cc_library(
|
|||
deps = [
|
||||
"@com_google_protobuf//:protobuf",
|
||||
"//mediapipe/framework/formats/annotation:locus_cc_proto",
|
||||
"//mediapipe/framework/formats:location_data_cc_proto",
|
||||
":location_data_cc_proto",
|
||||
"@com_google_absl//absl/base:core_headers",
|
||||
"@com_google_absl//absl/memory",
|
||||
"@com_google_absl//absl/strings",
|
||||
|
@ -245,7 +245,7 @@ cc_library(
|
|||
name = "video_stream_header",
|
||||
hdrs = ["video_stream_header.h"],
|
||||
deps = [
|
||||
"//mediapipe/framework/formats:image_format_cc_proto",
|
||||
":image_format_cc_proto",
|
||||
],
|
||||
)
|
||||
|
||||
|
@ -263,9 +263,9 @@ cc_test(
|
|||
size = "small",
|
||||
srcs = ["image_frame_opencv_test.cc"],
|
||||
deps = [
|
||||
":image_format_cc_proto",
|
||||
":image_frame",
|
||||
":image_frame_opencv",
|
||||
"//mediapipe/framework/formats:image_format_cc_proto",
|
||||
"//mediapipe/framework/port:gtest_main",
|
||||
"//mediapipe/framework/port:integral_types",
|
||||
"//mediapipe/framework/port:logging",
|
||||
|
@ -324,8 +324,8 @@ cc_library(
|
|||
"//conditions:default": [],
|
||||
}),
|
||||
deps = [
|
||||
"//mediapipe/framework/formats:image_format_cc_proto",
|
||||
"//mediapipe/framework/formats:image_frame",
|
||||
":image_format_cc_proto",
|
||||
":image_frame",
|
||||
"@com_google_absl//absl/synchronization",
|
||||
"//mediapipe/framework:port",
|
||||
"//mediapipe/framework:type_map",
|
||||
|
@ -354,7 +354,7 @@ cc_library(
|
|||
hdrs = ["image_multi_pool.h"],
|
||||
deps = [
|
||||
":image",
|
||||
"//mediapipe/framework/formats:image_frame_pool",
|
||||
":image_frame_pool",
|
||||
"//mediapipe/framework:port",
|
||||
"//mediapipe/framework/port:logging",
|
||||
"@com_google_absl//absl/memory",
|
||||
|
@ -390,7 +390,7 @@ cc_library(
|
|||
],
|
||||
deps = [
|
||||
":image",
|
||||
"//mediapipe/framework/formats:image_format_cc_proto",
|
||||
":image_format_cc_proto",
|
||||
"//mediapipe/framework/port:logging",
|
||||
"//mediapipe/framework/port:opencv_core",
|
||||
"//mediapipe/framework/port:statusor",
|
||||
|
|
|
@ -38,11 +38,11 @@ cc_library(
|
|||
srcs = ["optical_flow_field.cc"],
|
||||
hdrs = ["optical_flow_field.h"],
|
||||
deps = [
|
||||
":optical_flow_field_data_cc_proto",
|
||||
"//mediapipe/framework:type_map",
|
||||
"//mediapipe/framework/deps:mathutil",
|
||||
"//mediapipe/framework/formats:location",
|
||||
"//mediapipe/framework/formats:location_opencv",
|
||||
"//mediapipe/framework/formats/motion:optical_flow_field_data_cc_proto",
|
||||
"//mediapipe/framework/port:file_helpers",
|
||||
"//mediapipe/framework/port:integral_types",
|
||||
"//mediapipe/framework/port:logging",
|
||||
|
|
|
@ -88,8 +88,8 @@ cc_library(
|
|||
srcs = ["default_input_stream_handler.cc"],
|
||||
hdrs = ["default_input_stream_handler.h"],
|
||||
deps = [
|
||||
":default_input_stream_handler_cc_proto",
|
||||
"//mediapipe/framework:input_stream_handler",
|
||||
"//mediapipe/framework/stream_handler:default_input_stream_handler_cc_proto",
|
||||
"@com_google_absl//absl/strings",
|
||||
],
|
||||
alwayslink = 1,
|
||||
|
@ -110,8 +110,8 @@ cc_library(
|
|||
srcs = ["fixed_size_input_stream_handler.cc"],
|
||||
deps = [
|
||||
":default_input_stream_handler",
|
||||
":fixed_size_input_stream_handler_cc_proto",
|
||||
"//mediapipe/framework:input_stream_handler",
|
||||
"//mediapipe/framework/stream_handler:fixed_size_input_stream_handler_cc_proto",
|
||||
],
|
||||
alwayslink = 1,
|
||||
)
|
||||
|
@ -159,13 +159,13 @@ cc_library(
|
|||
name = "sync_set_input_stream_handler",
|
||||
srcs = ["sync_set_input_stream_handler.cc"],
|
||||
deps = [
|
||||
":sync_set_input_stream_handler_cc_proto",
|
||||
"//mediapipe/framework:collection",
|
||||
"//mediapipe/framework:collection_item_id",
|
||||
"//mediapipe/framework:input_stream_handler",
|
||||
"//mediapipe/framework:mediapipe_options_cc_proto",
|
||||
"//mediapipe/framework:packet_set",
|
||||
"//mediapipe/framework:timestamp",
|
||||
"//mediapipe/framework/stream_handler:sync_set_input_stream_handler_cc_proto",
|
||||
"//mediapipe/framework/tool:tag_map",
|
||||
"@com_google_absl//absl/strings",
|
||||
"@com_google_absl//absl/synchronization",
|
||||
|
@ -177,10 +177,10 @@ cc_library(
|
|||
name = "timestamp_align_input_stream_handler",
|
||||
srcs = ["timestamp_align_input_stream_handler.cc"],
|
||||
deps = [
|
||||
":timestamp_align_input_stream_handler_cc_proto",
|
||||
"//mediapipe/framework:collection_item_id",
|
||||
"//mediapipe/framework:input_stream_handler",
|
||||
"//mediapipe/framework:timestamp",
|
||||
"//mediapipe/framework/stream_handler:timestamp_align_input_stream_handler_cc_proto",
|
||||
"//mediapipe/framework/tool:validate_name",
|
||||
"@com_google_absl//absl/strings",
|
||||
"@com_google_absl//absl/synchronization",
|
||||
|
@ -243,6 +243,7 @@ cc_test(
|
|||
srcs = ["set_input_stream_handler_test.cc"],
|
||||
deps = [
|
||||
":fixed_size_input_stream_handler",
|
||||
":fixed_size_input_stream_handler_cc_proto",
|
||||
":mux_input_stream_handler",
|
||||
"//mediapipe/calculators/core:mux_calculator",
|
||||
"//mediapipe/calculators/core:pass_through_calculator",
|
||||
|
@ -251,7 +252,6 @@ cc_test(
|
|||
"//mediapipe/framework/port:gtest_main",
|
||||
"//mediapipe/framework/port:parse_text_proto",
|
||||
"//mediapipe/framework/port:ret_check",
|
||||
"//mediapipe/framework/stream_handler:fixed_size_input_stream_handler_cc_proto",
|
||||
],
|
||||
)
|
||||
|
||||
|
@ -272,13 +272,13 @@ cc_test(
|
|||
srcs = ["fixed_size_input_stream_handler_test.cc"],
|
||||
deps = [
|
||||
":fixed_size_input_stream_handler",
|
||||
":fixed_size_input_stream_handler_cc_proto",
|
||||
"//mediapipe/calculators/core:counting_source_calculator",
|
||||
"//mediapipe/calculators/core:pass_through_calculator",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
"//mediapipe/framework/port:gtest_main",
|
||||
"//mediapipe/framework/port:logging",
|
||||
"//mediapipe/framework/port:parse_text_proto",
|
||||
"//mediapipe/framework/stream_handler:fixed_size_input_stream_handler_cc_proto",
|
||||
"@com_google_absl//absl/base:core_headers",
|
||||
"@com_google_absl//absl/synchronization",
|
||||
],
|
||||
|
@ -289,11 +289,11 @@ cc_test(
|
|||
srcs = ["sync_set_input_stream_handler_test.cc"],
|
||||
deps = [
|
||||
":sync_set_input_stream_handler",
|
||||
":sync_set_input_stream_handler_cc_proto",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
"//mediapipe/framework:test_calculators",
|
||||
"//mediapipe/framework/port:gtest_main",
|
||||
"//mediapipe/framework/port:parse_text_proto",
|
||||
"//mediapipe/framework/stream_handler:sync_set_input_stream_handler_cc_proto",
|
||||
"@com_google_absl//absl/base:core_headers",
|
||||
"@com_google_absl//absl/memory",
|
||||
"@com_google_absl//absl/strings",
|
||||
|
|
|
@ -299,6 +299,7 @@ mediapipe_cc_test(
|
|||
requires_full_emulation = False,
|
||||
deps = [
|
||||
":node_chain_subgraph_cc_proto",
|
||||
":node_chain_subgraph_options_lib",
|
||||
":options_field_util",
|
||||
":options_registry",
|
||||
":options_syntax_util",
|
||||
|
@ -313,7 +314,6 @@ mediapipe_cc_test(
|
|||
"//mediapipe/framework/port:status",
|
||||
"//mediapipe/framework/testdata:night_light_calculator_cc_proto",
|
||||
"//mediapipe/framework/testdata:night_light_calculator_options_lib",
|
||||
"//mediapipe/framework/tool:node_chain_subgraph_options_lib",
|
||||
"//mediapipe/util:header_util",
|
||||
"@com_google_absl//absl/strings",
|
||||
],
|
||||
|
@ -422,9 +422,9 @@ cc_library(
|
|||
srcs = ["source.cc"],
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
":source_cc_proto",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
"//mediapipe/framework/port:status",
|
||||
"//mediapipe/framework/tool:source_cc_proto",
|
||||
"@com_google_absl//absl/base:core_headers",
|
||||
"@com_google_absl//absl/strings",
|
||||
],
|
||||
|
@ -485,13 +485,13 @@ cc_library(
|
|||
hdrs = ["template_expander.h"],
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
":calculator_graph_template_cc_proto",
|
||||
":proto_util_lite",
|
||||
"//mediapipe/framework:calculator_cc_proto",
|
||||
"//mediapipe/framework/port:logging",
|
||||
"//mediapipe/framework/port:numbers",
|
||||
"//mediapipe/framework/port:ret_check",
|
||||
"//mediapipe/framework/port:status",
|
||||
"//mediapipe/framework/tool:calculator_graph_template_cc_proto",
|
||||
"@com_google_absl//absl/strings",
|
||||
],
|
||||
)
|
||||
|
@ -506,6 +506,7 @@ cc_library(
|
|||
],
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
":calculator_graph_template_cc_proto",
|
||||
":proto_util_lite",
|
||||
"//mediapipe/framework:calculator_cc_proto",
|
||||
"//mediapipe/framework/deps:proto_descriptor_cc_proto",
|
||||
|
@ -515,7 +516,6 @@ cc_library(
|
|||
"//mediapipe/framework/port:map_util",
|
||||
"//mediapipe/framework/port:ret_check",
|
||||
"//mediapipe/framework/port:status",
|
||||
"//mediapipe/framework/tool:calculator_graph_template_cc_proto",
|
||||
"@com_google_absl//absl/base:core_headers",
|
||||
"@com_google_absl//absl/memory",
|
||||
"@com_google_absl//absl/strings",
|
||||
|
@ -661,8 +661,8 @@ cc_library(
|
|||
hdrs = ["simulation_clock_executor.h"],
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
":simulation_clock",
|
||||
"//mediapipe/framework:thread_pool_executor",
|
||||
"//mediapipe/framework/tool:simulation_clock",
|
||||
],
|
||||
)
|
||||
|
||||
|
@ -789,10 +789,10 @@ cc_library(
|
|||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
":name_util",
|
||||
":switch_container_cc_proto",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
"//mediapipe/framework/port:ret_check",
|
||||
"//mediapipe/framework/port:status",
|
||||
"//mediapipe/framework/tool:switch_container_cc_proto",
|
||||
],
|
||||
)
|
||||
|
||||
|
@ -805,6 +805,7 @@ cc_library(
|
|||
deps = [
|
||||
":container_util",
|
||||
":options_util",
|
||||
":switch_container_cc_proto",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
"//mediapipe/framework:collection_item_id",
|
||||
"//mediapipe/framework/deps:mathutil",
|
||||
|
@ -814,7 +815,6 @@ cc_library(
|
|||
"//mediapipe/framework/port:ret_check",
|
||||
"//mediapipe/framework/port:status",
|
||||
"//mediapipe/framework/stream_handler:immediate_input_stream_handler",
|
||||
"//mediapipe/framework/tool:switch_container_cc_proto",
|
||||
"@com_google_absl//absl/strings",
|
||||
],
|
||||
alwayslink = 1,
|
||||
|
@ -841,6 +841,7 @@ cc_library(
|
|||
],
|
||||
deps = [
|
||||
":container_util",
|
||||
":switch_container_cc_proto",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
"//mediapipe/framework:collection_item_id",
|
||||
"//mediapipe/framework:input_stream_shard",
|
||||
|
@ -850,7 +851,6 @@ cc_library(
|
|||
"//mediapipe/framework/port:ret_check",
|
||||
"//mediapipe/framework/port:status",
|
||||
"//mediapipe/framework/stream_handler:immediate_input_stream_handler",
|
||||
"//mediapipe/framework/tool:switch_container_cc_proto",
|
||||
],
|
||||
alwayslink = 1,
|
||||
)
|
||||
|
@ -893,6 +893,7 @@ cc_library(
|
|||
":container_util",
|
||||
":name_util",
|
||||
":subgraph_expansion",
|
||||
":switch_container_cc_proto",
|
||||
":switch_demux_calculator",
|
||||
":switch_mux_calculator",
|
||||
"//mediapipe/calculators/core:packet_sequencer_calculator",
|
||||
|
@ -904,7 +905,6 @@ cc_library(
|
|||
"//mediapipe/framework/port:core_proto",
|
||||
"//mediapipe/framework/port:ret_check",
|
||||
"//mediapipe/framework/port:status",
|
||||
"//mediapipe/framework/tool:switch_container_cc_proto",
|
||||
"@com_google_absl//absl/strings",
|
||||
],
|
||||
alwayslink = 1,
|
||||
|
|
|
@ -564,6 +564,7 @@ cc_library(
|
|||
name = "gpu_shared_data_internal_stub",
|
||||
visibility = ["//visibility:private"],
|
||||
deps = [
|
||||
":gl_context_options_cc_proto",
|
||||
":graph_support",
|
||||
"//mediapipe/framework:calculator_context",
|
||||
"//mediapipe/framework:calculator_node",
|
||||
|
@ -571,7 +572,6 @@ cc_library(
|
|||
"//mediapipe/framework:port",
|
||||
"//mediapipe/framework/deps:no_destructor",
|
||||
"//mediapipe/framework/port:ret_check",
|
||||
"//mediapipe/gpu:gl_context_options_cc_proto",
|
||||
],
|
||||
)
|
||||
|
||||
|
@ -592,7 +592,7 @@ cc_library(
|
|||
}),
|
||||
visibility = ["//visibility:private"],
|
||||
deps = [
|
||||
"//mediapipe/gpu:gl_context_options_cc_proto",
|
||||
":gl_context_options_cc_proto",
|
||||
":graph_support",
|
||||
"//mediapipe/framework:calculator_context",
|
||||
"//mediapipe/framework:executor",
|
||||
|
@ -833,10 +833,10 @@ cc_library(
|
|||
deps = [
|
||||
":gl_base",
|
||||
":gl_simple_shaders",
|
||||
":scale_mode_cc_proto",
|
||||
":shader_util",
|
||||
"//mediapipe/framework/port:ret_check",
|
||||
"//mediapipe/framework/port:status",
|
||||
"//mediapipe/gpu:scale_mode_cc_proto",
|
||||
],
|
||||
)
|
||||
|
||||
|
@ -907,8 +907,8 @@ proto_library(
|
|||
srcs = ["gl_scaler_calculator.proto"],
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
":scale_mode_proto",
|
||||
"//mediapipe/framework:calculator_proto",
|
||||
"//mediapipe/gpu:scale_mode_proto",
|
||||
],
|
||||
)
|
||||
|
||||
|
@ -930,6 +930,7 @@ cc_library(
|
|||
deps = [
|
||||
":gl_calculator_helper",
|
||||
":gl_quad_renderer",
|
||||
":gl_scaler_calculator_cc_proto",
|
||||
":gl_simple_shaders",
|
||||
":shader_util",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
|
@ -937,7 +938,6 @@ cc_library(
|
|||
"//mediapipe/framework/port:ret_check",
|
||||
"//mediapipe/framework/port:status",
|
||||
"//mediapipe/framework/tool:options_util",
|
||||
"//mediapipe/gpu:gl_scaler_calculator_cc_proto",
|
||||
],
|
||||
alwayslink = 1,
|
||||
)
|
||||
|
@ -950,13 +950,13 @@ cc_library(
|
|||
":egl_surface_holder",
|
||||
":gl_calculator_helper",
|
||||
":gl_quad_renderer",
|
||||
":gl_surface_sink_calculator_cc_proto",
|
||||
":gpu_buffer",
|
||||
":shader_util",
|
||||
"//mediapipe/framework:calculator_framework",
|
||||
"//mediapipe/framework/api2:node",
|
||||
"//mediapipe/framework/port:ret_check",
|
||||
"//mediapipe/framework/port:status",
|
||||
"//mediapipe/gpu:gl_surface_sink_calculator_cc_proto",
|
||||
"@com_google_absl//absl/synchronization",
|
||||
],
|
||||
alwayslink = 1,
|
||||
|
@ -966,8 +966,8 @@ proto_library(
|
|||
name = "gl_surface_sink_calculator_proto",
|
||||
srcs = ["gl_surface_sink_calculator.proto"],
|
||||
deps = [
|
||||
":scale_mode_proto",
|
||||
"//mediapipe/framework:calculator_proto",
|
||||
"//mediapipe/gpu:scale_mode_proto",
|
||||
],
|
||||
)
|
||||
|
||||
|
|
|
@ -15,10 +15,13 @@
|
|||
package com.google.mediapipe.framework;
|
||||
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.PixelFormat;
|
||||
import android.media.Image;
|
||||
import com.google.mediapipe.framework.image.BitmapExtractor;
|
||||
import com.google.mediapipe.framework.image.ByteBufferExtractor;
|
||||
import com.google.mediapipe.framework.image.MPImage;
|
||||
import com.google.mediapipe.framework.image.MPImageProperties;
|
||||
import com.google.mediapipe.framework.image.MediaImageExtractor;
|
||||
import java.nio.ByteBuffer;
|
||||
|
||||
// TODO: use Preconditions in this file.
|
||||
|
@ -97,7 +100,17 @@ public class AndroidPacketCreator extends PacketCreator {
|
|||
}
|
||||
return Packet.create(nativeCreateRgbaImage(mediapipeGraph.getNativeHandle(), bitmap));
|
||||
}
|
||||
|
||||
if (properties.getStorageType() == MPImage.STORAGE_TYPE_MEDIA_IMAGE) {
|
||||
Image mediaImage = MediaImageExtractor.extract(image);
|
||||
if (mediaImage.getFormat() != PixelFormat.RGBA_8888) {
|
||||
throw new UnsupportedOperationException("Android media image must use RGBA_8888 config.");
|
||||
}
|
||||
return createImage(
|
||||
mediaImage.getPlanes()[0].getBuffer(),
|
||||
mediaImage.getWidth(),
|
||||
mediaImage.getHeight(),
|
||||
/* numChannels= */ 4);
|
||||
}
|
||||
// Unsupported type.
|
||||
throw new UnsupportedOperationException(
|
||||
"Unsupported Image container type: " + properties.getStorageType());
|
||||
|
|
|
@ -17,3 +17,6 @@ from mediapipe.model_maker.python.core.utils import quantization
|
|||
from mediapipe.model_maker.python.vision import image_classifier
|
||||
from mediapipe.model_maker.python.vision import gesture_recognizer
|
||||
from mediapipe.model_maker.python.text import text_classifier
|
||||
|
||||
# Remove duplicated and non-public API
|
||||
del python
|
||||
|
|
|
@ -29,3 +29,12 @@ BertModelOptions = model_options.BertModelOptions
|
|||
SupportedModels = model_spec.SupportedModels
|
||||
TextClassifier = text_classifier.TextClassifier
|
||||
TextClassifierOptions = text_classifier_options.TextClassifierOptions
|
||||
|
||||
# Remove duplicated and non-public API
|
||||
del hyperparameters
|
||||
del dataset
|
||||
del model_options
|
||||
del model_spec
|
||||
del preprocessor # pylint: disable=undefined-variable
|
||||
del text_classifier
|
||||
del text_classifier_options
|
||||
|
|
|
@ -33,7 +33,6 @@ from mediapipe.model_maker.python.text.text_classifier import preprocessor
|
|||
from mediapipe.model_maker.python.text.text_classifier import text_classifier_options
|
||||
from mediapipe.tasks.python.metadata.metadata_writers import metadata_writer
|
||||
from mediapipe.tasks.python.metadata.metadata_writers import text_classifier as text_classifier_writer
|
||||
from official.nlp import optimization
|
||||
|
||||
|
||||
def _validate(options: text_classifier_options.TextClassifierOptions):
|
||||
|
@ -417,8 +416,22 @@ class _BertClassifier(TextClassifier):
|
|||
total_steps = self._hparams.steps_per_epoch * self._hparams.epochs
|
||||
warmup_steps = int(total_steps * 0.1)
|
||||
initial_lr = self._hparams.learning_rate
|
||||
self._optimizer = optimization.create_optimizer(initial_lr, total_steps,
|
||||
warmup_steps)
|
||||
# Implements linear decay of the learning rate.
|
||||
lr_schedule = tf.keras.optimizers.schedules.PolynomialDecay(
|
||||
initial_learning_rate=initial_lr,
|
||||
decay_steps=total_steps,
|
||||
end_learning_rate=0.0,
|
||||
power=1.0)
|
||||
if warmup_steps:
|
||||
lr_schedule = model_util.WarmUp(
|
||||
initial_learning_rate=initial_lr,
|
||||
decay_schedule_fn=lr_schedule,
|
||||
warmup_steps=warmup_steps)
|
||||
|
||||
self._optimizer = tf.keras.optimizers.experimental.AdamW(
|
||||
lr_schedule, weight_decay=0.01, epsilon=1e-6, global_clipnorm=1.0)
|
||||
self._optimizer.exclude_from_weight_decay(
|
||||
var_names=["LayerNorm", "layer_norm", "bias"])
|
||||
|
||||
def _save_vocab(self, vocab_filepath: str):
|
||||
tf.io.gfile.copy(
|
||||
|
|
|
@ -146,6 +146,8 @@ py_test(
|
|||
tags = ["notsan"],
|
||||
deps = [
|
||||
":gesture_recognizer_import",
|
||||
":hyperparameters",
|
||||
":model_options",
|
||||
"//mediapipe/model_maker/python/core/utils:test_util",
|
||||
"//mediapipe/tasks/python/test:test_utils",
|
||||
],
|
||||
|
|
|
@ -25,3 +25,12 @@ HParams = hyperparameters.HParams
|
|||
Dataset = dataset.Dataset
|
||||
HandDataPreprocessingParams = dataset.HandDataPreprocessingParams
|
||||
GestureRecognizerOptions = gesture_recognizer_options.GestureRecognizerOptions
|
||||
|
||||
# Remove duplicated and non-public API
|
||||
del constants # pylint: disable=undefined-variable
|
||||
del dataset
|
||||
del gesture_recognizer
|
||||
del gesture_recognizer_options
|
||||
del hyperparameters
|
||||
del metadata_writer # pylint: disable=undefined-variable
|
||||
del model_options
|
||||
|
|
|
@ -23,6 +23,8 @@ import tensorflow as tf
|
|||
|
||||
from mediapipe.model_maker.python.core.utils import test_util
|
||||
from mediapipe.model_maker.python.vision import gesture_recognizer
|
||||
from mediapipe.model_maker.python.vision.gesture_recognizer import hyperparameters
|
||||
from mediapipe.model_maker.python.vision.gesture_recognizer import model_options
|
||||
from mediapipe.tasks.python.test import test_utils
|
||||
|
||||
_TEST_DATA_DIR = 'mediapipe/model_maker/python/vision/gesture_recognizer/testdata'
|
||||
|
@ -48,11 +50,11 @@ class GestureRecognizerTest(tf.test.TestCase):
|
|||
self._train_data, self._validation_data = all_data.split(0.9)
|
||||
|
||||
def test_gesture_recognizer_model(self):
|
||||
model_options = gesture_recognizer.ModelOptions()
|
||||
mo = gesture_recognizer.ModelOptions()
|
||||
hparams = gesture_recognizer.HParams(
|
||||
export_dir=tempfile.mkdtemp(), epochs=2)
|
||||
gesture_recognizer_options = gesture_recognizer.GestureRecognizerOptions(
|
||||
model_options=model_options, hparams=hparams)
|
||||
model_options=mo, hparams=hparams)
|
||||
model = gesture_recognizer.GestureRecognizer.create(
|
||||
train_data=self._train_data,
|
||||
validation_data=self._validation_data,
|
||||
|
@ -64,11 +66,11 @@ class GestureRecognizerTest(tf.test.TestCase):
|
|||
tf.keras.layers, 'Dense', wraps=tf.keras.layers.Dense)
|
||||
def test_gesture_recognizer_model_layer_widths(self, mock_dense):
|
||||
layer_widths = [64, 32]
|
||||
model_options = gesture_recognizer.ModelOptions(layer_widths=layer_widths)
|
||||
mo = gesture_recognizer.ModelOptions(layer_widths=layer_widths)
|
||||
hparams = gesture_recognizer.HParams(
|
||||
export_dir=tempfile.mkdtemp(), epochs=2)
|
||||
gesture_recognizer_options = gesture_recognizer.GestureRecognizerOptions(
|
||||
model_options=model_options, hparams=hparams)
|
||||
model_options=mo, hparams=hparams)
|
||||
model = gesture_recognizer.GestureRecognizer.create(
|
||||
train_data=self._train_data,
|
||||
validation_data=self._validation_data,
|
||||
|
@ -87,11 +89,11 @@ class GestureRecognizerTest(tf.test.TestCase):
|
|||
self._test_accuracy(model)
|
||||
|
||||
def test_export_gesture_recognizer_model(self):
|
||||
model_options = gesture_recognizer.ModelOptions()
|
||||
mo = gesture_recognizer.ModelOptions()
|
||||
hparams = gesture_recognizer.HParams(
|
||||
export_dir=tempfile.mkdtemp(), epochs=2)
|
||||
gesture_recognizer_options = gesture_recognizer.GestureRecognizerOptions(
|
||||
model_options=model_options, hparams=hparams)
|
||||
model_options=mo, hparams=hparams)
|
||||
model = gesture_recognizer.GestureRecognizer.create(
|
||||
train_data=self._train_data,
|
||||
validation_data=self._validation_data,
|
||||
|
@ -128,12 +130,12 @@ class GestureRecognizerTest(tf.test.TestCase):
|
|||
self.assertGreater(accuracy, threshold)
|
||||
|
||||
@unittest_mock.patch.object(
|
||||
gesture_recognizer.hyperparameters,
|
||||
hyperparameters,
|
||||
'HParams',
|
||||
autospec=True,
|
||||
return_value=gesture_recognizer.HParams(epochs=1))
|
||||
@unittest_mock.patch.object(
|
||||
gesture_recognizer.model_options,
|
||||
model_options,
|
||||
'GestureRecognizerModelOptions',
|
||||
autospec=True,
|
||||
return_value=gesture_recognizer.ModelOptions())
|
||||
|
@ -148,11 +150,11 @@ class GestureRecognizerTest(tf.test.TestCase):
|
|||
mock_model_options.assert_called_once()
|
||||
|
||||
def test_continual_training_by_loading_checkpoint(self):
|
||||
model_options = gesture_recognizer.ModelOptions()
|
||||
mo = gesture_recognizer.ModelOptions()
|
||||
hparams = gesture_recognizer.HParams(
|
||||
export_dir=tempfile.mkdtemp(), epochs=2)
|
||||
gesture_recognizer_options = gesture_recognizer.GestureRecognizerOptions(
|
||||
model_options=model_options, hparams=hparams)
|
||||
model_options=mo, hparams=hparams)
|
||||
mock_stdout = io.StringIO()
|
||||
with mock.patch('sys.stdout', mock_stdout):
|
||||
model = gesture_recognizer.GestureRecognizer.create(
|
||||
|
|
|
@ -121,7 +121,9 @@ py_library(
|
|||
srcs = ["image_classifier_test.py"],
|
||||
data = ["//mediapipe/model_maker/python/vision/image_classifier/testdata"],
|
||||
deps = [
|
||||
":hyperparameters",
|
||||
":image_classifier_import",
|
||||
":model_options",
|
||||
"//mediapipe/tasks/python/test:test_utils",
|
||||
],
|
||||
)
|
||||
|
|
|
@ -27,3 +27,12 @@ ModelOptions = model_options.ImageClassifierModelOptions
|
|||
ModelSpec = model_spec.ModelSpec
|
||||
SupportedModels = model_spec.SupportedModels
|
||||
ImageClassifierOptions = image_classifier_options.ImageClassifierOptions
|
||||
|
||||
# Remove duplicated and non-public API
|
||||
del dataset
|
||||
del hyperparameters
|
||||
del image_classifier
|
||||
del image_classifier_options
|
||||
del model_options
|
||||
del model_spec
|
||||
del train_image_classifier_lib # pylint: disable=undefined-variable
|
||||
|
|
|
@ -24,6 +24,8 @@ import numpy as np
|
|||
import tensorflow as tf
|
||||
|
||||
from mediapipe.model_maker.python.vision import image_classifier
|
||||
from mediapipe.model_maker.python.vision.image_classifier import hyperparameters
|
||||
from mediapipe.model_maker.python.vision.image_classifier import model_options
|
||||
from mediapipe.tasks.python.test import test_utils
|
||||
|
||||
|
||||
|
@ -159,15 +161,15 @@ class ImageClassifierTest(tf.test.TestCase, parameterized.TestCase):
|
|||
self.assertGreaterEqual(accuracy, threshold)
|
||||
|
||||
@unittest_mock.patch.object(
|
||||
image_classifier.hyperparameters,
|
||||
hyperparameters,
|
||||
'HParams',
|
||||
autospec=True,
|
||||
return_value=image_classifier.HParams(epochs=1))
|
||||
return_value=hyperparameters.HParams(epochs=1))
|
||||
@unittest_mock.patch.object(
|
||||
image_classifier.model_options,
|
||||
model_options,
|
||||
'ImageClassifierModelOptions',
|
||||
autospec=True,
|
||||
return_value=image_classifier.ModelOptions())
|
||||
return_value=model_options.ImageClassifierModelOptions())
|
||||
def test_create_hparams_and_model_options_if_none_in_image_classifier_options(
|
||||
self, mock_hparams, mock_model_options):
|
||||
options = image_classifier.ImageClassifierOptions(
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
absl-py
|
||||
mediapipe==0.9.1
|
||||
mediapipe==0.9.0.1
|
||||
numpy
|
||||
opencv-python
|
||||
tensorflow>=2.10
|
||||
|
|
|
@ -86,7 +86,7 @@ describe('convertBaseOptionsToProto()', () => {
|
|||
it('can enable CPU delegate', async () => {
|
||||
const baseOptionsProto = await convertBaseOptionsToProto({
|
||||
modelAssetBuffer: new Uint8Array(mockBytes),
|
||||
delegate: 'cpu',
|
||||
delegate: 'CPU',
|
||||
});
|
||||
expect(baseOptionsProto.toObject()).toEqual(mockBytesResult);
|
||||
});
|
||||
|
@ -94,7 +94,7 @@ describe('convertBaseOptionsToProto()', () => {
|
|||
it('can enable GPU delegate', async () => {
|
||||
const baseOptionsProto = await convertBaseOptionsToProto({
|
||||
modelAssetBuffer: new Uint8Array(mockBytes),
|
||||
delegate: 'gpu',
|
||||
delegate: 'GPU',
|
||||
});
|
||||
expect(baseOptionsProto.toObject()).toEqual({
|
||||
...mockBytesResult,
|
||||
|
@ -117,7 +117,7 @@ describe('convertBaseOptionsToProto()', () => {
|
|||
it('can reset delegate', async () => {
|
||||
let baseOptionsProto = await convertBaseOptionsToProto({
|
||||
modelAssetBuffer: new Uint8Array(mockBytes),
|
||||
delegate: 'gpu',
|
||||
delegate: 'GPU',
|
||||
});
|
||||
// Clear backend
|
||||
baseOptionsProto =
|
||||
|
|
|
@ -71,7 +71,7 @@ async function configureExternalFile(
|
|||
/** Configues the `acceleration` option. */
|
||||
function configureAcceleration(options: BaseOptions, proto: BaseOptionsProto) {
|
||||
const acceleration = proto.getAcceleration() ?? new Acceleration();
|
||||
if (options.delegate === 'gpu') {
|
||||
if (options.delegate === 'GPU') {
|
||||
acceleration.setGpu(new InferenceCalculatorOptions.Delegate.Gpu());
|
||||
} else {
|
||||
acceleration.setTflite(new InferenceCalculatorOptions.Delegate.TfLite());
|
||||
|
|
|
@ -31,7 +31,7 @@ export declare interface BaseOptions {
|
|||
modelAssetBuffer?: Uint8Array|undefined;
|
||||
|
||||
/** Overrides the default backend to use for the provided model. */
|
||||
delegate?: 'cpu'|'gpu'|undefined;
|
||||
delegate?: 'CPU'|'GPU'|undefined;
|
||||
}
|
||||
|
||||
/** Options to configure MediaPipe Tasks in general. */
|
||||
|
|
|
@ -1028,7 +1028,9 @@ export class GraphRunner {
|
|||
// Set up our TS listener to receive any packets for this stream, and
|
||||
// additionally reformat our Uint8Array into a Float32Array for the user.
|
||||
this.setListener(outputStreamName, (data: Uint8Array) => {
|
||||
const floatArray = new Float32Array(data.buffer); // Should be very fast
|
||||
// Should be very fast
|
||||
const floatArray =
|
||||
new Float32Array(data.buffer, data.byteOffset, data.length / 4);
|
||||
callbackFcn(floatArray);
|
||||
});
|
||||
|
||||
|
|
2
setup.py
2
setup.py
|
@ -490,10 +490,10 @@ setuptools.setup(
|
|||
'Operating System :: MacOS :: MacOS X',
|
||||
'Operating System :: Microsoft :: Windows',
|
||||
'Operating System :: POSIX :: Linux',
|
||||
'Programming Language :: Python :: 3.7',
|
||||
'Programming Language :: Python :: 3.8',
|
||||
'Programming Language :: Python :: 3.9',
|
||||
'Programming Language :: Python :: 3.10',
|
||||
'Programming Language :: Python :: 3.11',
|
||||
'Programming Language :: Python :: 3 :: Only',
|
||||
'Topic :: Scientific/Engineering',
|
||||
'Topic :: Scientific/Engineering :: Artificial Intelligence',
|
||||
|
|
Loading…
Reference in New Issue
Block a user