logo
OpenMV
โฮมแคม
การใช้งาน
เก็บ
AI
ช่องทางการขาย
สนับสนุน
OpenMVOpenMV
โล่โล่
เลนส์เลนส์
วิทยาการหุ่นยนต์วิทยาการหุ่นยนต์
หนังสือหนังสือ
วีดีโอวีดีโอ
ดาวน์โหลดดาวน์โหลด
เอกสารเอกสาร
ฟอรั่มฟอรั่ม
OpenMV.ioOpenMV.io
GithubGithub

การตรวจจับจุดเป้าหมายด้วยเครือข่ายประสาทเทียมที่ฝึกด้วยตนเองโดยใช้ OpenMV – การรู้จำสัญลักษณ์จราจรในสภาพแวดล้อมถนนจริง

ปัญญาประดิษฐ์มีสองภารกิจที่พบบ่อยมากในสาขาการมองเห็น ได้แก่ การจัดหมวดหมู่ และการตรวจจับวัตถุ

หมวดหมู่:ระบุว่าภาพนั้นจัดอยู่ในหมวดใด เช่น หมวดแมวหรือหมวดสุนัข

การตรวจจับวัตถุ:ใช้เพื่อระบุตำแหน่ง จำนวน และขนาดของวัตถุที่แตกต่างกันหลายชิ้นในภาพ

ในวิดีโอการสอนก่อนหน้านี้ เราได้อธิบายวิธีใช้ OpenMV4 Plus ในการฝึกอบรมเครือข่ายประสาทเทียมแบบออนไลน์เพื่อจัดจำแนกวัตถุที่แตกต่างกัน ซึ่งสามารถระบุแบบเรียลไทม์ได้ว่าภาพที่อยู่ในขอบเขตการมองเห็นของ OpenMV คือวัตถุใดวัตถุหนึ่งหรือไม่ เช่น ใบหน้ามีการสวมใส่หน้ากากอนามัยหรือไม่ แต่ไม่สามารถให้พิกัดตำแหน่งของใบหน้าหรือหน้ากากอนามัย รวมทั้งจำนวนใบหน้าได้

เนื่องจากการตรวจจับวัตถุมีความซับซ้อนและใช้ทรัพยากรการคำนวณมากกว่าการจำแนกประเภทอย่างมาก จึงพบได้ยากมากในวงการไมโครคอนโทรลเลอร์ ไมโครคอนโทรลเลอร์หลักของ OpenMV คือ STM32H7 และปัจจุบันเราได้เพิ่มฟังก์ชันใหม่ลงใน OpenMV ซึ่งสามารถดำเนินการงานที่คล้ายกับการตรวจจับวัตถุบนไมโครคอนโทรลเลอร์ได้ โดยมีประสิทธิภาพที่โดดเด่นมาก

交通标志识别教程-多个目标的识别

วันนี้เราจะอธิบายให้ท่านฟังการฝึกอบรมเพื่อสาธิตการตรวจจับสัญลักษณ์จราจรในสภาพแวดล้อมของถนนจริง ซึ่งใช้ตรวจจับสัญลักษณ์จราจรบนถนนจริงของเราเช่น ห้ามใช้แตร ห้ามจอดรถ และจำกัดความเร็วสูงสุด 80 กิโลเมตรต่อชั่วโมง แทนที่จะเป็นสภาพแวดล้อมในห้องปฏิบัติการที่ไม่มีสิ่งรบกวน

คุณสามารถดูเนื้อหาโครงการทั้งหมด รวมถึงโค้ดและโมเดลทั้งหมดได้ที่ที่อยู่ต่อไปนี้: https://book.openmv.cc/project/traffic-sign.html

เป็นที่ทราบกันดีว่าสภาพแวดล้อมจริงมีความซับซ้อนอย่างยิ่ง โดยเฉพาะสภาพแวดล้อมบนถนน ซึ่งมีสิ่งรบกวนมากมาย เราได้ใช้อุปกรณ์ต่างๆ เช่น สมาร์ทโฟน ถ่ายภาพป้ายจราจรในสภาพแวดล้อมจริง จากนั้นนำภาพเหล่านั้นไปฝึกโมเดลด้วยเว็บไซต์ออนไลน์ EdgeImpulse ของพันธมิตร OpenMV ของเรา โดยเราได้ทำเครื่องหมายภาพไว้ประมาณ 270 ภาพ ใช้เวลาฝึกเพียง 10 นาทีเท่านั้น โมเดลที่ได้มีค่าความแม่นยำ F1 score สูงถึงร้อยละ 92 และสามารถทำงานบน OpenMV ได้ที่อัตราเฟรม 10 เฟรมต่อวินาที ซึ่งให้ผลลัพธ์ที่ลื่นไหลมากและมีความแม่นยำสูง

