Method Article

Otonom Sürüş Uygulaması için Alan Programlanabilir Kapı Dizisi Tabanlı Yaya Algılama Çerçevesinin Tasarımı ve Uygulanması

DOI:

10.3791/70292

June 12th, 2026

* These authors contributed equally

In This Article

Summary

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Bu araştırma makalesi, öncelikle otonom sürüş uygulamaları için, sahada programlanabilir kapı dizisi donanımında gerçek zamanlı yaya algılama algoritmasının uygulanmasını göstermektedir. Algoritma, yönlendirilmiş gradyanların histogramını (HoG) destek vektör makinesi (SVM) sınıflandırıcı ile birleştirir ve sonuçlar hız, güç tüketimi ve kaynak kullanımı açısından verimlilik gösterir.

Abstract

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Otonom sürüş, trafik kazalarından kaynaklanan ölümlerin artan sayısıyla başa çıkmak için umut verici bir yol sunuyor. Otonom bir araç birçok özelliğe sahiptir, ancak yayaları tespit etme yeteneği çok önemli, zorlayıcı ve gözetim, insan takibi ve izleme gibi çeşitli gerçek zamanlı durumlar için önemlidir. Yayaları doğru şekilde tanımlamak zordur çünkü onlar farklı şekillerde, pozisyonlarda ve duruşlarda ortaya çıkabilirler. Çeşitli kıyafetler giyebilirler ve bazen kısmen gizlenmiş olabilirler veya yakındaki nesnelerle karışabilirler. Bu makale, popüler bir donanım platformu olan Alan programlanabilir kapı dizisi (FPGA), Ultra 96 v2 kullanılarak otonom araçlar için yayaların gerçek zamanlı tespitine odaklanmaktadır. Çalışma, FPGA panosunda bireyleri tanımak için yönelmez gradyanlarının histogramı (HOG) ile desteklenen bir vektör makinesi (SVM) sınıflandırıcısına dayalı yaya algılama yöntemini uygular; yüksek seviyeli sentez (HLS) araçları kullanılır. Sistemin etkinliği hem sabit görüntüler hem de canlı video üzerinde test edilmiştir. Sonuçlar, Ultra 96 v2 gibi gelişmiş FPGA kartlarının performans metriklerini önemli ölçüde iyileştirdiğini gösteriyor. Sistem, mevcut kaynakların yarısından azını kullanarak yaklaşık 2,5 W güç tüketerek 150 MHz saat frekansında çalışır. Ayrıca sistem, yaya algılama doğruluğunu yaklaşık %95 ve tespit değerlendirmesi için hassasiyet (%78,6), hatırlama (%88,3) ve F1 puanı (%83,1) gibi diğer verimli ölçütleri bildirmektedir. Özetle, geliştirilen sistem yayaları gerçek zamanlı olarak tespit edebilir ve akıllı ve güvenli bir ulaşım ortamının gelişimini önemli ölçüde iyileştirme potansiyeline sahiptir.

Introduction

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Kentsel gelişim ve akıllı şehirlerin ortaya çıkışı, dünya çapında ilgi çekici konulardır. Tüm ülkeler, şehirlerinin güvenli ve rahat yapılacak şekilde inşa edilmesi için çalışıyor. 1,2. Ancak mevcut durumda, nüfus arttıkça ve yol sıkışıklığı arttıkça, sürüş ihmali ve kötü görüş sorunları nedeniyle yol kazalarından kaynaklanan ölüm oranlarının endişe verici şekilde arttığı gözlemlenmiştir. Bu sorunlara umut verici bir çözüm, dünya çapında otonom araçların ortaya çıkmasıdır; bu da yenilik 1,2,3,4 hareketlerini tetiklemiştir ve araştırmacılar, yolcuların rahatlamasını sağlayacak tamamen otonom araçlar geliştirmek için çaba göstermektedir. Otonom araçların geliştirilmesine olan ihtiyacı, deneyimli sürücülerin bile kötü hava koşulları nedeniyle stres, ikilem, yorgunluk veya çevrelerini algılamakta zorlanabilmesinden kaynaklanıyor ve tüm bu sorunlar yol kazalarına yol açıyor. Kendi kendine giden bir araç, seyahat sırasında kazaları önlemek, motor kaynak kullanımını optimize etmek ve trafik kurallarına uymak için tasarlanmıştır; bu da kesinlikle ulaşımıgeliştirecektir 2,4. Otonom bir araç, çevresini çok hassas hissetmesini sağlayan çok sayıda özellik, sensör ve işlevselliğe sahiptir; böylece çarpışma ve kazaları önler; bu nedenle, taşımayı güvenli ve emniyetli kılmak için umut vadeden bir çözümolarak ortaya çıkmıştır 1,2,3,4.

