mediapipe 3.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #!/bin/bash
  2. set -e
  3. pushd $(cd $(dirname ${0})/..; pwd) > /dev/null
  4. clean() {
  5. echo "mediapipe clean"
  6. rm -rf "./third_party/source/mediapipe"
  7. }
  8. sync() {
  9. echo "mediapipe sync"
  10. download() {
  11. mkdir -p "./third_party/source/mediapipe/$(dirname ${1})"
  12. curl --silent --show-error --location --output "./third_party/source/mediapipe/${1}" "https://github.com/google/mediapipe/raw/master/${1}"
  13. }
  14. download "mediapipe/framework/calculator.proto"
  15. download "mediapipe/framework/calculator_options.proto"
  16. download "mediapipe/framework/mediapipe_options.proto"
  17. download "mediapipe/framework/packet_factory.proto"
  18. download "mediapipe/framework/packet_generator.proto"
  19. download "mediapipe/framework/status_handler.proto"
  20. download "mediapipe/framework/stream_handler.proto"
  21. download "mediapipe/calculators/core/packet_resampler_calculator.proto"
  22. download "mediapipe/calculators/image/image_cropping_calculator.proto"
  23. download "mediapipe/calculators/image/image_transformation_calculator.proto"
  24. download "mediapipe/calculators/image/opencv_image_encoder_calculator.proto"
  25. download "mediapipe/calculators/image/recolor_calculator.proto"
  26. download "mediapipe/calculators/tensorflow/tensorflow_inference_calculator.proto"
  27. download "mediapipe/calculators/tensorflow/tensorflow_session_from_saved_model_calculator.proto"
  28. download "mediapipe/calculators/tensorflow/unpack_media_sequence_calculator.proto"
  29. download "mediapipe/calculators/tflite/tflite_converter_calculator.proto"
  30. download "mediapipe/calculators/tflite/tflite_inference_calculator.proto"
  31. download "mediapipe/calculators/tflite/tflite_tensors_to_segmentation_calculator.proto"
  32. download "mediapipe/calculators/util/detections_to_render_data_calculator.proto"
  33. download "mediapipe/gpu/scale_mode.proto"
  34. download "mediapipe/util/audio_decoder.proto"
  35. download "mediapipe/util/color.proto"
  36. download "mediapipe/util/render_data.proto"
  37. }
  38. schema() {
  39. echo "mediapipe schema"
  40. [[ $(grep -U $'\x0D' ./source/mediapipe-proto.js) ]] && crlf=1
  41. node ./tools/protoc.js --text --root mediapipe --out ./source/mediapipe-proto.js --path ./third_party/source/mediapipe --path ./third_party/source/tensorflow \
  42. mediapipe/framework/calculator.proto \
  43. mediapipe/calculators/core/packet_resampler_calculator.proto \
  44. mediapipe/calculators/image/image_cropping_calculator.proto \
  45. mediapipe/calculators/image/image_transformation_calculator.proto \
  46. mediapipe/calculators/image/opencv_image_encoder_calculator.proto \
  47. mediapipe/calculators/image/recolor_calculator.proto \
  48. mediapipe/calculators/tensorflow/tensorflow_inference_calculator.proto \
  49. mediapipe/calculators/tensorflow/tensorflow_session_from_saved_model_calculator.proto \
  50. mediapipe/calculators/tensorflow/unpack_media_sequence_calculator.proto \
  51. mediapipe/calculators/util/detections_to_render_data_calculator.proto \
  52. mediapipe/calculators/tflite/tflite_converter_calculator.proto \
  53. mediapipe/calculators/tflite/tflite_inference_calculator.proto \
  54. mediapipe/calculators/tflite/tflite_tensors_to_segmentation_calculator.proto
  55. if [[ -n ${crlf} ]]; then
  56. unix2dos --quiet --newfile ./source/mediapipe-proto.js ./source/mediapipe-proto.js
  57. fi
  58. }
  59. while [ "$#" != 0 ]; do
  60. command="$1" && shift
  61. case "${command}" in
  62. "clean") clean;;
  63. "sync") sync;;
  64. "schema") schema;;
  65. esac
  66. done