엣지 분류를 위한 합성 LiDAR 데이터와 핵심점 다운샘플링

엣지 분류를 위한 합성 LiDAR 데이터와 핵심점 다운샘플링

Niclas Meyer, Stefan Reitmann

9 분 읽기•2026년 8월 11일

포인트 클라우드 데이터

자동차 인식 분야에서 이러한 비정형 데이터는 대부분 LiDAR 센서에서 비롯된다. LiDAR 센서는 일반적인 비행시간 측정 방식이나 주파수 변조 레이저 신호를 통해 차량과 주변 공간 사이의 거리를 측정한다. 자율주행 LiDAR 시스템은 자율주행의 감각적 기반으로서 복잡한 기하 구조를 지속적으로 전달하지만, 대기 현상으로 인해 거리에 따른 희소성과 지터가 발생하기 쉽다.

3D 이해를 위한 지각 신경망 패러다임

3D 딥러닝은 공간적·의미론적 세부 수준이 서로 다른 세 가지 주요 범주로 나뉜다.

3D 포인트 클라우드 분류

이 전역 과제는 하나의 포인트 클라우드 전체에 단일 의미 레이블을 예측하는 데 초점을 둔다. 이는 특징 추출 능력을 평가하기 위한 기본 아키텍처 기준으로 활용된다. 자세한 설명은 2.3.1절에 제시되어 있다.

3D 객체 탐지

전역적인 형상 인식을 넘어, 객체 탐지는 포인트 클라우드 또는 포인트 클라우드 시퀀스 안에서 특정 객체를 찾아 분류하는 것을 목표로 한다. 일반적으로 3D 경계 상자를 그려 객체의 이동량과 부피 치수 같은 공간적 정보를 예측한다. VirConv와 같은 최신 접근법은 LiDAR 센서 입력과 카메라 데이터를 다중 모달 방식으로 융합한다.

분류 네트워크는 순서가 없고 비정형적인 포인트 집합을 처리하기 위해 여러 핵심 방법론을 발전시켜 왔으며, 각 방법은 계산 효율성과 기하학적 충실도 사이에서 서로 다른 절충점을 제시한다. 다음 절에서는 현재 사용되는 방법을 간략히 살펴본다. 더 자세한 내용은 Zhang et al.의 논문을 참고하기 바란다.

다중 시점 아키텍처

다중 시점 아키텍처는 원시 좌표를 하나 이상의 사전에 정의된 2D 평면에 투영함으로써 3D 포인트 클라우드 데이터의 비정형성을 우회하고, 문제를 이미지 기반 영역으로 변환한다. 투영이 끝나면 매우 효율적인 2D CNN으로 이미지를 분류할 수 있다. 이 전략은 포인트 클라우드 밀도 변화로 인해 발생하는 처리상의 불안정성을 줄인다.

그러나 다중 시점 방식은 많은 기하학적 전처리를 필요로 하며, 투영 과정에서 깊이 정보를 되돌릴 수 없게 잃는다. 원근에 따른 가림 현상을 줄이려면 네트워크가 여러 카메라 시점에 의존해야 하므로 계산 비용은 더욱 증가한다.

분류를 위한 차량 LiDAR 포인트 클라우드 일부

3D 딥러닝의 설명 가능성 방법

신경망 아키텍처가 점점 복잡해지면서, 특정 샘플이 왜 다른 방식이 아니라 바로 이 방식으로 분류되었는지 알기 어려운 ‘블랙박스’가 되었다. 자율주행과 의료 진단처럼 안전이 중요한 분야에서는 모델에 대한 신뢰를 구축하는 일이 핵심이다. 검증 정확도가 높다는 이유만으로 모델을 맹목적으로 신뢰할 수는 없다. 예를 들어 네트워크가 기차를 주변 선로 때문에 식별했는지, 아니면 열차 자체의 형상 때문에 식별했는지처럼, 아키텍처가 이러한 기하학적 해석에 도달한 과정을 이해해야 한다.

이러한 블랙박스를 열기 위해 두 가지 주요 국소 설명 가능성 방법이 등장했다.

그래디언트 기반 방법

이러한 프레임워크는 역전파 과정에서 특징 그래디언트를 계산해 기저의 PointNet 모델을 설명한다. 모델 입력의 중심점을 향해 포인트를 체계적으로 이동시키면서 각 포인트의 구조적 중요도를 분리해 내는 방식이다. 한 번의 역전파만 필요하므로 계산 효율이 매우 높다. 그러나 완전히 미분 가능한 아키텍처에만 적용할 수 있는, 엄격히 모델 의존적인 방법이다.

국소 대리 모델 기반 방법

LIME-3D와 같은 접근법은 모델 비종속적이므로 기저 네트워크를 ‘블랙박스’로 취급한다. 모델 입력을 국소 클러스터로 묶은 뒤 클러스터를 제거해 변형된 입력을 만들고, 그에 따른 네트워크 출력 분류의 변화를 관찰한다. 따라서 사람이 이해하기에는 매우 해석하기 쉽지만, 계산 비용이 막대하다. 또한 한 클러스터 안에서 양의 포인트 활성화와 음의 포인트 활성화가 서로 상쇄되는 ‘기여 중화’ 문제가 발생한다.

궁극적으로 이러한 국소 설명 가능성 방법은 개별 포인트 수준에서는 뛰어나지만, 전체 의미 클래스에 대한 전역적 설명을 제공할 수 없다는 근본적인 한계가 있다. 클래스를 전역적으로 설명하기 위한 다른 방법은 이미 존재한다.

포인트 클라우드 다운샘플링 방법

실제 응용 환경의 3D 포인트 클라우드는 특히 LiDAR 스캐너로 취득할 경우 수백만 개의 포인트로 구성될 수 있다. 이는 엣지 하드웨어의 처리 능력을 넘어서는 거대한 데이터 파이프라인을 만든다. 다운샘플링은 초기 포인트 집합에서 포인트를 체계적으로 제거해 메모리 사용량과 전체 실행 시간을 줄이면서도 높은 정확도를 유지하도록 설계된 핵심 기하학적 전처리 단계다. 관련 문헌에서는 다운샘플링 방법을 주로 세 가지 알고리즘 접근법으로 구분한다.

센서 현실성 격차 해소

앞서 언급한 기존 구현은 엣지 하드웨어에서 PointNet을 배포할 수 있음을 보여 주었지만, 평가는 ModelNet 데이터셋에서 균일하게 샘플링한 데이터에만 의존했다. 이러한 데이터에는 환경적 잡음이 전혀 없다. 이 격차를 해소하기 위해 본 연구의 워크플로는 Sonar와 LiDAR 같은 깊이 센서 시뮬레이션을 위해 설계된 Blender용 오픈 소스 애드온 BLAINDER를 활용한다. 단순한 기본 도형 좌표가 아니라 물리 기반 레이캐스팅 방식을 사용해 네트워크 학습과 검증을 위한 견고한 데이터셋을 구축했다. 이 데이터셋에는 실제 센서의 기하학적 잡음과 불완전성이 반영된다.

PointNet의 분류 경계를 철저히 평가하기 위해, 결과를 재현하고 더 발전시킬 수 있도록 공개된 두 가지 데이터셋을 구축했다.

일반 LiDAR 데이터셋

대조군 역할을 하는 이 데이터셋은 BLAINDER가 제공하는 일반 프리셋을 사용하며, 단일 시점에 고정되어 있다. 회전 데이터셋과 마찬가지로 여기에도 ‘깨끗한’ 하위 집합과 ‘잡음이 있는’ 하위 집합이 존재한다.

데이터 생성 로직은 적응형 스크립트를 기반으로 하므로, 용도에 맞춘 솔루션을 구성하는 것도 충분히 가능하다. 대상 응용 분야에 따라 파이프라인을 조정해 비와 같은 날씨 의존적 잡음을 추가하거나 평균과 표준편차를 높이고, 센서 프로파일을 완전히 바꿀 수도 있다.

최원점 샘플링과 무작위 샘플링 비교

특징 기반 데이터 축소: Critical Point Layer

PointNet 아키텍처에서 특징을 추출하기 위해 먼저 공유 MLP에서 포인트를 독립적으로 처리해 추가 특징을 추출한다. 그런 다음 이러한 특징을 전역 최대 풀링 연산으로 처리한다. 저자들의 핵심 통찰은 모델의 최종 분류 능력이 입력 데이터의 작은 부분집합, 즉 핵심점(Critical Points)에만 좌우된다는 것이었다. 핵심점은 최대 풀링 연산에서 가장 높은 활성화 값을 갖는다. 또한 형상의 전역적 기하 경계와 랜드마크를 나타낸다.

저자들은 무작위 샘플링으로 입력 포인트의 지정되지 않은 비율까지 제거해도 분류 성능이 지정되지 않은 정도만 하락하며, 여전히 충분한 분류 성능을 달성한다고 관찰했다. 이는 핵심점을 제거하지 않는 한 PointNet이 누락된 데이터에 매우 강건하다는 사실을 입증한다. 하나의 포인트가 최대 풀링 연산의 여러 열을 지배할 수 있으므로, 실제로 분류를 이끄는 고유 핵심점의 수는 상당히 적다.

CPL 학습

CPL 프런트엔드는 포인트별 공유 MLP로 구성되며, 채널을 3에서 64로 확장한 뒤 128, 1024로 확장한다. 이후 열 단위 최대 풀링 블록을 사용해 가장 높은 점수를 가진 인덱스를 추출한다. 전체 네트워크 연결은 Adam 옵티마이저와 0.001의 학습률을 사용해 200 에포크 동안 학습했다. 역전파 시 그래디언트가 선택된 인덱스를 통해서만 흐르므로, 이 프런트엔드는 연속 함수가 아니라 이산 병목으로 작동한다.

포인트 클라우드의 한 포인트가 눈에 띄는 랜드마크라면 여러 서로 다른 특징을 동시에 가질 수 있다는 점에 유의해야 한다. 예를 들어 날개 끝의 모서리나 기수 끝은 여러 특징 채널에서 동시에 최대 활성화 값을 기록할 수 있다. 따라서 argmax 연산으로 선택되는 고유 행의 수는 채널 깊이보다 훨씬 적다. 1024개 포인트로 구성된 포인트 클라우드를 고작 40개 포인트까지 압축할 수도 있다.

원하는 출력 포인트 수를 유지하기 위해 개념 증명 구현에서는 결과 포인트를 복제한다. 반대로 더 적은 포인트가 필요하다면 포인트 수를 잘라낸다. 향후 구현에서는 단순한 행 반복 대신 가중 샘플링을 사용할 수 있다. 즉 네트워크에서 포인트가 얼마나 ‘가치 있는지’에 가중치를 부여하고, 그 비율에 따라 좌표를 반복하는 방식이다. 이 아이디어는 본 방법의 기반이 된 논문의 저자들이 이미 제안한 바 있다. 원하는 목표 밀도에 도달할 때까지 2차 풀링을 반복 수행하는 것도 가능하다.

동일한 인스턴스에 대해 5,000회 테스트를 수행하면서 CPL 프런트엔드만 프로파일링한 결과, 128개 포인트를 목표로 할 때 평균 실행 지연 시간은 밀리초 단위의 지정되지 않은 지연 시간이었다. 동일한 부분집합 크기에 대해 FPS가 요구하는 밀리초 단위의 지정되지 않은 지연 시간과 비교하면, 본 구현은 거의 세 배 빠르다.

기하학적·지각적 비교

특징 기반 다운샘플러가 인간의 지각과 일치하는지 분석하기 위해 ModelNet40 데이터셋의 비행기 및 사람 클래스에서 여러 인스턴스를 비교했다. 먼저 포인트 수가 1024개가 되도록 무작위 샘플링한 다음, 어떤 포인트가 분류에 긍정적으로 기여하는지 확인하기 위해 LIME-3D를 적용했다. 마지막으로 다운샘플된 포인트 집합에 CPL을 적용했다. CPL은 극값과 날카로운 경계를 분리하도록 학습되었음을 확인할 수 있다. 비행기 인스턴스의 경우, 이 레이어는 양쪽 날개 모서리에 고르게 분포한 포인트를 일관되게 선택한다.

포인트 클라우드를 정량적으로 평가하기 위해 Chamfer Distance(CD)를 기반으로 유사도를 측정했다. CPL 포인트를 LIME-3D의 결과 및 CPL과 동일한 포인트 수를 갖는 무작위 포인트 클라우드와 비교했다. RS의 결과는 달라질 수 있으므로 RS에 대한 CD를 1,000회 계산했다.

평가한 모든 클래스에서 RS는 LIME-3D에 대해 일관되게 더 낮은 CD를 기록했으며, CPL보다 거의 두 배 낮은 지표를 유지했다. 이는 CPL이 국소 설명 모델에 더 큰 기하학적 불일치를 유발한다는 뜻이다. 또한 분류 유용성과 인간 해석 가능성 사이의 절충 관계를 보여 주는 동시에 두 프레임워크의 한계를 드러낸다.

LIME-3D와 같은 국소 대리 모델은 모든 포인트를 하나씩 평가할 수 없으며, 클러스터링에 의존하기 때문에 인간의 지각에 최적화된 설명을 생성한다.