Otonom bir araçta yer alan tüm özellikler arasında, en önemlilerinden biri yaya algılamadır. Sağlam bir yaya tespit sistemi, bu kazaların çoğu yaya olduğundan, trafik kazası ölümlerini 5,6,7,8 azaltmaya önemli ölçüde yardımcı olabilir. Yaya tespiti, yoldaki kişileri tespit etmek ve onlarla çarpışmalardan kaçınmak anlamına gelir. Bu özellik sadece otonom araçlar için değil, kalabalık izleme, kişi tanımlama ve 9,10,11 takibi gibi çeşitli diğer uygulama alanları için de faydalıdır. Bu tespit sürecinin temel yönü, tespit hızı ve doğruluğudur. Yayaları doğru ve hızlı tespit etmek çok önemlidir, böylece tepki süresi minimuma indirilebilir. Yaya algılama büyük bir zorluk yaratıyor. Yoldaki yayalar herhangi bir kıyafet, görünüm veya duruşla olabilir ve kötü hava koşulları veya tıkanıklıknedeniyle görünmez olabilirler 10,11,12,13,14. Ayrıca, yayaların kurallara kendileri uymaması ve insan doğasını kontrol edemeyeceği oldukça mümkündür; bu yüzden en iyi yaklaşım, aracı yanlış hareketleri yönetebilecek ve ölümlerden kaçınacak zekâyla donatmaktır. Bu araştırmadaki çalışmaların tam akışı ve yaya tespitinin donanım uygulamasının motivasyonu, aşağıdaki Şekil 1'den kolayca anlaşılabilir; bu şekil, yaya algılama ihtiyacını, çeşitli uygulama alanlarını, karşılaştığı zorlukları ve sunulan avantajlardan yararlanmak için FPGA'da uygulanmayı açıklar.

Şekil 1
Şekil 1: Yaya tespiti. Yaya tespiti ihtiyacını, yaya tespitinin temel uygulama alanları, yaya tespitiyle ilgili zorluklar ve FPGA panosunda yaya tespitinin uygulama akışı. Bu figürün daha büyük bir versiyonunu görmek için lütfen buraya tıklayın.

Yoldaki yayaları tanımlamak için birçok algoritma mevcuttur. Bu genel görev öncelikle iki ana alt göreve ayrılabilir: İlk adım, giriş görüntüsünden özellikleri çıkarır, yalnızca önemli olanları ve ilgili bilgileri iletir, tekrarlananları ise göz ardı eder. Bir görüntüde insan veya yayaların etkili şekilde tanınması için, bu özelliklerin sahnede bir insan figürünün varlığınıgöstermesi çok önemlidir 13,14. Bu çıkarımın ardından, özellikler, tanımlanan özelliklerin bir insana karşılık gelip etmediğini belirleyebilen bir sınıflandırıcıya gönderilmelidir. Bu nedenle, algoritma bir özellik çıkarma ve açıklama aşaması, ardından giriş sahnesinde yaya varlığını belirlemek için bir sınıflandırma aşaması gerektirir. Bu amaçla çeşitli algoritmalar mevcuttur. Ancak, bugüne kadar yaya algılamada en yaygın kabul gören yöntem, yönlendirilmiş gradyanların histogramı (HoG) ile destek vektör makinesi (SVM)sınıflandırıcısı 12,13,14,15'in birleşimi olmuştur. Yazılım ilerlemelerine dair birçok örnek mevcuttur, ancak nihayetinde amaç, uygulamayı uyumlu bir donanım platformuna taşımak ve bunun gerçek zamanlı kullanım için uygulama sistemine entegre edilebilmesidir. Bu nedenle, mevcut vurgu donanım gerçekleştirme üzerindedir. Bu nedenle, uygun donanımlarla donatılmış kameraların araçlara yerleştirilip yoldaki yayaları tespit edilebileceği uygun bir yaya algılama sistemleri donanım uygulamasının geliştirilmesi gerekmektedir. Bu tür uygulamalar için hangi donanımın uygun olduğunu düşünürken, en yaygın kullanılan seçeneklerden biri, tasarım süresinin azalması, ölçeklenebilirlik, modifikasyon kolaylığı, yeniden yapılandırılabilirlik ve daha düşük enerji ile güç tüketimi gibi birçok avantajı nedeniyle alan programlanabilir kapı dizisi (FPGA)'dır 15,16,17,18,19,20,21,22.

