İçindekiler:

Raspberry Pi Nesne Algılama: 7 Adım
Raspberry Pi Nesne Algılama: 7 Adım

Video: Raspberry Pi Nesne Algılama: 7 Adım

Video: Raspberry Pi Nesne Algılama: 7 Adım
Video: Yapay zeka kontrollü Tensorflow ile Raspberry pi Kızıl Ötesi Kamera Nesne Algılama nasıl yapılır? 2024, Temmuz
Anonim
Raspberry Pi Nesne Algılama
Raspberry Pi Nesne Algılama

Bu kılavuz, Raspberry Pi'de TensorFlow'un Nesne Algılama API'sinin nasıl kurulacağına ilişkin adım adım talimatlar sağlar. Bu kılavuzdaki adımları izleyerek, bir Picamera veya USB web kamerasından canlı videoda nesne algılama gerçekleştirmek için Raspberry Pi'nizi kullanabileceksiniz. Nesne algılama için çevrimiçi veritabanında kullanıldığı için manuel makine öğrenimi gerekli değildir. Dünya çapında yaygın olarak kullanılan nesnelerin çoğunu tespit edebilirsiniz.

Lütfen yukarıdaki resmime bakın, bir fare, Elma ve Makas kullandık ve nesneyi mükemmel bir şekilde tespit ettik.

Kılavuz aşağıdaki adımlardan geçer:

Raspberry Pi'yi güncelleyin

TensorFlowInstall OpenCV'yi yükleyin

Protobuf'u derleyin ve yükleyin

TensorFlow dizin yapısını ayarlayın

Nesneleri algıla

1. Adım: Raspberry Pi'yi Güncelleyin

Raspberry Pi'yi güncelleyin
Raspberry Pi'yi güncelleyin

Raspberry Pi'nizin güncellenmesi gerekiyor

Aşama 1:

Komut terminaline yazın, sudo apt-get güncellemesi

Ve sonra Yazın

sudo apt-get dağıtım yükseltme

Bu Uzun Zaman Alabilir İnternetinize ve Raspberry Pi'nize bağlıdır

İhtiyacınız olan tek şey bu, Raspberry pi'nizi güncellemeyi bitirdiniz

2. Adım: TensorFlow'u yükleyin

TensorFlow'u yükleyin
TensorFlow'u yükleyin

Şimdi Tensorflow'u kuracağız.

Aşağıdaki komutu yazın, pip3 TensorFlow'u kurun

TensorFlow ayrıca LibAtlas paketine ihtiyaç duyar, Aşağıdaki komutu yazın

sudo apt-get install libatlas-base-dev

Ve aşağıdaki komutu da yazın, sudo pip3 yükleme yastığı lxml jupyter matplotlib cythonsudo apt-get yükleme python-tk

Şimdi, Tensorflow'un Kurulumunu Tamamladık.

3. Adım: OpenCV'yi yükleyin

OpenCV'yi yükleyin
OpenCV'yi yükleyin

Şimdi OpenCV kitaplığını kurmak için çalışıyoruz çünkü TensorFlow'un nesne algılama örnekleri görüntüleri göstermek için matplotlib kullanıyor, ancak ben OpenCV ile çalışmayı daha kolay ve daha az hata olduğu için uygulamayı seçiyorum. Bu yüzden OpenCV'yi kurmamız gerekiyor. Artık OpenCV RPI'yi desteklemiyor, bu yüzden eski Verision'ı yükleyeceğiz.

Şimdi apt-get ile yüklenmesi gereken birkaç bağımlılığı kurmaya çalışıyoruz.

sudo apt-get kurulumu libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev

sudo apt-get kurulumu libavcodec-dev libavformat-dev libswscale-dev libv4l-dev

sudo apt-get kurulum libxvidcore-dev libx264-dev

sudo apt-get install qt4-dev-tools libatlas-base-dev

Son olarak, şimdi yazarak OpenCV'yi kurabiliriz, pip3 kurulumu opencv-python==3.4.6.27

Hepsi bu, şimdi OpenCV'yi kurduk

4. Adım: Protobuf'u yükleyin

Protobuf'u yükleyin
Protobuf'u yükleyin

