Optimize TFJS export on ARM64 (#8946)

Co-authored-by: UltralyticsAssistant <web@ultralytics.com>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
pull/8937/head
Lakshantha Dissanayake 9 months ago committed by GitHub
parent 82e8daef72
commit 368abb4cc8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 5
      docker/Dockerfile-arm64
  2. 3
      ultralytics/engine/exporter.py

@ -32,11 +32,6 @@ RUN rm -rf /usr/lib/python3.11/EXTERNALLY-MANAGED
RUN python3 -m pip install --upgrade pip wheel
RUN pip install --no-cache -e ".[export]"
# Fix error: `np.object` was a deprecated alias for the builtin `object` when exporting to TensorFlow.js
# Here onnxruntime is installed first because in tflite and onnx simplify exports, it will install latest numpy version as a dependency and we need to downgrade it
RUN pip install --no-cache onnxruntime
RUN pip install --no-cache numpy==1.23.5
# Creates a symbolic link to make 'python' point to 'python3'
RUN ln -sf /usr/bin/python3 /usr/bin/python

@ -886,6 +886,9 @@ class Exporter:
def export_tfjs(self, prefix=colorstr("TensorFlow.js:")):
"""YOLOv8 TensorFlow.js export."""
check_requirements("tensorflowjs")
if ARM64:
# Fix error: `np.object` was a deprecated alias for the builtin `object` when exporting to TF.js on ARM64
check_requirements("numpy==1.23.5")
import tensorflow as tf
import tensorflowjs as tfjs # noqa

Loading…
Cancel
Save