Method Article

자율주행 응용을 위한 현장 프로그래밍 가능 게이트 배열 기반 보행자 감지 프레임워크의 설계 및 구현

DOI:

10.3791/70292

June 12th, 2026

* These authors contributed equally

In This Article

Summary

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

이 연구 논문은 주로 자율주행 응용을 위한 현장 프로그래밍 가능 게이트 어레이 하드웨어에서 실시간 보행자 탐지 알고리즘의 구현을 시연합니다. 이 알고리즘은 방향 경배 히스토그램(HoG)과 지지 벡터 기계(SVM) 분류기를 결합하여, 속도, 전력 소비, 자원 활용 측면에서 효율성을 보여줍니다.

Abstract

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

자율주행은 교통사고로 인한 사망자 수가 증가하는 문제를 해결하는 유망한 방법을 제공합니다. 자율주행차는 많은 기능을 포함하지만, 보행자 감지 능력은 감시, 사람 추적, 모니터링과 같은 다양한 실시간 상황에서 매우 중요하고 도전적이며 관련이 있습니다. 보행자를 정확히 식별하는 것은 어렵습니다. 왜냐하면 보행자는 다양한 형태, 위치, 자세로 나타날 수 있기 때문입니다. 다양한 옷을 입고 때로는 부분적으로 숨거나 주변 물체와 섞여 있을 수 있습니다. 이 논문은 인기 있는 하드웨어 플랫폼인 필드 프로그래머블 게이트 어레이(FPGA), Ultra 96 v2를 사용하여 자율주행차의 보행자 실시간 탐지에 초점을 맞추고 있습니다. 이 연구는 방향성 기울기 히스토그램(HOG)과 지지 벡터 기계(SVM) 분류기를 결합하여 FPGA 보드 내 개인을 인식하는 보행자 탐지 방법을 구현했으며, 고급 합성(HLS) 도구를 활용합니다. 시스템의 효과는 정지 이미지와 라이브 비디오 모두에서 테스트되었습니다. 결과는 Ultra 96 v2와 같은 첨단 FPGA 보드가 성능 지표를 크게 향상시킨다는 것을 보여줍니다. 이 시스템은 150 MHz의 클럭 주파수로 작동하며, 사용 가능한 자원의 절반 미만을 사용하고 약 2.5W의 전력을 소비합니다. 또한, 시스템은 보행자 탐지 정확도를 약 95%에 보고하며, 정확도(78.6%), 리콜(88.3%), F1 점수(83.1%) 등 다른 효율적인 탐지 평가 지표도 보고합니다. 요약하자면, 개발된 시스템은 실시간으로 보행자를 감지할 수 있으며, 스마트하고 안전한 교통 환경 개발을 크게 향상시킬 잠재력을 가지고 있습니다.

Introduction

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

도시 개발과 스마트 시티의 등장은 전 세계적으로 관심 있는 주제입니다. 모든 국가는 자신들의 도시가 안전하고 쾌적하게 지어질 수 있도록 발전하기 위해 노력하고 있습니다. 하지만 현재 상황에서는 인구가 증가하고 도로 혼잡이 심화됨에 따라 운전 과실과 시야 저하로 인한 교통사고 사망률이 급격히 증가하고 있습니다. 이러한 문제에 대한 유망한 해결책은 전 세계적으로 자율주행차의 등장으로,이는 혁신을 촉진했으며 연구자들은 승객들이 걱정 없이 편안히 쉴 수 있도록 완전한 자율주행 차량 개발을 위해 노력하고 있습니다. 자율주행차 개발의 필요성은 경험 많은 운전자조차도 악천후로 인한 환경 인식 장애, 스트레스, 딜레마, 피로, 어려움을 겪을 수 있으며, 이러한 문제들이 도로 사고로 이어질 수 있기 때문입니다. 자율주행차는 여행 중 사고를 피하고, 엔진 자원 사용을 최적화하며, 교통법규를 준수하도록 설계되어 교통 편성을 확실히 향상시킬 것입니다. 자율주행차는 여러 기능과 센서, 기능을 갖추고 있어 주변을 매우 정밀하게 감지하여 충돌이나 사고를 피할 수 있습니다. 따라서 이들은 교통을안전하고 보안적으로 만드는 유망한 솔루션으로 떠올랐습니다.

자율주행차에 통합된 모든 기능 중 가장 중요한 것 중 하나는 보행자 감지입니다. 강력한 보행자 감지 시스템은 도로 사고 사망자 수를 크게 줄이는 데 도움이 될 수 있습니다. 사고 피해자의 대다수가 보행자이기 때문입니다. 보행자 탐지는 도로 위의 사람을 식별하고 충돌을 피하는 것을 포함합니다. 이 기능은 자율주행차뿐만 아니라 군중 모니터링, 사람 식별,9·10·11 추적 등 다양한 응용 분야에도 유용합니다. 이 탐지 과정의 핵심은 탐지의 속도와 정확성입니다. 보행자를 정확하고 신속하게 감지하여 대응 시간을 최소화하는 것이 매우 중요합니다. 보행자 탐지가 엄청난 도전 과제를 제기합니다. 도로 위의 보행자는 어떤 옷차림, 외모, 자세도 상관없으며, 악천후나 폐쇄로 인해 보이지 않을 수 있습니다.10, 11, 12, 13, 14. 더불어, 보행자가 규칙을 직접 지키지 않을 수도 있고, 인간 본성을 통제할 수 없으므로, 최선의 방법은 차량에 잘못된 행동을 처리할 수 있는 지능을 갖추어 사망을 피하는 것입니다. 본 연구의 전체 진행과 보행자 감지 하드웨어 구현의 동기는 아래 그림 1에서 쉽게 이해할 수 있습니다. 그림 1은 보행자 감지의 필요성, 다양한 응용 분야, 관련 과제, 그리고 FPGA에 제공된 이점을 활용하기 위한 구현 과정을 설명합니다.

그림 1
그림 1: 보행자 탐지. 보행자 감지의 필요성, 보행자 감지의 주요 응용 분야, 보행자 감지의 도전 과제, 그리고 FPGA 보드에 보행자 감지의 구현 흐름이 포함됩니다. 이 그림의 더 큰 버전을 보시려면 여기를 클릭해 주세요.

도로 위 보행자를 식별하기 위해 수많은 알고리즘이 존재합니다. 이 전체 작업은 주로 두 가지 주요 하위 작업으로 나눌 수 있습니다: 초기 단계는 입력 이미지에서 특징을 추출하고, 중요한 특징만 유지하고 관련 정보를 전달하는 특징만 유지하며, 중복된 특징은 무시하는 것입니다. 이미지 속 인간이나 보행자를 효과적으로 인식하기 위해서는 이러한 특징들이 장면 내 인간의 존재를 나타내는 것이 매우 중요합니다.13, 14. 이 추출 후에는 특징을 분류기에 보내 식별된 특징이 인간인지 판단해야 합니다. 따라서 알고리즘은 특징 추출 및 설명 단계를 거쳐 분류 단계를 거쳐 입력 장면에서 보행자의 존재를 결정해야 합니다. 이 목적을 위한 다양한 알고리즘이 존재합니다. 그러나 지금까지 가장 널리 받아들여지는 보행자 탐지 방법은 방향 경배 히스토그램(HoG)과 지지 벡터 기계(SVM) 분류기 12,13,14,15의 조합입니다. 수많은 소프트웨어 발전 사례가 존재하지만, 궁극적인 목표는 구현을 호환 가능한 하드웨어 플랫폼으로 이식하여 애플리케이션 시스템에 통합하여 실시간으로 사용하는 것입니다. 따라서 현재는 하드웨어 실현에 중점을 두고 있습니다. 따라서 적절한 하드웨어가 장착된 카메라를 차량에 배치하고 도로 위 보행자를 식별할 수 있는 보행자 감지 시스템의 적절한 하드웨어 구현을 개발해야 한다고 할 수 있습니다. 이러한 구현에 적합한 하드웨어를 고려할 때, 가장 일반적으로 사용되는 옵션 중 하나는 설계 시간 단축, 확장성, 수정 용이성, 재구성 가능성, 에너지 및 전력 소비 감소 등 다양한 장점을 가진 현장 프로그래머블 게이트 어레이(FPGA)입니다.15, 16, 17, 18, 19, 20, 21,22살.

FPGA 보드는 꾸준히 발전해 왔으며, 이제는 기본 이미지 처리부터 객체 감지, 증강현실, 딥러닝에 이르기까지 복잡하고 첨단 컴퓨터 비전 응용 분야에 널리 사용되고 있습니다20, 21, 22. 현재 여러 고성능 FPGA 보드는 이러한 복잡한 응용에 필요한 광범위한 처리를 수용할 수 있는 뛰어난 아키텍처 기능을 갖추고 있습니다. 보행자 감지와 같은 자율주행차의 고급 기능이 이러한 하드웨어 플랫폼에 구현된다면, 이러한 플랫폼은 성능 분석을 위한 빠른 프로토타입 개발에 매우 유용할 수 있으며, 최적화 후 구현된 알고리즘을 실제 집적회로로 전환하여 시스템에 통합할 수 있습니다.

10년 넘게 다양한 FPGA 플랫폼에서 HoG와 SVM 방법을 이용한 보행자 감지 구현에 관한 중요한 논문들이 있습니다. 표 1은 2015년부터 2025년까지 15,16,17,18,19,20,21,22,23,24 등 주요 요소에 중점을 둔 이 분야의 기사들을 요약합니다. 이미지 해상도, 처리량, 프레임 초당 프레임(FPS), 분류기 유형, 주요 하이라이트 또는 기여 종이.

참고문헌FPGA 플랫폼이미지 해상도분류기주요 하이라이트 / 기여
15자일링스 징크640×480아다부스트실시간 FPGA 구현; 자원 효율적; 최적화를 위해 이진 화를 사용한다; 탐지 정확도가 좋습니다.
16테라식의 DE1-SOC 보드640×480SVM고성능 HOG 추출기; SVM을 통합하고; 단일 스케일 탐지; 저지연 파이프라인.
17알테라 DE2-115640×480아다부스트여러 관점에서 성과를 평가합니다; HOG+AdaBoost의 FPGA 구현; 실시간 보행자 탐지.
18인텔 스트라틱스 V640×480SVM다중 스케일 보행자 감지; FPGA 친화적인 HOG+SVM 파이프라인; 정확성과 하드웨어 효율성 간의 절충 관계를 강조합니다.
19Zynq 울트라스케일+ MPSoC3840×2160SVM실시간 UHD 처리; 파이프라인 HOG+SVM; SoC FPGA 구현; 고정점 최적화; 확장 가능한 아키텍처입니다.
20명시되지 않음명시되지 않음SVM>95% 탐지 정확도를 달성; 실시간 FPGA 구현; 병렬성을 활용하고; 보행자 감지를 위한 상세한 HOG+SVM FPGA 설계.
21Zync 7000 FPGA1920×1080SVMHOG+SVM을 위한 고처리량 스트림 아키텍처; HD 해상도 지원; FPGA 가속을 위한 효율적인 파이프라인.
22울트라96 (1번째 버전)240×320SVMHLS를 이용한 FPGA 구현; 빨간 신호 감지; 891개 영역에서 확률을 계산하며; 지연 시간은 153,838에서 19 사이클 사이입니다.
23자일링스 Zynq-7000 FPGA640 × 480HOG + SVMFPGA에서 HOG-SVM을 사용해 보행자 감지를 구현하여, CPU 처리 대비 전력 소비를 줄이고 실시간 성능을 달성했습니다. 임베디드 비전 응용에 적합한 최적화된 특징 추출 파이프라인을 시연했습니다.
24자일링스 버텍스-6 FPGA640 × 480고정점 물체 검출기(하르와 유사한 특징)고정소수점 연술을 이용한 고처리량 FPGA 객체 검출 가속을 제안하여 계산 비용을 줄이면서도 정확도를 유지합니다. CPU 구현 대비 15× 속도 향상과 효율적인 하드웨어 자원 활용을 보여주었습니다.

표 1: FPGA에서 보행자 감지 연구를 기반으로 한 문헌 고찰 (2015–2025).

표 1은 보행자 탐지 분야에서 방대한 문헌이 존재했으며, 하드웨어 구현이 연구자들의 관심 분야임을 요약합니다. 또한 보행자 탐지 작업을 위한 합성곱 신경망(CNN) 기반 검출기(YOLO), 트랜스포머 기반 아키텍처 등과 같은 고급 딥러닝 및 머신러닝 기법이 존재한다는 점도 분명합니다. 정확도 면에서는 전통적인 HoG 알고리즘보다 성능이 우수하지만, 하드웨어 구현을 고려하면 고급 알고리즘은 복잡한 알고리즘 때문에 막대한 자원 활용을 초래합니다.23,24는 다른 성능 매개변수에도 영향을 미칠 수 있고, 복잡성이 추가되어 전통적인 HoG 알고리즘의 경우 속도가 약간 더 우수하다는 점도 관찰되었습니다24, 25. 또한 고급 기술들이 하드웨어24,26에 구현될 때 더 많은 전력을 소비한다는 점도 관찰되었습니다. 따라서 본 논문에서 구현된 연구의 목적은 FPGA 하드웨어에서 전통적인 HoG 및 SVM 프레임워크를 사용하여 보행자 검출을 수행하고, 실시간 임베딩을 위해 정확도, 속도, 자원, 전력 측면에서 유리한 균형을 달성하는 것입니다. 표 1에서 볼 수 있듯이, HoG 및 SVM 기반 연구를 분석할 때, 최근에 도입된 Zynq UltraScale+ MPSoC(다중 프로세서 시스템 온 칩) 기반 FPGA 개발 보드27을 활용하여 이 보드들의 성능을 탐구하는 논문이 제한적으로 존재한다는 점이 분명합니다. 이 보드들은 아키텍처 관점에서 진화해 왔습니다. 그리고 고급 실시간 컴퓨터 비전 응용 구현 측면에서 큰 잠재력을 제공합니다. FPGA 보드에서 보행자 감지 시스템 전체를 실시간으로 구현한 제한된 출판물이 있습니다. 하지만 중간 과제의 효율적인 구현이나 개선에 집중해 왔습니다. 더불어, 대부분의 구현은 하드웨어 설명 언어를 사용하여 FPGA 보드 위에 전체 시스템을 구현하는 데 기반합니다. 고수준 합성(HLS) 도구의 이점을 활용해 설계 과정을 가속화한 사람은 거의 없습니다. 이 논문은 자율주행 애플리케이션에 전용된 FPGA 보드에서 실시간 보행자 감지의 설계 및 구현을 시연합니다. 이 논문은 정지 이미지, 비디오 또는 실제 카메라 입력에서 보행자 탐지를 목적으로 HoG와 SVM 프레임워크를 활용합니다. 사용되는 하드웨어는 최첨단이자 최근에 출시된 FPGA 보드인 Ultra96 v2로, 컴퓨터 비전, 이미지 처리, 머신러닝, 엣지 컴퓨팅 등 강력한 플랫폼인 고급 FPGA 아키텍처입니다.24. Ultra96 v2는 Arm 기반 AMD Xilinx Zynq UltraScale+ MPSoC27을 탑재한 개발 보드입니다. 이 보드에는 소프트웨어 측면을 관리하는 ARM 기반 CPU 코어로 구성된 프로세싱 시스템(PS) 세그먼트와,20, 21, 22 하드웨어 가속을 가능한 프로그래머블 로직(PL) 세그먼트가 포함되어 있습니다. 이 구성 요소들은 PS 부분이 외부 요소와의 제어 및 상호작용을 관리하고, PL 부분이 실제 처리 로직을 처리하는 하이브리드 시스템의 기능을 향상시킵니다.

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

Protocol

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

이 연구에서 사용된 구현 절차는 FPGA 보드에서 HoG + SVM을 이용한 보행자 감지를 기반으로 하며, 고수준 합성의 이점을 활용한 방식이 아래 그림 2 에 나와 있습니다.

