YOLO11 ã¢ãã«ãã TFLite EdgeTPU 圢åŒãžã®ãšã¯ã¹ããŒããåŠã¶
ã³ã³ãã¥ãŒã¿ããžã§ã³ã¢ãã«ããã¢ãã€ã«ãçµèŸŒã¿ã·ã¹ãã ã®ãããªèšç®èœåã®éãããããã€ã¹ã«å±éããã®ã¯ãåä»ãªããšã§ããããé«éãªããã©ãŒãã³ã¹ãå®çŸããããã«æé©åãããã¢ãã«ãã©ãŒãããã䜿çšããããšã§ãããã»ã¹ãç°¡çŽ åããããšãã§ããŸããTensorFlow Lite EdgeTPUãŸã㯠TFLite EdgeTPU ã¢ãã«åœ¢åŒã¯ããã¥ãŒã©ã«ã»ãããã¯ãŒã¯ã®é«éæ§èœãå®çŸããªãããæ¶è²»é»åãæå°éã«æããããã«èšèšãããŠããŸãã
TFLite EdgeTPU ãã©ãŒããããžã®ãšã¯ã¹ããŒãæ©èœã«ãããã¢ãã«ãæé©åããããšãã§ããŸãã Ultralytics YOLO11ã¢ãã«ãæé©åããããšãã§ããŸãããã®ã¬ã€ãã§ã¯ãã¢ãã«ãTFLite EdgeTPU ãã©ãŒãããã«å€æããæ§ã ãªã¢ãã€ã«æ©åšãçµèŸŒã¿æ©åšã§ã®ããã©ãŒãã³ã¹ãåäžãããæ¹æ³ã説æããŸãã
ãªãTFLite EdgeTPU ã«ãšã¯ã¹ããŒãããå¿ èŠãããã®ã§ããïŒ
ãžã®ã¢ãã«ã®ãšã¯ã¹ããŒã TensorFlowãšããžTPU ã¯ãæ©æ¢°åŠç¿ã¿ã¹ã¯ãé«éãã€å¹ççã«ããŸãããã®ãã¯ãããžãŒã¯ããã¯ãŒãã³ã³ãã¥ãŒãã£ã³ã°ãªãœãŒã¹ãæ¥ç¶æ§ãéãããã¢ããªã±ãŒã·ã§ã³ã«é©ããŠãããEdgeTPU ã¯ãGoogle ã«ããããŒããŠã§ã¢ã»ã¢ã¯ã»ã©ã¬ãŒã¿ã§ããããšããžã»ããã€ã¹äžã®TensorFlow Liteã¢ãã«ãé«éåãããäžã®ç»åã¯ãã®ããã»ã¹ã®äžäŸã§ããã
ãšããžTPU ã¯éååãããã¢ãã«ã§åäœãããéååããããšã§ã粟床ãããã»ã©èœãšãããšãªããã¢ãã«ãããå°ãããããéãããããšãã§ããããšããžã»ã³ã³ãã¥ãŒãã£ã³ã°ã®éããããªãœãŒã¹ã«æé©ã§ãåŸ ã¡æéãççž®ããã¯ã©ãŠãã«äŸåããããšãªãããŒã«ã«ã§çŽ æ©ãããŒã¿ãåŠçã§ãããããã¢ããªã±ãŒã·ã§ã³ã¯è¿ éã«å¯Ÿå¿ã§ããããŸããããŒã«ã«åŠçã§ã¯ããªã¢ãŒãã»ãµãŒããŒã«éä¿¡ãããªãããããŠãŒã¶ãŒã»ããŒã¿ã®ãã©ã€ããŒãæ§ãšå®å šæ§ãä¿ãããŸãã
TFLiteãšããžã®äž»ãªç¹åŸŽTPU
以äžã¯ãTFLite EdgeTPU ãéçºè ã«ãšã£ãŠçŽ æŽãããã¢ãã«ãã©ãŒãããã®éžæè¢ãšãªãäž»ãªç¹åŸŽã§ãïŒ
-
ãšããžããã€ã¹ã§ã®æé©åãããããã©ãŒãã³ã¹ïŒTFLite EdgeTPU ã¯ãéååãã¢ãã«ã®æé©åãããŒããŠã§ã¢ã»ã¢ã¯ã»ã©ã¬ãŒã·ã§ã³ãã³ã³ãã€ã©ã®æé©åã«ãããé«éãªãã¥ãŒã©ã«ã»ãããã¯ãŒãã³ã°ã®ããã©ãŒãã³ã¹ãå®çŸããŸãããã®æå°éã®ã¢ãŒããã¯ãã£ã¯ãå°ååãšã³ã¹ãå¹çã«è²¢ç®ããŠããŸãã
-
é«ãèšç®ã¹ã«ãŒãããïŒTFLite EdgeTPU ã¯ãå°çšã®ããŒããŠã§ã¢ã¢ã¯ã»ã©ã¬ãŒã·ã§ã³ãšå¹ççãªã©ã³ã¿ã€ã å®è¡ãçµã¿åãããããšã§ãé«ãèšç®ã¹ã«ãŒããããå®çŸããŸãããšããžããã€ã¹äžã§å³ããæ§èœèŠä»¶ãæºããæ©æ¢°åŠç¿ã¢ãã«ã®å±éã«é©ããŠããŸãã
-
å¹ççãªè¡åèšç® TensorFlow EdgeTPU ã¯ããã¥ãŒã©ã«ãããã¯ãŒã¯ã®èšç®ã§éèŠãªè¡åæŒç®ã«æé©åãããŠããŸãããã®å¹çæ§ã¯ãæ©æ¢°åŠç¿ã¢ãã«ãç¹ã«å€æ°ã®è€éãªè¡åã®ä¹ç®ãšå€æãå¿ èŠãšããã¢ãã«ã«ãããŠéèŠã§ãã
TFLite Edgeã®å±éãªãã·ã§ã³TPU
YOLO11 ã¢ãã«ãTFLite EdgeTPU ãã©ãŒãããã«ãšã¯ã¹ããŒãããæ¹æ³ã«å ¥ãåã«ãTFLite EdgeTPU ã¢ãã«ãéåžžã©ã®ãããªå Žæã§äœ¿çšãããã®ããç解ããŸãããã
TFLite EdgeTPU ã¯ãæ©æ¢°åŠç¿ã¢ãã«ã®ããã®æ§ã ãªå±éãªãã·ã§ã³ãæäŸããïŒ
-
ãªã³ããã€ã¹ã§ã®å±éïŒTensorFlow ãšããžTPU ã¢ãã«ã¯ãã¢ãã€ã«ããã€ã¹ãçµã¿èŸŒã¿ããã€ã¹ã«çŽæ¥ãããã€ããããšãã§ããŸãããªã³ããã€ã¹ã§ã®å±éã«ãããã¢ãã«ã¯ããŒããŠã§ã¢äžã§çŽæ¥å®è¡ãããã¯ã©ãŠãæ¥ç¶ã®å¿ èŠæ§ããªããªããŸãã
-
ã¯ã©ãŠãTensorFlow TPUã«ãããšããžã³ã³ãã¥ãŒãã£ã³ã°ïŒãšããžããã€ã¹ã®åŠçèœåãéãããŠããã·ããªãªã§ã¯ãTensorFlow ãšããžTPUã¯ãTPUãæèŒããã¯ã©ãŠããµãŒããŒã«æšè«ã¿ã¹ã¯ããªãããŒãããããšãã§ããã
-
ãã€ããªããå±éïŒãã€ããªããã»ã¢ãããŒãã¯ããªã³ããã€ã¹ãšã¯ã©ãŠãã®ãããã€ã¡ã³ããçµã¿åããããã®ã§ãæ©æ¢°åŠç¿ã¢ãã«ã®ãããã€ã¡ã³ãã«å€çšéã§ã¹ã±ãŒã©ãã«ãªãœãªã¥ãŒã·ã§ã³ãæäŸãããå©ç¹ãšããŠãè¿ éãªå¿çã«ã¯ãªã³ããã€ã¹åŠçãããè€éãªèšç®ã«ã¯ã¯ã©ãŠãã»ã³ã³ãã¥ãŒãã£ã³ã°ãæããããŸãã
YOLO11 ã¢ãã«ã TFLite Edge ã«ãšã¯ã¹ããŒãããTPU
YOLO11 ã¢ãã«ãTensorFlow EdgeTPU ã«å€æããããšã§ãã¢ãã«ã®äºææ§ãšå±éã®æè»æ§ãæ¡å€§ã§ããŸãã
ã€ã³ã¹ããŒã«
å¿ èŠãªããã±ãŒãžãã€ã³ã¹ããŒã«ããã«ã¯ã以äžãå®è¡ããïŒ
ã€ã³ã¹ããŒã«ããã»ã¹ã«é¢ãã詳现ãªèª¬æãšãã¹ããã©ã¯ãã£ã¹ã«ã€ããŠã¯ãUltralytics ã€ã³ã¹ããŒã«ã¬ã€ããã芧ãã ãããYOLO11 ã«å¿ èŠãªããã±ãŒãžãã€ã³ã¹ããŒã«ããéã«ãäœããã®åé¡ãçºçããå Žåã¯ã解決çããã³ãã«ã€ããŠãããããåé¡ã¬ã€ããåç §ããŠãã ããã
䜿çšæ¹æ³
䜿ãæ¹ã®èª¬æã«å ¥ãåã«ãUltralytics YOLO11 ã®å šã¢ãã«ããšã¯ã¹ããŒãã«å¯Ÿå¿ããŠããããšã確èªããŠãããŸããã ã
䜿çšæ¹æ³
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TFLite Edge TPU format
model.export(format="edgetpu") # creates 'yolo11n_full_integer_quant_edgetpu.tflite'
# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo11n_full_integer_quant_edgetpu.tflite")
# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TFLite Edge TPU format
yolo export model=yolo11n.pt format=edgetpu # creates 'yolo11n_full_integer_quant_edgetpu.tflite'
# Run inference with the exported model
yolo predict model=yolo11n_full_integer_quant_edgetpu.tflite source='https://ultralytics.com/images/bus.jpg'
ãµããŒããããŠãããšã¯ã¹ããŒããªãã·ã§ã³ã®è©³çŽ°ã«ã€ããŠã¯ãUltralytics é 眮ãªãã·ã§ã³ã®ããã¥ã¡ã³ãããŒãžãåç §ããŠãã ããã
ãšã¯ã¹ããŒããããYOLO11 TFLite EdgeTPU ã¢ãã«ã®å±é
Ultralytics YOLO11 ã¢ãã«ãTFLite EdgeTPU ãã©ãŒãããã«ãšã¯ã¹ããŒãããåŸããããã€ããããšãã§ããŸããTFLite EdgeTPU ã¢ãã«ãå®è¡ããããã®æåã®ã¹ããããšããŠæšå¥šãããã®ã¯ãYOLO("model_edgetpu.tflite") ã¡ãœããã䜿çšããããšã§ãã
ãã ããTFLite EdgeTPU ã¢ãã«ã®å±éã«é¢ãã詳ãã説æã«ã€ããŠã¯ã以äžã®ãªãœãŒã¹ãã芧ãã ããïŒ
-
ã³ãŒã©ã«ãšããžTPU ãRaspberry Piã«æèŒãUltralytics YOLO11:æ©æ¢°åŠç¿æ©èœã匷åããããã«Coral Edge TPUãRaspberry Piã«çµ±åããæ¹æ³ãã芧ãã ããã
-
ã³ãŒãäŸ:å®è·µçãªTensorFlow EdgeTPU ã®å°å ¥äŸã«ã¢ã¯ã»ã¹ãããããžã§ã¯ããã¹ã¿ãŒããããŸãããã
-
ãšããžTPU ã§æšè«ãå®è¡ãããPython:TensorFlow LitePython API ã EdgeTPU ã¢ããªã±ãŒã·ã§ã³ã«äœ¿çšããæ¹æ³ã«ã€ããŠãã»ããã¢ãããšäœ¿çšã¬ã€ãã©ã€ã³ãå«ããŠèª¬æããŸãã
æŠèŠ
ãã®ã¬ã€ãã§ã¯ãUltralytics YOLO11 ã¢ãã«ã TFLite EdgeTPU ãã©ãŒãããã«ãšã¯ã¹ããŒãããæ¹æ³ãåŠã³ãŸãããäžèšã®ã¹ãããã«åŸãããšã§ãã³ã³ãã¥ãŒã¿ããžã§ã³ã¢ããªã±ãŒã·ã§ã³ã®ã¹ããŒããšãã¯ãŒãåäžãããããšãã§ããŸãã
䜿çšæ¹æ³ã®è©³çŽ°ã«ã€ããŠã¯ãEdgeTPU å ¬åŒãŠã§ããµã€ããã芧ãã ããã
ãŸãããã®ä»ã®Ultralytics YOLO11 ã®çµ±åã«ã€ããŠã¯ãçµ±åã¬ã€ãããŒãžãã芧ãã ãããããã§ã¯ã貎éãªãªãœãŒã¹ãæŽå¯ãçºèŠããããšãã§ããŸãã
ããããã質å
YOLO11 ã¢ãã«ãTFLite EdgeTPU ãã©ãŒãããã«ãšã¯ã¹ããŒãããæ¹æ³ãæããŠãã ããã
YOLO11 ã¢ãã«ã TFLite EdgeTPU ãã©ãŒãããã«ãšã¯ã¹ããŒãããã«ã¯ã以äžã®æé ã«åŸããŸãïŒ
䜿çšæ¹æ³
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TFLite Edge TPU format
model.export(format="edgetpu") # creates 'yolo11n_full_integer_quant_edgetpu.tflite'
# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo11n_full_integer_quant_edgetpu.tflite")
# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TFLite Edge TPU format
yolo export model=yolo11n.pt format=edgetpu # creates 'yolo11n_full_integer_quant_edgetpu.tflite'
# Run inference with the exported model
yolo predict model=yolo11n_full_integer_quant_edgetpu.tflite source='https://ultralytics.com/images/bus.jpg'
ä»ã®ãã©ãŒããããžã®ã¢ãã«ã®ãšã¯ã¹ããŒãã®è©³çŽ°ã«ã€ããŠã¯ããšã¯ã¹ããŒãã¬ã€ããåç §ããŠãã ããã
YOLO11 ã¢ãã«ã TFLite EdgeTPU ã«ãšã¯ã¹ããŒãããå©ç¹ã¯äœã§ããïŒ
YOLO11 ã¢ãã«ã TFLite EdgeTPU ã«ãšã¯ã¹ããŒããããšãããã€ãã®å©ç¹ããããŸãïŒ
- æé©åãããããã©ãŒãã³ã¹ïŒæå°éã®æ¶è²»é»åã§é«éãã¥ãŒã©ã«ãããã¯ãŒã¯ããã©ãŒãã³ã¹ãå®çŸã
- ã¬ã€ãã³ã·ãŒã®åæžïŒã¯ã©ãŠãã«äŸåããããšãªããè¿ éãªããŒã«ã«ããŒã¿åŠçãå®çŸã
- ãã©ã€ãã·ãŒã®åŒ·åïŒããŒã«ã«åŠçã«ããããŠãŒã¶ãŒããŒã¿ã¯ãã©ã€ããŒããã€å®å šã«ä¿ãããŸãã
ãã®ãããããã€ã¹ã®é»åãèšç®ãªãœãŒã¹ãéãããŠãããšããžã»ã³ã³ãã¥ãŒãã£ã³ã°ã®ã¢ããªã±ãŒã·ã§ã³ã«æé©ã§ãã茞åºããçç±ã«ã€ããŠã¯ããã¡ããã芧ãã ããã
TFLite EdgeTPU ã¢ãã«ãã¢ãã€ã«æ©åšãçµã¿èŸŒã¿æ©åšã«å°å ¥ã§ããŸããïŒ
ã¯ããTensorFlow Lite EdgeTPU ã¢ãã«ã¯ãã¢ãã€ã«æ©åšãçµã¿èŸŒã¿æ©åšã«çŽæ¥å±éããããšãã§ããŸãããã®ãããã€ã¡ã³ãã¢ãããŒãã«ãããã¢ãã«ãããŒããŠã§ã¢äžã§çŽæ¥å®è¡ãããããé«éã§å¹ççãªæšè«ãå¯èœã«ãªããŸããã€ã³ãã°ã¬ãŒã·ã§ã³äŸã«ã€ããŠã¯ãRaspberry Piäžã§ã®Coral EdgeTPU ã®ãããã€ã¡ã³ãã¬ã€ããã芧ãã ããã
TFLite EdgeTPU ã¢ãã«ã®äžè¬çãªäœ¿çšäŸãæããŠãã ããã
TFLite EdgeTPU ã¢ãã«ã®äžè¬çãªäœ¿çšäŸã«ã¯ã以äžã®ãããªãã®ãããïŒ
- ã¹ããŒãã«ã¡ã©ïŒãªã¢ã«ã¿ã€ã ã®ç»åã»æ å解æã匷åã
- IoTããã€ã¹ïŒã¹ããŒãããŒã ãšç£æ¥ãªãŒãã¡ãŒã·ã§ã³ã®å®çŸ
- ãã«ã¹ã±ã¢å»ççšç»ååŠçãšèšºæã®å éã
- å°å£²ïŒåšåº«ç®¡çãšé¡§å®¢è¡ååæã®æ¹å
ãããã®ã¢ããªã±ãŒã·ã§ã³ã¯ãTFLite EdgeTPU ã¢ãã«ã®é«æ§èœãšäœæ¶è²»é»åã®ã¡ãªããã享åã§ããŸãã䜿çšã·ããªãªã®è©³çŽ°ãã芧ãã ããã
TFLite EdgeTPU ã¢ãã«ã®ãšã¯ã¹ããŒããŸãã¯ãããã€äžã«åé¡ãçºçããå Žåã®ãã©ãã«ã·ã¥ãŒãã£ã³ã°æ¹æ³ãæããŠãã ããã
TFLite EdgeTPU ã¢ãã«ã®ãšã¯ã¹ããŒããŸãã¯ãããã€äžã«åé¡ãçºçããå Žåããã©ãã«ã·ã¥ãŒãã£ã³ã°ã®ãã³ãã«ã€ããŠã¯ããããããåé¡ãã¬ã€ããåç §ããŠãã ããããã®ã¬ã€ãã§ã¯ãã¹ã ãŒãºãªæäœã«åœ¹ç«ã€äžè¬çãªåé¡ãšè§£æ±ºçã説æããŠããŸãããã®ä»ã®ãµããŒãã«ã€ããŠã¯ããã«ãã»ã³ã¿ãŒãã芧ãã ããã