ผู้ใช้สามารถฝึกโมเดลเพื่อตรวจจับวัตถุใดก็ได้ตามที่ต้องการ โดยอ้างอิงจากวิดีโอการสอนของเรา เช่น ตัวเลขที่แตกต่างกัน ผลไม้ที่แตกต่างกัน สัญลักษณ์ที่แตกต่างกัน ชิ้นส่วนที่แตกต่างกัน หรือแม้แต่วัตถุที่มีรูปร่างไม่สม่ำเสมอเฉพาะเจาะจงใดๆ ก็ตาม ซึ่งสามารถฝึกให้ระบุจำนวน พิกัด และชื่อประเภทของวัตถุเป้าหมายได้

หมายเหตุ:วิดีโอการสอนชุดนี้อธิบายฟังก์ชันการตรวจจับจุดเป้าหมายด้วยเครือข่ายประสาทเทียม ซึ่งไม่เพียงแต่ใช้งานได้กับ OpenMV4 H7 Plus เท่านั้น แต่ยังรองรับ OpenMV4 H7 ด้วย เนื่องจากโมเดลการตรวจจับจุดเป้าหมาย FOMO ที่ผ่านการฝึกอบรมแล้วมีขนาดไม่ใหญ่ ให้ผลลัพธ์ที่ดีเยี่ยม และมีขนาดเพียงไม่กี่สิบกิโลไบต์ แม้ว่าหน่วยความจำในการทำงานของ OpenMV4 H7 จะมีขนาดเล็กกว่ารุ่น Plus เราจึงสามารถฝึกอบรมโมเดลที่มีขนาดเล็กลงเล็กน้อยเพื่อให้สามารถทำงานบน OpenMV4 ได้

ด้านล่างนี้คือการแนะนำหลักการโดยย่อ

การตัดสินใจเชิงออกแบบหลักสำหรับการตรวจจับจุดเป้าหมาย FOMO บน OpenMV นั้นอิงตามแนวคิดที่ว่า ปัญหาการตรวจจับวัตถุจำนวนมากไม่จำเป็นต้องใช้ขนาดของวัตถุแต่เพียงตำแหน่งของวัตถุในภาพเท่านั้น เมื่อเราทราบตำแหน่งของวัตถุแล้ว เราสามารถดำเนินการขั้นตอนต่อไปได้ เช่น การควบคุมรถหุ่นยนต์ให้เคลื่อนที่ไปยังเป้าหมายที่ตรวจจับได้ด้วย OpenMV การควบคุมโดรนให้ลงจอดที่จุดที่กำหนด หรือการควบคุมแขนกลให้หยิบจับวัตถุเป้าหมายเฉพาะ

โมเดล FOMO คือโมเดลที่ EdgeImpulse ออกแบบมาเป็นพิเศษสำหรับสภาพแวดล้อมของไมโครคอนโทรลเลอร์ ซึ่งแตกต่างจากงานตรวจจับวัตถุแบบทั่วไป โมเดลนี้สามารถตรวจจับตำแหน่งและจำนวนของวัตถุหลายชิ้นได้เท่านั้น แต่ไม่สามารถระบุขนาดที่แน่นอนของวัตถุได้

หลักการพื้นฐานของโมเดล FOMO มีความเรียบง่ายและยืดหยุ่นมาก ขั้นตอนแรกคือการแบ่งภาพออกเป็นส่วนย่อย โดยแต่ละส่วนมีขนาด 8×8 พิกเซล ดังนั้น ภาพที่มีความละเอียด 96×96 พิกเซล จะถูกแบ่งออกเป็นตารางขนาด 12×12 เซลล์ ส่วนภาพที่มีความละเอียด 360×360 พิกเซล จะถูกแบ่งออกเป็นตารางขนาด 40×40 เซลล์ จากนั้นจึงดำเนินการจำแนกประเภทภาพอย่างอิสระในแต่ละเซลล์

เมื่อเปรียบเทียบกับ YOLO V5 หรือ MobileNet SSD แล้ว FOMO มีประสิทธิภาพดีกว่ามากในการตรวจจับวัตถุขนาดเล็กจำนวนมาก FOMO สำหรับการตรวจจับจุดของวัตถุมีความเร็วมากกว่า MobileNet SSD ถึง 30 เท่า

หากวัตถุที่ต้องการตรวจจับมีขนาดใกล้เคียงกัน เช่น สัญลักษณ์ที่คุณต้องการระบุนั้นมีขนาดแตกต่างกันน้อยมาก ไม่ใช่วัตถุขนาดใหญ่มากและวัตถุขนาดเล็กมาก FOMO จะให้ผลลัพธ์ที่ดีกว่า

OpenMV ใช้ EdgeImpulse ในการฝึกโมเดลเครือข่ายประสาทสำหรับการตรวจจับจุดเป้าหมายแบบออนไลน์ โดยมีขั้นตอนหลักดังนี้: การเก็บรวบรวมและอัปโหลดชุดข้อมูลภาพ ● การระบุตำแหน่งของวัตถุเป้าหมาย ● การฝึกโมเดล ● การทดสอบโมเดล ● การปรับใช้โมเดล

* การรวบรวมชุดข้อมูลภาพ: ถ่ายภาพวัตถุเฉพาะที่เราต้องการระบุในสภาพแวดล้อมจริงที่ใช้งานจริง เราจะถ่ายภาพในสภาพแวดล้อมที่ใช้ในการระบุจริง ซึ่งสภาพแวดล้อมที่ใช้ในการฝึกอบรมจริงกับสภาพแวดล้อมที่ใช้ในการตรวจจับจริงนั้นมีความสอดคล้องกันอย่างมาก ดังนั้นผลลัพธ์จึงมีประสิทธิภาพดียิ่งขึ้น

* วัตถุประสงค์ของการทำเครื่องหมาย: วาดกรอบรอบแต่ละวัตถุที่ต้องตรวจจับในชุดข้อมูลของเรา และระบุชื่อวัตถุนั้นให้ตรงกัน เพื่อความสะดวกในการฝึกอบรมในขั้นตอนถัดไป การตรวจจับตำแหน่งของวัตถุ และชื่อของวัตถุ

* ฝึกโมเดล: หลังจากเสร็จสิ้นการป้ายกำกับแล้ว ให้ฝึกโมเดลด้วยพารามิเตอร์ของเครือข่ายประสาทเทียมแบบคอนโวลูชันตามที่เราออกแบบไว้

*แบบจำลองการทดสอบ: เราทำการทดสอบโดยใช้แบบจำลองที่ผ่านการฝึกอบรมแล้ว หากผลลัพธ์ไม่เป็นไปตามที่ต้องการ เราจะเพิ่มชุดข้อมูลการฝึกอบรมหรือปรับพารามิเตอร์การฝึกอบรมที่เกี่ยวข้อง จากนั้นดำเนินการฝึกอบรมต่อไปจนกว่าจะได้แบบจำลองที่น่าพอใจ

*การติดตั้ง: เราเพียงนำไฟล์โมเดลที่ผ่านการฝึกอบรมแล้วไปวางไว้ในหน่วยความจำ USB ภายใน OpenMV และเรียกใช้งานได้ทันที~

ด้านล่างนี้เป็นตัวอย่างขั้นตอนที่ชัดเจน:

01. รวบรวมและอัปโหลดชุดข้อมูลภาพ

หนึ่ง ขั้นตอนแรก ให้เข้าสู่เว็บไซต์ edgeimpulse.com แล้วเลือก “เข้าสู่ระบบ” ป้อนชื่อโครงการที่สร้างขึ้นใหม่ จากนั้นเลือก “ภาพ” — “จัดหมวดหมู่วัตถุหลายรายการ”

交通标志识别教程-新建项目.

สอง  เลือกอัปโหลดภาพ  มีหลายวิธีในการจัดหาชุดข้อมูลภาพ:

1. ถ่ายภาพแบบเรียลไทม์ผ่าน OpenMV IDE ใช้เครื่องมือภายใน OpenMV IDE ที่ชื่อว่า “ตัวแก้ไขชุดข้อมูล” เพื่อสร้างชุดข้อมูลใหม่และถ่ายภาพแบบเรียลไทม์ รายละเอียดเพิ่มเติมสามารถดูได้จากวิดีโอการสอนก่อนหน้านี้ของเราเกี่ยวกับการจัดหมวดหมู่วัตถุและการระบุหน้ากาก

