สารบัญ:

MyPetBot (บอทที่ติดตามคุณ): 10 ขั้นตอน (พร้อมรูปภาพ)
MyPetBot (บอทที่ติดตามคุณ): 10 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: MyPetBot (บอทที่ติดตามคุณ): 10 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: MyPetBot (บอทที่ติดตามคุณ): 10 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: Pet Pet คลินิกหรรษา(MY PET MY ANGEL ) [ พากย์ไทย ] EP.10 | TVB Love Series 2024, กรกฎาคม
Anonim
Image
Image
MyPetBot (บอทที่ติดตามคุณ)
MyPetBot (บอทที่ติดตามคุณ)
MyPetBot (บอทที่ติดตามคุณ)
MyPetBot (บอทที่ติดตามคุณ)

Ai เป็นหนึ่งในแอปพลิเคชั่นคณิตศาสตร์ที่สวยงามที่สุด โดยพื้นฐานแล้วมันเป็นกลุ่มของการดำเนินการเมทริกซ์ที่ปรับให้เหมาะกับผลลัพธ์ที่คุณต้องการ โชคดีที่มีเครื่องมือโอเพ่นซอร์สมากมายที่ช่วยให้เราใช้งานได้

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

ฉันเล่าเรื่องนี้เพราะฉันต้องการชี้ให้เห็นว่าหลักการนี้สามารถใช้กับแอปพลิเคชันอื่น ๆ ได้มากมาย! การติดตามใบหน้าของคุณด้วยของเล่นเป็นเพียงหนึ่งในนั้น สำหรับการติดตั้งแบบโต้ตอบ คุณสามารถทำอะไรก็ได้ คุณสามารถใช้แบบจำลองเพื่อตรวจจับว่าใบหน้ากำลังยิ้มอยู่หรือไม่ คุณสามารถนับจำนวนสุนัขในสวนสาธารณะได้ คุณสามารถปิดมู่ลี่ของคุณเมื่อมีคนผ่านไปมา หรือ… สร้างคอนโทรลเลอร์สำหรับ nintendo ของคุณตามตำแหน่งร่างกายของคุณ…. คุณสามารถดาวน์โหลดโมเดล Ai อื่น ๆ ที่ทำสิ่งต่างๆ ได้มากมาย

มีบทช่วยสอนเกี่ยวกับวิธีการทำให้การอนุมาน Ai ทำงานกับราสเบอร์รี่ pi ฉันมาที่นี่เพื่อสอนวิธีทำให้การรวมหลุมเป็นหน่วยทำงานด้วยตนเอง ทันทีที่บูทหุ่นยนต์ จะเริ่มโปรแกรมที่จำเป็น

เสบียง

  • หุ่นยนต์พารัลแลกซ์: ฉันเลือกหุ่นยนต์ตัวนี้เพราะฉันวางมันไว้ แต่หุ่นยนต์ใดๆ ที่สามารถควบคุมได้ด้วย Arduino จะทำงาน
  • Raspberry pi: อย่างน้อยฉันขอแนะนำ raspberry pi 3B+
  • Intel Neural Stick: อัตราการอนุมานจากหนึ่งต่อวินาทีเป็น 8 คุณต้องการจริงๆ ถ้าคุณต้องการทำ Ai ในราสเบอร์รี่ pi
  • Power Bank: วิธีที่ง่ายที่สุดในการจัดการพลังงาน ใช้งานได้กับ raspberry pi 3B+ คุณอาจต้องการตรวจสอบว่าใช้งานได้กับ pi 4
  • Picamera: ฉันชอบใช้ picamera แทน usb

ขั้นตอนที่ 1: Rover Assembly

แอสเซมบลีโรเวอร์
แอสเซมบลีโรเวอร์
แอสเซมบลีโรเวอร์
แอสเซมบลีโรเวอร์
แอสเซมบลีโรเวอร์
แอสเซมบลีโรเวอร์

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

  1. ค้นหาตัวเองว่าเป็นยานพาหนะที่ควบคุมโดย Arduino
  2. พันพาวเวอร์แบงค์ไว้แน่น
  3. ห่อราสเบอร์รี่ pi ให้แน่น
  4. กาว picamera โดยทำมุมเล็กน้อยไปทางด้านบน
  5. เชื่อมต่อทุกอย่างเข้าด้วยกัน
  6. โว้ว!

ขั้นตอนที่ 2: Raspbian

Raspbian
Raspbian
Raspbian
Raspbian

ฉันใช้ raspberry pi แต่ไม่มีเหตุผลที่จะไม่ใช้ linux อื่น… ขึ้นอยู่กับคุณ ฉันสามารถปล่อยอิมเมจแบบพลักแอนด์เพลย์เพื่อเบิร์นการ์ด sd ได้ ถ้ามีคนสนใจมากพอ

ติดตั้ง Raspbian: คุณสามารถติดตั้ง Raspbian Buster Lite ได้ เราจะไม่ใช้เดสก์ท็อป… เฉพาะการเชื่อมต่อ ssh Secure Shell

เชื่อมต่อกับ Pi ของคุณ: ขั้นแรกคุณสามารถเชื่อมต่อกับราสเบอร์รี่ pi ของคุณด้วยการเชื่อมต่ออีเทอร์เน็ต

ตั้งค่า wifi ของคุณ: ตอนนี้คุณสามารถกำหนดค่าการเชื่อมต่อไร้สายของคุณ

ขั้นตอนที่ 3: OpenVino

OpenVino
OpenVino

OpenVino เป็นห้องสมุดที่ยอดเยี่ยมที่สนับสนุนโดย Intel พวกเขาทำงานได้ดีมากในการรวบรวมแบบจำลองตัวอย่าง และพวกเขาได้ทำให้ ai framework ส่วนใหญ่เข้ากันได้ คุณต้องมีไลบรารีนี้สำหรับ Intel Neural Stick

การติดตั้ง Python3: คุณต้องติดตั้ง python 3

การติดตั้ง OpenVino: เมื่อเสร็จแล้วคุณจะเห็นบรรทัด "[setupvars.sh] สภาพแวดล้อม OpenVINO เริ่มต้น" ทุกครั้งที่คุณเชื่อมต่อกับ raspberry pi

OpenVino เป็นส่วนขยายของ opencv ในการทดสอบ คุณสามารถเปิด python3 และนำเข้า cv2

พิมพ์ลงในเปลือก:

python3

พิมพ์ลงใน python:

  • นำเข้า cv2
  • cv2._version_

บรรทัดสุดท้ายควรส่งคืน '4.1.2-openvino' หรือ openvino เวอร์ชันใดก็ได้ ถ้าบอกว่า opencv การติดตั้งของคุณใช้งานไม่ได้…

ขั้นตอนที่ 4: ดาวน์โหลดรหัส

ดาวน์โหลดรหัส
ดาวน์โหลดรหัส

ขั้นแรก เราติดตั้ง git พิมพ์ลงในเปลือก:

sudo apt-get ติดตั้ง git

จากนั้นเราสามารถย้ายไปที่โฟลเดอร์เอกสารและดาวน์โหลดรหัส:

  • cd ~/เอกสาร/
  • โคลน git

ขั้นตอนที่ 5: FollowMe (Python)

ติดตามฉัน (Python)
ติดตามฉัน (Python)

นี่คือส่วนที่คุณอยากเล่นด้วย ทำให้ถ้าติดตามคุณ! ทำให้มันกลัวคุณ! ตามสุนัขของคุณ! ทำให้จดจำสีหน้าได้!! แกล้งแมวของคุณ!!! อะไรก็ได้ที่คุณต้องการ

คุณจะพบสี่โฟลเดอร์หลัก: Arduino, Deployment, Player และ FollowMe:

Arduino: ข้อมูลเพิ่มเติมในหัวข้อถัดไป

การปรับใช้: นี่คือที่ที่ฉันใส่ส่วนต่อประสานผู้ใช้ ตอนนี้ฉันเขียนโค้ดปุ่มเริ่ม/หยุดง่ายๆ และโปรแกรมดูกล้องตัวเล็ก ๆ ที่ควบคุมได้อย่างสนุกสนาน

ผู้เล่น: มีไว้สำหรับใช้ในเดสก์ท็อปพีซีของคุณ สำหรับรีวิวผลงานของบอท!

FollowMe: โมดูลที่สร้างความสนุกอย่างแท้จริง

ฉันจะใส่รายละเอียดเพิ่มเติมเกี่ยวกับ github ดังนั้นจึงมีที่เดียวที่จะอัปเดต นี่คือที่สำหรับรหัส

ขั้นตอนที่ 6: ดาวน์โหลดรุ่น

โมเดลสำหรับการอนุมานไม่รวมอยู่ในโค้ดเนื่องจากมีขนาดค่อนข้างใหญ่ แต่คุณสามารถหาตัวอย่างได้มากมายโดยใช้โมเดล OpenVino Zoo