TensorFlow nesne algılama API'si, Google'ın Protokol Arabelleği veri biçimine uyan bir paket olan Protobuf'u kullanır. Kaynaktan derlemeniz gerekiyor, şimdi kolayca kurabilirsiniz.

sudo apt-get kurulum protobuf-derleyicisi

Bu yapıldıktan sonra protoc --version komutunu çalıştırın. libprotoc 3.6.1 veya benzeri bir yanıt almalısınız.

Adım 5: TensorFlow Dizin Yapısını Ayarlayın

TensorFlow Dizin Yapısını Ayarlayın
TensorFlow Dizin Yapısını Ayarlayın

Tüm paketleri kurduk, TensorFlow için bir dizin oluşturmak istiyoruz. Ana dizinden “tensorflow1” adında bir dizin adı oluşturun, Aşağıdakileri yazın, mkdir tensorflow1cd tensorflow1

Şimdi yazarak TensorFlow'u indirin, git klon --depth 1

PYTHONPATH ortam değişkenini, TensorFlow deposundaki bazı dizinlere yönlendirmek için değiştirmek istiyoruz. Her seferinde ayarlanacak PYTHONPATH'e ihtiyacımız var..bashrc dosyasını ayarlamamız gerekiyor. yazarak açmamız gerekiyor

sudo nano ~/.bashrc

Dosyanın sonuna ve son satıra, üstteki resimde olduğu gibi kırmızı renk kutusunda işaretlenmiş olan komutu ekleyin.

dışa aktar PYTHONPATH=$PYTHONPATH:/home/pi/tensorflow1/models/research:/home/pi/tensorflow1/models/research/slim

Şimdi kaydedin ve çıkın. Object Detection API tarafından kullanılan Protocol Buffer(.proto) dosyalarını derlemek için Protoc kullanmamız gerekiyor..proto dosyaları /research/object_detection/protos içinde bulunur, komutu /research dizininden yürütmek istiyoruz. Aşağıdaki komutu yazın

cd /home/pi/tensorflow1/models/researchprotoc object_detection/protos/*.proto --python_out=.

Bu komut, tüm "name".proto dosyalarını "name_pb2".py dosyalarına değiştirir.

cd /home/pi/tensorflow1/models/research/object_detection

TensorFlowdetection model hayvanat bahçesinden SSD_Lite modelini indirmemiz gerekiyor. Bunun için RPI için mevcut en hızlı model olan SSDLite-MobileNet'i kullanmak istiyoruz.

Google, sürekli olarak gelişmiş hız ve performansa sahip modeller yayınlamaktadır; bu nedenle, geliştirilmiş modeller olup olmadığını sık sık kontrol edin.

SSDLite-MobileNet modelini indirmek için aşağıdaki komutu yazın.

wget

tar -xzvf ssdlite_mobilenet_v2_coco_2018_05_09.tar.gz

Artık Object_Detction modellerini uygulayabiliriz!

Neredeyse bitirdik!

Adım 6: Nesneyi Algıla

Nesne Algıla
Nesne Algıla

Şimdi her şey Pi'de yürütme nesnesi algılaması için ayarlandı!

Object_detection_picamera.py, bir Picamera veya USB web kamerasından canlı olarak nesneleri algılar.

Bir Picamera kullanıyorsanız, Raspberry Pi konfigürasyonunu yukarıdaki resimdeki gibi kırmızı renk kutusunda işaretli bir menü yapın.

Object_detection_picamera.py dosyasını object_detection dizinine indirmek için aşağıdaki komutu yazın.

wget https://raw.githubusercontent.com/EdjeElectronics/ TensorFlow-Object-Detection-on-the-Raspberry-Pi/master/Object_detection_picamera.py

python3 Object_detection_picamera.py

USB kamera için aşağıdaki komutu yazın

python3 Object_detection_picamera.py --usbcam

Birinin komutu yürütülür, 1 dakika sonra nesneleri algılamaya başlayacak yeni bir pencere açılır!!!

7. Adım: Sorunlar ve Teşekkürler

Sorunlar ve Teşekkürler
Sorunlar ve Teşekkürler

Herhangi bir sorunuz varsa lütfen bana bildirin

E-posta: [email protected]

Teşekkürler, Rithik

Önerilen: