2025년 HARMAN Semicon Academy 1기 개발기간: 2025.07.08 ~ 08.12
프로젝트트래커: https://github.com/users/cong2738/projects/2/views/1
박호윤
임윤재
임희주
@cong2738
@immune1029
@Heeju99
SystemArchitecture Design And VectorCalculater Algorithm Develop
ControlSignal Design, Virtual Stage Develop
ArmCortex Communication And System Develop
김민서
박지수
함영은
@minseo0511
@Friday930
@heyhoo46
Cam control module And HDMI QHD Output module Develop
Comunication Packet control module Develop
HandSignal Module improvement and Simulation
ImageSerchingAndDetect(FPGA)
FPGA 기반으로 실시간 카메라 영상을 처리하고, 사용자의 마커의 궤적 좌표들을 인식한다
카메라에서 입력된 원시 영상은 직접 구현한 ISP 회로를 통해 밝기 보정과 노이즈 제거 등 전처리를 거친다.
좌표 추출 알고리즘: ROI(Region of Interest) 영역에서 조건에 부합하는 픽셀의 개수를 카운트하여, 깃발의 색상과 위치를 판별한다. 극한으로 단순화시킨 투표 앙상블 알고리즘이라 볼 수 있다.
좌표 추출 과정은 순수 하드웨어(FPGA) 로직으로 구성되어 고속으로 처리된다.
FULL HD 출력이 가능한 Zybo버전의 경우 SCCB와 VDMA 설정까지는 Zynq가 사용된다(FHD 출력을 위해서는 Zybo의 DRAM에 접근해야하며 그 과정에서 VDMA모듈이 사용된다).
모듈 소개
HandSignal : 마커를 트래킹하는 모듈
GRAPHIC_Display : 그래픽 처리장치(GPU) 영상입력을 받아 출력하기까지의 블록이다. Basys3버전의 경우 단순 그리드 출력, Zybo버전의 경우 HDMI 출력을 위해 DRAM을 드라이브 하는 VDMA모듈 등이 이에 해당된다.
SPI_PacketMaster: 데이터패킷통신을 제어하고 SPI를 통해 데이터를 송신하는 블록
VectorCalculator(ARM Cortex M)
FPGA(GPU)로부터 받은 10개의 좌표를 통해 9개의 순간벡터를 계산한다.
순간벡터 9개의 경향성을 계산하여 제어신호가 발생한다.
좌표의 위치가 아닌 벡터로서 화면상 어느 위치에서든 "동일 동작 --> 동일 제어" 가능
칼만 예측 적용, 잡음상황에서 신뢰성 있는 궤적 연산 가능
핵심기술: ISP, ROI 기반 컬러 검출 마커 트레이싱, HDMI, VGA, SPI통신, 패킷컨트롤, 칼만예측
HW Development & Simulation
Basys3 Version
HandSignal(MarkerDetectionModule): 마커 좌표추출 모듈(ISP)
MarkerDetectionModule Simulation
노이즈가 섞인 랜덤 이미지 생성
이미지를 바이너리 파일로 변환
바이너리 파일을 Sequence 클래스에서 읽어 DUT 입력으로 사용
Zybo
PCAM(OV5640)
STM32-f411
click!-->