İçindekiler:
- Adım 1: Gereksinimler
- Adım 2: MicroSD Kartın Takılması (yalnızca W/DB410c)
- 3. Adım: Gerekli Çerçeveleri Yükleme
- 4. Adım: Nesne Algılama API'sini Çalıştırma
Video: OpenCV ve Tensorflow Kullanarak Dragonboard 410c veya 820c ile Nesne Algılama: 4 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:19
Bu talimat, Nesne Algılama uygulamasını çalıştırmak için Python 3.5 için OpenCV, Tensorflow ve makine öğrenimi çerçevelerinin nasıl kurulacağını açıklar.
Adım 1: Gereksinimler
Aşağıdaki öğelere ihtiyacınız olacak:
- DragonBoard™ 410c veya 820c;
-
Linaro-alip'in temiz kurulumu:
- DB410c: v431 sürümünde test edilmiştir. Link:
- DB820c: v228 sürümünde test edilmiştir. Link:
- En az 16 GB kapasiteli MicroSD Kart (410c kullanılıyorsa);
Dosyayı indirin (Bu adımın sonunda), sıkıştırmayı açın ve MicroSD karta kopyalayın; Obs: Bir DB820c kullanıyorsanız, dosyayı indirin, sıkıştırmayı açın ve komutların kullanımını kolaylaştırmak için /home/*USER*/ dizinine gidin.
- Bir USB Hub'ı;
- Bir USB kamera (Linux uyumlu);
- Bir USB fare ve klavye;
- İnternet bağlantısı.
Gözlemler: Mümkünse DragonBoard tarayıcısında bu talimatları izleyerek komutların kopyalanmasını kolaylaştırın
Adım 2: MicroSD Kartın Takılması (yalnızca W/DB410c)
- Dragonboard'daki terminali açın;
- Terminal çalıştırmasında fdisk:
$ sudo fdisk -l
- MicroSD kartı DragonBoard MicroSD kart yuvasına takın;
- Listedeki yeni aygıtın adını (ve bölümünü) arayarak fdisk'i yeniden çalıştırın (örn. mmcblk1p1)
$ sudo fdisk -l
Kök dizine gidin:
$ cd ~
Bir klasör oluşturun:
$ mkdir sdklasörü
MicroSD kartı takın:
$ mount /dev/ sdklasörü
3. Adım: Gerekli Çerçeveleri Yükleme
- Dragonboard'daki terminali açın;
- Terminalde, seçilen bir dizine gidin (820c için "~" ve 410c için takılı SDCard kullanarak):
(820c) $ cd ~
(410c) $ cd ~/sdklasör
Object Detector komut dosyaları klasörüne gidin:
$ cd object_detector_tensorflow_opencv/scripts/
Ortam kurulum komut dosyasını çalıştırın:
$ sudo bash set_Env.sh
Sistemi güncelleyin:
$ sudo uygun güncelleme
Bu paketleri kurun:
$ sudo apt install -y protobuf-derleyici gcc-aarch64-linux-gnu
g++-aarch64-linux-gnu debootstrap schroot git curl pkg-config zip unzip python python-pip g++ zlib1g-dev varsayılan-jre libhdf5-dev libatlas-base-dev gfortran v4l-utils hdf5* libhdf5de* builde-lipsng libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libjpeg-dev libtiff5-dev libavcodec-dev libvlv-dev libgtk2.0-dev libgtk-3-dev ffmpeg python-opengl
Bu dizine gidin:
$ cd /usr/src
Python 3.5'i indirin:
$ sudo wgetPaketi çıkarın:
$ sudo tar xzf Python-3.5.6.tgz
Sıkıştırılmış paketi silin:
$ sudo rm Python-3.5.6.tgz
Python 3.5 dizinine gidin:
$ cd Python-3.5.6
Python 3.5 derlemesi için optimizasyonları etkinleştirin:
$ sudo./configure --enable-optimizations
Python 3.5'i derleyin:
$ sudo altinstall yap
Pip ve kurulum araçlarını yükseltin:
$ sudo python3.5 -m pip kurulumu --upgrade pip && python3.5 -m pip kurulumu --upgrade kurulum araçları
numpy'yi yükleyin:
$ python3.5 -m pip kurulumu numpy
Seçilen dizine gidin:
(820c) $ cd ~
(410c) $ cd ~/sdklasör
Tensorflow 1.11 whl'yi indirin:
$ wgetTensorflow'u yükleyin:
$ sudo python3.5 -m pip kurulumu tensorflow-1.11.0-cp35-none-linux_aarch64.whl
OpenCV ve OpenCV Contrib depolarını klonlayın:
$ sudo git klonu -b 3.4 https://github.com/opencv/opencv.git && sudo git klonu -b 3.4Dizine git:
$ cd opencv
Derleme dizini oluşturun ve ona gidin:
$ sudo mkdir derlemesi && cd derlemesi
CMake'i çalıştırın:
$ sudo cmake -D CMAKE_BUILD_TYPE=SERBEST -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_opencv_java=KAPALI -D BUILD_opencv_python=KAPALI -D BUILD_opencv_python3=AÇIK -D PYTHPAS_3_ONCUT_ON-D PYTH_3_DEĞİŞTİRİLE AÇIĞI -D PYTHPA$3_ONCUT_DEĞIYI: hangi python3.5) -D PYTHON_INCLUDE_DIR=/usr/local/include/python3.5m/ -D INSTALL_C_EXAMPLES=KAPALI -D INSTALL_PYTHON3_EXAMPLES=KAPALI -D BUILD_EXAMPLES=KAPALI -D WITH_CUDA=KAPALI -D BUILD_TB_TESTS=KAPALI -DBUILD_TBB=AÇIK -D OPENCV_ENABLE_NONFREE=AÇIK -DBUILD_opencv_xfeatures2d=KAPALI -D OPENGL=AÇIK -D OPENMP=AÇIK -D ETKİNLEŞTİR_NEON=AÇIK -D BUILD_PERF_TESTS= KAPALI -D BUILD_DUOPENCV_DNNNV_AÇIK. modüller..
OpenCV'yi 4 çekirdekle derleyin:
$ sudo yapmak -j 4
OpenCV'yi yükleyin:
$ sudo kurulum yap
Seçilen dizine gidin:
(820c) $ cd ~
(410c) $ cd ~/sdklasörü
Komut dosyaları dizinine gidin:
$ cd object_detector_tensorflow_opencv/scripts/
Python3.5 gereksinimlerini yükleyin:
$ sudo python3.5 -m pip kurulumu -r gereksinimleri.txt --no-cache-dir
Test ithalatları:
$ piton3.5
> cv2'yi içe aktar >> tensorflow'u içe aktar
Gözlem: cv2 içe aktarma hatası verirse, OpenCV derleme klasöründe make install komutunu çalıştırın ve tekrar deneyin
Seçilen dizine gidin:
(820c) $ cd ~
(410c) $ cd ~/sdklasörü
Cocoopi deposunu indirin:
$ git klonuTensorflow modelleri deposunu indirin:
$ git klonuBu dizine gidin:
Bu dizine gidin:
$ cd kakaopi/PythonAPI
Makefile dosyasını düzenleyin, 3. ve 8. satırda python'u python3.5 olarak değiştirin ve ardından dosyayı kaydedin (örnek olarak nano kullanarak):
$ nano Makefile
Cocoopi'yi derleyin:
$ sudo yapmak
Gözlem: 'make' komutu derlenmezse, cython'u aşağıdakilerle yeniden yüklemeyi deneyin:
$ sudo python3.5 -m pip kurulum cython
pycocotools'u tensorflow /models/research dizinine kopyalayın:
(820c) $ cp -r pycocotools ~/models/research/
(410c) $ cp -r pycocotools ~/sdfolder/models/research/
Seçilen dizine gidin:
(820c) $ cd ~
(410c) $ cd ~/sdklasör
Modeller/araştırma dizinine gidin:
$ cd modelleri/araştırma
Protokol ile derleyin:
$ protokol object_detection/protos/*.proto --python_out=.
Ortam değişkenini dışa aktar:
$ dışa aktar PYTHONPATH=$PYTHONPATH:`pwd`:`pwd`/slim
Çevreyi test edin:
$ python3.5 object_detection/builders/model_builder_test.py
Obs: Tamam döndürmelidir, aksi takdirde uygulama çalışmaz. Değilse, gerekli çerçeveleri yükleme sürecinde herhangi bir hata olup olmadığını dikkatlice araştırın
4. Adım: Nesne Algılama API'sini Çalıştırma
Tüm çerçeveler yapılandırıldığında, Tensorflow ile birlikte OpenCV kullanan nesne algılama API'sini çalıştırmak artık mümkün.
Seçilen dizine gidin:
(820c) $ cd ~
(410c) $ cd ~/sdklasörü
Nesne algılama dizinine gidin:
$ cd object_detector_tensorflow_opencv/
Şimdi uygulamayı çalıştırın:
$ python3.5 app.py
Şimdi Dragonboard, videoyu ağ üzerinden aktaracak. Çıktı videosunu görmek için DB'deki tarayıcıyı açın ve "0.0.0.0:5000" seçeneğine gidin.
Önerilen:
Sipeed MaiX Panoları ile Nesne Algılama(Kendryte K210): 6 Adım
Sipeed MaiX Kartları ile Nesne Tespiti(Kendryte K210): Sipeed MaiX Kartları ile görüntü tanıma hakkında bir önceki yazımın devamı olarak, nesne algılamaya odaklanan başka bir eğitim yazmaya karar verdim. Son zamanlarda Kendryte K210 yongasıyla ortaya çıkan bazı ilginç donanımlar vardı, S dahil
Nesne Yönelimli Programlama: Nesne Oluşturma Şekil Delgeç Kullanarak Öğrenme/Öğretme Yöntemi/Tekniği: 5 Adım
Nesneye Yönelik Programlama: Nesneler Oluşturma Shape Punch Kullanarak Öğrenme/Öğretme Yöntemi/Tekniği: Nesne yönelimli programlamaya yeni başlayan öğrenciler için öğrenme/öğretme yöntemi. Bu, sınıflardan nesne oluşturma sürecini görselleştirmelerine ve görmelerine izin vermenin bir yoludur. Parçalar:1. EkTools 2 inç büyük zımba; katı şekiller en iyisidir.2. Kağıt parçası veya c
Raspberry Pi - OpenCV Nesne Takibi ile Otonom Mars Gezgini: 7 Adım (Resimlerle)
Raspberry Pi - OpenCV Nesne Takipli Otonom Mars Gezgini: Bir Raspberry Pi 3, Açık CV nesne tanıma, Ultrasonik sensörler ve dişli DC motorlar ile güçlendirilmiştir. Bu gezici, eğitildiği herhangi bir nesneyi takip edebilir ve herhangi bir arazide hareket edebilir
Nesne Yönelimli Programlama: Nesne Oluşturma Makas Kullanarak Öğrenme/Öğretme Yöntemi/Tekniği: 5 Adım
Nesne Yönelimli Programlama: Nesne Oluşturma Öğrenme/Öğretme Yöntemi/Teknik Makas Kullanarak: Nesne yönelimli programlamaya yeni başlayan öğrenciler için öğrenme/öğretme yöntemi. Bu onların sınıflardan nesne yaratma sürecini görselleştirmelerine ve görmelerine izin vermenin bir yoludur. Parçalar: 1. Makas (her türlü olur). 2. Kağıt veya karton parçası. 3. İşaretleyici.
Kamera ile Görsel Nesne Algılama (TfCD): 15 Adım (Resimlerle)
Bir Kamera ile Görsel Nesne Algılama (TfCD): Duyguları, insanların yüzlerini veya basit nesneleri tanıyabilen bilişsel hizmetler şu anda hala geliştirmenin erken bir aşamasındadır, ancak makine öğrenimi ile bu teknoloji giderek gelişmektedir. Bu sihrin daha fazlasını görmeyi bekleyebiliriz