İçindekiler:
Video: Sipeed MaiX Bit OpenMV Demoları - Bilgisayarla Görme: 3 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:19
Bu, Edge mikrodenetleyici platformunda Sipeed AI hakkında serinin ikinci makalesidir. Bu sefer daha küçük, breadboard'a hazır bir geliştirme kartı olan MaiX Bit (Seed Studio Shop'a bağlantı) hakkında yazacağım. Teknik özellikleri, aynı çip olan Kendryte K210'u kullandıklarından, son ders için kullandığım kart olan MaiX Dock'a çok benziyor.
Bazı OpenMV demolarını denemek için micropython üretici yazılımını kullanacağız. İşte OpenMV ana sayfasından açıklama:
OpenMV projesi, düşük maliyetli, genişletilebilir, Python destekli yapay görme modülleri oluşturmakla ilgilidir ve “Makine Görmenin Arduinosu” olmayı hedeflemektedir.…Python, yapay görme algoritmaları ile çalışmayı çok daha kolay hale getirir. Örneğin, koddaki find_blobs() yöntemi, renk bloblarını bulur ve bulunan her renk blobunu temsil eden 8 değerli nesnelerin bir listesini döndürür. Python'da find_blobs() tarafından döndürülen nesnelerin listesini yinelemek ve her renk bloğunun etrafına bir dikdörtgen çizmek yalnızca iki satır kodla kolayca yapılır.
Bu nedenle, MaiX Bit'in özel sinir ağı hızlandırıcısına sahip olmasına rağmen, bazen işi yapmak için OpenMV sabit kodlu algoritmaları kullanmak veya bunları yan yana kullanmak daha kolay olabilir.
Aklıma gelen bazı kullanım durumları:
1) Çizgi izleyen bot için çizgi algılama
2) Daire ve renk algılama ile trafik ışıklarını algılama
3) Yüz tanıma için yüzleri bulmak için yüz tanımayı kullanma (DNN ile)
Bu makale için Github deposu
Adım 1: Flash Micropython Firmware
Öncelikle micropython yazılımını kartımıza flashlamamız gerekecek. Bu makale için github deposuna önceden derlenmiş bir ikili dosya, kflash.py(bir flash yardımcı programı) ile birlikte dahil edilmiştir. Firmware'i kaynak koddan derlemek istiyorsanız, https://github.com/sipeed/MaixPy adresinden kaynak kodunu indirin, toolchain'i kurun ve kaynak kodu maixpy.bin dosyasında derleyin. Ayrıntılı yapım talimatları burada bulunabilir.
ile ikili dosyayı flash
sudo python3 kflash.py kpu.bin
Başarılı bir şekilde yanıp söndükten sonra bir sonraki adıma geçin.
Adım 2: MaiX Bit'e bağlanın
Artık MaiX Bit'imize baudrate 115200 ile bir USB seri bağlantısı üzerinden erişilebilir olmalıdır. İhtiyaçlarınıza uygun olanı seri iletişim veya sadece cat ve echo komutları için favori yazılımınızı kullanabilirsiniz. Seri iletişim için ekran kullanıyordum ve çok uygun buldum.
Ekran ile seri iletişim oturumu kurma komutu
sudo ekranı / dev / ttyUSB0 115200
burada /dev/ttyUSB0 cihazınızın adresidir.
Karşılama mesajını ve python yorumlayıcı istemini görmek için mikrodenetleyicinizdeki sıfırlama düğmesine basmanız gerekebilir.
Adım 3: Demoları Çalıştırın
Artık Ctrl+E tuşlarına basarak kopyalama moduna erişebilir ve demo kodlarını kopyalayıp yapıştırabilirsiniz. Bunları çalıştırmak için kopyalama modunda Ctrl+D tuşlarına basın.
Videoları kaydetmek istemiyorsanız, video kayıt satırlarına yorum yapmanız gerekir. Aksi takdirde, takılı SD kart yoksa kod bir istisna atar
Aşağıda her bir demonun kısa açıklamaları verilmiştir:
Çevreleri bul - OpenMV'den find_circles işlevini kullanır. Özel uygulamanız için daha fazla ince ayar yapılması gerekiyor, özellikle eşik(hough dönüşümünden hangi dairelerin algılandığını kontrol eder. Yalnızca eşik değerinden büyük veya eşit olan daireler döndürülür) ve r_min, r_max değerleri.
Dikdörtgenleri bul - OpenMV'den bul_rects işlevini kullanır. Eşik değeri ile oynayabilirsiniz ama demoda sahip olduğum değer dikdörtgenleri bulmak için oldukça iyi çalışıyor.
Yüzleri bul, gözleri bul - görüntüdeki gözleri ve ön yüzü algılamak için Haar Cascades ile find_features işlevini kullanır. Doğru hız-doğruluk dengesi için eşik ve ölçek değerleriyle oynayabilirsiniz.
Sonsuz çizgileri bul - hough dönüşümünü kullanarak görüntüdeki tüm sonsuz çizgileri bulmak için find_lines işlevini kullanır.
Rengi algıla - yüzdelik nesneyi elde etmek için get_statistics işlevini kullanır ve ardından LAB grubunun ortalama değerlerini RGB değerleri grubuna dönüştürür. Bu örneği kendim yazdım ve oldukça iyi çalışıyor, ancak renk algılama sonuçlarının ortam ışığı koşullarından etkileneceğini unutmayın.
OpenMV github deposunda çok daha ilginç demolar bulabilirsiniz! Çoğunlukla MaiX Bit micropython ile uyumludurlar, hatırlamanız gereken tek şey pixformat ve çerçeve boyutunu ayarladıktan sonra sensor.run(1) eklemektir.
OpenMV koduyla mutlu deneyler. Herhangi bir sorunuz varsa veya ilginç sonuçlarınızdan bazılarını paylaşmak istiyorsanız, bana Youtube veya LinkedIn üzerinden ulaşmaktan çekinmeyin. Şimdi, afedersiniz, gidip biraz robot yapacağım!
Ö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
Ahududu Pi Sesli Navigasyon Görme Engellilere Yardımcı Olur: 7 Adım (Resimlerle)
Raspberry Pi Sesli Navigasyon Kör İnsanlara Yardımcı Oluyor: Merhaba Bu derste, kullanıcı tanımlı sesli talimat kullanarak bir ahududu pi'nin görme engelli insanlara nasıl yardımcı olabileceğini göreceğiz. Burada, Ultrasonik sensör girişi yardımıyla mesafeyi ölçmek için yapabiliriz. körleri takip etmeleri için sesli rehber
Görme Engelliler, Görme Engelliler ve Diğer Herkes için ScanUp NFC Okuyucu/Yazıcı ve Ses Kaydedici: 4 Adım (Resimlerle)
Körler, Görme Engelliler ve Diğer Herkes için ScanUp NFC Okuyucu/Yazıcı ve Ses Kaydedici: Endüstriyel tasarım okuyorum ve proje benim dönemimin işi. Amaç, görme engelli ve görme engelli kişileri SD karta .WAV formatında ses kaydetmeye ve bu bilgiyi NFC etiketi ile çağırmaya olanak sağlayan bir cihazla desteklemektir. Yani
Görme Engelliler İçin Dokunsal Ayakkabı: 12 Adım
Görme Engelliler İçin Haptik Ayakkabı: Tüm dünyada 37 milyondan fazla görme engelli insan var. Bu insanların çoğu bir baston kullanır, sopa kullanır veya gidip gelmek için başka birine bağımlıdır. Sadece bağımlılıklarını azaltmakla kalmaz, bazı durumlarda da kendilerine zarar verir
Görme Engellilerin Hareketliliğini Geliştirmek İçin Yürüyüş Rehberi: 6 Adım
Görme Engellilerin Hareketliliğini Geliştirmek İçin Yürüme Rehberi: Eğitilebilirliğin amacı, özellikle görme engelliler olmak üzere engellilerin kullanabileceği bir yürüyüş rehberi geliştirmektir. Eğitilebilirlik, yürüyüş kılavuzunun nasıl etkili bir şekilde kullanılabileceğini araştırmayı amaçlamaktadır, böylece tasarım gereksinimleri