ãœããŒIMX500茞åºUltralytics YOLOv8
ãã®ã¬ã€ãã§ã¯ãSony IMX500 ã»ã³ãµãŒãæèŒãã Raspberry Pi AI ã«ã¡ã©ãžã®Ultralytics YOLOv8 ã¢ãã«ã®ãšã¯ã¹ããŒããšå±éã«ã€ããŠèª¬æããŸãã
Raspberry Pi AI Cameraã®ãããªãèšç®èœåãéãããŠããããã€ã¹ã«ã³ã³ãã¥ãŒã¿ã»ããžã§ã³ã»ã¢ãã«ãå°å ¥ããã®ã¯åä»ãªããšã§ããããé«éãªããã©ãŒãã³ã¹ã®ããã«æé©åãããã¢ãã«ãã©ãŒãããã䜿çšããããšã§ã倧ããªéããçãŸããŸãã
IMX500ã®ã¢ãã«ã»ãã©ãŒãããã¯ããã¥ãŒã©ã«ã»ãããã¯ãŒã¯ã®é«éæ§èœãå®çŸããªãããæå°éã®é»åããæ¶è²»ããªãããã«èšèšãããŠããŸããã¢ãã«ãæé©åããããšãã§ããŸãã Ultralytics YOLOv8ã¢ãã«ãæé©åããããšãã§ããŸãããã®ã¬ã€ãã§ã¯ãRaspberry Pi AI Cameraäžã§ã¢ãã«ãããç°¡åã«åäœããããã«ããªãããIMX500ãã©ãŒããããžã®ã¢ãã«ã®ãšã¯ã¹ããŒããšãããã€ã«ã€ããŠèª¬æããŸãã
IMX500ã«ãšã¯ã¹ããŒãããçç±
ãœããŒã®IMX500ã€ã³ããªãžã§ã³ãã»ããžã§ã³ã»ã»ã³ãµãŒã¯ããšããžAIåŠçã«ãããç»æçãªããŒããŠã§ã¢ã§ããããã¯ããªã³ãããAIæ©èœãåããäžçåã®ã€ã³ããªãžã§ã³ãã»ããžã§ã³ã»ã»ã³ãµãŒã§ãããã®ã»ã³ãµãŒã¯ãããŒã¿åŠçã®ããã«ããã¯ããã©ã€ãã·ãŒã®æžå¿µãããã©ãŒãã³ã¹ã®å¶éãªã©ããšããžAIã«ãããå€ãã®èª²é¡ãå
æããã®ã«åœ¹ç«ã¡ãŸãã
ä»ã®ã»ã³ãµãŒãåã«ç»åããã¬ãŒã ãäŒããã ãã§ããã®ã«å¯ŸããIMX500ã¯å
šäœã®ã¹ããŒãªãŒãäŒããŸããã»ã³ãµãŒäžã§çŽæ¥ããŒã¿ãåŠçãããããããã€ã¹ã¯ãªã¢ã«ã¿ã€ã ã§æŽå¯ãåŸãããšãã§ããã
ãœããŒã®IMX500茞åºYOLOv8 ã¢ãã«
IMX500ã¯ãã¯ã©ãŠãã«ããŒã¿ãéä¿¡ããŠåŠçããããšãªããã»ã³ãµãŒäžã§çŽæ¥ããŒã¿ãåŠçããããã«èšèšãããŠããã
IMX500ã¯éååãããã¢ãã«ã§åäœããŸããéååããããšã§ã粟床ãããã»ã©èœãšãããšãªããã¢ãã«ãããå°ããé«éåããããšãã§ãããããã¯ãšããžã³ã³ãã¥ãŒãã£ã³ã°ã®éããããªãœãŒã¹ã«æé©ã§ãã¬ã€ãã³ã·ãŒãåæžããããšã§ã¢ããªã±ãŒã·ã§ã³ã®è¿ éãªå¯Ÿå¿ãå¯èœã«ããã¯ã©ãŠãã«äŸåããããšãªãããŒã«ã«ã§è¿ éã«ããŒã¿åŠçãè¡ãããšãã§ããŸãããŸããããŒã«ã«åŠçã§ã¯ããŠãŒã¶ãŒããŒã¿ããªã¢ãŒããµãŒããŒã«éä¿¡ãããªãããããã©ã€ããŒããã€ã»ãã¥ã¢ã«ä¿ãããŸãã
IMX500 äž»ãªç¹åŸŽ
- ã¡ã¿ããŒã¿åºåïŒIMX500ã¯ãç»åã®ã¿ãéä¿¡ããã®ã§ã¯ãªããç»åãšã¡ã¿ããŒã¿ïŒæšè«çµæïŒã®äž¡æ¹ãåºåããããšãã§ããããŒã¿ãµã€ãºã®æå°åã垯åå¹ ã®åæžãã³ã¹ãã®åæžã®ããã«ã¡ã¿ããŒã¿ã®ã¿ãåºåããããšãã§ããŸãã
- ãã©ã€ãã·ãŒã®åé¡ã«å¯Ÿå¿ïŒããã€ã¹äžã§ããŒã¿ãåŠçããããšã«ãããIMX500ã¯ãã©ã€ãã·ãŒã«é¢ããæžå¿µã«å¯Ÿå¿ãã人ç©ã«ãŠã³ããå± äœè 远跡ã®ãããªäººéäžå¿ã®ã¢ããªã±ãŒã·ã§ã³ã«æé©ã§ãã
- ãªã¢ã«ã¿ã€ã åŠçïŒé«éãªãªã³ã»ã³ãµãŒåŠçããªã¢ã«ã¿ã€ã ã®å€æããµããŒãããèªåŸã·ã¹ãã ãªã©ã®ãšããžAIã¢ããªã±ãŒã·ã§ã³ã«æé©ã§ãã
å§ããåã«æè¯ã®çµæãåŸãããã«ã¯ãã¢ãã«ã»ãã¬ãŒãã³ã°ã»ã¬ã€ããããŒã¿æºåã¬ã€ããããã³ãã€ããŒãã©ã¡ãŒã¿èª¿æŽã¬ã€ãã«åŸã£ãŠãYOLOv8 ã¢ãã«ããšã¯ã¹ããŒãã®ããã«ååã«æºåãããŠããããšã確èªããŠãã ããã
䜿çšäŸ
Ultralytics YOLOv8 ã¢ãã«ã IMX500 ãã©ãŒãããã«ãšã¯ã¹ããŒããããšã¯ã¹ããŒãããã¢ãã«ã§æšè«ãå®è¡ããŸãã
泚
ããã§ã¯ãã¢ãã«ãæåŸ éãã«åäœããããšã確èªããããã«æšè«ãè¡ããŸãããã ããRaspberry Piã®AIã«ã¡ã©ãžã®ãããã€ãšæšè«ã«ã€ããŠã¯ããããã€ã®IMX500 Exportã䜿ãã®ã»ã¯ã·ã§ã³ã«ãžã£ã³ãããŠãã ããã
äŸ
from ultralytics import YOLO
# Load a YOLOv8n PyTorch model
model = YOLO("yolov8n.pt")
# Export the model
model.export(format="imx") # exports with PTQ quantization by default
# Load the exported model
imx_model = YOLO("yolov8n_imx_model")
# Run inference
results = imx_model("https://ultralytics.com/images/bus.jpg")
ãšã¯ã¹ããŒãåŠçã«ãããéååæ€èšŒçšã®ONNX ã¢ãã«ãäœæãããã <model-name>_imx_model
.ãã®ãã£ã¬ã¯ããªã«ã¯ packerOut.zip
ããã¯ãIMX500ããŒããŠã§ã¢ã«ã¢ãã«ãé
眮ããããã®ããã±ãŒãžã³ã°ã«äžå¯æ¬ ã§ããããã« <model-name>_imx_model
ãã©ã«ãã«ã¯ããã¹ããã¡ã€ã«(labels.txt
) ã«ã¯ãã¢ãã«ã«é¢é£ãããã¹ãŠã®ã©ãã«ããªã¹ããããŠããã
yolov8n_imx_model
âââ dnnParams.xml
âââ labels.txt
âââ packerOut.zip
âââ yolov8n_imx.onnx
âââ yolov8n_imx500_model_MemoryReport.json
âââ yolov8n_imx500_model.pbtxt
è°è«
ã¢ãã«ãIMX500圢åŒã«ãšã¯ã¹ããŒãããéãæ§ã ãªåŒæ°ãæå®ããããšãã§ããŸãïŒ
ã㌠| äŸ¡å€ | 説æ |
---|---|---|
format |
imx |
ãšã¯ã¹ããŒãå ãã©ãŒããã (imx) |
int8 |
True |
ã¢ãã«ã®INT8éååãæå¹ã«ããïŒããã©ã«ãïŒ True ) |
imgsz |
640 |
ã¢ãã«å
¥åã®ç»åãµã€ãºïŒããã©ã«ãïŒ 640 ) |
IMX500 Exportã®å±éã§ã®äœ¿çš
Ultralytics YOLOv8n ã¢ãã«ã IMX500 ãã©ãŒãããã«ãšã¯ã¹ããŒãããåŸãæšè«çšã« Raspberry Pi AI Camera ã«å±éããããšãã§ããã
ããŒããŠã§ã¢ã®åææ¡ä»¶
以äžã®ããŒããŠã§ã¢ãããããšã確èªããŠãã ããïŒ
- Raspberry Pi 5 ãŸã㯠Raspberry Pi 4 Model B
- ã©ãºããªãŒãã€AIã«ã¡ã©
Raspberry Piã®AIã«ã¡ã©ãRaspberry Piã®15ãã³MIPI CSIã³ãã¯ã¿ã«æ¥ç¶ããRaspberry Piã®é»æºãå ¥ããã
ãœãããŠã§ã¢ã®åææ¡ä»¶
泚
ãã®ã¬ã€ãã¯ãRaspberry Pi 5äžã§åäœããRaspberry Pi OS Bookwormã§ãã¹ããããŠããŸãã
ã¹ããã1: ã¿ãŒããã«ãŠã£ã³ããŠãéãã以äžã®ã³ãã³ããå®è¡ããŠRaspberry Piã®ãœãããŠã§ã¢ãææ°ããŒãžã§ã³ã«ã¢ããããŒãããŸãã
ã¹ããã2ïŒIMX500ã»ã³ãµãŒãåäœãããããã«å¿ èŠãªIMX500ãã¡ãŒã ãŠã§ã¢ãããã±ãŒãžã£ããŒã«ãšãšãã«ã€ã³ã¹ããŒã«ããŸãã
ã¹ããã 3: å®è¡ããããã®åææ¡ä»¶ã®ã€ã³ã¹ããŒã« picamera2
ã¢ããªã±ãŒã·ã§ã³ã䜿çšããŸãããã®ã¢ããªã±ãŒã·ã§ã³ã¯åŸã§ãããã€åŠçã«äœ¿çšããã
ã¹ããã 4: å€æŽãæå¹ã«ããããã«Raspberry Piãåèµ·åããŸãã
ã¢ãã«ãããã±ãŒãžåããAIã«ã¡ã©ã«ãããã€ãã
ååŸåŸ packerOut.zip
IMX500ã®å€æããã»ã¹ããããã®ãã¡ã€ã«ãããã±ãŒãžã£ãŒã»ããŒã«ã«æž¡ããšãRPKãã¡ã€ã«ãåŸãããŸãããã®ãã¡ã€ã«ãAIã«ã¡ã©ã«çŽæ¥é
眮ããã«ã¯ picamera2
.
ã¹ããã1ïŒã¢ãã«ãRPKãã¡ã€ã«ã«ããã±ãŒãžãã
äžèšã¯ network.rpk
ãã¡ã€ã«ãæå®ãããåºåãã©ã«ããŒå
ã«çœ®ãã
ã¹ããã2ïŒã¯ããŒã³ picamera2
ã¬ããžããªã«ã€ã³ã¹ããŒã«ããimx500 ã®ãµã³ãã«ã«ç§»åããŸãã
git clone -b next https://github.com/raspberrypi/picamera2
cd picamera2
pip install -e . --break-system-packages
cd examples/imx500
ã¹ããã 3: IMX500 ãšã¯ã¹ããŒãæã«çæããã labels.txt ãã¡ã€ã«ã䜿çšããŠãYOLOv8 ãªããžã§ã¯ãæ€åºãå®è¡ããŸãã
python imx500_object_detection_demo.py --model <path to network.rpk> --fps 25 --bbox-normalization --ignore-dash-labels --bbox-order xy âlabels <path to labels.txt>
ãããšã次ã®ããã«ã©ã€ãã®æšè«åºåãèŠãããšãã§ããã
ãã³ãããŒã¯
YOLOv8 以äžã®ãã³ãããŒã¯ã¯ãUltralytics ããŒã ã Raspberry Pi AI Camera ã§å®è¡ãããã®ã§ãã imx
ã¹ããŒããšç²ŸåºŠã枬å®ããã¢ãã«åœ¢åŒã
ã¢ãã« | ãã©ãŒããã | ã¹ããŒã¿ã¹ | ãµã€ãº (MB) | mAP50-95(B) | æšè«æéïŒms/imïŒ |
---|---|---|---|---|---|
YOLOv8n | ã€ããã¯ã¹ | â | 2.9 | 0.522 | 66.66 |
泚
äžèšã®ãã³ãããŒã¯ã®æ€èšŒã¯ãcoco8ããŒã¿ã»ãããçšããŠè¡ãããã
ãã³ãããã®äžã«ã¯äœãããïŒ
ãœããŒã¢ãã«ã³ã³ãã¬ãã·ã§ã³ããŒã«ãããïŒMCTïŒ
ãœããŒã®Model Compression ToolkitïŒMCTïŒã¯ãéååãšæåãã«ãã£ãŠãã£ãŒãã©ãŒãã³ã°ã¢ãã«ãæé©åããããã®åŒ·åãªããŒã«ã§ããæ§ã ãªéååææ³ããµããŒããã粟床ãå€§å¹ ã«ç ç²ã«ããããšãªãã¢ãã«ãµã€ãºãšèšç®ã®è€éããäœæžããé«åºŠãªã¢ã«ãŽãªãºã ãæäŸããŸããMCTã¯ããªãœãŒã¹ã«å¶çŽã®ããããã€ã¹ã«ã¢ãã«ãå±éããéã«ç¹ã«æçšã§ãå¹ççãªæšè«ãšåŸ ã¡æéã®ççž®ãå®çŸããŸãã
MCTã®ãµããŒãæ©èœ
ãœããŒã®MCTã¯ããã¥ãŒã©ã«ãããã¯ãŒã¯ã¢ãã«ãæé©åããããã«èšèšãããããŸããŸãªæ©èœãæäŸããïŒ
- ã°ã©ãã®æé©åïŒãããæ£èŠåãªã©ã®ã¬ã€ã€ãŒãçŽåã®ã¬ã€ã€ãŒã«æããããããšã§ãã¢ãã«ãããå¹ççãªããŒãžã§ã³ã«å€æããŸãã
- éååãã©ã¡ãŒã¿æ¢çŽ¢ïŒMean-Square-ErrorãNo-ClippingãMean-Average-Errorãªã©ã®ã¡ããªã¯ã¹ã䜿çšããŠéååãã€ãºãæå°åããŸãã
- é«åºŠãªéååã¢ã«ãŽãªãºã :
- ã·ãããã€ãã¹è£æ£ïŒå¯Ÿç§°æŽ»æ§åéååã«ããããã©ãŒãã³ã¹ã®åé¡ã«å¯ŸåŠã
- å€ãå€ãã£ã«ã¿ãªã³ã°ïŒZã¹ã³ã¢ã䜿çšããŠå€ãå€ãæ€åºããé€å»ããŸãã
- ã¯ã©ã¹ã¿ãªã³ã°ïŒããè¯ãååžãããã³ã°ã®ããã«äžåäžãªéååã°ãªãããå©çšããã
- æ··å粟床ãµãŒãïŒæ床ã«åºã¥ããã¬ã€ã€ãŒããšã«ç°ãªãéååãããå¹ ãå²ãåœãŠãã
- å¯èŠåïŒTensorBoardã䜿çšããŠãã¢ãã«æ§èœã®æŽå¯ãéååãã§ãŒãºãããã³ãããå¹ ã®æ§æã芳å¯ããŸãã
éåå
MCTã¯ãã¢ãã«ãµã€ãºãçž®å°ããæšè«é床ãåäžãããããã«ãããã€ãã®éååææ³ããµããŒãããŠããïŒ
- ãã¹ããã¬ãŒãã³ã°éååïŒPTQïŒ:
- Kerasããã³PyTorch APIçµç±ã§å©çšå¯èœã
- è€éãïŒäœã
- èšç®ã³ã¹ãïŒäœã (CPU å)
- åŸé
ããŒã¹ã®ãã¹ããã¬ãŒãã³ã°éååïŒGPTQïŒ:
- Kerasããã³PyTorch APIçµç±ã§å©çšå¯èœã
- è€éãïŒããã£ã¢ã
- èšç®ã³ã¹ãïŒäžçšåºŠ (2-3GPU æé)
- éåå察å¿ãã¬ãŒãã³ã°ïŒQATïŒ:
- è€éãïŒé«
- èšç®ã³ã¹ãïŒé«ã (12-36GPU æé)
MCTã¯ãŸããéã¿ãšæŽ»æ§åã®ããã®ããŸããŸãªéååã¹ããŒã ããµããŒãããŠããïŒ
- ãã¯ãŒãªãããŒïŒããŒããŠã§ã¢ã«åªããïŒ
- ã·ã³ã¡ããªãã¯
- ãŠããã©ãŒã
æ§é åãããåªå®
MCTã¯ãç¹å®ã®ããŒããŠã§ã¢ã¢ãŒããã¯ãã£åãã«èšèšããããæ§é åãããããŒããŠã§ã¢ãæèããã¢ãã«åã蟌ã¿ãå°å ¥ããŠããŸãããã®ææ³ã¯ãSIMDã°ã«ãŒãããã«ãŒãã³ã°ããããšã§ãã¿ãŒã²ãããã©ãããã©ãŒã ã®SIMDïŒSingle Instruction, Multiple DataïŒæ©èœã掻çšããŸããããã«ãããã¢ãã«ã®ãµã€ãºãšè€éããåæžãããã£ãã«å©çšãæé©åããŸããKerasããã³PyTorch APIçµç±ã§å©çšå¯èœã§ãã
IMX500ã³ã³ããŒã¿ããŒã«ïŒã³ã³ãã€ã©ïŒ
IMX500 Converter Tool 㯠IMX500 ããŒã«ã»ããã«äžå¯æ¬ ãªãã®ã§ãSony ã® IMX500 ã»ã³ãµãŒïŒäŸãã°ãRaspberry Pi AI CamerasïŒäžã§å±éããã¢ãã«ã®ã³ã³ãã€ã«ãå¯èœã«ããŸãããã®ããŒã«ã¯ãUltralytics ãœãããŠã§ã¢ãéããŠåŠçãããUltralytics YOLOv8 ã¢ãã«ã®ç§»è¡ã容æã«ããäºææ§ããããæå®ãããããŒããŠã§ã¢äžã§å¹ççã«åäœããããšãä¿èšŒããŸããã¢ãã«ã®éåååŸã®ãšã¯ã¹ããŒãæé ã§ã¯ãéèŠãªããŒã¿ãšããã€ã¹åºæã®èšå®ãã«ãã»ã«åãããã€ããªãã¡ã€ã«ãçæãããRaspberry Pi AI Cameraãžã®å±éããã»ã¹ãå¹çåãããŸãã
å®éã®äœ¿çšäŸ
IMX500ãã©ãŒããããžã®ãšã¯ã¹ããŒãã¯ãæ¥çãåããå¹ åºãé©çšã§ããŸãã以äžã¯ãã®äŸã§ãïŒ
- ãšããžAIãšIoTïŒäœæ¶è²»é»åããã€ã¹ã§ã®ãªã¢ã«ã¿ã€ã åŠçãäžå¯æ¬ ãªãããŒã³ãã»ãã¥ãªãã£ã«ã¡ã©ã§ã®ç©äœæ€åºãå¯èœã«ããã
- ãŠã§ã¢ã©ãã«ããã€ã¹ïŒå°èŠæš¡ãªAIåŠçã«æé©åãããã¢ãã«ãå¥åº·ã¢ãã¿ãªã³ã°çšãŠã§ã¢ã©ãã«ã«å±éããã
- ã¹ããŒãã·ãã£ïŒIMX500ãããšã¯ã¹ããŒããããYOLOv8 ãããé«éãªåŠçãšæå°éã®ã¬ã€ãã³ã·ãŒã§ã亀éã¢ãã¿ãªã³ã°ãšå®å šåæã«äœ¿çšã§ããŸãã
- ãªããŒã«ã»ã¢ããªãã£ã¯ã¹ïŒPOSã·ã¹ãã ãã¹ããŒãã·ã§ã«ãã«æé©åãããã¢ãã«ãå°å ¥ããããšã§ãåºèå ã®ã¢ãã¿ãªã³ã°ã匷åã
çµè«
Ultralytics YOLOv8 ã¢ãã«ããœããŒã® IMX500 ãã©ãŒãããã«ãšã¯ã¹ããŒãããããšã§ãIMX500 ããŒã¹ã®ã«ã¡ã©ã§å¹ççãªæšè«ãè¡ãããã«ã¢ãã«ãå±éããããšãã§ããŸããé«åºŠãªéååæè¡ã掻çšããããšã§ã粟床ãå€§å¹ ã«æãªãããšãªãã¢ãã«ãµã€ãºãçž®å°ããæšè«é床ãåäžãããããšãã§ããŸãã
詳现ãšã¬ã€ãã©ã€ã³ã«ã€ããŠã¯ããœããŒã®IMX500ãŠã§ããµã€ããåç §ããŠãã ããã
ããããã質å
Raspberry Piã®AIã«ã¡ã©çšã«ãYOLOv8 ã®ã¢ãã«ãIMX500ãã©ãŒãããã«ãšã¯ã¹ããŒãããã«ã¯ïŒ
YOLOv8 ã¢ãã«ã IMX500 ãã©ãŒãããã«ãšã¯ã¹ããŒãããã«ã¯ãPython API ãŸãã¯CLI ã³ãã³ãã䜿çšããŸãïŒ
from ultralytics import YOLO
model = YOLO("yolov8n.pt")
model.export(format="imx") # Exports with PTQ quantization by default
ãšã¯ã¹ããŒãããã»ã¹ã¯ã以äžã®ãããªãããã€ã«å¿
èŠãªãã¡ã€ã«ãå«ããã£ã¬ã¯ããªãäœæããŸãã packerOut.zip
ããã¯ãRaspberry Piäžã®IMX500ããã±ãŒãžã£ãŒã»ããŒã«ã§äœ¿çšã§ããã
ãšããžAIã®å±éã«IMX500ãã©ãŒãããã䜿çšããäž»ãªå©ç¹ã¯äœã§ããïŒ
IMX500ãã©ãŒãããã¯ããšããžå±éã«ãããŠããã€ãã®éèŠãªå©ç¹ãæäŸããïŒ
- ãªã³ãããã®AIåŠçã§ã¬ã€ãã³ã·ãŒãšæ¶è²»é»åãåæž
- ç»åã®ã¿ã§ã¯ãªããç»åãšã¡ã¿ããŒã¿ïŒæšè«çµæïŒã®äž¡æ¹ãåºåã
- ã¯ã©ãŠãã«äŸåããªãããŒã«ã«ãªããŒã¿åŠçã«ãããã©ã€ãã·ãŒã®åŒ·å
- äžå»ãäºãã¢ããªã±ãŒã·ã§ã³ã«æé©ãªãªã¢ã«ã¿ã€ã åŠçæ©èœ
- ãªãœãŒã¹ã«å¶çŽã®ããããã€ã¹ãžã®å¹ççãªã¢ãã«å±éã®ããã®éååã®æé©å
IMX500ã®å°å ¥ã«ã¯ãã©ã®ãããªããŒããŠã§ã¢ãšãœãããŠã§ã¢ã®åææ¡ä»¶ãå¿ èŠã§ããïŒ
IMX500ã¢ãã«ãå°å ¥ããã«ã¯ã以äžã®ãã®ãå¿ èŠã§ãïŒ
ããŒããŠã§ã¢ã ïŒ
- Raspberry Pi 5 ãŸã㯠Raspberry Pi 4 Model B
- IMX500ã»ã³ãµãŒæèŒRaspberry Pi AIã«ã¡ã©
ãœãããŠã§ã¢ã ïŒ
- ã©ãºããªãŒãã€OSã®æ¬ã®è«
- IMX500ã®ãã¡ãŒã ãŠã§ã¢ãšããŒã«(
sudo apt install imx500-all imx500-tools
) - Python ããã±ãŒãž
picamera2
(sudo apt install python3-opencv python3-munkres
)
IMX500ã®YOLOv8 ãã©ã®ãããªããã©ãŒãã³ã¹ãæåŸ ã§ããŸããïŒ
Raspberry Pi AI Cameraã®Ultralytics ãã³ãããŒã¯ã«åºã¥ãïŒ
- YOLOv8n ç»å1æãããã®æšè«æé66.66msãéæ
- COCO8ããŒã¿ã»ããã§ã®mAP50-95ã¯0.522
- éåååŸã®ã¢ãã«ãµã€ãºã¯ããã2.9MB
ããã¯ãIMX500ãã©ãŒããããããšããžAIã¢ããªã±ãŒã·ã§ã³ã®ç²ŸåºŠãç¶æããªãããå¹ççãªãªã¢ã«ã¿ã€ã æšè«ãæäŸããããšã瀺ããŠããã
ãšã¯ã¹ããŒãããã¢ãã«ãRaspberry Pi AI Cameraã«ãããã€ããæ¹æ³ãæããŠãã ããã
IMX500ãã©ãŒãããã«ãšã¯ã¹ããŒãåŸïŒ
-
ããã±ãŒãžã£ãŒããŒã«ã䜿ã£ãŠRPKãã¡ã€ã«ãäœæããïŒ
-
picamera2ãã¯ããŒã³ããŠã€ã³ã¹ããŒã«ããïŒ
-
çæãããRPKãã¡ã€ã«ã䜿çšããŠæšè«ãå®è¡ããïŒ