그림 2
그림 2: FPGA 보드에서 보행자 감지 구현 설계 절차. 1단계: HLS 도구에서 HoG+SVM을 이용한 보행자 탐지 알고리즘과 IP 블록 생성. 2단계: HoG+SVM을 이용한 보행자 탐지 알고리즘을 실제 FPGA 구현과 비트 파일 생성. 3단계: 생성된 비트 파일로 보드를 프로그래밍하는 것. 이 그림의 더 큰 버전을 보시려면 여기를 클릭해 주세요.

1. HLS 도구에서 HoG와 SVM을 이용한 보행자 감지

  1. 다운로드가 이루어지는 시스템 속성에 따라 파이썬 통합 개발 환경(IDE)을 다운로드하세요.
    참고: 이 작업에서는 Python 3.10 버전을 사용합니다.
  2. HoG 알고리즘과 SVM 분류기를 사용해 훈련 모델을 실행하기 위한 Python 스크립트를 실행하세요. 스크립트를 데이터셋에서 양성과 음수 샘플을 불러오는 것으로 시작합니다.
    참고: INRIA 데이터셋11을 사용하세요.
  3. 64 x 128 창 크기의 HoG 특징을 추출하세요.
  4. INRIA 데이터셋의 훈련과 테스트 데이터를 80/20 비율로 나누고, 재현성을 위해 무작위 섞어 사용합니다.
    참고: 데이터셋은 파이썬 함수를 사용해 무작위로 섞은 후 분할됩니다. 시드 값이 코드에서 고정될 때마다 동일한 분할이 이루어지도록 재현성을 보장하기 위함입니다.
  5. 선형 커널을 가진 C-지지 벡터 분류(SVC) SVM을 사용하여 학습합니다.
  6. 가중 벡터와 편향을 추출하세요.
  7. FPGA 구현을 위해 고정소점 Q8.8 형식으로 SVM 가중치와 바이어스를 저장하세요.
    참고: 변환은 생성된 각 부동소수점 값의 원본성을 256배(28)로 스케일링하여 결과를 정수로 캐스팅하여 수행됩니다.
  8. 훈련된 모델을 다른 Python 스크립트로 테스트하고 정규화 매개변수 C를 조정하여 정확도가 95% 이상으로 계산될 때까지 조정합니다.
    참고: 최적화된 정규화 매개변수는 C = 0.05입니다.
  9. HLS 도구를 열고 xczu3eg-sbva484-1-e로 선택한 부품 번호로 새 프로젝트를 생성하세요.
  10. C++ 같은 고수준 언어를 사용해 고수준 합성 도구에서 보행자 감지 코드를 작성하세요.
  11. 코드에서 세 가지 다른 C++ 스크립트를 작성하세요: 하나는 HoG 특징 디스크립터와 SVM 분류기용, 다른 하나는 테스트 이미지에 입력을 제공하고 출력 이미지를 저장하는 테스트벤치용, 그리고 코드에 사용되는 매개변수를 선언하는 헤더 파일용입니다.
  12. HoG 특징 계산 코드에서 이미지를 640 x 480으로 크기 조정하고 64 x 128 크기의 슬라이딩 윈도우 아키텍처를 적용합니다. 모든 창에 대해 겹치는 8 x 8 블록의 경배 크기와 방향을 계산합니다.
    참고: 슬라이딩 윈도우 개념을 통해 이미지 전체를 스캔하여 이미지의 모든 영역을 가리고 가능한 모든 크기의 보행자를 식별하는 것이 중요합니다.
  13. 같은 코드 중 HoG 특징 디스크립터의 다른 부분에서는 계산된 구배를 SVM 분류기에 전달합니다. 특징을 분류기 가중치와 일치시키는 코드를 작성하고, 임계값과 비교하여 탐지된 특징이 인간인지 아닌지 분류합니다.
  14. HLS 도구에서 ' C 시뮬레이션 실행 '을 클릭하여 테스트 벤치의 도움을 받아 코드의 기능 정확성을 시뮬레이션할 수 있습니다.
  15. 코드에 다른 입력 이미지를 제공하고, 출력된 이미지와 감지된 보행자를 비교하세요.
  16. Run C Synthesis를 클릭하여 코드를 합성하고, 도구를 통해 하드웨어 언어에 매핑하며, 타이밍과 활용 보고서를 생성할 수 있습니다.
    참고: 이 도구는 HLS 합성 보고서를 자동으로 엽니다. 이 보고서는 선택한 FPGA 플랫폼에서 코딩된 작업을 구현하기 위해 필요한 클럭 주파수 추정치와 사용된 자원 추정치를 제공합니다. 이 보고된 값들은 단지 추정치일 뿐이며, 실제 매개변수는 FPGA 보드에 구현된 후에만 계산됩니다.
  17. 보행자 탐지 HoG 알고리즘의 지적 재산권(IP) 블록을 내보내려면 RTL 내보내 기를 클릭하세요.
    참고: 이 IP는 구현 후반부에 사용됩니다.