CPL은 분류에 엄격히 최적화된 정보 깔때기처럼 작동한다. 분류 신뢰도를 극대화하는 데 필요한 최소한의 포인트만 분리한다. 신경망이 분류에 중요하다고 판단하는 요소가 인간의 지각과 반드시 일치하는 것은 아니다.

CD에서 큰 차이가 나타났음에도 CPL은 실용적 유용성을 유지한다. CPL을 64개 포인트로 다운샘플링한 PointNet-CPL 융합 파이프라인을 테스트한 결과, 네트워크는 5,000개 테스트 인스턴스에서의 지정되지 않은 정확도를 달성했다. 이는 네트워크를 64개의 무작위 포인트로 학습한 기준 성능(지정되지 않은 기준 정확도)과 대등하다. 따라서 PointNet의 분류 성능을 거의 저하시키지 않거나 오히려 유지하면서, 유능한 엣지 가속기 역할을 한다.

비행기 형상을 강조하는 CPL 선택 포인트

결론

이를 통해 공간 딥러닝 아키텍처를 엣지 프로세서에 배포할 수 있음을 확인했다. 본 연구의 기여는 현실성 격차 해소와 알고리즘 최적화라는 두 가지 측면으로 나뉜다.

첫째, ModelNet40 데이터셋을 기반으로 현실적인 합성 LiDAR 데이터를 생성하는 견고한 데이터 생성 파이프라인을 BLAINDER를 활용해 구축했다. 기존 LiDAR 센서를 모사하고 포인트별 가우시안 잡음을 추가함으로써, 이 파이프라인은 시점에 따른 밀도 변화와 같은 실제 센서의 특성을 시뮬레이션한다. 교차 평가 결과, 깨끗한 CAD 모델로 학습한 네트워크는 센서 이상이 포함된 입력에서 성능이 무너졌지만, 잡음이 있는 데이터로 학습한 모델은 특징을 추상화해 깨끗한 데이터에서도 정확한 결과를 얻었다. 또한 다양한 밀도에서의 평가를 통해 PointNet이 데이터 희소성에 매우 강건하며, 공격적인 데이터 축소를 적용해도 안정적인 분류 결과를 유지한다는 사실을 확인했다.

둘째, 사전 학습된 Critical Point Layer를 전처리 필터로 구현했다. 실험 결과, 이 프런트엔드는 원시 1024포인트 클라우드를 40~60개의 희소한 고유 좌표 부분집합으로 결정론적으로 압축할 수 있었다. Raspberry Pi의 CPU에서 테스트했을 때 이 방법은 FPS 알고리즘의 실행 시간을 앞질렀으며, 저전력 엣지 장치에서도 실시간 실행이 가능함을 입증했다.

향후 과제

최적화와 아키텍처 개선을 위해 몇 가지 유망한 연구 방향이 남아 있다.

실외 LiDAR 스캐너가 생성하는 수백만 개의 포인트를 동시에 처리하도록 이 파이프라인을 확장하려면, 향후 연구에서 CPL 공유 MLP를 FPGA(Field-Programmable Gate Array)나 저전력 특화 NPU로 오프로딩하는 방안을 검토할 수 있다. FPGA는 대규모 병렬 실행에 적합하므로 CPU 리소스를 추가로 확보할 수 있다.

압축 후 소수의 포인트만 남는 극단적인 특징 붕괴 문제를 해결하려면 Gumbel-Top-k 근사와 같은 연속적이고 완전 미분 가능한 연산자를 시험해 볼 필요가 있다. 이 최적화 방식은 하드 필터링과 행 복제를 통해 포인트를 채우는 대신 모든 포인트의 중요도 값을 계산하고, 그 점수에 따라 샘플링할 수 있다.

자주 묻는 질문

합성 LiDAR 데이터 생성은 어떤 문제를 해결하나요? 깨끗한 ModelNet 데이터와 실제 환경에서 취득되는 잡음 많고 불완전한 센서 데이터 사이의 격차를 해결합니다.

Critical Point Layer란 무엇인가요? Critical Point Layer는 PointNet의 최대 풀링 연산에서 가장 높은 활성화 값을 갖는 포인트를 선택하는 특징 기반 전처리 필터입니다.

CPL은 1024포인트 클라우드에서 몇 개의 포인트를 유지할 수 있나요? CPL은 1024포인트 클라우드를 약 40~60개의 고유 좌표로 압축할 수 있습니다.

CPL은 엣지 장치에 왜 유용한가요? 저전력 엣지 하드웨어에서 결정론적인 포인트 클라우드 압축을 제공하고 FPS의 실행 시간을 우회할 수 있기 때문입니다.