mediapipe 3.5 KB

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