交通标志识别教程-.实时采集图像

2. ใช้ภาพที่ดาวน์โหลดผ่านอินเทอร์เน็ตหรือภาพที่ถ่ายด้วยสมาร์ทโฟนจริง โดยควรให้สอดคล้องกับสภาพแวดล้อมที่คุณกำลังตรวจสอบจริงมากที่สุด เราได้จัดเตรียมภาพป้ายจราจรจำนวนสี่ถึงห้าร้อยภาพ ซึ่งประกอบด้วยป้ายห้ามจอด ห้ามบีบแตร และจำกัดความเร็ว 80 กม./ชม. ทุกภาพถ่ายจากถนนจริง ชุดข้อมูลนี้สามารถดาวน์โหลดได้จาก GitHub และเว็บไซต์บทช่วยสอนของเรา

02. กำหนดเป้าหมายการติดป้าย

อัปโหลดภาพประมาณ 100 ภาพต่อหมวดหมู่ เมื่ออัปโหลดภาพเสร็จสิ้น จำเป็นต้องดำเนินการกำกับข้อมูลภาพ โดยระบุตำแหน่งและหมวดหมู่ของวัตถุที่เราต้องการระบุ

交通标志识别教程-上传图片
交通标志识别教程-标记物体

03. การฝึกโมเดล

ตั้งค่าพารามิเตอร์การฝึกอบรมโดยเปลี่ยนความละเอียดเป็น 128×128 และเลือกค่าพารามิเตอร์ทั้งหมดตามค่าเริ่มต้น จากนั้นคลิกบันทึก

交通标志识别教程-训练模型1.

สร้างคุณลักษณะ โดยแต่ละสีแทนสัญลักษณ์ที่แตกต่างกันสามแบบ

交通标志识别教程-训练模型2

ตั้งค่าพารามิเตอร์การฝึกอบรมสำหรับการตรวจจับวัตถุ จำนวนรอบการฝึกอบรมเริ่มต้นคือ 60 รอบ อัตราการเรียนรู้คือ 0.001 สัดส่วนของชุดข้อมูลที่ใช้ในการตรวจสอบความถูกต้องคือ 20% โปรดเลือกเปิดใช้งานการเพิ่มข้อมูล และสำหรับโมเดลการเรียนรู้แบบถ่ายโอน ท่านสามารถเลือกโมเดลเริ่มต้นได้แก่ MobileNetV2 0.35 หรือ MobileNetV2 0.1 (โปรดทราบว่า ห้ามใช้โมเดล SSD เนื่องจากไม่สามารถทำงานบน OpenMV ได้)

เลือกเริ่มการฝึกอบรม โมเดลเครือข่ายประสาทเทียมที่ได้หลังการฝึกอบรมเสร็จสิ้นมีค่า F1 Score เท่ากับ 91.2% เราสามารถบันทึกเวอร์ชันปัจจุบันได้

交通标志识别教程-训练模型3

เลือกที่จัดเก็บ ป้อนคำอธิบายของคุณ จากนั้นเลือกบันทึก

交通标志识别教程-训练模型4

04. การปรับใช้โมเดล

ส่งออกไฟล์โมเดลที่ผ่านการฝึกแล้ว ให้ส่งออกเฉพาะไลบรารีเท่านั้น เลือก OpenMV แล้วคลิกที่ Build เพื่อเริ่มการปรับใช้และส่งออกโมเดล

交通标志识别教程-部署模型1

มันจะดาวน์โหลดโมเดลที่เราส่งออกโดยอัตโนมัติ ซึ่งก็คือโมเดลที่ฝึกจากภาพจำนวน 300 ภาพนี้ ดังนั้นการฝึกทั้งหมดของเราจึงเสร็จสมบูรณ์

交通标志识别教程-部署模型2

05. รันโมเดล

เรียกใช้โมเดลบน OpenMV:

เชื่อมต่อกับ OpenMV Plus แล้วบันทึกไฟล์ที่ผ่านการฝึกอบรมมาแล้วสามไฟล์ลงในไดรฟ์ USB ภายในของ OpenMV จากนั้นเปิดไฟล์ ei_object_detection.py ใน OpenMV IDE คลิกที่ปุ่มเรียกใช้งาน และผลลัพธ์ของการเรียกใช้งานจะแสดงขึ้นในเทอร์มินัลแบบอนุกรม

