Sisällysluettelo:
2025 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2025-01-13 06:57
Tarina
Tein tämän projektin oppiakseni kuvankäsittelyn Raspberry PI: n ja avoimen CV: n avulla. Tämän projektin tekemiseksi mielenkiintoisemmaksi käytin kahta SG90 -servomoottoria ja kiinnitin siihen kameran. Yksi moottori liikkui vaakasuunnassa ja toinen moottori pystysuunnassa.
Tarvikkeet
Koko kirjoitus
Värin havaitsemiseen perustuva objektin seuranta
1. Asenna Raspbian Strech Raspberry 3B+: een
a. Tarkista YouTube -videoni: - klo 15.10 - 16.42 - >>
b. Käytä HDMI-VGA-muunninta RPI: n yhdistämiseen näytön ja USB-näppäimistön ja hiiren kanssa.
c. Käynnistä RPI -työpöytä ja seuraa seuraavaa vaihetta.
d. Suosittelemme näytön käyttöä, jos olet aloittelija, koska PI: n suora käyttö on helppoa aloittelijalle.
2. Asenna Open CV RPI3B+ -laitteeseen
a.
b. Aika: noin 8+ tuntia
c. Vietän kaksi päivää tämän prosessin loppuun saattamiseen (20 tuntia), joten ole intohimoinen ja rauhallinen.
3. Asenna PCM9685 -kirjasto Raspberry PI: hen.
a. Viiteasiakirjat:-https://learn.adafruit.com/adafruit-16-channel-servo-driver-with-raspberry-pi?view=all
b. Tarkista PCM9685 i2c -yhteys RPI: n avulla
i. Suorita:-sudo apt-get install python-smbus
ii. Suorita:-sudo apt-get install i2c-tools
iii. Suorita: - sudo i2cdetect -y 1
1. Kuva onnistuneesta viestinnästä PCM9685: n kanssa
c. Avaa terminaali ja suorita: - lähde ~/.profile #päästäksesi virtuaaliseen ympäristöön.
d. Avaa terminaali ja suorita:-pip3 asenna adafruit-circuitpython-servokit
e. Älä koskaan käytä sudoa, muuten sinulla on ongelma, koska sudon käyttäminen ei asenna kirjastoa virtuaaliseen ympäristösi.
f. Tarkistetaan servo
i. Avaa python3 ja kirjoita alla olevat komennot.
ii. alkaen adafruit_servokit tuonti ServoKit
iii. pakki = ServoKit (kanavat = 16)
iv. kit.servo [0]. kulma = 90
v. kit.servo [0]. kulma = 180
vi. kit.servo [0]. kulma = 0
4. Yhteyden tiedot:-
a. Liitä 5VDC PCM9685: een (servokäyttöä varten tarvitaan ulkoinen 5V)
b. / Kytke PC9685 I2C ja logiikan syöttönastat RPI -nastoilla.
c. Yhdistä kaksi servoa PCM9685: een
5. Servon tarkastus
a. Olen valmistellut 4 tiedostoa servotarkistukseen (180.py, 90.py, 0.py).
i. 0 astetta. (Molemmat Servo 0 astetta).
ii. 90 astetta varten. (Molemmat Servo 90 astetta).
iii. 180 astetta varten. (Molemmat Servo 180 astetta).
iv. Lähdekoodi ()
6. Asenna PI -kamera kameran liittimeen ja asenna servo opetusvideon mukaisesti.
a. Opetusohjelman URL-osoite:-
7. Suorita objektin seurantakoodi (lataa osoitteesta:-)
8. Avaa terminaali
a. Suorita: - lähde ~/.profile.
b. Suorita: - workon cv.
c. Tarkista "(CV)" päätelaitteen komennon edessä.
d. Suorita objektin seurantakoodi:- "tiedoston sijaintisi polku"/python3.'tiedoston nimi '
e. Poistu painamalla:- Esc
Vaihe 1: Projektin työ:-
- Kuva otettu RPI -kameralla ja käsitelty pythonissa openCV: tä käyttäen.
- Otettu kuva muunnetaan RGB: stä HSV: ksi.
- Levitä naamio tiettyä väriä varten (lopullisessa koodissani käytin PUNAISTA väriä ja erikoiskoodia käytetään tarkan peitearvon löytämiseen, joka on myös liitetty kuuloon).
- Muotojen etsiminen kaikille punaisille kohteille kehyksessä.
- Lopuksi ensimmäisten ääriviivojen lajittelu ja valinta antaa parhaan punaisen objektin kehyksessä.
- Piirrä suorakulmio esineeseen ja etsi suorakulmion vaakasuora ja pystysuora keskipiste.
- Tarkista rungon vaakasuoran keskipisteen ja kohteen suorakulmaisen vaakasuoran keskipisteen välinen ero.
- Jos ero on suurempi kuin asetettu arvo, aloita vaakasuoran servon siirtäminen minimoimaan ero.
- Samalla tavalla voimme siirtää pystysuoraa akselia ja lopulta kohteen seuranta toimii 180 astetta.
Vaihe 2: Valmistele RPI:- Asennusoppaan aika on:- 15:10- 16:42 Youtube-videossa
Lataa Raspbian Streach ja liitä se 32 Gt: n muistikortille. URL: -https://downloads.raspberrypi.org/raspbian_full_latest.
Kun olet ladannut Raspbian -kuvan, pura se ja tallenna se työpöydälle (tai sopivaan paikkaan).
Jos haluat kirjoittaa kuvan SD -kortille, lataa Eatcher.
URL -osoite:
Liitä HDMI -VGA -kaapeli RPI- ja LCD -näyttöön.
Yhdistä USB -näppäimistö ja hiiri ja käynnistä PI virtalähteellä (2,5 ampeeria)