FPGA kartları sürekli olarak gelişmiş ve temel görüntü işlemeden nesne algılamaya, artırılmış gerçekliğe ve derin öğrenmeye kadar karmaşık ve gelişmiş bilgisayar görüş uygulamalarındayaygın olarak kullanılmaktadır. Şu anda, birçok yüksek performanslı FPGA kartı, bu karmaşık uygulamalar için gereken kapsamlı işlemeyi karşılamak üzere olağanüstü mimari yetenekler sunmaktadır. Otonom araçların gelişmiş özellikleri, örneğin yaya algılama, bu donanım platformlarında uygulanırsa, bu platformlar performansı analiz etmek için hızlı prototip geliştirme için çok faydalı olabilir ve optimizasyondan sonra uygulanan algoritma, sisteme entegre edilmek üzere gerçek entegre devrelere aktarılabilir.

On yılı aşkın süredir, farklı FPGA platformlarında HoG ve SVM yöntemiyle yaya tespitinin uygulanmasına dayalı önemli yayınlar bulunmaktadır. Tablo 1, 2015–2025 yılları arasında bu alandaki makaleleri özetlemekte 15,16,17,18,19,20,21,22,23,24 olup, görüntü çözünürlüğü, veri verimliliği veya saniyede kare (FPS), sınıflandırıcı türü ve ana vurgular veya katkılar gibi temel faktörlere odaklanmaktadır. kağıt.

ReferansFPGA PlatformuGörüntü ÇözünürlüğüSınıflandırıcıÖnemli Öne Çıkanlar / Katkılar
15Xilinx Zynq640×480AdaBoostGerçek zamanlı FPGA uygulaması; kaynak verimli; optimizasyon için ikili izleyici kullanır; iyi bir tespit doğruluğu.
16Terasic'in DE1-SOC kartı640×480SVMYüksek performanslı HOG çıkarıcısı; SVM'yi entegre eder; tek ölçekli tespit; düşük gecikmeli boru hattı.
17Altera DE2-115640×480AdaBoostPerformansı birden fazla bakış açısından değerlendirir; HOG+AdaBoost'un FPGA uygulaması; Gerçek zamanlı yaya tespiti.
18Intel Stratix V640×480SVMÇok ölçekli yaya tespiti; FPGA dostu HOG+SVM boru hattı; Doğruluk ile donanım verimliliği arasındaki dengeleri vurgular.
19Zynq UltraScale+ MPSoC3840×2160SVMGerçek zamanlı UHD işleme; boru hatlı HOG+SVM; SoC FPGA uygulaması; sabit nokta optimizasyonu; ölçeklenebilir mimari.
20BelirtilmediBelirtilmediSVM%>95 tespit doğruluğuna ulaşır; gerçek zamanlı FPGA uygulaması; paralelliği kullanır; yaya tespiti için ayrıntılı HOG+SVM FPGA tasarımı.
21Zync 7000 FPGA1920×1080SVMHOG+SVM için yüksek verimli akış mimarisi; HD çözünürlüğü destekler; FPGA hızlandırması için verimli bir pipeline.
22Ultra96 (rev1)240×320SVMHLS kullanarak FPGA uygulaması; kırmızı trafik sinyallerini algılar; 891 bölgede olasılıkları hesaplar; gecikme 153.838 ile 19 döngü arasında değişir.
23Xilinx Zynq-7000 FPGA640 × 480HOG + SVMFPGA'da HOG-SVM kullanarak yaya algılama uygulandı; CPU işlemcesine, daha düşük güç tüketimiyle gerçek zamanlı performans elde edildi. Gömülü görme uygulamalarına uygun optimize edilmiş özellik çıkarma boru hattı gösterildi.
24Xilinx Virtex-6 FPGA640 × 480Sabit noktalı nesne dedektörü (Haar benzeri özellikler)Sabit nokta aritmetiği kullanılarak nesne algılamasında yüksek verimli FPGA hızlandırılması önerildi; bu hız hesaplama maliyetini azaltırken doğruluğu korurken. Verimli donanım kaynakları kullanımıyla CPU uygulamalarına göre 15× hızlanma gösterdi.

Tablo 1: FPGA'da yaya tespitine dayalı araştırmaların literatür incelemesi (2015–2025).

Tablo 1, yaya tespiti alanında kapsamlı literatür olduğunu ve donanım uygulamasının araştırmacıların ilgi alanı olduğunu özetlemektedir. Ayrıca, yaya algılama görevi için konvolüsyon sinir ağları (CNN) tabanlı dedektörler, transformatör tabanlı mimariler gibi gelişmiş derin öğrenme ve makine öğrenimi tekniklerinin olduğu da açıktır. Doğruluk açısından geleneksel HoG algoritmasından bile daha iyi performans gösterirler, ancak donanım uygulaması düşünüldüğünde, gelişmiş algoritmalar algoritmanın karmaşıklığı nedeniyle büyük kaynakkullanımına yol açar ve bu da diğer performans parametrelerini de etkileyebilir; ayrıca eklenen karmaşıklıklar nedeniyle hızın geleneksel HoGalgoritmasında biraz daha iyi olduğu gözlemlenmiştir 24, 25. Ayrıca, gelişmiş tekniklerin donanımüzerinde uygulandığında daha fazla güç tükettiği gözlemlenmiştir 24,26. Bu nedenle, bu makalede uygulanan çalışmanın amacı, FPGA donanımında geleneksel HoG ve SVM çerçevesini kullanarak yaya algılama gerçekleştirmek ve gerçek zamanlı gömme için uygun bir doğruluk-hız-kaynak ve güç dengesi sağlamaktır. Tablo 1'den, HoG ve SVM tabanlı çalışmalar analiz edildiğinde, yeni tanıtılan Zynq UltraScale+ MPSoC (Multi-Processor System On Chip) tabanlı FPGA geliştirmekartı 27'yi kullanan sınırlı sayıda yayının bu kartların mimari açıdan geliştiği yeteneklerini incelediği oldukça açıktır. ve üst düzey gerçek zamanlı bilgisayar görme uygulamasının uygulanması açısından büyük potansiyel sunar. FPGA panolarında tüm yaya tespit sistemini gerçek zamanlı olarak gerçekleştiren sınırlı sayıda yayın bulunmaktadır. Ancak, ara görevlerin verimli uygulanması veya geliştirilmesine odaklanmışlardır. Ayrıca, bu uygulamaların çoğu, donanım tanım dilleri kullanılarak tüm sistemi bir FPGA kartında gerçekleştirmeye dayanır. Çok az kişi Yüksek Seviye Sentez (HLS) araçlarının faydalarını tasarım döngüsünü hızlandırmak için kullanmıştır. Bu makale, otonom sürüş uygulamasına adanmış bir FPGA panosunda gerçek zamanlı yaya algılama tasarımı ve uygulanmasını göstermektedir. Makale, yayaların sabit görüntüler, video veya gerçek kamera girişi üzerinde tespit edilmesi amacıyla HoG ve SVM çerçevesini kullanmaktadır. Kullanılan donanım, bilgisayar görüşü, görüntü işleme, makine öğrenimi, kenar hesaplama vb. için güçlü bir platform, gelişmiş bir FPGA mimarisi olan Ultra96 v2 adlı son teknoloji ve yakın zamanda piyasaya sürülen bir FPGA kartıdır.24. Ultra96 v2, Arm tabanlı AMD Xilinx Zynq UltraScale+ MPSoC27 içeren bir geliştirme kartıdır. Bu kart, projenin yazılım yönlerini yöneten ARM tabanlı CPU çekirdeklerinden oluşan işlem sistemi (PS) segmentini ve özelleştirilebilir donanımhızlandırmalarına olanak tanıyan Programlanabilir Mantık (PL) segmentini (20,21,22) içerir. Bu bileşenler birlikte, PS kısmının harici öğelerle kontrol ve etkileşimi yönettiği, PL kısmının ise gerçek işlem mantığını yönettiği hibrit sistemin işlevselliğini artırır.

Access restricted. Please log in or start a trial to view this content.

Protocol

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Bu araştırmada kullanılan uygulama prosedürü, FPGA panosunda HoG + SVM ile yaya tespitine dayalı ve yüksek seviyeli sentezin faydalarından yararlanarak aşağıdaki Şekil 2'de gösterilmiştir.

Şekil 2
Şekil 2: FPGA panosunda yaya algılama uygulama için tasarım prosedürü. Aşama 1: HLS aracında HoG+SVM kullanarak yaya algılama algoritması ve IP bloğu oluşturulması. Aşama 2: Gerçek FPGA uygulaması için HoG+SVM kullanarak yaya algılama algoritması ve bit dosyasını oluşturması. Aşama 3: Oluşturulan bit dosyasıyla kartı programlama. Bu figürün daha büyük bir versiyonunu görmek için lütfen buraya tıklayın.

1. HLS aracında HoG ve SVM kullanılarak yaya tespiti

  1. İndirme işlemi yapılan sistem özelliklerine bağlı olarak Python Entegre Geliştirme Ortamı (IDE) indirin.
    NOT: Bu çalışmada Python 3.10 sürümü kullanılmıştır.
  2. HoG algoritması ve SVM sınıflandırıcısını kullanarak bir eğitim modeli çalıştırmak için bir Python betiği çalıştırın. Senaryoya, veri setinden pozitif ve negatif örnekleri yükleyerek başlayın.
    NOT: INRIA veriseti 11'i kullanın.
  3. 64 x 128 pencere boyutu için HoG özelliklerini çıkarın.
  4. INRIA veri setinden eğitim ve test verilerini, tekrarlanabilirlik için rastgele karıştırma ile 80/20 oranına böl.
    NOT: Veri seti, veri bölünmeden önce python fonksiyonu kullanılarak rastgele karıştırılır. Tekrarlanabilirliği sağlamak ve böylece kodda bir tohum değeri sabitlendiğinde aynı bölünme yapılır.
  5. C-destek vektör sınıflandırması (SVC) SVM'yi doğrusal bir çekirdekle eğitmek.
  6. Ağırlık vektörlerini ve yanlılığı çıkar.
  7. FPGA uygulaması için SVM ağırlıklarını ve yanlılığı sabit noktalı Q8.8 formatında kaydedin.
    NOT: Dönüşüm, her bir yüzeysel nokta değerinin orijinalliğini 256 (28) katı ile ölçeklendirip sonucu bir tamsaya çevirerek yapılır.
  8. Eğitilen modeli başka bir Python betiği ile test edin ve doğruluk %95'in üzerine çıkana kadar düzenlenme parametresi C'yi ayarlayın.
    NOT: Optimize edilmiş düzenleme parametresi alındı: C = 0.05.
  9. HLS aracını açın ve parça numarası xczu3eg-sbva484-1-e olarak seçilerek yeni bir proje oluşturun.
  10. C++ gibi yüksek seviyeli dilleri kullanarak yüksek seviyeli sentez aracında yaya algılama kodu yaz.
  11. Kodda, üç farklı C++ betiği yazın: biri HoG özellik tanımlayıcısı ve SVM sınıflandırıcısı için, diğeri test tablosu için test görgelerine giriş sağlamak ve çıktı görüntülerini kaydetmek için, üçüncüsü ise kodda kullanılan parametreleri belirten başlık dosyası için.
  12. HoG özellik hesaplama kodunda, görüntüyü 640 x 480 boyutuna değiştirin ve 64 x 128 pencere boyutuna sahip bir kaydırmalı pencere mimarisi uygulayın. Her pencere için, her örtüşen 8 x 8 blok için gradyan büyüklüğü ve yönelimi hesaplanın.
    NOT: Görüntünün her alanının kapatılmasını ve her boyuttaki yayaların tanımlanmasını sağlamak için kaydırma pencere konseptinden tüm görüntüyü taramak önemlidir.
  13. Aynı kodun diğer kısmında, HoG özellik tanımlayıcısı için hesaplanan gradyanları SVM sınıflandırıcısına iletebilirsiniz. Özellikleri sınıflandırıcı ağırlıklarıyla eşleştirmek için kod yazın ve eşik eşiğiyle karşılaştırarak tespit edilen özelliği insan olarak sınıflandırıp sınıflandırmak için karşılaştırın.
  14. HLS aracında Çalıştır C Simülasyonu'na tıklayarak kodu test paneli yardımıyla simüle ederek kodun işlevselliğini kontrol edin.
  15. Koda farklı giriş görüntüleri sağlayın ve çıktı görüntülerini tespit edilen yayalarla kontrol edin.
  16. Kod sentezlemek için Run C Synthesis'e tıklayın; böylece kodu donanım dillerine eşlemek ve zamanlama ile kullanım raporlarını oluşturmak için Çalıştır.
    NOT: Araç otomatik olarak HLS sentez raporlarını açar. Bu rapor, seçilmiş FPGA platformunda kodlanmış görevin uygulanması için gereken saat frekansının tahminini gösterir ve ayrıca kullanılan kaynakların tahminini sunar. Bu bildirilen değerler sadece tahminlerdir ve gerçek parametreler ancak FPGA panosunda uygulandıktan sonra hesaplanır.
  17. Yaya algılama HoG algoritmasının Fikri Mülkiyet (IP) bloğunu dışa aktarmak için RTL İtracına tıklayın.
    NOT: Bu IP, uygulamanın sonraki aşamalarında kullanılacaktır.

2. FPGA kartının programlanması

  1. FPGA programlama aracını açın ve yeni bir proje oluşturun. Parça numarasını xczu3eg-sbva484-1-e olarak seçin ve yeni bir blok tasarımı oluşturun.
    NOT: Bu blok diyagram, PS ile FPGA kartının PL kısmı arasında entegrasyon sağlamak için oluşturulmuştur. Kullanılan iletişim protokolü Gelişmiş Eksikal Arayüz (AXI) protokolüdür.
  2. Araçta IP Kataloğunu arayın ve bulduktan sonra açın.
  3. Kullanıcı deposu oluşturun, 1.17. adımda dışa aktarılan RTL IP'nin yolunu ekleyin.
  4. Yeni blok tasarım penceresinde şimdi sağ tıklayın ve IP ekle'yi seçin. Tüm IP'ler, aracın sağladığı ve kullanıcı tarafından eklenen depolar dahil olmak üzere görünür olacaktır.
  5. Depodan Zync Ultrascale PS bloğunu ekleyin.
    NOT: Bu blok, gerekli saatleri üretmekten sorumlu olan sistemin PS bölümünü yansıtır ve ayrıca AXI bağlantı bloğu üzerinden ithal edilen HoG IP'ye bağlanmak için ana ve slave portlara sahiptir; bu blok AXI protokol temellerinde çalışır.
  6. 8 HoG IP ekleyin çünkü sistem aynı anda 8 pencereyi işleyecek ve FPGA kartının sunduğu paralellik avantajından faydalanacak.
  7. Diyagramdaki her blokta saat ve sıfırlama beslemelerini kontrol eden bir işlemci sistemi sıfırlama bloğu ekleyin.
  8. HoG IP'lerini Zync PS bloğuna bağlamak için iki axi_smart bağlantı bloğu ekleyin. Tüm blok diyagram ve tam bağlantılar Şekil 3'te gösterilmiştir.
    NOT: Şekil 3'te gösterildiği gibi, tasarıma eklenmesi gereken tüm bloklar açıkça gösterilmiştir. Şekil 3 araçtan alınmış ve her blokun iç portlarını ile farklı blokların portları arasındaki bağlantıları göstermektedir. Bu blok, PS ile FPGA kartının PL kısmı arasındaki arayüzü kurmaktan sorumlu olan ana tasarımdır.
  9. Bağlantı tamamladıktan sonra , Şekil 3'e göre tasarımı doğrulama seçeneğine tıklayın.
    NOT: Doğrulama temelde eksik bağlantıları veya bozuk bağlantıları kontrol eder, bu da sonraki aşamalarda sorunlara yol açabilir.
  10. Blok diyagramın doğrulaması başarılıolduktan sonra Synthesis'e tıklayın ve ardından Tasarımı Implement'e ekleyin.
    NOT: Sentez, tasarlanmış blok diyagramı haritalandırır ve FPGA kartında haritalar. Bu adım, tasarımın donanımda uygulanamayacağını gösterebilecek herhangi bir ihlali bildirecektir.
  11. Araç ayrıca zamanlama, kaynak kullanımı ve güç tüketimiyle ilgili raporlar da oluşturacak. Raporları dikkatlice inceleyin, herhangi bir zamanlama ihlalini kontrol edin ve tasarlanmış sistemin performansını analiz edin.
  12. FPGA kartını programlamak için gereken .bit dosyasını oluşturan bitstream dosyasını Oluştur ' seçeneğine tıklayın.

Şekil 3
Şekil 3: HoG + SVM ithal IP kullanarak yaya tespiti için blok diyagram. Bu şeklin daha büyük bir versiyonunu görmek için lütfen buraya tıklayın.

3. FPGA kartında nihai uygulama

  1. FPGA kartını alın ve SD kartı uygun görüntü dosyası ile kart üzerindeki yuvaya yerleştirin.
  2. Kartı bilgisayara da bağlayın.
  3. FPGA kartını SD kart modunda başlatarak Python programlamayıetkinleştirin 21,22.
  4. Karttaki jupyter platformuna wifi'ye bağladıktan sonra erişin.
  5. Bir web kamerayı panoya bağlayın.
  6. Oluşturulan bit dosyasını içe aktarmak ve kamera görüntülerine erişme görevini yerine getirmek için bir python kodu yazın.
  7. Kodda, betik yazın ki görüntü PS parçası üzerinden FPGA kartının belleğine yazılıp işleme için PL kısmına iletilir.
    NOT: HoG IP'lerine karşılık gelen PL bölümü, bu bellek konumları üzerinden görüntü piksellerine erişir, onları işler ve skorları çıktı olarak sağlar.
  8. İşlenen görüntüleri okumak ve bilgisayar ekranında göstermek için aynı Python betikinde uygun kod yazın.
    NOT: Bu tüm tasarımı tamamlamış ve sistem artık gerçek dünya uygulamalarında kullanıma hazır hale gelmiştir. Bu çalışmada kullanılan tüm kodlar ek kodlama dosyaları olarak yüklenmiştir (Ek Dosya 1 [Script_1_train_test.py], Ek Dosya 2 [Script_2_HLS_hog.cpp], Ek Dosya 3 [Script_3_HLS_test_bench.cpp], Ek Dosya 4 [Script_4_HLS_consts.h], Ek Dosya 5 [Script_5_jupyter_code.txt]).

Access restricted. Please log in or start a trial to view this content.

Results

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

HLS'de yaya tespit uygulaması
Şekil 4 , HoG + SVM kullanılarak yaya tespiti için HLS aracının simülasyon sonuçlarını göstermektedir. Bir yaya içeren giriş görüntüsü koda test girişi olarak verilir ve tespit edilen yayalarla çıktı gösterilir. Görselde iki bölüm var. İlk tespitte aynı yayanın etrafında tekrar tekrar birçok sınırlayıcı kutu var, ikinci görüntüde ise üst üste binen kutular kaldırılır ve bastırılır, geriye sadece ana tespit kutuları kalır.

Access restricted. Please log in or start a trial to view this content.

Discussion

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Bu çalışma, Zynq UltraScale+ MPSoC geliştirmekartı 24'e dayalı gelişmiş FPGA donanımında HoG + SVM algoritmasını kullanarak gerçek zamanlı yaya tespit sistemini etkili bir şekilde uygulamaktadır. Sonuçlar, geleneksel insan algılamaalgoritmasının %95'e yakın doğruluk sağladığını ve gemi içi FPGA kaynaklarının (LUT'lar, FF'ler, BRAM, DSP'ler) sadece yarısını kullandığını göstermektedir; böylece bazı farklı görevleri yerine getirmek için çok d...

Access restricted. Please log in or start a trial to view this content.

Disclosures

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Yazarlar, çıkar çatışması olmadığını belirtir.

Materials

List of materials used in this article
NameCompanyCatalog NumberComments
PythonPythonVersion 3.10
Ultra 96 V2 FPGA Board Xilinx 2018'de tanıtıldıYaya algılama algoritmasının uygulanmasında kullanılan Donanım İmplemantasyon Platformu
Vivado AMD2019.2Ultra 96 v2 FPGA kartını yaya algılama algoritmasıyla programlamak için kullanılan FPGA Programlama aracı 
Vivado HLS AMD2019.2Bildirideki yaya algılama kodunun üst düzey programlaması için kullanılan Yüksek Seviye Sentez Aracı (High Level Synthesis Tool) ve Entelektüel Mülkiyet (IP) dışa aktarma

References

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,
  1. Nkuzo, L., Sibiya, M., Markus, E. Computer vision-based applications in modern cars for safety purposes: A systematic literature review. 2023 Conference on Information Communications Technology and Society (ICTAS), Durban, South Africa, , (2023).
  2. Nidamanuri, J., Nibhanupudi, C., Assfalg, R., Venkataraman, H. A progressive review - Emerging technologies for ADAS driven solutions. IEEE Trans Intell Veh. 7 (2), 326-341 (2021).
  3. Bathla, G., et al. Autonomous vehicles and intelligent automation: Applications, challenges, and opportunities. Mob Inf Syst. 2022, 7632892(2022).
  4. Yamamoto, R., Izumi, Y., Aono, R., Nagahara, T., Tanaka, T., Liao, W., Mitsuyama, Y. Development of autonomous driving system based on image recognition using programmable SoCs. 2021 International Conference on Field-Programmable Technology (ICFPT), Auckland, New Zealand, , (2021).
  5. Kasem, A., Reda, A., Vásárhelyi, J., Bouzid, A. A survey about intelligent solutions for autonomous vehicles based on FPGA. Carpathian J Electr Comput Eng. , (2021).
  6. Nane, R., et al. A survey and evaluation of FPGA high-level synthesis tools. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems. 35 (10), 1591-1604 (2015).
  7. Cao, J., et al. Pedestrian detection algorithm for intelligent vehicles in complex scenarios. Sensors. 20 (13), 3646(2020).
  8. Chen, W., Zhu, Y., Tian, Z., Zhang, F., Yao, M. Occlusion and multi-scale pedestrian detection: a review. Array. 19, 100318(2023).
  9. Galvao, L. G., Abbod, M., Kalganova, T., Palade, V., Huda, M. N. Pedestrian and vehicle detection in autonomous vehicle perception systems—A review. Sensors. 21 (21), 7267(2021).
  10. Akshayaa, S., Nithin, S. Comparative study of pedestrian detection techniques for driver assistance system. 2021 Second International Conference on Electronics and Sustainable Communication Systems (ICESC), Coimbatore, India, , (2021).
  11. Dalal, N., Triggs, B. Histograms of oriented gradients for human detection. Proceedings of the 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR), San Diego, CA, USA, , (2005).
  12. Singh, G., Kaur, A., Bhardwaj, V., Shrivastava, S. Optimizing IoT capabilities: leveraging FPGA for superior performance, efficiency and security. 2024 5th International Conference for Emerging Technology (INCET), Belgaum, India, , (2024).
  13. Shrivastava, S., Kumar, B. V., Gupta, R., Sharma, V. Advancements in real-time image processing using Kintex and Virtex FPGAs: enhancing speed, efficiency, and versatility. 2025 IEEE International Conference on Interdisciplinary Approaches in Technology and Management for Social Innovation (IATMSI), Gwalior, India, , (2025).
  14. Rettkowski, J., Boutros, A., Göhringer, D. Real-time pedestrian detection on a Xilinx Zynq using the HOG algorithm. 2015 International Conference on Reconfigurable Computing and FPGAs (ReConFig), Riviera Maya, Mexico, , (2015).
  15. Ngo, V., Casadevall, A., Codina, M., Castells-Rufas, D., Carrabina, J. A high-performance HOG extractor on FPGA. arXiv. , 1802.02187(2018).
  16. Adiono, T., Prakoso, K. S., Putratama, C. D., Yuwono, B., Fuada, S. HOG-AdaBoost implementation for human detection employing FPGA ALTERA DE2-115. Int J Adv Comput Sci Appl. 9 (10), 353-358 (2018).
  17. Dürre, J., Paradzik, D., Blume, H. A HOG-based real-time and multi-scale pedestrian detector demonstration system on FPGA. Proceedings of the 2018 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays, Monterey, California, USA, , (2018).
  18. Wasala, M., Kryjak, T. Real-time HOG+SVM based object detection using SoC FPGA for a UHD video stream. 2022 11th Mediterranean Conference on Embedded Computing (MECO), Budva, Montenegro, , (2022).
  19. Lin, Y. Research on HOG-SVM pedestrian detection method based on FPGA. Appl Computat Eng. 9, 272-281 (2023).
  20. Ranawaka, P., et al. Application specific architecture for hardware accelerating HOG-SVM to achieve high throughput on HD frames. 2019 IEEE 30th International Conference on Application-Specific Systems, Architectures and Processors (ASAP), New York, NY, USA, 2160, 131-134 (2019).
  21. Luo, J. H., Lin, C. H. Pure FPGA implementation of an HOG based real-time pedestrian detection system. Sensors. 18 (4), 1174(2018).
  22. Ma, X., Najjar, W. A., Roy-Chowdhury, A. K. Evaluation and acceleration of high-throughput fixed-point object detection on FPGAs. IEEE Transactions on Circuits and Systems for Video Technology. 25 (6), 1051-1062 (2015).
  23. Weng, G. Real-time pedestrian recognition on low computational resources. arXiv. , 2309.01353(2023).
  24. Nguyen, T. A., Tran-Thi, T. Q., Bui, D. H., Tran, X. T. FPGA-based human detection system using HOG-SVM algorithm. 2023 International Conference on Advanced Technologies for Communications (ATC), Da Nang, Vietnam, , (2023).
  25. Tarchoun, B., Khalifa, A. B., Dhifallah, S., Jegham, I., Mahjoub, M. A. Hand-crafted features vs deep learning for pedestrian detection in moving camera. Traitement du Signal. 37 (2), 209-216 (2020).
  26. Suleiman, A., Chen, Y. H., Emer, J., Sze, V. Towards closing the energy gap between HOG and CNN features for embedded vision. 2017 IEEE International Symposium on Circuits and Systems (ISCAS), Baltimore, MD, USA, , (2017).
  27. Ultra96-V2 Single Board Computer Hardware User’s Guide. , Avnet. Available from: https://www.avnet.com (2025).

Access restricted. Please log in or start a trial to view this content.

Reprints and Permissions

Request permission to reuse the text or figures of this JoVE article

Request Permission

Tags

Pedestrian DetectionAutonomous DrivingField Programmable Gate ArrayFPGA ImplementationReal Time DetectionHistogram Of Oriented GradientsSupport Vector MachineHigh Level SynthesisUltra 96 V2Smart Transportation

Related Articles