2. FPGA 보드 프로그래밍

  1. FPGA 프로그래밍 도구를 열고 새 프로젝트를 생성하세요. 부품 번호를 xczu3eg-sbva484-1-e 로 선택하고 새 블록 디자인을 생성하세요.
    참고: 이 블록 다이어그램은 PS와 FPGA 보드의 PL 부분 간의 통합을 확립하기 위해 작성되었습니다. 사용되는 통신 프로토콜은 고급 확장 인터페이스(AXI) 프로토콜입니다.
  2. 도구에서 IP 카탈로그 를 검색한 후 열어보세요.
  3. 1.17 단계에서 내보낸 RTL IP 경로를 추가하여 사용자 저장소를 만듭니다.
  4. 새 블록 디자인 창에서 오른쪽 클릭으로 IP 추가를 선택하세요. 도구가 제공하는 IP와 사용자가 추가한 저장소를 포함해 모든 IP가 표시됩니다.
  5. 저장소에서 Zync Ultrascale PS 블록을 추가하세요.
    참고: 이 블록은 시스템의 PS 부분을 반영하며, 필요한 클럭을 생성하는 역할을 하며, AXI 인터커넥트 블록을 통해 임포트된 HoG IP에 연결할 수 있는 마스터 및 슬레이브 포트도 포함되어 있습니다. 이 인터커넥트 블록은 AXI 프로토콜 기본 기반으로 동작합니다.
  6. 8개의 HoG IP를 추가하는데, 이는 시스템이 FPGA 보드가 제공하는 병렬 처리 이점을 활용하기 위해 동시에 8개의 창을 처리하기 때문입니다.
  7. 프로세서 시스템 리셋 블록을 추가하여, 다이어그램 내 각 블록에 클럭과 리셋 공급을 제어합니다.
  8. HoG IP와 Zync PS 블록을 연결하는 axi_smart 두 개의 Connect 블록을 추가하세요. 전체 블록다이어그램과 완전한 연결 도는 그림 3에 나와 있습니다.
    참고: 그림 3에서 보시다시피, 설계에 추가해야 하는 모든 블록이 명확히 표시되어 있습니다. 그림 3 은 도구에서 캡처한 것으로, 각 블록의 내부 포트와 서로 다른 블록 포트 간의 상호 연결을 보여줍니다. 이 블록은 FPGA 보드의 PS와 PL 부분 간 인터페이스를 설정하는 주요 설계입니다.
  9. 그림 3에 따라 연결을 완료한 후, 설계 검증을 클릭하세요.
    참고: 검증은 기본적으로 누락된 연결이나 끊어진 연결을 확인하는 것으로, 이로 인해 이후 단계에서 문제가 발생할 수 있습니다.
  10. 합성을 클릭한 후 블록 다이어그램 검증이성공한 후 '설계 구현'을 입력하세요.
    참고: Synthesis는 설계된 블록 다이어그램을 매핑하여 FPGA 보드에 매핑합니다. 이 단계에서는 설계가 하드웨어에 구현할 수 없음을 나타내는 위반 사항을 보고합니다.
  11. 또한 이 도구는 타이밍, 자원 활용, 전력 소비와 관련된 보고서를 생성합니다. 보고서를 꼼꼼히 검토하여 타이밍 위반 여부를 확인하고 설계된 시스템의 성능을 분석하세요.
  12. FPGA 보드 프로그래밍에 필요한 .bit 파일을 생성하는 비트 스트림 파일을 생성하는 '생성' 을 클릭하세요.

그림 3
그림 3: HoG + SVM 임포트 IP를 이용한 보행자 감지 블록다이어그램. 이 그림의 더 큰 버전을 보려면 여기를 클릭하세요.

3. FPGA 보드에서의 최종 구현

  1. FPGA 보드를 구입해서 적절한 이미지 파일이 있는 SD 카드를 보드 슬롯에 꽂으세요.
  2. 보드도 컴퓨터에 연결하세요.
  3. FPGA 보드를 SD 카드 모드로 부팅하여 Python 프로그래밍을 활성화하세요.
  4. 와이파이에 연결한 후 보드의 Jupyter 플랫폼에 접속하세요.
  5. 웹카메라를 보드에 연결하세요.
  6. 생성된 비트 파일을 가져오는 파이썬 코드를 작성하고 카메라 이미지 접근 작업을 수행합니다.
  7. 코드에서 스크립트를 작성하여 이미지가 FPGA 보드의 메모리에 PS 부분을 통해 기록되고, PL 부분으로 전달되어 처리되도록 합니다.
    참고: HoG IP에 대응하는 보드의 PL 부분은 이 메모리 위치를 통해 이미지 픽셀에 접근하여 처리하고 점수를 출력으로 제공합니다.
  8. 처리된 이미지를 읽고 컴퓨터 화면에 표시할 수 있도록 같은 Python 스크립트로 적절한 코드를 작성하세요.
    참고: 이로써 전체 설계가 완성되었으며 시스템은 실제 적용 준비가 완료되었습니다. 본 연구에서 사용된 모든 코드는 보조 코드 파일(보충 파일 1 [Script_1_train_test.py], 보충 파일 2 [Script_2_HLS_hog.cpp], 보충 파일 3 [Script_3_HLS_test_bench.cpp], 보충 파일 4 [Script_4_HLS_consts.h], 보충 파일 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에서의 보행자 감지 구현
그림 4 는 HoG + SVM을 이용한 보행자 감지를 위한 HLS 도구의 시뮬레이션 결과를 보여줍니다. 보행자가 포함된 입력 이미지가 코드 테스트 입력으로 입력되고, 감지된 보행자가 포함된 출력이 표시됩니다. 이미지에는 두 개의 섹션이 있습니다. 첫 번째 감지 화면에는 같은 보행자 주위에 여러 개의 경계 상자가 반복적으로 배치되어 있고, 두 번째 이미지에서는 겹치는 상자들이 제거되고 억제되어 주요 감지 상자만 남습니다.

그림 4
그림 4...

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

Discussion

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

본 연구는 Zynq UltraScale+ MPSoC 개발 보드24를 기반으로 한 고급 FPGA 하드웨어에서 HoG + SVM 알고리즘을 활용한 실시간 보행자 감지 시스템을 효과적으로 구현합니다. 결과는 인간 탐지11의 전통적인 HoG 알고리즘이 약 95%의 정확도를 달성하며, 온보드 FPGA 자원(LUT, FF, BRAM, DSP)의 절반만 사용해 다양한 작업을 수행할 수 있는 큰 역량을 남겨두었습니다. 전체 구현 방식을 분석하면 여러 중요한 단계들이 포함되어 있음을 알 수 있습니다. 주요 단계 중 하나는 보행자 감지를 위한 적절한 데이터셋으로 SVM 모델18, 19, 24를 학습시켜 가중치를 추출하여 FPGA 프로그래...

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

Disclosures

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

저자들은 이해 충돌이 없다고 선언합니다.

Materials

List of materials used in this article
NameCompanyCatalog NumberComments
Python파이썬버전 3.10
Ultra 96 V2 FPGA 보드 Xilinx 2018년 도입보행자 감지 알고리즘을 구현하는 데 사용되는 하드웨어 구현 플랫폼
Vivado AMD2019.2보행자 감지 알고리즘으로 Ultra 96 v2 FPGA 보드를 프로그래밍하는 데 사용되는 FPGA 프로그래밍 도구 
Vivado HLS AMD2019.2논문의 보행자 감지 코드를 높은 수준으로 프로그래밍하고 지적 재산(IP)을 수출하는 데 사용되는 하이 레벨 합성 도구

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