交通标志识别教程-运行模型1
交通标志识别教程-运行模型2

ฟังก์ชันนี้สามารถทำงานได้บน OpenMV4 ด้วย เนื่องจาก OpenMV4 ไม่มีหน่วยความจำ SDRAM ภายนอก ทำให้มีพื้นที่หน่วยความจำจำกัดกว่า จึงจำเป็นต้องลดขนาดของโมเดลเพื่อให้สามารถทำงานบน OpenMV4 ได้

มีวิธีสองวิธีในการลดขนาดของโมเดล:

หนึ่ง ลดความละเอียดในการฝึกอบรม โดยเปลี่ยนความละเอียดจาก 128 × 128 เป็น 96 × 96

สอง ปรับเปลี่ยนโมเดลการเรียนรู้แบบถ่ายโอนที่ใช้งาน โดยเปลี่ยนจาก MobileNetV2 0.35 เป็น MobileNetV2 0.1

สุดท้าย ให้นำไฟล์ใหม่ที่ผ่านการฝึกอบรมแล้วไปวางไว้ใน OpenMV4 และเรียกใช้งานได้ทันที

นี่คือบทช่วยสอนการตรวจจับจุดเป้าหมายของเรา รอคอยผลงานของคุณ!

บทความที่เกี่ยวข้อง

机房/配电房/单元门敞开识别

AI ผู้พิทักษ์ที่ใช้ OpenMV: การแจ้งเตือนอัตโนมัติเมื่อสถานที่สำคัญยังไม่ได้ปิด

ตรวจจับโดยอัตโนมัติว่าประตูของสถานที่สำคัญเปิดค้างไว้นานเกินไปหรือไม่ และแจ้งเตือนทันที

越界识别

แจ้งเตือนทันทีเมื่อบุคคลข้ามเขตที่กำหนด ด้วย OpenMV ที่สร้าง “ความรู้สึกปลอดภัยของเขตแดน”

การระบุพฤติกรรมการล่วงล้ำของบุคคลหรืออุปกรณ์ผ่านเส้นเตือนเสมือน

占道经营识别

“AI ผู้บังคับใช้กฎหมายเมือง” มาแล้ว ระบบตรวจจับการประกอบกิจการรุกล้ำทางสาธารณะอัตโนมัติที่พัฒนาขึ้นบนพื้นฐานของ OpenMV

การตรวจจับพฤติกรรมการประกอบกิจการรุกล้ำทางสาธารณะโดยอัตโนมัติ เพื่อสนับสนุนการบริหารจัดการเมืองในชีวิตประจำวัน

煤气罐违规摆放识别

ถังก๊าซวางไว้ไม่เป็นระเบียบหรือไม่? ใช้ OpenMV เพื่อกระตุ้นการแจ้งเตือนอันตรายโดยอัตโนมัติ

ตรวจจับตำแหน่งการจัดวางถังก๊าซที่ผิดข้อกำหนดโดยอัตโนมัติ เพื่อค้นหาความเสี่ยงด้านความปลอดภัยของก๊าซล่วงหน้า

绝缘手套佩戴识别

การปฏิบัติงานขณะมีไฟฟ้าโดยไม่สวมถุงมือฉนวนหรือไม่? OpenMV จะแจ้งเตือนทันที!

ตรวจจับโดยอัตโนมัติว่าผู้ปฏิบัติงานสวมถุงมือฉนวนหรือไม่ เพื่อช่วยสนับสนุนการปฏิบัติงานอย่างปลอดภัย

铝板缺陷识别

ใช้กล้องอัจฉริยะ OpenMV ในการตรวจจับข้อบกพร่องบนพื้นผิวแผ่นอลูมิเนียมแบบเรียลไทม์

การตรวจจับข้อบกพร่องบนพื้นผิวแผ่นอลูมิเนียม เช่น รอยขีดข่วนและรอยบุบ แบบออนไลน์ เพื่อช่วยในการควบคุมคุณภาพ

หมวดหมู่ยอดนิยม

ภาษาและภูมิภาค
Copyright © 2025 星瞳科技SingTown
粤ICP备17045162号