คุณสามารถใช้ตัวดาวน์โหลดโมเดลหรือไปที่ลิงค์นี้โดยตรง ในกรณีของฉัน ฉันไม่สามารถใช้ตัวดาวน์โหลดโมเดลจากการติดตั้ง raspberry pi ของฉันได้…

จากนั้นคัดลอกโมเดลลงในโฟลเดอร์ชื่อ Models ด้วย:

  • cd ~/Documents/FollowMe
  • mkdir รุ่น
  • cd รุ่น
  • wget
  • wget

คุณต้องการ.xml และ.bin เสมอ

คุณสามารถดาวน์โหลดรุ่นใดก็ได้ที่คุณต้องการ… แต่คุณจะต้องเปลี่ยนรหัส มีความสุข!

ขั้นตอนที่ 7: Arduino

Arduino
Arduino

เราต้องดาวน์โหลดรหัสในขั้นตอนก่อนหน้า รหัสสำหรับ Arduino อยู่ในนั้น!

รหัสนี้มีไว้เพื่อขับเคลื่อนเซอร์โวต่อเนื่องสองตัว หากคุณเลือกการกำหนดค่าอื่น คุณต้องแก้ไขโค้ด

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

ฉันสามารถใช้เอาต์พุตของราสเบอร์รี่ pi โดยตรงเพื่อควบคุมมอเตอร์… แต่ Arduinos ทำงานได้ดีกว่า (พวกเขามีเครื่องกำเนิดความถี่จริง) นอกจากนี้ ฉันต้องการลดปริมาณราสเบอร์รี่ pi ให้มากที่สุดเพื่อให้อนุมานเร็วขึ้น

ขั้นตอนที่ 8: GUI

GUI
GUI
GUI
GUI

ไม่มีอะไรแฟนซี … ยัง ฉันอาจเพิ่มอย่างอื่น เช่น ไลฟ์วิวหรือการควบคุมการเคลื่อนไหว แต่ในระหว่างนี้ การเริ่มและหยุดง่ายๆ จะช่วยได้

หากคุณต้องการทดสอบ คุณต้องเปิดใช้งานจากไดเร็กทอรี FollowMe Level จากนั้นเรียกใช้จาก python3:

  • cd ~/Documents/FollowMe
  • python3 การปรับใช้/FollowMe.py

จากนั้นคุณสามารถเข้าถึงอินเทอร์เฟซในเบราว์เซอร์ของคุณได้โดยพิมพ์:

192.168.0.113:8000

ด้วยที่อยู่ IP ที่ถูกต้องแน่นอน

นอกจากนี้ยังมีโปรแกรมดูวิดีโอที่มีการควบคุม… แต่ไม่ใช่ด้วยการอนุมานที่ใช้งานได้

python3 Deployment/StreamVideo.py

ขั้นตอนที่ 9: บริการ

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

ในการเรียกใช้สคริปต์หลามเป็นบริการ คุณต้องอ้างอิงสคริปต์ในไฟล์บริการ ไฟล์บริการอยู่ในรหัสที่ดาวน์โหลดจาก git ในโฟลเดอร์ Deployment ชื่อ FollowMe.service

หากต้องการคัดลอกให้พิมพ์ดังต่อไปนี้ในเชลล์:

sudo cp ~/Documents/FollowMe/Deployment/FollowMe.service /etc/systemd/system/

ครั้งแรกที่คุณคัดลอกไฟล์ คุณต้องอัปเดต systemctl… หรือรีบูต:

sudo systemctl daemon-reload

และเพื่อเริ่มต้น:

sudo systemctl เริ่ม FollowMe

คุณยังสามารถใช้คำสั่งหยุด เปิดใช้งาน และปิดใช้งานได้ สองรายการสุดท้ายมีไว้สำหรับการเปลี่ยนแปลงสถานะอย่างต่อเนื่อง

อธิบายหน่อย….

Openvino ต้องการเส้นทางพิเศษในตัวแปรระบบเพื่อให้ทำงานได้ ขออภัย การติดตั้งแบบปกติจะไม่ทำงานเป็นบริการ ดังนั้นคุณต้องใช้ไฟล์นี้เพื่อตั้งค่าตัวแปร

สังเกตว่าการติดตั้งของฉันสำหรับ python 3.7 ดังนั้นจึงมีตัวแปรที่คุณอาจต้องปรับ… โชคดี!

ไฟล์นี้อ้างอิงสคริปต์ python ในพาธสัมบูรณ์:

/home/pi/Documents/FollowMe/Deployment/FollowMe.py

ขั้นตอนที่ 10: แค่นั้นแหละ! มีความสุข

ความคิดเห็น? ยินดีต้อนรับเสมอ

แนะนำ: