สารบัญ:

การติดตามวัตถุตามการตรวจจับสี: 10 ขั้นตอน
การติดตามวัตถุตามการตรวจจับสี: 10 ขั้นตอน

วีดีโอ: การติดตามวัตถุตามการตรวจจับสี: 10 ขั้นตอน

วีดีโอ: การติดตามวัตถุตามการตรวจจับสี: 10 ขั้นตอน
วีดีโอ: วิธีการตั้งค่าให้ส่งสัญญาณแจ้งเตือน เมื่อมีการตรวจจับวัตถุที่เคลื่อนไหว 2024, กรกฎาคม
Anonim
Image
Image

เรื่องราว

ฉันทำโปรเจ็กต์นี้เพื่อเรียนรู้การประมวลผลภาพโดยใช้ Raspberry PI และ open CV เพื่อให้โครงการนี้น่าสนใจยิ่งขึ้น ฉันใช้เซอร์โวมอเตอร์ SG90 สองตัวและติดตั้งกล้องไว้ มอเตอร์ตัวหนึ่งใช้ในการเคลื่อนที่ในแนวนอนและมอเตอร์ตัวที่สองใช้ในการเคลื่อนที่ในแนวตั้ง

เสบียง

การเขียนแบบเต็ม

การติดตามวัตถุตามการตรวจจับสี

1. ติดตั้ง Raspbian Strech บน Raspberry 3B+

NS. ชำระเงินวิดีโอ YouTube ของฉันตั้งแต่:- ถึง 15:10 ถึง 16:42 - >>

NS. ใช้ตัวแปลง HDMI-VGA เพื่อเชื่อมต่อ RPI กับจอภาพและแป้นพิมพ์และเมาส์ USB

ค. บูตเดสก์ท็อป RPI และทำตามขั้นตอนถัดไป

NS. แนะนำให้ใช้จอภาพหากคุณเป็นมือใหม่ เนื่องจากการเข้าถึง PI โดยตรงนั้นง่ายสำหรับมือใหม่

2. ติดตั้ง Open CV บน RPI3B+

NS.

NS. เวลาที่ใช้:- ประมาณ 8+ ชั่วโมง

ค. ฉันใช้เวลาสองวันในการดำเนินการนี้ให้เสร็จ (20 ชั่วโมง) ดังนั้นจงมีความกระตือรือร้นและสงบสติอารมณ์

3. ติดตั้งไลบรารี PCM9685 บน Raspberry PI

NS. เอกสารอ้างอิง:-

NS. ตรวจสอบการเชื่อมต่อ PCM9685 i2c ด้วย RPI

ผม. เรียกใช้: - sudo apt-get install python-smbus

ii. เรียกใช้:- sudo apt-get install i2c-tools

สาม. เรียกใช้: - sudo i2cdetect -y 1

1. ภาพการสื่อสารที่ประสบความสำเร็จกับ PCM9685

ค. เปิด Terminal & เรียกใช้: - source ~/.profile #to เข้าสู่สภาพแวดล้อมเสมือน

NS. เปิด Terminal & run:- pip3 ติดตั้ง adafruit-circuitpython-servokit

อี ห้ามใช้ "sudo" ไม่เช่นนั้นคุณจะประสบปัญหาเนื่องจากการใช้ "sudo" จะไม่ติดตั้งไลบรารีในสภาพแวดล้อมเสมือนของคุณ

NS. กำลังตรวจสอบเซอร์โว

ผม. เปิด python3 และป้อนคำสั่งด้านล่าง

ii. จาก adafruit_servokit นำเข้า ServoKit

สาม. ชุด = ServoKit (ช่อง = 16)

iv. kit.servo[0].angle = 90

v. kit.servo[0].angle = 180

vi. kit.servo[0].angle = 0

4. รายละเอียดการเชื่อมต่อ:-

NS. เชื่อมต่อ 5VDC กับ PCM9685 (สำหรับการทำงานของเซอร์โว ภายนอก 5V จำเป็น)

NS. \Connect PC9685 I2C & พินอุปทานลอจิกพร้อมพิน RPI

ค. เชื่อมต่อเซอร์โวสองตัวกับ PCM9685

5. การตรวจสอบเซอร์โว

NS. ฉันได้เตรียม 4 ไฟล์สำหรับการตรวจสอบเซอร์โว (180.py, 90.py, 0.2y)

ผม. สำหรับ 0 องศา (ทั้งเซอร์โวที่ 0 องศา).

ii. สำหรับ 90 องศา (ทั้งเซอร์โวที่ 90 องศา)

สาม. สำหรับ 180 องศา (ทั้งเซอร์โวที่ 180 องศา)

iv. รหัสแหล่งที่มา ()

6. ติดตั้งกล้อง PI บนขั้วต่อกล้องและเมานต์เซอร์โวตามที่อธิบายไว้ในวิดีโอแนะนำ

NS. URL บทช่วยสอน:-

7. เรียกใช้รหัสติดตามวัตถุ (ดาวน์โหลดจาก:-)

8. เปิดเทอร์มินัล

NS. เรียกใช้: - แหล่งที่มา ~/.profile

NS. วิ่ง: - workon cv.

ค. ตรวจสอบ “(CV)” หน้าคำสั่งเทอร์มินัล

NS. เรียกใช้รหัสติดตามวัตถุ: - 'เส้นทางของตำแหน่งไฟล์ของคุณ'/python3.'ชื่อไฟล์'

อี ออกกด:- Esc

ขั้นตอนที่ 1: การทำงานของโครงการ:-

  1. ภาพที่ถ่ายโดยกล้อง RPI และประมวลผลใน python โดยใช้ openCV
  2. ภาพที่ถ่ายจะถูกแปลงจาก RGB เป็น HSV
  3. ใช้มาสก์สำหรับสีเฉพาะ (ในรหัสสุดท้ายของฉันฉันใช้สีแดง & รหัสพิเศษถูกใช้เพื่อค้นหาค่าการกำบังที่ถูกต้องซึ่งแนบได้ยินด้วย)
  4. ค้นหา Contours สำหรับวัตถุสีแดงทั้งหมดในเฟรม
  5. ในที่สุดการจัดเรียงและเลือก Contours แรกจะทำให้วัตถุสีแดงอยู่ในเฟรม
  6. วาดรูปสี่เหลี่ยมผืนผ้าบนวัตถุแล้วหาจุดกึ่งกลางแนวนอนและแนวตั้งของสี่เหลี่ยมผืนผ้า
  7. ตรวจสอบความแตกต่างระหว่างศูนย์กลางแนวนอนของเฟรมและศูนย์กลางแนวนอนของวัตถุสี่เหลี่ยมจัตุรัส
  8. หากความแตกต่างมากกว่า ให้ตั้งค่าแล้วเริ่มย้ายเซอร์โวแนวนอนเพื่อลดความแตกต่าง
  9. เช่นเดียวกับที่เราสามารถย้ายแกนตั้งและในที่สุดการติดตามวัตถุก็ใช้งานได้ 180 องศา

ขั้นตอนที่ 2: เตรียม RPI:- เวลาของคำแนะนำในการตั้งค่าคือ:- 15:10 ถึง 16:42 ในวิดีโอ Youtube

ดาวน์โหลด Raspbian Streach แล้วใส่ลงในการ์ดหน่วยความจำ 32 GB URL:-https://downloads.raspberrypi.org/raspbian_full_latest

หลังจากดาวน์โหลดภาพ Raspbian แล้ว ให้เปิดเครื่องรูดและจัดเก็บบนเดสก์ท็อป (หรือที่ที่เหมาะสม)

หากต้องการเขียนภาพลงในการ์ด SD ให้ดาวน์โหลด Eatcher

URL:

เชื่อมต่อสาย HDMI เป็น VGA เข้ากับ RPI และจอภาพ LCD

เชื่อมต่อแป้นพิมพ์และเมาส์ USB และเปิดเครื่อง PI โดยใช้อะแดปเตอร์แปลงไฟ (2.5 แอมป์)

แนะนำ: