mediapipe-nightly 0.10.21.post20241223__cp310-cp310-manylinux_2_28_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (593) hide show
  1. mediapipe/__init__.py +26 -0
  2. mediapipe/calculators/__init__.py +0 -0
  3. mediapipe/calculators/audio/__init__.py +0 -0
  4. mediapipe/calculators/audio/mfcc_mel_calculators_pb2.py +33 -0
  5. mediapipe/calculators/audio/rational_factor_resample_calculator_pb2.py +33 -0
  6. mediapipe/calculators/audio/spectrogram_calculator_pb2.py +37 -0
  7. mediapipe/calculators/audio/stabilized_log_calculator_pb2.py +31 -0
  8. mediapipe/calculators/audio/time_series_framer_calculator_pb2.py +33 -0
  9. mediapipe/calculators/core/__init__.py +0 -0
  10. mediapipe/calculators/core/bypass_calculator_pb2.py +31 -0
  11. mediapipe/calculators/core/clip_vector_size_calculator_pb2.py +31 -0
  12. mediapipe/calculators/core/concatenate_vector_calculator_pb2.py +31 -0
  13. mediapipe/calculators/core/constant_side_packet_calculator_pb2.py +39 -0
  14. mediapipe/calculators/core/dequantize_byte_array_calculator_pb2.py +31 -0
  15. mediapipe/calculators/core/flow_limiter_calculator_pb2.py +32 -0
  16. mediapipe/calculators/core/gate_calculator_pb2.py +33 -0
  17. mediapipe/calculators/core/get_vector_item_calculator_pb2.py +31 -0
  18. mediapipe/calculators/core/graph_profile_calculator_pb2.py +31 -0
  19. mediapipe/calculators/core/packet_cloner_calculator_pb2.py +31 -0
  20. mediapipe/calculators/core/packet_resampler_calculator_pb2.py +33 -0
  21. mediapipe/calculators/core/packet_thinner_calculator_pb2.py +33 -0
  22. mediapipe/calculators/core/quantize_float_vector_calculator_pb2.py +31 -0
  23. mediapipe/calculators/core/sequence_shift_calculator_pb2.py +31 -0
  24. mediapipe/calculators/core/split_vector_calculator_pb2.py +33 -0
  25. mediapipe/calculators/image/__init__.py +0 -0
  26. mediapipe/calculators/image/bilateral_filter_calculator_pb2.py +31 -0
  27. mediapipe/calculators/image/feature_detector_calculator_pb2.py +31 -0
  28. mediapipe/calculators/image/image_clone_calculator_pb2.py +31 -0
  29. mediapipe/calculators/image/image_cropping_calculator_pb2.py +33 -0
  30. mediapipe/calculators/image/image_transformation_calculator_pb2.py +38 -0
  31. mediapipe/calculators/image/mask_overlay_calculator_pb2.py +33 -0
  32. mediapipe/calculators/image/opencv_encoded_image_to_image_frame_calculator_pb2.py +31 -0
  33. mediapipe/calculators/image/opencv_image_encoder_calculator_pb2.py +35 -0
  34. mediapipe/calculators/image/recolor_calculator_pb2.py +34 -0
  35. mediapipe/calculators/image/rotation_mode_pb2.py +29 -0
  36. mediapipe/calculators/image/scale_image_calculator_pb2.py +34 -0
  37. mediapipe/calculators/image/segmentation_smoothing_calculator_pb2.py +31 -0
  38. mediapipe/calculators/image/set_alpha_calculator_pb2.py +31 -0
  39. mediapipe/calculators/image/warp_affine_calculator_pb2.py +36 -0
  40. mediapipe/calculators/internal/__init__.py +0 -0
  41. mediapipe/calculators/internal/callback_packet_calculator_pb2.py +33 -0
  42. mediapipe/calculators/tensor/__init__.py +0 -0
  43. mediapipe/calculators/tensor/audio_to_tensor_calculator_pb2.py +35 -0
  44. mediapipe/calculators/tensor/bert_preprocessor_calculator_pb2.py +31 -0
  45. mediapipe/calculators/tensor/feedback_tensors_calculator_pb2.py +37 -0
  46. mediapipe/calculators/tensor/image_to_tensor_calculator_pb2.py +40 -0
  47. mediapipe/calculators/tensor/inference_calculator_pb2.py +63 -0
  48. mediapipe/calculators/tensor/landmarks_to_tensor_calculator_pb2.py +33 -0
  49. mediapipe/calculators/tensor/regex_preprocessor_calculator_pb2.py +31 -0
  50. mediapipe/calculators/tensor/tensor_converter_calculator_pb2.py +34 -0
  51. mediapipe/calculators/tensor/tensor_to_joints_calculator_pb2.py +31 -0
  52. mediapipe/calculators/tensor/tensors_readback_calculator_pb2.py +35 -0
  53. mediapipe/calculators/tensor/tensors_to_audio_calculator_pb2.py +33 -0
  54. mediapipe/calculators/tensor/tensors_to_classification_calculator_pb2.py +44 -0
  55. mediapipe/calculators/tensor/tensors_to_detections_calculator_pb2.py +39 -0
  56. mediapipe/calculators/tensor/tensors_to_floats_calculator_pb2.py +33 -0
  57. mediapipe/calculators/tensor/tensors_to_landmarks_calculator_pb2.py +33 -0
  58. mediapipe/calculators/tensor/tensors_to_segmentation_calculator_pb2.py +34 -0
  59. mediapipe/calculators/tensor/vector_to_tensor_calculator_pb2.py +27 -0
  60. mediapipe/calculators/tflite/__init__.py +0 -0
  61. mediapipe/calculators/tflite/ssd_anchors_calculator_pb2.py +32 -0
  62. mediapipe/calculators/tflite/tflite_converter_calculator_pb2.py +33 -0
  63. mediapipe/calculators/tflite/tflite_custom_op_resolver_calculator_pb2.py +31 -0
  64. mediapipe/calculators/tflite/tflite_inference_calculator_pb2.py +49 -0
  65. mediapipe/calculators/tflite/tflite_tensors_to_classification_calculator_pb2.py +31 -0
  66. mediapipe/calculators/tflite/tflite_tensors_to_detections_calculator_pb2.py +31 -0
  67. mediapipe/calculators/tflite/tflite_tensors_to_landmarks_calculator_pb2.py +33 -0
  68. mediapipe/calculators/tflite/tflite_tensors_to_segmentation_calculator_pb2.py +31 -0
  69. mediapipe/calculators/util/__init__.py +0 -0
  70. mediapipe/calculators/util/align_hand_to_pose_in_world_calculator_pb2.py +31 -0
  71. mediapipe/calculators/util/annotation_overlay_calculator_pb2.py +32 -0
  72. mediapipe/calculators/util/association_calculator_pb2.py +31 -0
  73. mediapipe/calculators/util/collection_has_min_size_calculator_pb2.py +31 -0
  74. mediapipe/calculators/util/combine_joints_calculator_pb2.py +36 -0
  75. mediapipe/calculators/util/detection_label_id_to_text_calculator_pb2.py +36 -0
  76. mediapipe/calculators/util/detections_to_rects_calculator_pb2.py +33 -0
  77. mediapipe/calculators/util/detections_to_render_data_calculator_pb2.py +33 -0
  78. mediapipe/calculators/util/face_to_rect_calculator_pb2.py +26 -0
  79. mediapipe/calculators/util/filter_detections_calculator_pb2.py +31 -0
  80. mediapipe/calculators/util/flat_color_image_calculator_pb2.py +32 -0
  81. mediapipe/calculators/util/labels_to_render_data_calculator_pb2.py +34 -0
  82. mediapipe/calculators/util/landmark_projection_calculator_pb2.py +31 -0
  83. mediapipe/calculators/util/landmarks_refinement_calculator_pb2.py +41 -0
  84. mediapipe/calculators/util/landmarks_smoothing_calculator_pb2.py +33 -0
  85. mediapipe/calculators/util/landmarks_to_detection_calculator_pb2.py +31 -0
  86. mediapipe/calculators/util/landmarks_to_floats_calculator_pb2.py +31 -0
  87. mediapipe/calculators/util/landmarks_to_render_data_calculator_pb2.py +32 -0
  88. mediapipe/calculators/util/landmarks_transformation_calculator_pb2.py +37 -0
  89. mediapipe/calculators/util/latency_pb2.py +26 -0
  90. mediapipe/calculators/util/local_file_contents_calculator_pb2.py +31 -0
  91. mediapipe/calculators/util/logic_calculator_pb2.py +34 -0
  92. mediapipe/calculators/util/non_max_suppression_calculator_pb2.py +35 -0
  93. mediapipe/calculators/util/packet_frequency_calculator_pb2.py +31 -0
  94. mediapipe/calculators/util/packet_frequency_pb2.py +26 -0
  95. mediapipe/calculators/util/packet_latency_calculator_pb2.py +31 -0
  96. mediapipe/calculators/util/rect_to_render_data_calculator_pb2.py +32 -0
  97. mediapipe/calculators/util/rect_to_render_scale_calculator_pb2.py +31 -0
  98. mediapipe/calculators/util/rect_transformation_calculator_pb2.py +31 -0
  99. mediapipe/calculators/util/refine_landmarks_from_heatmap_calculator_pb2.py +31 -0
  100. mediapipe/calculators/util/resource_provider_calculator_pb2.py +28 -0
  101. mediapipe/calculators/util/set_joints_visibility_calculator_pb2.py +41 -0
  102. mediapipe/calculators/util/thresholding_calculator_pb2.py +31 -0
  103. mediapipe/calculators/util/timed_box_list_id_to_label_calculator_pb2.py +31 -0
  104. mediapipe/calculators/util/timed_box_list_to_render_data_calculator_pb2.py +32 -0
  105. mediapipe/calculators/util/top_k_scores_calculator_pb2.py +31 -0
  106. mediapipe/calculators/util/visibility_copy_calculator_pb2.py +27 -0
  107. mediapipe/calculators/util/visibility_smoothing_calculator_pb2.py +31 -0
  108. mediapipe/calculators/video/__init__.py +0 -0
  109. mediapipe/calculators/video/box_detector_calculator_pb2.py +32 -0
  110. mediapipe/calculators/video/box_tracker_calculator_pb2.py +32 -0
  111. mediapipe/calculators/video/flow_packager_calculator_pb2.py +32 -0
  112. mediapipe/calculators/video/flow_to_image_calculator_pb2.py +31 -0
  113. mediapipe/calculators/video/motion_analysis_calculator_pb2.py +42 -0
  114. mediapipe/calculators/video/opencv_video_encoder_calculator_pb2.py +31 -0
  115. mediapipe/calculators/video/tool/__init__.py +0 -0
  116. mediapipe/calculators/video/tool/flow_quantizer_model_pb2.py +26 -0
  117. mediapipe/calculators/video/tracked_detection_manager_calculator_pb2.py +32 -0
  118. mediapipe/calculators/video/video_pre_stream_calculator_pb2.py +35 -0
  119. mediapipe/examples/__init__.py +14 -0
  120. mediapipe/examples/desktop/__init__.py +14 -0
  121. mediapipe/framework/__init__.py +0 -0
  122. mediapipe/framework/calculator_options_pb2.py +29 -0
  123. mediapipe/framework/calculator_pb2.py +59 -0
  124. mediapipe/framework/calculator_profile_pb2.py +48 -0
  125. mediapipe/framework/deps/__init__.py +0 -0
  126. mediapipe/framework/deps/proto_descriptor_pb2.py +29 -0
  127. mediapipe/framework/formats/__init__.py +0 -0
  128. mediapipe/framework/formats/affine_transform_data_pb2.py +28 -0
  129. mediapipe/framework/formats/annotation/__init__.py +0 -0
  130. mediapipe/framework/formats/annotation/locus_pb2.py +32 -0
  131. mediapipe/framework/formats/annotation/rasterization_pb2.py +29 -0
  132. mediapipe/framework/formats/body_rig_pb2.py +28 -0
  133. mediapipe/framework/formats/classification_pb2.py +31 -0
  134. mediapipe/framework/formats/detection_pb2.py +36 -0
  135. mediapipe/framework/formats/image_file_properties_pb2.py +26 -0
  136. mediapipe/framework/formats/image_format_pb2.py +29 -0
  137. mediapipe/framework/formats/landmark_pb2.py +37 -0
  138. mediapipe/framework/formats/location_data_pb2.py +38 -0
  139. mediapipe/framework/formats/matrix_data_pb2.py +31 -0
  140. mediapipe/framework/formats/motion/__init__.py +0 -0
  141. mediapipe/framework/formats/motion/optical_flow_field_data_pb2.py +30 -0
  142. mediapipe/framework/formats/object_detection/__init__.py +0 -0
  143. mediapipe/framework/formats/object_detection/anchor_pb2.py +26 -0
  144. mediapipe/framework/formats/rect_pb2.py +29 -0
  145. mediapipe/framework/formats/time_series_header_pb2.py +28 -0
  146. mediapipe/framework/graph_runtime_info_pb2.py +31 -0
  147. mediapipe/framework/mediapipe_options_pb2.py +27 -0
  148. mediapipe/framework/packet_factory_pb2.py +31 -0
  149. mediapipe/framework/packet_generator_pb2.py +33 -0
  150. mediapipe/framework/status_handler_pb2.py +28 -0
  151. mediapipe/framework/stream_handler/__init__.py +0 -0
  152. mediapipe/framework/stream_handler/default_input_stream_handler_pb2.py +27 -0
  153. mediapipe/framework/stream_handler/fixed_size_input_stream_handler_pb2.py +27 -0
  154. mediapipe/framework/stream_handler/sync_set_input_stream_handler_pb2.py +29 -0
  155. mediapipe/framework/stream_handler/timestamp_align_input_stream_handler_pb2.py +27 -0
  156. mediapipe/framework/stream_handler_pb2.py +30 -0
  157. mediapipe/framework/test_calculators_pb2.py +31 -0
  158. mediapipe/framework/thread_pool_executor_pb2.py +29 -0
  159. mediapipe/framework/tool/__init__.py +0 -0
  160. mediapipe/framework/tool/calculator_graph_template_pb2.py +44 -0
  161. mediapipe/framework/tool/field_data_pb2.py +28 -0
  162. mediapipe/framework/tool/node_chain_subgraph_pb2.py +31 -0
  163. mediapipe/framework/tool/packet_generator_wrapper_calculator_pb2.py +28 -0
  164. mediapipe/framework/tool/source_pb2.py +33 -0
  165. mediapipe/framework/tool/switch_container_pb2.py +32 -0
  166. mediapipe/gpu/__init__.py +0 -0
  167. mediapipe/gpu/copy_calculator_pb2.py +33 -0
  168. mediapipe/gpu/gl_animation_overlay_calculator_pb2.py +31 -0
  169. mediapipe/gpu/gl_context_options_pb2.py +31 -0
  170. mediapipe/gpu/gl_scaler_calculator_pb2.py +32 -0
  171. mediapipe/gpu/gl_surface_sink_calculator_pb2.py +32 -0
  172. mediapipe/gpu/gpu_origin_pb2.py +29 -0
  173. mediapipe/gpu/scale_mode_pb2.py +28 -0
  174. mediapipe/model_maker/__init__.py +27 -0
  175. mediapipe/model_maker/setup.py +107 -0
  176. mediapipe/modules/__init__.py +0 -0
  177. mediapipe/modules/face_detection/__init__.py +0 -0
  178. mediapipe/modules/face_detection/face_detection_full_range_cpu.binarypb +0 -0
  179. mediapipe/modules/face_detection/face_detection_full_range_sparse.tflite +0 -0
  180. mediapipe/modules/face_detection/face_detection_pb2.py +30 -0
  181. mediapipe/modules/face_detection/face_detection_short_range.tflite +0 -0
  182. mediapipe/modules/face_detection/face_detection_short_range_cpu.binarypb +0 -0
  183. mediapipe/modules/face_geometry/__init__.py +0 -0
  184. mediapipe/modules/face_geometry/data/__init__.py +0 -0
  185. mediapipe/modules/face_geometry/effect_renderer_calculator_pb2.py +27 -0
  186. mediapipe/modules/face_geometry/env_generator_calculator_pb2.py +28 -0
  187. mediapipe/modules/face_geometry/geometry_pipeline_calculator_pb2.py +27 -0
  188. mediapipe/modules/face_geometry/libs/__init__.py +0 -0
  189. mediapipe/modules/face_geometry/protos/__init__.py +0 -0
  190. mediapipe/modules/face_geometry/protos/environment_pb2.py +31 -0
  191. mediapipe/modules/face_geometry/protos/face_geometry_pb2.py +29 -0
  192. mediapipe/modules/face_geometry/protos/geometry_pipeline_metadata_pb2.py +32 -0
  193. mediapipe/modules/face_geometry/protos/mesh_3d_pb2.py +31 -0
  194. mediapipe/modules/face_landmark/__init__.py +0 -0
  195. mediapipe/modules/face_landmark/face_landmark.tflite +0 -0
  196. mediapipe/modules/face_landmark/face_landmark_front_cpu.binarypb +0 -0
  197. mediapipe/modules/face_landmark/face_landmark_with_attention.tflite +0 -0
  198. mediapipe/modules/hand_landmark/__init__.py +0 -0
  199. mediapipe/modules/hand_landmark/calculators/__init__.py +0 -0
  200. mediapipe/modules/hand_landmark/hand_landmark_full.tflite +0 -0
  201. mediapipe/modules/hand_landmark/hand_landmark_lite.tflite +0 -0
  202. mediapipe/modules/hand_landmark/hand_landmark_tracking_cpu.binarypb +0 -0
  203. mediapipe/modules/hand_landmark/handedness.txt +2 -0
  204. mediapipe/modules/holistic_landmark/__init__.py +0 -0
  205. mediapipe/modules/holistic_landmark/calculators/__init__.py +0 -0
  206. mediapipe/modules/holistic_landmark/calculators/roi_tracking_calculator_pb2.py +37 -0
  207. mediapipe/modules/holistic_landmark/hand_recrop.tflite +0 -0
  208. mediapipe/modules/holistic_landmark/holistic_landmark_cpu.binarypb +0 -0
  209. mediapipe/modules/iris_landmark/__init__.py +0 -0
  210. mediapipe/modules/iris_landmark/iris_landmark.tflite +0 -0
  211. mediapipe/modules/objectron/__init__.py +0 -0
  212. mediapipe/modules/objectron/calculators/__init__.py +0 -0
  213. mediapipe/modules/objectron/calculators/a_r_capture_metadata_pb2.py +102 -0
  214. mediapipe/modules/objectron/calculators/annotation_data_pb2.py +38 -0
  215. mediapipe/modules/objectron/calculators/belief_decoder_config_pb2.py +28 -0
  216. mediapipe/modules/objectron/calculators/camera_parameters_pb2.py +30 -0
  217. mediapipe/modules/objectron/calculators/filter_detection_calculator_pb2.py +35 -0
  218. mediapipe/modules/objectron/calculators/frame_annotation_to_rect_calculator_pb2.py +31 -0
  219. mediapipe/modules/objectron/calculators/frame_annotation_tracker_calculator_pb2.py +31 -0
  220. mediapipe/modules/objectron/calculators/lift_2d_frame_annotation_to_3d_calculator_pb2.py +32 -0
  221. mediapipe/modules/objectron/calculators/object_pb2.py +38 -0
  222. mediapipe/modules/objectron/calculators/tensors_to_objects_calculator_pb2.py +32 -0
  223. mediapipe/modules/objectron/calculators/tflite_tensors_to_objects_calculator_pb2.py +32 -0
  224. mediapipe/modules/objectron/object_detection_oidv4_labelmap.txt +24 -0
  225. mediapipe/modules/objectron/objectron_cpu.binarypb +0 -0
  226. mediapipe/modules/palm_detection/__init__.py +0 -0
  227. mediapipe/modules/palm_detection/palm_detection_full.tflite +0 -0
  228. mediapipe/modules/palm_detection/palm_detection_lite.tflite +0 -0
  229. mediapipe/modules/pose_detection/__init__.py +0 -0
  230. mediapipe/modules/pose_detection/pose_detection.tflite +0 -0
  231. mediapipe/modules/pose_landmark/__init__.py +0 -0
  232. mediapipe/modules/pose_landmark/pose_landmark_cpu.binarypb +0 -0
  233. mediapipe/modules/pose_landmark/pose_landmark_full.tflite +0 -0
  234. mediapipe/modules/selfie_segmentation/__init__.py +0 -0
  235. mediapipe/modules/selfie_segmentation/selfie_segmentation.tflite +0 -0
  236. mediapipe/modules/selfie_segmentation/selfie_segmentation_cpu.binarypb +0 -0
  237. mediapipe/modules/selfie_segmentation/selfie_segmentation_landscape.tflite +0 -0
  238. mediapipe/python/__init__.py +29 -0
  239. mediapipe/python/_framework_bindings.cpython-310-x86_64-linux-gnu.so +0 -0
  240. mediapipe/python/calculator_graph_test.py +251 -0
  241. mediapipe/python/image_frame_test.py +194 -0
  242. mediapipe/python/image_test.py +218 -0
  243. mediapipe/python/packet_creator.py +275 -0
  244. mediapipe/python/packet_getter.py +120 -0
  245. mediapipe/python/packet_test.py +533 -0
  246. mediapipe/python/solution_base.py +604 -0
  247. mediapipe/python/solution_base_test.py +396 -0
  248. mediapipe/python/solutions/__init__.py +27 -0
  249. mediapipe/python/solutions/download_utils.py +37 -0
  250. mediapipe/python/solutions/drawing_styles.py +249 -0
  251. mediapipe/python/solutions/drawing_utils.py +320 -0
  252. mediapipe/python/solutions/drawing_utils_test.py +258 -0
  253. mediapipe/python/solutions/face_detection.py +105 -0
  254. mediapipe/python/solutions/face_detection_test.py +92 -0
  255. mediapipe/python/solutions/face_mesh.py +125 -0
  256. mediapipe/python/solutions/face_mesh_connections.py +500 -0
  257. mediapipe/python/solutions/face_mesh_test.py +170 -0
  258. mediapipe/python/solutions/hands.py +153 -0
  259. mediapipe/python/solutions/hands_connections.py +32 -0
  260. mediapipe/python/solutions/hands_test.py +219 -0
  261. mediapipe/python/solutions/holistic.py +167 -0
  262. mediapipe/python/solutions/holistic_test.py +142 -0
  263. mediapipe/python/solutions/objectron.py +288 -0
  264. mediapipe/python/solutions/objectron_test.py +81 -0
  265. mediapipe/python/solutions/pose.py +192 -0
  266. mediapipe/python/solutions/pose_connections.py +22 -0
  267. mediapipe/python/solutions/pose_test.py +262 -0
  268. mediapipe/python/solutions/selfie_segmentation.py +76 -0
  269. mediapipe/python/solutions/selfie_segmentation_test.py +68 -0
  270. mediapipe/python/timestamp_test.py +78 -0
  271. mediapipe/tasks/__init__.py +14 -0
  272. mediapipe/tasks/cc/__init__.py +0 -0
  273. mediapipe/tasks/cc/audio/__init__.py +0 -0
  274. mediapipe/tasks/cc/audio/audio_classifier/__init__.py +0 -0
  275. mediapipe/tasks/cc/audio/audio_classifier/proto/__init__.py +0 -0
  276. mediapipe/tasks/cc/audio/audio_classifier/proto/audio_classifier_graph_options_pb2.py +35 -0
  277. mediapipe/tasks/cc/audio/audio_embedder/__init__.py +0 -0
  278. mediapipe/tasks/cc/audio/audio_embedder/proto/__init__.py +0 -0
  279. mediapipe/tasks/cc/audio/audio_embedder/proto/audio_embedder_graph_options_pb2.py +35 -0
  280. mediapipe/tasks/cc/audio/core/__init__.py +0 -0
  281. mediapipe/tasks/cc/audio/utils/__init__.py +0 -0
  282. mediapipe/tasks/cc/components/__init__.py +0 -0
  283. mediapipe/tasks/cc/components/calculators/__init__.py +0 -0
  284. mediapipe/tasks/cc/components/calculators/classification_aggregation_calculator_pb2.py +31 -0
  285. mediapipe/tasks/cc/components/calculators/score_calibration_calculator_pb2.py +35 -0
  286. mediapipe/tasks/cc/components/calculators/tensors_to_embeddings_calculator_pb2.py +32 -0
  287. mediapipe/tasks/cc/components/containers/__init__.py +0 -0
  288. mediapipe/tasks/cc/components/containers/proto/__init__.py +0 -0
  289. mediapipe/tasks/cc/components/containers/proto/classifications_pb2.py +30 -0
  290. mediapipe/tasks/cc/components/containers/proto/embeddings_pb2.py +35 -0
  291. mediapipe/tasks/cc/components/containers/proto/landmarks_detection_result_pb2.py +32 -0
  292. mediapipe/tasks/cc/components/processors/__init__.py +0 -0
  293. mediapipe/tasks/cc/components/processors/proto/__init__.py +0 -0
  294. mediapipe/tasks/cc/components/processors/proto/classification_postprocessing_graph_options_pb2.py +38 -0
  295. mediapipe/tasks/cc/components/processors/proto/classifier_options_pb2.py +27 -0
  296. mediapipe/tasks/cc/components/processors/proto/detection_postprocessing_graph_options_pb2.py +36 -0
  297. mediapipe/tasks/cc/components/processors/proto/detector_options_pb2.py +27 -0
  298. mediapipe/tasks/cc/components/processors/proto/embedder_options_pb2.py +27 -0
  299. mediapipe/tasks/cc/components/processors/proto/embedding_postprocessing_graph_options_pb2.py +32 -0
  300. mediapipe/tasks/cc/components/processors/proto/image_preprocessing_graph_options_pb2.py +34 -0
  301. mediapipe/tasks/cc/components/processors/proto/text_model_type_pb2.py +28 -0
  302. mediapipe/tasks/cc/components/processors/proto/text_preprocessing_graph_options_pb2.py +32 -0
  303. mediapipe/tasks/cc/components/utils/__init__.py +0 -0
  304. mediapipe/tasks/cc/core/__init__.py +0 -0
  305. mediapipe/tasks/cc/core/proto/__init__.py +0 -0
  306. mediapipe/tasks/cc/core/proto/acceleration_pb2.py +28 -0
  307. mediapipe/tasks/cc/core/proto/base_options_pb2.py +30 -0
  308. mediapipe/tasks/cc/core/proto/external_file_pb2.py +31 -0
  309. mediapipe/tasks/cc/core/proto/inference_subgraph_pb2.py +32 -0
  310. mediapipe/tasks/cc/core/proto/model_resources_calculator_pb2.py +32 -0
  311. mediapipe/tasks/cc/genai/__init__.py +0 -0
  312. mediapipe/tasks/cc/genai/inference/__init__.py +0 -0
  313. mediapipe/tasks/cc/genai/inference/c/__init__.py +0 -0
  314. mediapipe/tasks/cc/genai/inference/calculators/__init__.py +0 -0
  315. mediapipe/tasks/cc/genai/inference/calculators/detokenizer_calculator_pb2.py +27 -0
  316. mediapipe/tasks/cc/genai/inference/calculators/llm_gpu_calculator_pb2.py +32 -0
  317. mediapipe/tasks/cc/genai/inference/calculators/model_data_calculator_pb2.py +27 -0
  318. mediapipe/tasks/cc/genai/inference/calculators/tokenizer_calculator_pb2.py +29 -0
  319. mediapipe/tasks/cc/genai/inference/common/__init__.py +0 -0
  320. mediapipe/tasks/cc/genai/inference/proto/__init__.py +0 -0
  321. mediapipe/tasks/cc/genai/inference/proto/llm_file_metadata_pb2.py +32 -0
  322. mediapipe/tasks/cc/genai/inference/proto/llm_params_pb2.py +33 -0
  323. mediapipe/tasks/cc/genai/inference/proto/prompt_template_pb2.py +27 -0
  324. mediapipe/tasks/cc/genai/inference/proto/sampler_params_pb2.py +29 -0
  325. mediapipe/tasks/cc/genai/inference/proto/transformer_params_pb2.py +45 -0
  326. mediapipe/tasks/cc/genai/inference/utils/__init__.py +0 -0
  327. mediapipe/tasks/cc/genai/inference/utils/llm_utils/__init__.py +0 -0
  328. mediapipe/tasks/cc/genai/inference/utils/xnn_utils/__init__.py +0 -0
  329. mediapipe/tasks/cc/metadata/__init__.py +0 -0
  330. mediapipe/tasks/cc/metadata/python/__init__.py +0 -0
  331. mediapipe/tasks/cc/metadata/python/_pywrap_metadata_version.cpython-310-x86_64-linux-gnu.so +0 -0
  332. mediapipe/tasks/cc/metadata/tests/__init__.py +0 -0
  333. mediapipe/tasks/cc/metadata/utils/__init__.py +0 -0
  334. mediapipe/tasks/cc/text/__init__.py +0 -0
  335. mediapipe/tasks/cc/text/custom_ops/__init__.py +0 -0
  336. mediapipe/tasks/cc/text/custom_ops/ragged/__init__.py +0 -0
  337. mediapipe/tasks/cc/text/custom_ops/sentencepiece/__init__.py +0 -0
  338. mediapipe/tasks/cc/text/custom_ops/sentencepiece/testdata/__init__.py +0 -0
  339. mediapipe/tasks/cc/text/language_detector/__init__.py +0 -0
  340. mediapipe/tasks/cc/text/language_detector/custom_ops/__init__.py +0 -0
  341. mediapipe/tasks/cc/text/language_detector/custom_ops/utils/__init__.py +0 -0
  342. mediapipe/tasks/cc/text/language_detector/custom_ops/utils/hash/__init__.py +0 -0
  343. mediapipe/tasks/cc/text/language_detector/custom_ops/utils/utf/__init__.py +0 -0
  344. mediapipe/tasks/cc/text/text_classifier/__init__.py +0 -0
  345. mediapipe/tasks/cc/text/text_classifier/proto/__init__.py +0 -0
  346. mediapipe/tasks/cc/text/text_classifier/proto/text_classifier_graph_options_pb2.py +35 -0
  347. mediapipe/tasks/cc/text/text_embedder/__init__.py +0 -0
  348. mediapipe/tasks/cc/text/text_embedder/proto/__init__.py +0 -0
  349. mediapipe/tasks/cc/text/text_embedder/proto/text_embedder_graph_options_pb2.py +35 -0
  350. mediapipe/tasks/cc/text/tokenizers/__init__.py +0 -0
  351. mediapipe/tasks/cc/text/utils/__init__.py +0 -0
  352. mediapipe/tasks/cc/vision/__init__.py +0 -0
  353. mediapipe/tasks/cc/vision/core/__init__.py +0 -0
  354. mediapipe/tasks/cc/vision/custom_ops/__init__.py +0 -0
  355. mediapipe/tasks/cc/vision/face_detector/__init__.py +0 -0
  356. mediapipe/tasks/cc/vision/face_detector/proto/__init__.py +0 -0
  357. mediapipe/tasks/cc/vision/face_detector/proto/face_detector_graph_options_pb2.py +34 -0
  358. mediapipe/tasks/cc/vision/face_geometry/__init__.py +0 -0
  359. mediapipe/tasks/cc/vision/face_geometry/calculators/__init__.py +0 -0
  360. mediapipe/tasks/cc/vision/face_geometry/calculators/env_generator_calculator_pb2.py +28 -0
  361. mediapipe/tasks/cc/vision/face_geometry/calculators/geometry_pipeline_calculator_pb2.py +29 -0
  362. mediapipe/tasks/cc/vision/face_geometry/data/__init__.py +0 -0
  363. mediapipe/tasks/cc/vision/face_geometry/libs/__init__.py +0 -0
  364. mediapipe/tasks/cc/vision/face_geometry/proto/__init__.py +0 -0
  365. mediapipe/tasks/cc/vision/face_geometry/proto/environment_pb2.py +31 -0
  366. mediapipe/tasks/cc/vision/face_geometry/proto/face_geometry_graph_options_pb2.py +29 -0
  367. mediapipe/tasks/cc/vision/face_geometry/proto/face_geometry_pb2.py +29 -0
  368. mediapipe/tasks/cc/vision/face_geometry/proto/geometry_pipeline_metadata_pb2.py +32 -0
  369. mediapipe/tasks/cc/vision/face_geometry/proto/mesh_3d_pb2.py +31 -0
  370. mediapipe/tasks/cc/vision/face_landmarker/__init__.py +0 -0
  371. mediapipe/tasks/cc/vision/face_landmarker/proto/__init__.py +0 -0
  372. mediapipe/tasks/cc/vision/face_landmarker/proto/face_blendshapes_graph_options_pb2.py +34 -0
  373. mediapipe/tasks/cc/vision/face_landmarker/proto/face_landmarker_graph_options_pb2.py +37 -0
  374. mediapipe/tasks/cc/vision/face_landmarker/proto/face_landmarks_detector_graph_options_pb2.py +35 -0
  375. mediapipe/tasks/cc/vision/face_landmarker/proto/tensors_to_face_landmarks_graph_options_pb2.py +32 -0
  376. mediapipe/tasks/cc/vision/face_stylizer/__init__.py +0 -0
  377. mediapipe/tasks/cc/vision/face_stylizer/calculators/__init__.py +0 -0
  378. mediapipe/tasks/cc/vision/face_stylizer/calculators/tensors_to_image_calculator_pb2.py +36 -0
  379. mediapipe/tasks/cc/vision/face_stylizer/proto/__init__.py +0 -0
  380. mediapipe/tasks/cc/vision/face_stylizer/proto/face_stylizer_graph_options_pb2.py +35 -0
  381. mediapipe/tasks/cc/vision/gesture_recognizer/__init__.py +0 -0
  382. mediapipe/tasks/cc/vision/gesture_recognizer/calculators/__init__.py +0 -0
  383. mediapipe/tasks/cc/vision/gesture_recognizer/calculators/combined_prediction_calculator_pb2.py +33 -0
  384. mediapipe/tasks/cc/vision/gesture_recognizer/calculators/landmarks_to_matrix_calculator_pb2.py +31 -0
  385. mediapipe/tasks/cc/vision/gesture_recognizer/proto/__init__.py +0 -0
  386. mediapipe/tasks/cc/vision/gesture_recognizer/proto/gesture_classifier_graph_options_pb2.py +35 -0
  387. mediapipe/tasks/cc/vision/gesture_recognizer/proto/gesture_embedder_graph_options_pb2.py +34 -0
  388. mediapipe/tasks/cc/vision/gesture_recognizer/proto/gesture_recognizer_graph_options_pb2.py +36 -0
  389. mediapipe/tasks/cc/vision/gesture_recognizer/proto/hand_gesture_recognizer_graph_options_pb2.py +36 -0
  390. mediapipe/tasks/cc/vision/hand_detector/__init__.py +0 -0
  391. mediapipe/tasks/cc/vision/hand_detector/proto/__init__.py +0 -0
  392. mediapipe/tasks/cc/vision/hand_detector/proto/hand_detector_graph_options_pb2.py +34 -0
  393. mediapipe/tasks/cc/vision/hand_detector/proto/hand_detector_result_pb2.py +30 -0
  394. mediapipe/tasks/cc/vision/hand_landmarker/__init__.py +0 -0
  395. mediapipe/tasks/cc/vision/hand_landmarker/calculators/__init__.py +0 -0
  396. mediapipe/tasks/cc/vision/hand_landmarker/calculators/hand_association_calculator_pb2.py +31 -0
  397. mediapipe/tasks/cc/vision/hand_landmarker/proto/__init__.py +0 -0
  398. mediapipe/tasks/cc/vision/hand_landmarker/proto/hand_landmarker_graph_options_pb2.py +36 -0
  399. mediapipe/tasks/cc/vision/hand_landmarker/proto/hand_landmarks_detector_graph_options_pb2.py +34 -0
  400. mediapipe/tasks/cc/vision/hand_landmarker/proto/hand_roi_refinement_graph_options_pb2.py +28 -0
  401. mediapipe/tasks/cc/vision/holistic_landmarker/__init__.py +0 -0
  402. mediapipe/tasks/cc/vision/holistic_landmarker/proto/__init__.py +0 -0
  403. mediapipe/tasks/cc/vision/holistic_landmarker/proto/holistic_landmarker_graph_options_pb2.py +34 -0
  404. mediapipe/tasks/cc/vision/holistic_landmarker/proto/holistic_result_pb2.py +29 -0
  405. mediapipe/tasks/cc/vision/image_classifier/__init__.py +0 -0
  406. mediapipe/tasks/cc/vision/image_classifier/proto/__init__.py +0 -0
  407. mediapipe/tasks/cc/vision/image_classifier/proto/image_classifier_graph_options_pb2.py +35 -0
  408. mediapipe/tasks/cc/vision/image_embedder/__init__.py +0 -0
  409. mediapipe/tasks/cc/vision/image_embedder/proto/__init__.py +0 -0
  410. mediapipe/tasks/cc/vision/image_embedder/proto/image_embedder_graph_options_pb2.py +35 -0
  411. mediapipe/tasks/cc/vision/image_generator/__init__.py +0 -0
  412. mediapipe/tasks/cc/vision/image_generator/diffuser/__init__.py +0 -0
  413. mediapipe/tasks/cc/vision/image_generator/diffuser/stable_diffusion_iterate_calculator_pb2.py +40 -0
  414. mediapipe/tasks/cc/vision/image_generator/proto/__init__.py +0 -0
  415. mediapipe/tasks/cc/vision/image_generator/proto/conditioned_image_graph_options_pb2.py +40 -0
  416. mediapipe/tasks/cc/vision/image_generator/proto/control_plugin_graph_options_pb2.py +34 -0
  417. mediapipe/tasks/cc/vision/image_generator/proto/image_generator_graph_options_pb2.py +30 -0
  418. mediapipe/tasks/cc/vision/image_segmenter/__init__.py +0 -0
  419. mediapipe/tasks/cc/vision/image_segmenter/calculators/__init__.py +0 -0
  420. mediapipe/tasks/cc/vision/image_segmenter/calculators/tensors_to_segmentation_calculator_pb2.py +34 -0
  421. mediapipe/tasks/cc/vision/image_segmenter/proto/__init__.py +0 -0
  422. mediapipe/tasks/cc/vision/image_segmenter/proto/image_segmenter_graph_options_pb2.py +35 -0
  423. mediapipe/tasks/cc/vision/image_segmenter/proto/segmenter_options_pb2.py +33 -0
  424. mediapipe/tasks/cc/vision/interactive_segmenter/__init__.py +0 -0
  425. mediapipe/tasks/cc/vision/object_detector/__init__.py +0 -0
  426. mediapipe/tasks/cc/vision/object_detector/proto/__init__.py +0 -0
  427. mediapipe/tasks/cc/vision/object_detector/proto/object_detector_options_pb2.py +34 -0
  428. mediapipe/tasks/cc/vision/pose_detector/__init__.py +0 -0
  429. mediapipe/tasks/cc/vision/pose_detector/proto/__init__.py +0 -0
  430. mediapipe/tasks/cc/vision/pose_detector/proto/pose_detector_graph_options_pb2.py +34 -0
  431. mediapipe/tasks/cc/vision/pose_landmarker/__init__.py +0 -0
  432. mediapipe/tasks/cc/vision/pose_landmarker/proto/__init__.py +0 -0
  433. mediapipe/tasks/cc/vision/pose_landmarker/proto/pose_landmarker_graph_options_pb2.py +36 -0
  434. mediapipe/tasks/cc/vision/pose_landmarker/proto/pose_landmarks_detector_graph_options_pb2.py +34 -0
  435. mediapipe/tasks/cc/vision/utils/__init__.py +0 -0
  436. mediapipe/tasks/cc/vision/utils/ghum/__init__.py +0 -0
  437. mediapipe/tasks/metadata/image_segmenter_metadata_schema.fbs +59 -0
  438. mediapipe/tasks/metadata/image_segmenter_metadata_schema_py_generated.py +108 -0
  439. mediapipe/tasks/metadata/metadata_schema.fbs +732 -0
  440. mediapipe/tasks/metadata/metadata_schema_py_generated.py +3251 -0
  441. mediapipe/tasks/metadata/object_detector_metadata_schema.fbs +98 -0
  442. mediapipe/tasks/metadata/object_detector_metadata_schema_py_generated.py +674 -0
  443. mediapipe/tasks/metadata/schema_py_generated.py +18438 -0
  444. mediapipe/tasks/python/__init__.py +27 -0
  445. mediapipe/tasks/python/audio/__init__.py +33 -0
  446. mediapipe/tasks/python/audio/audio_classifier.py +324 -0
  447. mediapipe/tasks/python/audio/audio_embedder.py +285 -0
  448. mediapipe/tasks/python/audio/core/__init__.py +16 -0
  449. mediapipe/tasks/python/audio/core/audio_record.py +125 -0
  450. mediapipe/tasks/python/audio/core/audio_task_running_mode.py +29 -0
  451. mediapipe/tasks/python/audio/core/base_audio_task_api.py +181 -0
  452. mediapipe/tasks/python/benchmark/__init__.py +13 -0
  453. mediapipe/tasks/python/benchmark/benchmark_utils.py +70 -0
  454. mediapipe/tasks/python/benchmark/vision/__init__.py +13 -0
  455. mediapipe/tasks/python/benchmark/vision/benchmark.py +99 -0
  456. mediapipe/tasks/python/benchmark/vision/core/__init__.py +14 -0
  457. mediapipe/tasks/python/benchmark/vision/core/base_vision_benchmark_api.py +40 -0
  458. mediapipe/tasks/python/components/__init__.py +13 -0
  459. mediapipe/tasks/python/components/containers/__init__.py +53 -0
  460. mediapipe/tasks/python/components/containers/audio_data.py +137 -0
  461. mediapipe/tasks/python/components/containers/bounding_box.py +73 -0
  462. mediapipe/tasks/python/components/containers/category.py +78 -0
  463. mediapipe/tasks/python/components/containers/classification_result.py +111 -0
  464. mediapipe/tasks/python/components/containers/detections.py +181 -0
  465. mediapipe/tasks/python/components/containers/embedding_result.py +89 -0
  466. mediapipe/tasks/python/components/containers/keypoint.py +77 -0
  467. mediapipe/tasks/python/components/containers/landmark.py +122 -0
  468. mediapipe/tasks/python/components/containers/landmark_detection_result.py +106 -0
  469. mediapipe/tasks/python/components/containers/rect.py +109 -0
  470. mediapipe/tasks/python/components/processors/__init__.py +23 -0
  471. mediapipe/tasks/python/components/processors/classifier_options.py +86 -0
  472. mediapipe/tasks/python/components/utils/__init__.py +13 -0
  473. mediapipe/tasks/python/components/utils/cosine_similarity.py +68 -0
  474. mediapipe/tasks/python/core/__init__.py +13 -0
  475. mediapipe/tasks/python/core/base_options.py +121 -0
  476. mediapipe/tasks/python/core/optional_dependencies.py +25 -0
  477. mediapipe/tasks/python/core/task_info.py +139 -0
  478. mediapipe/tasks/python/genai/__init__.py +14 -0
  479. mediapipe/tasks/python/genai/bundler/__init__.py +23 -0
  480. mediapipe/tasks/python/genai/bundler/llm_bundler.py +130 -0
  481. mediapipe/tasks/python/genai/bundler/llm_bundler_test.py +168 -0
  482. mediapipe/tasks/python/genai/converter/__init__.py +24 -0
  483. mediapipe/tasks/python/genai/converter/converter_base.py +179 -0
  484. mediapipe/tasks/python/genai/converter/converter_factory.py +79 -0
  485. mediapipe/tasks/python/genai/converter/llm_converter.py +374 -0
  486. mediapipe/tasks/python/genai/converter/llm_converter_test.py +63 -0
  487. mediapipe/tasks/python/genai/converter/pytorch_converter.py +318 -0
  488. mediapipe/tasks/python/genai/converter/pytorch_converter_test.py +86 -0
  489. mediapipe/tasks/python/genai/converter/quantization_util.py +516 -0
  490. mediapipe/tasks/python/genai/converter/quantization_util_test.py +259 -0
  491. mediapipe/tasks/python/genai/converter/safetensors_converter.py +580 -0
  492. mediapipe/tasks/python/genai/converter/safetensors_converter_test.py +83 -0
  493. mediapipe/tasks/python/genai/converter/weight_bins_writer.py +120 -0
  494. mediapipe/tasks/python/genai/converter/weight_bins_writer_test.py +95 -0
  495. mediapipe/tasks/python/metadata/__init__.py +13 -0
  496. mediapipe/tasks/python/metadata/flatbuffers_lib/_pywrap_flatbuffers.cpython-310-x86_64-linux-gnu.so +0 -0
  497. mediapipe/tasks/python/metadata/metadata.py +928 -0
  498. mediapipe/tasks/python/metadata/metadata_displayer_cli.py +34 -0
  499. mediapipe/tasks/python/metadata/metadata_writers/__init__.py +13 -0
  500. mediapipe/tasks/python/metadata/metadata_writers/face_stylizer.py +138 -0
  501. mediapipe/tasks/python/metadata/metadata_writers/image_classifier.py +71 -0
  502. mediapipe/tasks/python/metadata/metadata_writers/image_segmenter.py +170 -0
  503. mediapipe/tasks/python/metadata/metadata_writers/metadata_info.py +1166 -0
  504. mediapipe/tasks/python/metadata/metadata_writers/metadata_writer.py +845 -0
  505. mediapipe/tasks/python/metadata/metadata_writers/model_asset_bundle_utils.py +71 -0
  506. mediapipe/tasks/python/metadata/metadata_writers/object_detector.py +331 -0
  507. mediapipe/tasks/python/metadata/metadata_writers/text_classifier.py +119 -0
  508. mediapipe/tasks/python/metadata/metadata_writers/writer_utils.py +91 -0
  509. mediapipe/tasks/python/test/__init__.py +13 -0
  510. mediapipe/tasks/python/test/audio/__init__.py +13 -0
  511. mediapipe/tasks/python/test/audio/audio_classifier_test.py +387 -0
  512. mediapipe/tasks/python/test/audio/audio_embedder_test.py +297 -0
  513. mediapipe/tasks/python/test/test_utils.py +196 -0
  514. mediapipe/tasks/python/test/text/__init__.py +13 -0
  515. mediapipe/tasks/python/test/text/language_detector_test.py +228 -0
  516. mediapipe/tasks/python/test/text/text_classifier_test.py +235 -0
  517. mediapipe/tasks/python/test/text/text_embedder_test.py +326 -0
  518. mediapipe/tasks/python/test/vision/__init__.py +13 -0
  519. mediapipe/tasks/python/test/vision/face_aligner_test.py +190 -0
  520. mediapipe/tasks/python/test/vision/face_detector_test.py +523 -0
  521. mediapipe/tasks/python/test/vision/face_landmarker_test.py +565 -0
  522. mediapipe/tasks/python/test/vision/face_stylizer_test.py +191 -0
  523. mediapipe/tasks/python/test/vision/hand_landmarker_test.py +437 -0
  524. mediapipe/tasks/python/test/vision/holistic_landmarker_test.py +544 -0
  525. mediapipe/tasks/python/test/vision/image_classifier_test.py +657 -0
  526. mediapipe/tasks/python/test/vision/image_embedder_test.py +423 -0
  527. mediapipe/tasks/python/test/vision/image_segmenter_test.py +512 -0
  528. mediapipe/tasks/python/test/vision/interactive_segmenter_test.py +341 -0
  529. mediapipe/tasks/python/test/vision/object_detector_test.py +493 -0
  530. mediapipe/tasks/python/test/vision/pose_landmarker_test.py +518 -0
  531. mediapipe/tasks/python/text/__init__.py +35 -0
  532. mediapipe/tasks/python/text/core/__init__.py +16 -0
  533. mediapipe/tasks/python/text/core/base_text_task_api.py +54 -0
  534. mediapipe/tasks/python/text/language_detector.py +220 -0
  535. mediapipe/tasks/python/text/text_classifier.py +187 -0
  536. mediapipe/tasks/python/text/text_embedder.py +188 -0
  537. mediapipe/tasks/python/vision/__init__.py +90 -0
  538. mediapipe/tasks/python/vision/core/__init__.py +14 -0
  539. mediapipe/tasks/python/vision/core/base_vision_task_api.py +226 -0
  540. mediapipe/tasks/python/vision/core/image_processing_options.py +39 -0
  541. mediapipe/tasks/python/vision/core/vision_task_running_mode.py +31 -0
  542. mediapipe/tasks/python/vision/face_aligner.py +158 -0
  543. mediapipe/tasks/python/vision/face_detector.py +332 -0
  544. mediapipe/tasks/python/vision/face_landmarker.py +3244 -0
  545. mediapipe/tasks/python/vision/face_stylizer.py +158 -0
  546. mediapipe/tasks/python/vision/gesture_recognizer.py +480 -0
  547. mediapipe/tasks/python/vision/hand_landmarker.py +504 -0
  548. mediapipe/tasks/python/vision/holistic_landmarker.py +576 -0
  549. mediapipe/tasks/python/vision/image_classifier.py +358 -0
  550. mediapipe/tasks/python/vision/image_embedder.py +362 -0
  551. mediapipe/tasks/python/vision/image_segmenter.py +433 -0
  552. mediapipe/tasks/python/vision/interactive_segmenter.py +285 -0
  553. mediapipe/tasks/python/vision/object_detector.py +389 -0
  554. mediapipe/tasks/python/vision/pose_landmarker.py +455 -0
  555. mediapipe/util/__init__.py +0 -0
  556. mediapipe/util/analytics/__init__.py +0 -0
  557. mediapipe/util/analytics/mediapipe_log_extension_pb2.py +44 -0
  558. mediapipe/util/analytics/mediapipe_logging_enums_pb2.py +37 -0
  559. mediapipe/util/audio_decoder_pb2.py +33 -0
  560. mediapipe/util/color_pb2.py +33 -0
  561. mediapipe/util/label_map_pb2.py +27 -0
  562. mediapipe/util/render_data_pb2.py +58 -0
  563. mediapipe/util/sequence/__init__.py +14 -0
  564. mediapipe/util/sequence/media_sequence.py +716 -0
  565. mediapipe/util/sequence/media_sequence_test.py +290 -0
  566. mediapipe/util/sequence/media_sequence_util.py +800 -0
  567. mediapipe/util/sequence/media_sequence_util_test.py +389 -0
  568. mediapipe/util/tracking/__init__.py +0 -0
  569. mediapipe/util/tracking/box_detector_pb2.py +39 -0
  570. mediapipe/util/tracking/box_tracker_pb2.py +32 -0
  571. mediapipe/util/tracking/camera_motion_pb2.py +31 -0
  572. mediapipe/util/tracking/flow_packager_pb2.py +60 -0
  573. mediapipe/util/tracking/frame_selection_pb2.py +35 -0
  574. mediapipe/util/tracking/frame_selection_solution_evaluator_pb2.py +28 -0
  575. mediapipe/util/tracking/motion_analysis_pb2.py +35 -0
  576. mediapipe/util/tracking/motion_estimation_pb2.py +66 -0
  577. mediapipe/util/tracking/motion_models_pb2.py +42 -0
  578. mediapipe/util/tracking/motion_saliency_pb2.py +26 -0
  579. mediapipe/util/tracking/push_pull_filtering_pb2.py +26 -0
  580. mediapipe/util/tracking/region_flow_computation_pb2.py +59 -0
  581. mediapipe/util/tracking/region_flow_pb2.py +49 -0
  582. mediapipe/util/tracking/tone_estimation_pb2.py +45 -0
  583. mediapipe/util/tracking/tone_models_pb2.py +32 -0
  584. mediapipe/util/tracking/tracked_detection_manager_config_pb2.py +26 -0
  585. mediapipe/util/tracking/tracking_pb2.py +73 -0
  586. mediapipe_nightly-0.10.21.post20241223.dist-info/LICENSE +218 -0
  587. mediapipe_nightly-0.10.21.post20241223.dist-info/METADATA +199 -0
  588. mediapipe_nightly-0.10.21.post20241223.dist-info/RECORD +593 -0
  589. mediapipe_nightly-0.10.21.post20241223.dist-info/WHEEL +5 -0
  590. mediapipe_nightly-0.10.21.post20241223.dist-info/top_level.txt +4 -0
  591. mediapipe_nightly.libs/libEGL-48f73270.so.1.1.0 +0 -0
  592. mediapipe_nightly.libs/libGLESv2-ed5eda4f.so.2.1.0 +0 -0
  593. mediapipe_nightly.libs/libGLdispatch-64b28464.so.0.0.0 +0 -0
@@ -0,0 +1,800 @@
1
+ """Copyright 2019 The MediaPipe Authors.
2
+
3
+ Licensed under the Apache License, Version 2.0 (the "License");
4
+ you may not use this file except in compliance with the License.
5
+ You may obtain a copy of the License at
6
+
7
+ http://www.apache.org/licenses/LICENSE-2.0
8
+
9
+ Unless required by applicable law or agreed to in writing, software
10
+ distributed under the License is distributed on an "AS IS" BASIS,
11
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ See the License for the specific language governing permissions and
13
+ limitations under the License.
14
+
15
+ Utilities for creating MediaSequence functions.
16
+
17
+ A set of lightweight functions to simplify access to tensorflow SequenceExample
18
+ features and functions to create getters and setters for common types.
19
+ """
20
+
21
+ from __future__ import absolute_import
22
+ from __future__ import division
23
+ from __future__ import print_function
24
+
25
+ import types
26
+ import tensorflow.compat.v1 as tf
27
+
28
+
29
+ def function_with_default(f, default):
30
+ """Creates a new function with a default last parameter."""
31
+ return types.FunctionType(f.__code__, f.__globals__, f.__name__,
32
+ (default,), f.__closure__)
33
+
34
+
35
+ def add_functions_to_module(function_dict, module_dict=None):
36
+ """Adds functions to another module.
37
+
38
+ Args:
39
+ function_dict: a list of names and function references. The functions will
40
+ be accessible in the new module by the name.
41
+ module_dict: The results of globals() for the current module or
42
+ a_module.__dict__() call. Adding values to these dicts makes the functions
43
+ accessible from the module. If not specified, globals() is used.
44
+ """
45
+ if module_dict is None:
46
+ module_dict = globals()
47
+ for name in function_dict:
48
+ module_dict[name] = function_dict[name]
49
+
50
+
51
+ def merge_prefix(prefix, key):
52
+ if prefix:
53
+ return "/".join((prefix, key))
54
+ else:
55
+ return key
56
+
57
+
58
+ def has_context(key, sequence, prefix=""):
59
+ return merge_prefix(prefix, key) in sequence.context.feature
60
+
61
+
62
+ def clear_context(key, sequence, prefix=""):
63
+ del sequence.context.feature[merge_prefix(prefix, key)]
64
+
65
+
66
+ def set_context_float(key, value, sequence, prefix=""):
67
+ sequence.context.feature[merge_prefix(prefix, key)].float_list.value[:] = (
68
+ value,)
69
+
70
+
71
+ def get_context_float(key, sequence, prefix=""):
72
+ return sequence.context.feature[merge_prefix(
73
+ prefix, key)].float_list.value[0]
74
+
75
+
76
+ def set_context_bytes(key, value, sequence, prefix=""):
77
+ sequence.context.feature[merge_prefix(
78
+ prefix, key)].bytes_list.value[:] = (value,)
79
+
80
+
81
+ def get_context_bytes(key, sequence, prefix=""):
82
+ return sequence.context.feature[merge_prefix(prefix, key)].bytes_list.value[0]
83
+
84
+
85
+ def set_context_int(key, value, sequence, prefix=""):
86
+ sequence.context.feature[merge_prefix(
87
+ prefix, key)].int64_list.value[:] = (value,)
88
+
89
+
90
+ def get_context_int(key, sequence, prefix=""):
91
+ return sequence.context.feature[merge_prefix(prefix, key)].int64_list.value[0]
92
+
93
+
94
+ def set_context_float_list(key, value, sequence, prefix=""):
95
+ sequence.context.feature[merge_prefix(
96
+ prefix, key)].float_list.value[:] = value
97
+
98
+
99
+ def get_context_float_list(key, sequence, prefix=""):
100
+ return sequence.context.feature[merge_prefix(prefix, key)].float_list.value
101
+
102
+
103
+ def set_context_bytes_list(key, value, sequence, prefix=""):
104
+ sequence.context.feature[merge_prefix(
105
+ prefix, key)].bytes_list.value[:] = value
106
+
107
+
108
+ def get_context_bytes_list(key, sequence, prefix=""):
109
+ return sequence.context.feature[merge_prefix(prefix, key)].bytes_list.value
110
+
111
+
112
+ def set_context_int_list(key, value, sequence, prefix=""):
113
+ sequence.context.feature[merge_prefix(
114
+ prefix, key)].int64_list.value[:] = value
115
+
116
+
117
+ def get_context_int_list(key, sequence, prefix=""):
118
+ return sequence.context.feature[merge_prefix(prefix, key)].int64_list.value
119
+
120
+
121
+ def has_feature_list(key, sequence, prefix=""):
122
+ return merge_prefix(prefix, key) in sequence.feature_lists.feature_list
123
+
124
+
125
+ def get_feature_list_size(key, sequence, prefix=""):
126
+ if has_feature_list(merge_prefix(prefix, key), sequence):
127
+ return len(sequence.feature_lists.feature_list[merge_prefix(
128
+ prefix, key)].feature)
129
+ else:
130
+ return 0
131
+
132
+
133
+ def clear_feature_list(key, sequence, prefix=""):
134
+ del sequence.feature_lists.feature_list[merge_prefix(prefix, key)]
135
+
136
+
137
+ def get_float_list_at(key, index, sequence, prefix=""):
138
+ return sequence.feature_lists.feature_list[merge_prefix(prefix, key)].feature[
139
+ index].float_list.value
140
+
141
+
142
+ def get_int_list_at(key, index, sequence, prefix=""):
143
+ return sequence.feature_lists.feature_list[merge_prefix(prefix, key)].feature[
144
+ index].int64_list.value
145
+
146
+
147
+ def get_bytes_list_at(key, index, sequence, prefix=""):
148
+ return sequence.feature_lists.feature_list[merge_prefix(prefix, key)].feature[
149
+ index].bytes_list.value
150
+
151
+
152
+ def add_float_list(key, values, sequence, prefix=""):
153
+ sequence.feature_lists.feature_list[merge_prefix(prefix, key)].feature.add(
154
+ ).float_list.value[:] = values
155
+
156
+
157
+ def add_bytes_list(key, values, sequence, prefix=""):
158
+ sequence.feature_lists.feature_list[merge_prefix(prefix, key)].feature.add(
159
+ ).bytes_list.value[:] = values
160
+
161
+
162
+ def add_int_list(key, values, sequence, prefix=""):
163
+ sequence.feature_lists.feature_list[merge_prefix(prefix, key)].feature.add(
164
+ ).int64_list.value[:] = values
165
+
166
+
167
+ def get_float_at(key, index, sequence, prefix=""):
168
+ return sequence.feature_lists.feature_list[merge_prefix(prefix, key)].feature[
169
+ index].float_list.value[0]
170
+
171
+
172
+ def get_int_at(key, index, sequence, prefix=""):
173
+ return sequence.feature_lists.feature_list[merge_prefix(prefix, key)].feature[
174
+ index].int64_list.value[0]
175
+
176
+
177
+ def get_bytes_at(key, index, sequence, prefix=""):
178
+ return sequence.feature_lists.feature_list[merge_prefix(prefix, key)].feature[
179
+ index].bytes_list.value[0]
180
+
181
+
182
+ def add_float(key, value, sequence, prefix=""):
183
+ sequence.feature_lists.feature_list[merge_prefix(prefix, key)].feature.add(
184
+ ).float_list.value[:] = (value,)
185
+
186
+
187
+ def add_bytes(key, value, sequence, prefix=""):
188
+ sequence.feature_lists.feature_list[merge_prefix(prefix, key)].feature.add(
189
+ ).bytes_list.value[:] = (value,)
190
+
191
+
192
+ def add_int(key, value, sequence, prefix=""):
193
+ sequence.feature_lists.feature_list[merge_prefix(prefix, key)].feature.add(
194
+ ).int64_list.value[:] = (value,)
195
+
196
+
197
+ def create_bytes_list_context_feature(name, key, prefix="", module_dict=None):
198
+ """Creates accessor functions for list of bytes features.
199
+
200
+ The provided functions are has_${NAME}, get_${NAME}, set_${NAME} and
201
+ clear_${NAME}.
202
+
203
+ Example:
204
+ example = tensorflow.train.SequenceExample()
205
+ set_clip_label_string(["dog", "cat"], example)
206
+ if has_clip_label_string(example):
207
+ clip_label_string = get_clip_label_string(example)
208
+ clear_clip_label_string(example)
209
+
210
+ Args:
211
+ name: the name of the feature to use in function names.
212
+ key: the key for this feature in the SequenceExample.
213
+ prefix: a prefix to append to the key in the SequenceExample
214
+ module_dict: adds the functions to the corresponding module dict.
215
+ """
216
+ def _has(sequence_example, prefix=prefix):
217
+ return has_context(key, sequence_example, prefix=prefix)
218
+
219
+ def _get(sequence_example, prefix=prefix):
220
+ return get_context_bytes_list(key, sequence_example, prefix=prefix)
221
+
222
+ def _clear(sequence_example, prefix=prefix):
223
+ clear_context(key, sequence_example, prefix=prefix)
224
+
225
+ def _set(value, sequence_example, prefix=prefix):
226
+ set_context_bytes_list(key, value, sequence_example, prefix=prefix)
227
+
228
+ def _get_key(prefix=prefix):
229
+ return merge_prefix(prefix, key)
230
+
231
+ def _get_default_parser():
232
+ return tf.io.VarLenFeature(tf.string)
233
+
234
+ function_dict = {
235
+ "has_" + name: _has,
236
+ "get_" + name: _get,
237
+ "clear_" + name: _clear,
238
+ "set_" + name: _set,
239
+ "get_" + name + "_key": _get_key,
240
+ "get_" + name + "_default_parser": _get_default_parser,
241
+ }
242
+ add_functions_to_module(function_dict, module_dict)
243
+
244
+
245
+ def create_float_list_context_feature(name, key, prefix="", module_dict=None):
246
+ """Creates accessor functions for list of floats features.
247
+
248
+ The provided functions are has_${NAME}, get_${NAME}, set_${NAME} and
249
+ clear_${NAME}.
250
+
251
+ Example:
252
+ example = tensorflow.train.SequenceExample()
253
+ set_segment_label_confidence([0.47, 0.49], example)
254
+ if has_segment_label_confidence(example):
255
+ confidences = get_segment_label_confidence(example)
256
+ clear_segment_label_confidence(example)
257
+
258
+ Args:
259
+ name: the name of the feature to use in function names.
260
+ key: the key for this feature in the SequenceExample.
261
+ prefix: a prefix to append to the key in the SequenceExample
262
+ module_dict: adds the functions to the corresponding module dict.
263
+ """
264
+ def _has(sequence_example, prefix=prefix):
265
+ return has_context(key, sequence_example, prefix=prefix)
266
+
267
+ def _get(sequence_example, prefix=prefix):
268
+ return get_context_float_list(key, sequence_example, prefix=prefix)
269
+
270
+ def _clear(sequence_example, prefix=prefix):
271
+ clear_context(key, sequence_example, prefix=prefix)
272
+
273
+ def _set(value, sequence_example, prefix=prefix):
274
+ set_context_float_list(key, value, sequence_example, prefix=prefix)
275
+
276
+ def _get_key(prefix=prefix):
277
+ return merge_prefix(prefix, key)
278
+
279
+ def _get_default_parser():
280
+ return tf.io.VarLenFeature(tf.float32)
281
+
282
+ function_dict = {
283
+ "has_" + name: _has,
284
+ "get_" + name: _get,
285
+ "clear_" + name: _clear,
286
+ "set_" + name: _set,
287
+ "get_" + name + "_key": _get_key,
288
+ "get_" + name + "_default_parser": _get_default_parser,
289
+ }
290
+ add_functions_to_module(function_dict, module_dict)
291
+
292
+
293
+ def create_int_list_context_feature(name, key, prefix="", module_dict=None):
294
+ """Creates accessor functions for list of int64 features.
295
+
296
+ The provided functions are has_${NAME}, get_${NAME}, set_${NAME} and
297
+ clear_${NAME}.
298
+
299
+ Example:
300
+ example = tensorflow.train.SequenceExample()
301
+ set_clip_label_index([0, 1, 2, 3], example)
302
+ if has_clip_label_index(example):
303
+ clip_label_index = get_clip_label_index(example)
304
+ clear_clip_label_index
305
+
306
+ Args:
307
+ name: the name of the feature to use in function names.
308
+ key: the key for this feature in the SequenceExample.
309
+ prefix: a prefix to append to the key in the SequenceExample
310
+ module_dict: adds the functions to the corresponding module dict.
311
+ """
312
+ def _has(sequence_example, prefix=prefix):
313
+ return has_context(key, sequence_example, prefix=prefix)
314
+
315
+ def _get(sequence_example, prefix=prefix):
316
+ return get_context_int_list(key, sequence_example, prefix=prefix)
317
+
318
+ def _clear(sequence_example, prefix=prefix):
319
+ clear_context(key, sequence_example, prefix=prefix)
320
+
321
+ def _set(value, sequence_example, prefix=prefix):
322
+ set_context_int_list(key, value, sequence_example, prefix=prefix)
323
+
324
+ def _get_key(prefix=prefix):
325
+ return merge_prefix(prefix, key)
326
+
327
+ def _get_default_parser():
328
+ return tf.io.VarLenFeature(tf.int64)
329
+
330
+ function_dict = {
331
+ "has_" + name: _has,
332
+ "get_" + name: _get,
333
+ "clear_" + name: _clear,
334
+ "set_" + name: _set,
335
+ "get_" + name + "_key": _get_key,
336
+ "get_" + name + "_default_parser": _get_default_parser,
337
+ }
338
+ add_functions_to_module(function_dict, module_dict)
339
+
340
+
341
+ def create_bytes_context_feature(name, key, prefix="", module_dict=None):
342
+ """Creates accessor functions for single bytes features.
343
+
344
+ The provided functions are has_${NAME}, get_${NAME}, set_${NAME} and
345
+ clear_${NAME}.
346
+
347
+ Example:
348
+ example = tensorflow.train.SequenceExample()
349
+ set_data_path("path_to_a_file", example)
350
+ if has_data_path(example):
351
+ path = get_data_path(example)
352
+ clear_data_path(example)
353
+
354
+ Args:
355
+ name: the name of the feature to use in function names.
356
+ key: the key for this feature in the SequenceExample.
357
+ prefix: a prefix to append to the key in the SequenceExample
358
+ module_dict: adds the functions to the corresponding module dict.
359
+ """
360
+ def _has(sequence_example, prefix=prefix):
361
+ return has_context(key, sequence_example, prefix=prefix)
362
+
363
+ def _get(sequence_example, prefix=prefix):
364
+ return get_context_bytes(key, sequence_example, prefix=prefix)
365
+
366
+ def _clear(sequence_example, prefix=prefix):
367
+ clear_context(key, sequence_example, prefix=prefix)
368
+
369
+ def _set(value, sequence_example, prefix=prefix):
370
+ set_context_bytes(key, value, sequence_example, prefix=prefix)
371
+
372
+ def _get_key(prefix=prefix):
373
+ return merge_prefix(prefix, key)
374
+
375
+ def _get_default_parser():
376
+ return tf.io.FixedLenFeature((), tf.string)
377
+
378
+ function_dict = {
379
+ "has_" + name: _has,
380
+ "get_" + name: _get,
381
+ "clear_" + name: _clear,
382
+ "set_" + name: _set,
383
+ "get_" + name + "_key": _get_key,
384
+ "get_" + name + "_default_parser": _get_default_parser,
385
+ }
386
+ add_functions_to_module(function_dict, module_dict)
387
+
388
+
389
+ def create_float_context_feature(name, key, prefix="", module_dict=None):
390
+ """Creates accessor functions for single float features.
391
+
392
+ The provided functions are has_${NAME}, get_${NAME}, set_${NAME} and
393
+ clear_${NAME}.
394
+
395
+ Example:
396
+ example = tensorflow.train.SequenceExample()
397
+ set_image_frame_rate(0.47, example)
398
+ if has_image_frame_rate(example):
399
+ image_frame_rate = get_image_frame_rate(example)
400
+ clear_image_frame_rate(example)
401
+
402
+ Args:
403
+ name: the name of the feature to use in function names.
404
+ key: the key for this feature in the SequenceExample.
405
+ prefix: a prefix to append to the key in the SequenceExample
406
+ module_dict: adds the functions to the corresponding module dict.
407
+ """
408
+ def _has(sequence_example, prefix=prefix):
409
+ return has_context(key, sequence_example, prefix=prefix)
410
+
411
+ def _get(sequence_example, prefix=prefix):
412
+ return get_context_float(key, sequence_example, prefix=prefix)
413
+
414
+ def _clear(sequence_example, prefix=prefix):
415
+ clear_context(key, sequence_example, prefix=prefix)
416
+
417
+ def _set(value, sequence_example, prefix=prefix):
418
+ set_context_float(key, value, sequence_example, prefix=prefix)
419
+
420
+ def _get_key(prefix=prefix):
421
+ return merge_prefix(prefix, key)
422
+
423
+ def _get_default_parser():
424
+ return tf.io.FixedLenFeature((), tf.float32)
425
+
426
+ function_dict = {
427
+ "has_" + name: _has,
428
+ "get_" + name: _get,
429
+ "clear_" + name: _clear,
430
+ "set_" + name: _set,
431
+ "get_" + name + "_key": _get_key,
432
+ "get_" + name + "_default_parser": _get_default_parser,
433
+ }
434
+ add_functions_to_module(function_dict, module_dict)
435
+
436
+
437
+ def create_int_context_feature(name, key, prefix="", module_dict=None):
438
+ """Creates accessor functions for single int64 features.
439
+
440
+ The provided functions are has_${NAME}, get_${NAME}, set_${NAME} and
441
+ clear_${NAME}.
442
+
443
+ Example:
444
+ example = tensorflow.train.SequenceExample()
445
+ set_clip_frames(47, example)
446
+ if has_clip_frames(example):
447
+ clip_frames = get_clip_frames(example)
448
+ clear_clip_frames(example)
449
+
450
+ Args:
451
+ name: the name of the feature to use in function names.
452
+ key: the key for this feature in the SequenceExample.
453
+ prefix: a prefix to append to the key in the SequenceExample
454
+ module_dict: adds the functions to the corresponding module dict.
455
+ """
456
+ def _has(sequence_example, prefix=prefix):
457
+ return has_context(key, sequence_example, prefix=prefix)
458
+
459
+ def _get(sequence_example, prefix=prefix):
460
+ return get_context_int(key, sequence_example, prefix=prefix)
461
+
462
+ def _clear(sequence_example, prefix=prefix):
463
+ clear_context(key, sequence_example, prefix=prefix)
464
+
465
+ def _set(value, sequence_example, prefix=prefix):
466
+ set_context_int(key, value, sequence_example, prefix=prefix)
467
+
468
+ def _get_key(prefix=prefix):
469
+ return merge_prefix(prefix, key)
470
+
471
+ def _get_default_parser():
472
+ return tf.io.FixedLenFeature((), tf.int64)
473
+
474
+ function_dict = {
475
+ "has_" + name: _has,
476
+ "get_" + name: _get,
477
+ "clear_" + name: _clear,
478
+ "set_" + name: _set,
479
+ "get_" + name + "_key": _get_key,
480
+ "get_" + name + "_default_parser": _get_default_parser,
481
+ }
482
+ add_functions_to_module(function_dict, module_dict)
483
+
484
+
485
+ def create_bytes_feature_list(name, key, prefix="", module_dict=None):
486
+ """Creates accessor functions for bytes feature lists.
487
+
488
+ The provided functions are has_${NAME}, get_${NAME}_size, get_${NAME}_at,
489
+ clear_${NAME}, and add_${NAME}.
490
+
491
+ example = tensorflow.train.SequenceExample()
492
+ add_image_encoded(1000000, example)
493
+ add_image_encoded(2000000, example)
494
+ if has_image_encoded:
495
+ for i in range(get_image_encoded_size(example):
496
+ image_encoded = get_image_encoded_at(i, example)
497
+ clear_image_encoded(example)
498
+
499
+ Args:
500
+ name: the name of the feature to use in function names.
501
+ key: the key for this feature in the SequenceExample.
502
+ prefix: a prefix to append to the key in the SequenceExample
503
+ module_dict: adds the functions to the corresponding module dict.
504
+ """
505
+ def _has(sequence_example, prefix=prefix):
506
+ return has_feature_list(key, sequence_example, prefix=prefix)
507
+
508
+ def _get_size(sequence_example, prefix=prefix):
509
+ return get_feature_list_size(key, sequence_example, prefix=prefix)
510
+
511
+ def _get_at(index, sequence_example, prefix=prefix):
512
+ return get_bytes_at(key, index, sequence_example, prefix=prefix)
513
+
514
+ def _clear(sequence_example, prefix=prefix):
515
+ clear_feature_list(key, sequence_example, prefix=prefix)
516
+
517
+ def _add(value, sequence_example, prefix=prefix):
518
+ add_bytes(key, value, sequence_example, prefix=prefix)
519
+
520
+ def _get_key(prefix=prefix):
521
+ return merge_prefix(prefix, key)
522
+
523
+ def _get_default_parser():
524
+ return tf.io.FixedLenSequenceFeature((), tf.string)
525
+
526
+ function_dict = {
527
+ "has_" + name: _has,
528
+ "get_" + name + "_size": _get_size,
529
+ "get_" + name + "_at": _get_at,
530
+ "clear_" + name: _clear,
531
+ "add_" + name: _add,
532
+ "get_" + name + "_key": _get_key,
533
+ "get_" + name + "_default_parser": _get_default_parser,
534
+ }
535
+ add_functions_to_module(function_dict, module_dict)
536
+
537
+
538
+ def create_float_feature_list(name, key, prefix="", module_dict=None):
539
+ """Creates accessor functions for float feature lists.
540
+
541
+ The provided functions are has_${NAME}, get_${NAME}_size, get_${NAME}_at,
542
+ clear_${NAME}, and add_${NAME}.
543
+
544
+ example = tensorflow.train.SequenceExample()
545
+ add_confidence(0.47, example)
546
+ add_confidence(0.49, example)
547
+ if has_confidence:
548
+ for i in range(get_confidence_size(example):
549
+ confidence = get_confidence_at(i, example)
550
+ clear_confidence(example)
551
+
552
+ Args:
553
+ name: the name of the feature to use in function names.
554
+ key: the key for this feature in the SequenceExample.
555
+ prefix: a prefix to append to the key in the SequenceExample
556
+ module_dict: adds the functions to the corresponding module dict.
557
+ """
558
+ def _has(sequence_example, prefix=prefix):
559
+ return has_feature_list(key, sequence_example, prefix=prefix)
560
+
561
+ def _get_size(sequence_example, prefix=prefix):
562
+ return get_feature_list_size(key, sequence_example, prefix=prefix)
563
+
564
+ def _get_at(index, sequence_example, prefix=prefix):
565
+ return get_float_at(key, index, sequence_example, prefix=prefix)
566
+
567
+ def _clear(sequence_example, prefix=prefix):
568
+ clear_feature_list(key, sequence_example, prefix=prefix)
569
+
570
+ def _add(value, sequence_example, prefix=prefix):
571
+ add_float(key, value, sequence_example, prefix=prefix)
572
+
573
+ def _get_key(prefix=prefix):
574
+ return merge_prefix(prefix, key)
575
+
576
+ def _get_default_parser():
577
+ return tf.io.FixedLenSequenceFeature((), tf.float32)
578
+
579
+ function_dict = {
580
+ "has_" + name: _has,
581
+ "get_" + name + "_size": _get_size,
582
+ "get_" + name + "_at": _get_at,
583
+ "clear_" + name: _clear,
584
+ "add_" + name: _add,
585
+ "get_" + name + "_key": _get_key,
586
+ "get_" + name + "_default_parser": _get_default_parser,
587
+ }
588
+ add_functions_to_module(function_dict, module_dict)
589
+
590
+
591
+ def create_int_feature_list(name, key, prefix="", module_dict=None):
592
+ """Creates accessor functions for bytes feature lists.
593
+
594
+ The provided functions are has_${NAME}, get_${NAME}_size, get_${NAME}_at,
595
+ clear_${NAME}, and add_${NAME}.
596
+
597
+ example = tensorflow.train.SequenceExample()
598
+ add_image_timestamp(1000000, example)
599
+ add_image_timestamp(2000000, example)
600
+ if has_image_timestamp:
601
+ for i in range(get_image_timestamp_size(example):
602
+ timestamp = get_image_timestamp_at(i, example)
603
+ clear_image_timestamp(example)
604
+
605
+ Args:
606
+ name: the name of the feature to use in function names.
607
+ key: the key for this feature in the SequenceExample.
608
+ prefix: a prefix to append to the key in the SequenceExample
609
+ module_dict: adds the functions to the corresponding module dict.
610
+ """
611
+ def _has(sequence_example, prefix=prefix):
612
+ return has_feature_list(key, sequence_example, prefix=prefix)
613
+
614
+ def _get_size(sequence_example, prefix=prefix):
615
+ return get_feature_list_size(key, sequence_example, prefix=prefix)
616
+
617
+ def _get_at(index, sequence_example, prefix=prefix):
618
+ return get_int_at(key, index, sequence_example, prefix=prefix)
619
+
620
+ def _clear(sequence_example, prefix=prefix):
621
+ clear_feature_list(key, sequence_example, prefix=prefix)
622
+
623
+ def _add(value, sequence_example, prefix=prefix):
624
+ add_int(key, value, sequence_example, prefix=prefix)
625
+
626
+ def _get_key(prefix=prefix):
627
+ return merge_prefix(prefix, key)
628
+
629
+ def _get_default_parser():
630
+ return tf.io.FixedLenSequenceFeature((), tf.int64)
631
+
632
+ function_dict = {
633
+ "has_" + name: _has,
634
+ "get_" + name + "_size": _get_size,
635
+ "get_" + name + "_at": _get_at,
636
+ "clear_" + name: _clear,
637
+ "add_" + name: _add,
638
+ "get_" + name + "_key": _get_key,
639
+ "get_" + name + "_default_parser": _get_default_parser,
640
+ }
641
+ add_functions_to_module(function_dict, module_dict)
642
+
643
+
644
+ def create_bytes_list_feature_list(name, key, prefix="", module_dict=None):
645
+ """Creates accessor functions for list of bytes feature lists.
646
+
647
+ The provided functions are has_${NAME}, get_${NAME}_size, get_${NAME}_at,
648
+ clear_${NAME}, and add_${NAME}.
649
+
650
+ example = tensorflow.train.SequenceExample()
651
+ add_bbox_label_string(["dog", "cat"], example)
652
+ add_bbox_label_string(["cat", "dog"], example)
653
+ if has_bbox_label_string:
654
+ for i in range(get_bbox_label_string_size(example):
655
+ timestamp = get_bbox_label_string_at(i, example)
656
+ clear_bbox_label_string(example)
657
+
658
+ Args:
659
+ name: the name of the feature to use in function names.
660
+ key: the key for this feature in the SequenceExample.
661
+ prefix: a prefix to append to the key in the SequenceExample
662
+ module_dict: adds the functions to the corresponding module dict.
663
+ """
664
+ def _has(sequence_example, prefix=prefix):
665
+ return has_feature_list(key, sequence_example, prefix=prefix)
666
+
667
+ def _get_size(sequence_example, prefix=prefix):
668
+ return get_feature_list_size(key, sequence_example, prefix=prefix)
669
+
670
+ def _get_at(index, sequence_example, prefix=prefix):
671
+ return get_bytes_list_at(key, index, sequence_example, prefix=prefix)
672
+
673
+ def _clear(sequence_example, prefix=prefix):
674
+ clear_feature_list(key, sequence_example, prefix=prefix)
675
+
676
+ def _add(value, sequence_example, prefix=prefix):
677
+ add_bytes_list(key, value, sequence_example, prefix=prefix)
678
+
679
+ def _get_key(prefix=prefix):
680
+ return merge_prefix(prefix, key)
681
+
682
+ def _get_default_parser():
683
+ return tf.io.VarLenFeature(tf.string)
684
+
685
+ function_dict = {
686
+ "has_" + name: _has,
687
+ "get_" + name + "_size": _get_size,
688
+ "get_" + name + "_at": _get_at,
689
+ "clear_" + name: _clear,
690
+ "add_" + name: _add,
691
+ "get_" + name + "_key": _get_key,
692
+ "get_" + name + "_default_parser": _get_default_parser,
693
+ }
694
+ add_functions_to_module(function_dict, module_dict)
695
+
696
+
697
+ def create_float_list_feature_list(name, key, prefix="", module_dict=None):
698
+ """Creates accessor functions for list of float feature lists.
699
+
700
+ The provided functions are has_${NAME}, get_${NAME}_size, get_${NAME}_at,
701
+ clear_${NAME}, and add_${NAME}.
702
+
703
+ example = tensorflow.train.SequenceExample()
704
+ add_bbox_ymin([0.47, 0.49], example)
705
+ add_bbox_ymin([0.49, 0.47], example)
706
+ if has_bbox_ymin:
707
+ for i in range(get_bbox_ymin_size(example):
708
+ bbox_ymin = get_bbox_ymin_at(i, example)
709
+ clear_bbox_ymin(example)
710
+
711
+ Args:
712
+ name: the name of the feature to use in function names.
713
+ key: the key for this feature in the SequenceExample.
714
+ prefix: a prefix to append to the key in the SequenceExample
715
+ module_dict: adds the functions to the corresponding module dict.
716
+ """
717
+ def _has(sequence_example, prefix=prefix):
718
+ return has_feature_list(key, sequence_example, prefix=prefix)
719
+
720
+ def _get_size(sequence_example, prefix=prefix):
721
+ return get_feature_list_size(key, sequence_example, prefix=prefix)
722
+
723
+ def _get_at(index, sequence_example, prefix=prefix):
724
+ return get_float_list_at(key, index, sequence_example, prefix=prefix)
725
+
726
+ def _clear(sequence_example, prefix=prefix):
727
+ clear_feature_list(key, sequence_example, prefix=prefix)
728
+
729
+ def _add(value, sequence_example, prefix=prefix):
730
+ add_float_list(key, value, sequence_example, prefix=prefix)
731
+
732
+ def _get_key(prefix=prefix):
733
+ return merge_prefix(prefix, key)
734
+
735
+ def _get_default_parser():
736
+ return tf.io.VarLenFeature(tf.float32)
737
+
738
+ function_dict = {
739
+ "has_" + name: _has,
740
+ "get_" + name + "_size": _get_size,
741
+ "get_" + name + "_at": _get_at,
742
+ "clear_" + name: _clear,
743
+ "add_" + name: _add,
744
+ "get_" + name + "_key": _get_key,
745
+ "get_" + name + "_default_parser": _get_default_parser,
746
+ }
747
+ add_functions_to_module(function_dict, module_dict)
748
+
749
+
750
+ def create_int_list_feature_list(name, key, prefix="", module_dict=None):
751
+ """Creates accessor functions for list of int64 feature lists.
752
+
753
+ The provided functions are has_${NAME}, get_${NAME}_size, get_${NAME}_at,
754
+ clear_${NAME}, and add_${NAME}.
755
+
756
+ example = tensorflow.train.SequenceExample()
757
+ add_bbox_label_index([47, 49], example)
758
+ add_bbox_label_index([49, 47], example)
759
+ if has_bbox_label_index:
760
+ for i in range(get_bbox_label_index_size(example):
761
+ bbox_label_index = get_bbox_label_index_at(i, example)
762
+ clear_bbox_label_index(example)
763
+
764
+ Args:
765
+ name: the name of the feature to use in function names.
766
+ key: the key for this feature in the SequenceExample.
767
+ prefix: a prefix to append to the key in the SequenceExample
768
+ module_dict: adds the functions to the corresponding module dict.
769
+ """
770
+ def _has(sequence_example, prefix=prefix):
771
+ return has_feature_list(key, sequence_example, prefix=prefix)
772
+
773
+ def _get_size(sequence_example, prefix=prefix):
774
+ return get_feature_list_size(key, sequence_example, prefix=prefix)
775
+
776
+ def _get_at(index, sequence_example, prefix=prefix):
777
+ return get_int_list_at(key, index, sequence_example, prefix=prefix)
778
+
779
+ def _clear(sequence_example, prefix=prefix):
780
+ clear_feature_list(key, sequence_example, prefix=prefix)
781
+
782
+ def _add(value, sequence_example, prefix=prefix):
783
+ add_int_list(key, value, sequence_example, prefix=prefix)
784
+
785
+ def _get_key(prefix=prefix):
786
+ return merge_prefix(prefix, key)
787
+
788
+ def _get_default_parser():
789
+ return tf.io.VarLenFeature(tf.int64)
790
+
791
+ function_dict = {
792
+ "has_" + name: _has,
793
+ "get_" + name + "_size": _get_size,
794
+ "get_" + name + "_at": _get_at,
795
+ "clear_" + name: _clear,
796
+ "add_" + name: _add,
797
+ "get_" + name + "_key": _get_key,
798
+ "get_" + name + "_default_parser": _get_default_parser,
799
+ }
800
+ add_functions_to_module(function_dict, module_dict)