KR20210034429A - 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치 및 방법 - Google Patents

이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치 및 방법 Download PDF

Info

Publication number
KR20210034429A
KR20210034429A KR1020190116399A KR20190116399A KR20210034429A KR 20210034429 A KR20210034429 A KR 20210034429A KR 1020190116399 A KR1020190116399 A KR 1020190116399A KR 20190116399 A KR20190116399 A KR 20190116399A KR 20210034429 A KR20210034429 A KR 20210034429A
Authority
KR
South Korea
Prior art keywords
point cloud
points
point
feature data
connectivity
Prior art date
Application number
KR1020190116399A
Other languages
English (en)
Other versions
KR102352826B1 (ko
Inventor
양정삼
이진원
Original Assignee
아주대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 아주대학교산학협력단 filed Critical 아주대학교산학협력단
Priority to KR1020190116399A priority Critical patent/KR102352826B1/ko
Publication of KR20210034429A publication Critical patent/KR20210034429A/ko
Application granted granted Critical
Publication of KR102352826B1 publication Critical patent/KR102352826B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Graphics (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Geometry (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Abstract

이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치 및 방법이 개시되며, 본원의 일 실시예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법은, 이웃 연결성에 기초하여 포인트 클라우드 입력의 복수의 3차원 점들을 군집하는 단계, 상기 군집된 복수의 3차원 점들에 대하여 다층 퍼셉트론을 수행하는 단계 및 밀집 연결성 네트워크에 기초하여 상기 다층 퍼셉트론 수행 결과로부터 특징 데이터를 도출하는 단계를 포함할 수 있다.

Description

이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치 및 방법{APPARATUS AND METHOD FOR CLASSIFICATING POINT CLOUD USING NEIGHBOR CONNECTIVITY CONVOLUTIONAL NEURAL NETWORK}
본원은 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치 및 방법에 관한 것이다.
컴퓨터 비전의 이미지 분석은 이미지넷 이미지 인식 대회 (ImageNet Large Scale Visual Recognition Competition, ILSVRC)등의 분석 대회를 통한 경쟁을 거치며 발전해왔다. 2012년 이전의 ILSVRC에서는 74.2%의 정확도를 선보인 XRCE가 최고 성능이었다. 분류 성능을 높이기 위해 SIFT (Scale Invariant Feature Transform)나 HOG (Histogram of Gradient)와 같은 사용자정의 특징을 활용한 다양한 방법이 동원되었지만, 75%의 벽을 넘지 못했다. 2012 ILSVRC에서는 CNN 기반 딥러닝 알고리즘 AlexNet이 83.6%의 정확도를 선보이며 우승을 했고, 이미지 분류 분야에 많은 변화를 이끌어냈다. AlexNet은 Rectified linear unit (ReLU), 그래픽카드 사용, 드롭 아웃 (Drop-out), 데이터 확대 (Data augmentation)와 같은 다양한 기법을 활용했고 이를 기반으로 많은 후속연구가 진행되었다. 2013 ILSVRC에서는 ZF Net 이 CNN 컨볼루션 필터와 특징 데이터가 어떻게 변화하는지 가시화했고, AlexNet의 특징 데이터가 한쪽으로 몰리거나 에일리어싱 되는 것을 확인하여 하이퍼 파라미터 (Hyper-parameter)의 조정을 통해 개선했다.
AlexNet 이후 레이어 층을 더 깊게 쌓아 성능을 높이려는 시도가 계속되었고, 2014 ILSVRC에서는 인셉션 (Inception) 모듈 개념을 제안한 GoogleNet 과 3×3 컨볼루션 필터 (Convolution Filter)와 2×2 최대 풀링 (Max-pooling)만 사용한 VGGNet 이 좋은 성능을 보였다. GoogleNet은 인셉션 모듈과 1×1 컨볼루션 필터를 통해 전체 파라미터의 수를 1/12로 감소시켰으며, 동일 레이어에 서로 다른 크기의 필터를 적용하여 93.3%의 정확도를 나타냈다. VGGNet은 균일한 크기의 3×3 컨볼루션 필터를 중첩하면 5×5 컨볼루션 필터 혹은 7×7 컨볼루션 필터 효과를 나타낼 수 있음을 증명했다. GoogleNet의 복잡한 인셉션 모듈 구조 때문에 간결한 구조로 이루어진 VGGNet를 기반으로 한 후속연구가 더 많이 진행되었다.
그러나, 불규칙하고 무질서한 특징을 지니는 포인트 클라우드는 CNN에 적용하기에 어려움이 컸다. 이러한 문제를 해결하기 위하여 포인트 클라우드에 CNN을 적용하기에 앞서 포인트 클라우드를 적절한 포맷으로 가공하는 여러 방식들이 도입되었다. 그 중 복셀 방식은 포인트 클라우드를 일정 크기의 3차원 그리드 (Grid) 내의 복셀로 가공하여 기존의 2차원 컨볼루션 필터를 선형적으로 한 차원씩 증가시키는 방법을 CNN에 적용했다. 그러나 이러한 방식은 포인트 클라우드에서 점의 개수가 적은 경우에는 해상도 문제가 발생했으며, 변환에 오랜 시간이 걸리는 한계가 있었다.
또한, 다중 시점 방식은 시점 방식은 포인트 클라우드를 3차원 객체로 가시화한 뒤, 여러 각도에서 이미지를 캡처하고, 2차원 컨볼루션 필터를 활용하여 CNN에 적용했다. 그러나 다중 시점 방식은 객체 분류 혹은 검색 작업 (Retrieval Task)에는 비교적 잘 작동하지만, 3차원 장면 분할(Scene Segmentation) 등의 기법에 적용하는 것은 쉽지 않았다. 특히, 복셀 방식이나 다중 시점 방식의 경우, 포인트 클라우드의 정보의 손실과 해상도 문제가 발생하는 경우가 빈번하였다.
이에, 최근 들어 가공되지 않은 원본 포인트 클라우드를 활용하는 방식에 대한 연구가 진행된바 있으나, 포인트 클라우드를 이루는 점들을 개별적인 대상으로만 판단하는 경우가 많았고, 주변 점과의 관계를 고려한 학습을 수행하는 모델은 명확히 설계되지 못했다.
본원의 배경이 되는 기술은 한국등록특허공보 제10-1819730호에 개시되어 있다.
본원은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 원본 포인트 클라우드로부터 이웃 연결성을 활용한 점의 군집을 수행하여 국부 기하 특징을 잘 반영하고, 밀집 연결성을 활용하여 깊은 네트워크 구조를 구축한 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치 및 방법을 제공하려는 것을 목적으로 한다.
본원은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 포인트 클라우드를 구성하는 3차원 점들의 기하학적 위상수학 특징을 고려하여 군집을 수행하고, 후반 레이어로 갈수록 대표점의 수가 감소하더라도 초반 레이어의 주변점에 대한 특징을 유지할 수 있도록 밀집 연결성 네트워크를 구현하여 포인트 클라우드에 대한 분류 성능을 향상시키는 것을 목적으로 한다.
다만, 본원의 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본원의 일 실시예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법은, 이웃 연결성에 기초하여 포인트 클라우드 입력의 복수의 3차원 점들을 군집하는 단계, 상기 군집된 복수의 3차원 점들에 대하여 다층 퍼셉트론을 수행하는 단계 및 밀집 연결성 네트워크에 기초하여 상기 다층 퍼셉트론 수행 결과로부터 특징 데이터를 도출하는 단계를 포함할 수 있다.
또한, 상기 군집하는 단계는, K-최근접 이웃 알고리즘 또는 들로네 삼각 분할 알고리즘에 기초하여 상기 이웃 연결성을 산출하는 것일 수 있다.
또한, 상기 특징 데이터를 도출하는 단계는, 상기 다층 퍼셉트론 수행 결과를 복수 개의 병목 레이어를 포함하는 밀집 블록 레이어에 통과시켜 특징 데이터를 획득하는 단계 및 상기 획득된 특징 데이터를 변이 레이어에 통과시켜 가분 컨볼루션을 수행하여 획득된 상기 특징 데이터의 크기를 줄이는 단계를 포함할 수 있다.
또한, 본원의 일 실시예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법은, (a) 복수의 3차원 점들을 포함하는 포인트 클라우드 입력을 수신하여 상기 3차원 점들 중 대표점을 결정하는 단계, (b) 이웃 연결성을 활용하여 상기 대표점의 주변점들 중 일부를 군집점으로 선택하여 상기 대표점에 대하여 군집하는 단계, (c) 상기 군집점을 상기 대표점을 원점으로 하는 좌표계로 원점 이동하는 단계, (d) 상기 원점 이동된 군집점에 대하여 기존 특징 데이터를 반영한 다층 퍼셉트론을 수행하는 단계, (e) 상기 다층 퍼셉트론 수행 결과를 밀집 연결성 네트워크에 통과시켜 특징 데이터를 획득하는 단계, (f) 상기 (a) 내지 (e) 단계를 기 설정된 반복 횟수만큼 반복하는 단계 및 (g) 반복을 통해 획득된 상기 특징 데이터를 종합하여 완전 연결 레이어를 구축하고, 상기 완전 연결 레이어에 기초하여 상기 포인트 클라우드 입력에 대한 객체 유형을 분류하는 단계를 포함할 수 있다.
또한, 상기 (b) 단계는, (b1) K-최근접 이웃 알고리즘 또는 들로네 삼각 분할 알고리즘을 포함하는 기 설정된 국부 연결성 계산 알고리즘에 기초하여 상기 대표점의 주변점들의 기하 상관관계를 도출하는 단계 및 (b2) 상기 기하 상관관계에 기초하여 상기 주변점들 중 일부를 군집점으로 선택하는 단계를 포함할 수 있다.
또한, 상기 포인트 클라우드 입력의 3차원 점들의 수는 상기 (f) 단계에서 반복이 진행될수록 이전 반복 회차에 대비하여 감소되는 것일 수 있다.
또한, 상기 (b1) 단계는, 상기 포인트 클라우드 입력의 3차원 점들의 수에 기초하여 각각의 반복 회차에 적용되는 상기 기 설정된 국부 연결성 계산 알고리즘을 K-최근접 이웃 알고리즘 또는 들로네 삼각 분할 알고리즘 중 어느 하나로 결정할 수 있다.
또한, 상기 기 설정된 반복 횟수는 4회이고, 상기 (b1) 단계는, 1회차 반복 및 2회차 반복 수행 시, 상기 기 설정된 국부 연결성 계산 알고리즘으로 상기 K-최근접 이웃 알고리즘을 적용하고, 3회차 반복 및 4회차 반복 수행 시, 상기 기 설정된 국부 연결성 계산 알고리즘으로 상기 들로네 삼각 분할 알고리즘을 적용할 수 있다.
또한, 상기 (a) 단계는, FPS(Farthest Point Sampling) 알고리즘에 기초하여 상기 대표점을 결정할 수 있다.
또한, 상기 (d) 단계는, (d1) 상기 원점 이동된 군집점에 χ 변환을 적용하는 제1 다층 퍼셉트론을 수행하는 단계, (d2) 상기 원점 이동된 군집점 각각에 대한 점별 다층 퍼셉트론을 수행하고, 기존 특징 데이터를 이어붙이는 제2 다층 퍼셉트론을 수행하는 단계 및 (d3) 상기 제1 다층 퍼셉트론 결과 및 상기 제2 다층 퍼셉트론 결과에 대한 행렬 곱을 연산하여 상기 다층 퍼셉트론 수행 결과를 도출하는 단계를 포함할 수 있다.
또한, 상기 (e) 단계는, (e1) 상기 다층 퍼셉트론 수행 결과를 복수 개의 병목 레이어를 포함하는 밀집 블록 레이어에 통과시켜 특징 데이터를 획득하는 단계 및 (e2) 상기 획득된 특징 데이터를 변이 레이어에 통과시켜 가분 컨볼루션을 수행하여 획득된 상기 특징 데이터의 크기를 줄이는 단계를 포함할 수 있다.
또한, 상기 복수 개의 병목 레이어 각각은, 배치 정규화, ELU 함수 적용, 제1 컨볼루션, 배치 정규화, ELU 함수 적용 및 제2 컨볼루션을 순차적으로 수행할 수 있다.
또한, 상기 제1 컨볼루션은 1x1 컨볼루션이고, 상기 제2 컨볼루션은 1xK 컨볼루션일 수 있다.
한편, 본원의 일 실시예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치는, 복수의 3차원 점들을 포함하는 포인트 클라우드 입력을 수신하여 상기 3차원 점들 중 대표점을 결정하는 대표점 추출부, 이웃 연결성을 활용하여 상기 대표점의 주변점들 중 일부를 군집점으로 선택하여 상기 대표점에 대하여 군집하는 군집부, 상기 군집점을 상기 대표점을 원점으로 하는 좌표계로 원점 이동하고, 상기 원점 이동된 군집점에 대하여 기존 특징 데이터를 반영한 다층 퍼셉트론을 수행하는 퍼셉트론 수행부, 상기 다층 퍼셉트론 수행 결과를 밀집 연결성 네트워크에 통과시켜 특징 데이터를 획득하는 네트워크부 및 획득된 상기 특징 데이터를 종합하여 완전 연결 레이어를 구축하고, 상기 완전 연결 레이어에 기초하여 상기 포인트 클라우드 입력에 대한 객체 유형을 분류하는 객체 분류부를 포함할 수 있다.
상술한 과제 해결 수단은 단지 예시적인 것으로서, 본원을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 추가적인 실시예가 존재할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 원본 포인트 클라우드로부터 이웃 연결성을 활용한 점의 군집을 수행하여 국부 기하 특징을 잘 반영하고, 밀집 연결성을 활용하여 깊은 네트워크 구조를 구축한 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치 및 방법을 제공할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 밀집 연결성 네트워크 구조를 활용함으로써 기울기 소실 문제에 강건할 뿐만 아니라, 특징 데이터가 각 레이어에 원활하게 제공될 수 있어 포인트 클라우드에 대한 객체 분류 성능이 향상될 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 대량의 포인트 클라우드로부터 의미 있는 객체를 정확하고 빠르게 추출 또는 분류함으로써 자율 주행, 로봇 비전, 스마트 팩토리, 3D 센서 등의 다양한 산업 분야에 적용될 수 있다.
다만, 본원에서 얻을 수 있는 효과는 상기된 바와 같은 효과들로 한정되지 않으며, 또 다른 효과들이 존재할 수 있다.
도 1은 본원의 일 실시예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치를 포함하는 포인트 클라우드 분류 시스템의 개략적인 구성도이다.
도 2는 본원의 일 실시예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치가 반복 회차 별로 적용하는 알고리즘 유형 및 반복에 따라 포인트 클라우드 입력의 수가 변화하는 것을 설명하기 위한 도면이다.
도 3은 본원의 일 실시예에 따른 대표점 선택을 위한 FPS(Farthest Point Sampling) 알고리즘을 설명하기 위한 도면이다.
도 4a는 본원의 일 실시예에 따른 들로네 삼각 분할 알고리즘을 이용하여 도출되는 이웃 연결성을 활용하여 군집점을 대표점에 대하여 군집하는 과정을 설명하기 위한 도면이다.
도 4b는 본원의 일 실시예에 따른 K-최근접 이웃 알고리즘을 설명하기 위한 도면이다.
도 4c는 본원의 일 실시예에 따른 들로네 삼각 분할 알고리즘을 설명하기 위한 도면이다.
도 5a 내지 도 5e는 대표점의 주변점들의 기하 상관관계를 행렬로 나타내는 과정을 나타낸 도면이다.
도 6은 본원의 일 실시예에 따른 밀집 연결성 네트워크를 설명하기 위한 개념도이다.
도 7은 본원의 일 실시예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치의 개략적인 구성도이다.
도 8은 본원의 일 실시예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법의 동작 흐름도이다.
도 9는 본원의 일 실시예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법의 세부 동작 흐름도이다.
도 10은 본원의 일 실시예에 따른 원점 이동된 군집점에 대하여 기존 특징 데이터를 반영한 다층 퍼셉트론을 수행하는 방법의 세부 동작 흐름도이다.
도 11은 본원의 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법과 연계된 일 실험예로서 본원의 포인트 클라우드 분류 방법과 종래의 객체 분류 기법을 적용 파라미터의 수 및 정확도 측면에서 비교하여 나타낸 도표이다.
도 12는 본원의 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법과 연계된 일 실험예로서 본원의 포인트 클라우드 분류 방법과 종래의 객체 분류 기법을, 포인트 클라우드 입력의 점의 개수에 따른 정확도 변화 측면에서 비교하여 나타낸 그래프이다.
아래에서는 첨부한 도면을 참조하여 본원이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본원의 실시예를 상세히 설명한다. 그러나 본원은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본원을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본원 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결" 또는 "간접적으로 연결"되어 있는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부재가 다른 부재 "상에", "상부에", "상단에", "하에", "하부에", "하단에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.
본원은 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치 및 방법에 관한 것이다. 특히, 본원은 포인트 클라우드를 합성곱 신경망(CNN)에 적용하기에 앞서 가공(전처리)하는 과정(예를 들어, 복셀 변환 방식, 다중 시점 변환 방식 등)을 거치지 않고 원본 포인트 클라우드 자체를 활용하여 객체 분류 결과를 제공하는 포인트 클라우드 분류 장치 및 방법에 관한 것이다.
도 1은 본원의 일 실시예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치를 포함하는 포인트 클라우드 분류 시스템의 개략적인 구성도이다.
도 1을 참조하면, 포인트 클라우드 분류 시스템(10)은 본원의 일 실시예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치(100)(이하, '포인트 클라우드 분류 장치(100)'라 한다.)를 포함할 수 있다. 또한, 포인트 클라우드 분류 장치(100)는 복수의 3차원 점들을 포함하는 포인트 클라우드 입력(1)을 수신하여, 포인트 클라우드 입력(1)에 대응하는 객체 유형(2)을 분류하여 분류 결과를 출력할 수 있다.
여기서, 포인트 클라우드 입력(1)은 3차원 좌표계(예를 들면, xyz 좌표계)로 표현되는 복수의 3차원 점들을 포함하는 점의 집합을 의미할 수 있다. 예시적으로, 포인트 클라우드 입력(1)은 3D 스캐너, Depth 카메라, LIDAR 센서 등으로부터 획득된 것이거나 기 확보된 3D CAD 모델을 변환하여 추출된 것일 수 있다.
참고로, 포인트 클라우드 입력(1)이라는 용어는, 포인트 클라우드 분류 장치(100)에 인가되는 원본 포인트 클라우드 입력뿐만 아니라 포인트 클라우드 분류 장치(100)의 후술할 각 프로세스가 반복되는 회차마다 이전 회차에서 3차원 점의 수가 감소된 상태로 다음 회차 반복의 입력으로 인가되는 포인트 클라우드 입력을 포함하는 용어로 이해될 수 있다.
본원의 일 실시예에 따르면, 상술한 3D 스캐너, Depth 카메라, LIDAR 센서 등과 포인트 클라우드 분류 장치(100) 상호간은 네트워크(미도시)를 통해 통신할 수 있다. 네트워크(미도시)는 단말들 및 서버들과 같은 각각의 노드 상호간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크(30)의 일 예에는, 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, 5G 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), wifi 네트워크, 블루투스(Bluetooth) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되지는 않는다.
이하에서는, 포인트 클라우드 분류 장치(100)의 주요 동작 흐름을 간단히 서술하도록 한다.
먼저, 포인트 클라우드 분류 장치(100)는 이웃 연결성에 기초하여 포인트 클라우드 입력(1)의 복수의 3차원 점들을 군집할 수 있다.
본원의 일 실시예에 따르면, 포인트 클라우드 분류 장치(100)는 K-최근접 이웃 알고리즘 또는 들로네 삼각 분할 알고리즘에 기초하여 이웃 연결성을 산출하는 것일 수 있다.
또한, 포인트 클라우드 분류 장치(100)는 군집된 복수의 3차원 점들에 대하여 다층 퍼셉트론을 수행할 수 있다.
또한, 포인트 클라우드 분류 장치(100)는 밀집 연결성 네트워크에 기초하여 다층 퍼셉트론 수행결 결과로부터 포인트 클라우드 입력(1)과 연계된 특징 데이터를 도출할 수 있다.
구체적으로, 본원의 일 실시예에 따르면, 포인트 클라우드 분류 장치(100)는 다층 퍼셉트론 수행 결과를 복수 개의 병목 레이어를 포함하는 밀집 블록 레이어에 통과시켜 특징 데이터를 획득하는 것일 수 있다. 또한, 포인트 클라우드 분류 장치(100)는 획득된 특징 데이터를 변이 레이어에 통과시켜 가분 컨볼루션을 수행함으로써 획득된 특징 데이터의 크기를 줄일 수 있다.
달리 말해, 본원에서의 밀집 연결성 네트워크는 복수 개의 병목 레이어를 포함하는 밀집 블록 레이어 및 가분 컨볼루션을 수행하는 변이 레이어를 포함하도록 구현될 수 있다. 또한, 본원의 일 실시예에 따르면 본원에서의 밀집 연결성 네트워크는 DenX-Conv로 달리 지칭될 수 있다.
또한, 포인트 클라우드 분류 장치(100)는 도출된 특징 데이터에 기초하여 포인트 클라우드 입력(1) 중 일부의 3차원 점을 제외하고, 나머지 일부의 3차원 점으로 이루어도록 포인트 클라우드 입력(1)을 갱신할 수 있다. 이후, 포인트 클라우드 분류 장치(100)는 갱신된 포인트 클라우드 입력(1)을 기초로 하여 상술한 복수의 3차원 점들을 재차 군집하고, 다층 퍼셉트론을 수행하고, 밀집 연결성 네트워크에 기초하여 특징 데이터를 도출하는 과정을 반복적으로 수행할 수 있다.
또한, 포인트 클라우드 분류 장치(100)는 반복을 통해 누적된 특징 데이터에 기초하여 원본 포인트 클라우드 입력에 대한 객체 유형(2)을 식별(분류)하여, 식별(분류) 결과를 출력할 수 있다.
이하에서는, 도 2를 참조하여, 포인트 클라우드 분류 장치(100)의 동작 흐름 및 반복(iteration) 메커니즘을 상세히 설명하도록 한다.
도 2는 본원의 일 실시예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치가 반복 회차 별로 적용하는 알고리즘 유형 및 반복에 따라 포인트 클라우드 입력의 수가 변화하는 것을 설명하기 위한 도면이다.
도 2를 참조하면, 포인트 클라우드 분류 장치(100)는 복수의 3차원 점들을 포함하는 포인트 클라우드 입력(1)을 수신하여 복수의 3차원 점들 중 대표점을 결정할 수 있다. 여기서, 포인트 클라우드 입력(1)의 복수의 3차원 점들은N으로 표현되고, 결정된 대표점들은 P로 표시될 수 있다. 여기서, 대표점(P)은 복수 개로 결정될 수 있다.
대표점을 결정하는 것과 관련하여, 본원의 일 실시예에 따르면, 포인트 클라우드 분류 장치(100)는 FPS(Farthest Point Sampling) 알고리즘에 기초하여 대표점을 결정할 수 있다. FPS 알고리즘의 구체적인 설명은 도 3을 참조하여 후술하도록 한다.
또한, 포인트 클라우드 분류 장치(100)는 이웃 연결성을 활용하여 대표점의 주변점들 중 일부를 군집점으로 선택하여 대표점에 대하여 군집할 수 있다.
구체적으로, 포인트 클라우드 분류 장치(100)는 K-최근접 이웃 알고리즘(도 2 기준, 'K-NN') 또는 들로네 삼각 분할 알고리즘(도 2 기준, 'DT')을 포함하는 기 설정된 국부 연결성 계산 알고리즘에 기초하여 대표점들의 주변점들의 기하 상관관계를 도출할 수 있다. 또한, 포인트 클라우드 분류 장치(100)는 도출된 기하 상관관계에 기초하여 주변점들 중 일부를 군집점으로 선택할 수 있다. 달리 말해, 대표점의 주변점들 중 대표점에 대하여 기하학적인 상관관계가 높은 주변점들을 선별하여 군집점으로 선택하는 것일 수 있다.
국부 연결성 계산 알고리즘에 대한 구체적인 설명 및 군집점 결정 프로세스는 도 4a 내지 도 4c, 도 5a 내지 도 5e를 참조하여 상세히 후술하도록 한다.
또한, 포인트 클라우드 분류 장치(100)는 어느 하나의 대표점에 대하여 군집된 군집점을 대표점을 원점으로 하는 좌표계로 원점 이동할 수 있다. 여기서, 군집점을 원점 이동한다는 것은, 원본 포인트 클라우드 입력 내의 모든 3차원 점들은 동일한 좌표 체계로 표현될 수 있으나(달리 말해, 동일한 원점을 기준으로 좌표값이 결정될 수 있으나) 대표점 및 대표점에 대응하는 군집점이 결정되고 나면, 군집점들의 좌표값을 해당 군집점들에 대응하는 대표점을 원점으로 하도록 변경하는 것을 의미할 수 있다.
또한, 포인트 클라우드 분류 장치(100)는 원점 이동된 군집점에 대하여 기존 특징 데이터를 반영한 다층 퍼셉트론을 수행할 수 있다.
구체적으로, 포인트 클라우드 분류 장치(100)는 원점 이동된 군집점에 χ 변환을 적용하는 제1 다층 퍼셉트론을 수행할 수 있다. 또한, 포인트 클라우드 분류 장치(100)는 원점 이동된 군집점 각각에 대한 점별 다층 퍼셉트론을 수행하고, 기존 특징 데이터를 이어붙이는 제2 다층 퍼셉트론을 수행할 수 있다. 또한, 포인트 클라우드 분류 장치(100)는, 제1 다층 퍼셉트론 결과 및 제2 다층 퍼셉트론 결과에 대한 행렬 곱을 연산하여 다층 퍼셉트론 수행 결과를 최종적으로 도출할 수 있다. 여기서, 기존 특징 데이터는 이전 단계 반복(iteration)에서의 출력인 특징 데이터를 의미하는 것일 수 있으며, 1회차 반복(1st iteration)의 경우, 이전 단계가 존재하지 않으므로 기존 특징 데이터는 빈 데이터일 수 있다. 예를 들어, 빈 데이터는 영행렬을 의미할 수 있다.
여기서, 제1 다층 퍼셉트론은 대표점을 기준으로 원점 이동된 군집점 전체를 입력으로 하여, 군집점 전체를 다층 퍼셉트론에 통과시키는 χ 변환을 적용하는 것으로 이해될 수 있다. 이에 따라, 포인트 클라우드 분류 장치(100)는 군집점들 사이의 관계를 학습하여 순서를 파악할 수 있다. 즉, 제1 다층 퍼셉트론은 군집점 전체를 대상으로 수행되므로 점의 순서 관계를 포함할 수 있다. 본원의 일 실시예에 따르면 제1 다층 퍼셉트론 결과는 행렬 형태로 도출되는 것일 수 있다. 여기서, χ 변환은 χ-Conv로 달리 지칭될 수 있다.
또한, 제2 다층 퍼셉트론은 대표점을 기준으로 원점 이동된 군집점 각각에 대한 점별 다층 퍼셉트론(Pointwise Multi-layer Perceptron)을 수행하는 것으로 이해될 수 있다. 또한, 제2 다층 퍼셉트론의 경우, 점별 다층 퍼셉트론 수행 결과에 기존 특징 데이터를 이어붙이는 과정을 포함할 수 있다. 또한, 기존 특징 데이터는 '과거 특징 채널'로 달리 지칭될 수 있다. 본원의 일 실시예에 따르면 제2 다층 퍼셉트론 결과는 행렬 형태로 도출되는 것일 수 있다.
이후, 포인트 클라우드 분류 장치(100)는 제1 다층 퍼셉트론 결과 및 제2 다층 퍼셉트론 결과에 대한 행렬 곱을 연산하여 군집점의 순서를 변경함으로써 최종적인 다층 퍼셉트론 수행 결과를 도출할 수 있다.
포인트 클라우드 분류 장치(100)가 상술한 다층 퍼셉트론 수행 결과를 도출하는 과정은 하기 식 1로 요약될 수 있다.
[식 1]
Figure pat00001
여기서, Fχ는 다층 퍼셉트론 수행 결과이고, χ는 제1 다층 퍼셉트론 수행 결과이고, F*는 제2 다층 퍼셉트론 수행결과를 의미할 수 있다.
여기서, MLPδ와 MLP는 서로 다른 다층 퍼셉트론(제1 다층 퍼셉트론 및 제2 다층 퍼셉트론)을 의미하는 것이며, 두 경우 모두 미분 가능하므로 네트워크의 어느 부분에서든지 붙여서 사용할 수 있다.
또한, 포인트 클라우드 분류 장치(100)는 다층 퍼셉트론 수행 결과를 밀집 연결성 네트워크에 통과시켜 특징 데이터를 획득할 수 있다. 도 2를 참조하면, 밀집 연결성 네트워크에 다층 퍼셉트론 수행 결과를 통과시키는 것은 'DenX-Conv'로 표시되어 있다. 밀집 연결성 네트워크에 관한 구체적인 설명은 도 6을 통해 후술하도록 한다.
또한, 포인트 클라우드 분류 장치(100)는 상술한 프로세스(구체적으로, 포인트 클라우드 입력(1)에 대하여 대표점 결정, 군집점 군집, 원점 이동, 다층 퍼셉트론 수행 및 밀집 연결성 네트워크 적용)를 기 설정된 반복 횟수만큼 반복할 수 있다.
도 2를 참조하면, 기 설정된 반복 횟수는 4회(1st iteration ~ 4th iteration)일 수 있다. 또한, 도 2를 참조하면, 포인트 클라우드 분류 장치(100)는 기 설정된 국부 연결성 계산 알고리즘을 반복 회차 각각에 대하여 상이하게 적용할 수 있다. 예를 들어, 포인트 클라우드 분류 장치(100)는 1회차 반복(1st iteration) 및 2회차 반복(2nd iteration) 수행 시, 기 설정된 국부 연결성 계산 알고리즘으로 K-최근접 이웃 알고리즘(K-NN)을 적용할 수 있다. 또한, 포인트 클라우드 분류 장치(100)는 3회차 반복(3rd iteration) 및 4회차 반복(4th iteration) 수행 시, 기 설정된 국부 연결성 계산 알고리즘으로 들로네 삼각 분할 알고리즘(DT)를 적용할 수 있다.
본원의 일 실시예에 따르면, 국부 연결성 계산 알고리즘에 대한 선택은 각 반복(iteration) 단계에서의 포인트 클라우드 입력(1)의 3차원 점들의 수에 기초하여 결정되는 것일 수 있다. 포인트 클라우드 입력(1)은 각 반복 단계를 거듭할수록(달리 말해, 1회차 반복으로부터 4회차 반복으로 진행할수록) 3차원 점들의 수가 대표점 선택 및 군집에 의하여 줄어들 수 있다. 따라서, 포인트 클라우드 분류 장치(100)는 포인트 클라우드 입력(1) 내 3차원 점의 개수가 많고 군집 정도가 작은 1회차 및 2회차 반복의 경우 K-최근접 이웃 알고리즘을 적용하고, 포인트 클라우드 입력(1) 내 3차원 점의 개수가 적고, 군집 정도가 큰 3회차 및 4회차 반복의 경우 들로네 삼각 분할 알고리즘을 적용할 수 있다. 다만, 국부 연결성 알고리즘에 대한 선택은 이에만 한정되는 것은 아니다.
다른 예로, 포인트 클라우드 분류 장치(100)는 원본 포인트 클라우드 입력(1)(달리 말해, 1회차 반복(1ST iteration)에 입력되는 원본 포인트 클라우드 입력)의 3차원 점의 수에 따라 국부 연결성 알고리즘을 선택하는 것일 수 있다. 또 다른 예로, 포인트 클라우드 분류 장치(100)는 K-최근접 이웃 알고리즘을 적용하기 위한 3차원 점들의 수에 대한 제1임계값 및 들로네 삼각 분할 알고리즘을 적용하기 위한 3차원 점들의 수에 대한 제2임계값을 보유(미리 설정)하고, 각 단계에 인가되는 포인트 클라우드 입력(1)의 3차원 점들의 수와 상기 제1임계값 또는 상기 제2임계값을 비교함으로써 각 반복에서의 국부 연결성 알고리즘을 선택하도록 구현될 수 있다.
도 3은 본원의 일 실시예에 따른 대표점 선택을 위한 FPS(Farthest Point Sampling) 알고리즘을 설명하기 위한 도면이다.
도 3을 참조하면, 포인트 클라우드 분류 장치(100)는 불균일한 특성을 갖는 포인트 클라우드 입력(1)의 문제를 해결하기 위하여 시작점을 중심으로 하는 소정의 반지름을 갖는 원이 포인트 클라우드 입력(1) 내의 전체 점을 포함하도록 하는 점 중 시작점으로부터 가장 멀리 이격된 점을 찾는 알고리즘인 FPS(Farthest Point Sampling) 알고리즘을 적용하여 대표점을 선택할 수 있다. 특히, FPS 알고리즘은 균일하지 않은 점들을 샘플링하는데 활용될 수 있다.
구체적으로, 전술한 FPS 알고리즘은 하기 식 1-1 및 하기 식 1-2로 요약될 수 있다.
[식 1-1]
Figure pat00002
[식 1-2]
Figure pat00003
여기서, X는 포인트 클라우드 입력(1) 내의 점들의 집합이고, X'은 선택된 대표점의 집합이다. 포인트 클라우드 분류 장치(100)는 상기 식 1-2를 만족하는 점을 반복적으로 찾아 샘플링(대표점 결정)을 수행하는 것으로 이해될 수 있다. 구체적으로, 포인트 클라우드 분류 장치(100)는 집합 X'에 속하는 두 점 사이의 거리가 가장 큰 값을 r에 대입할 수 있다. 여기서, X의 모든 점들은 X'의 점들을 중심으로 반지름 r으로 그린 원에 모두 포함될 수 있다. 달리 말해, 상기 식 1-2는 집합 X'에 어느 한 대표점을 추가하였을 때, 두 대표점 사이의 거리가 가장 크게 되도록 하는 점을 집합 X에서 찾는 것을 의미할 수 있다.
본원의 일 실시예에 따르면, 포인트 클라우드 분류 장치(100)는 기 설정된 대표점 개수에 도달할 때까지 반복하여 대표점 집합 X'을 갱신하도록(대표점을 추가하도록) 구현될 수 있다. 여기서, 기 설정된 대표점 개수는 포인트 클라우드 입력(1)의 3차원 점들의 수, 포인트 클라우드 입력(1)의 전역 좌표계에서의 부피, 포인트 클라우드 입력(1)의 분포 패턴 중 적어도 하나에 기초하여 결정되는 것일 수 있다.
이하에서는, 포인트 클라우드 분류 장치(100)가 대표점이 결정된 후, 대표점에 대한 주변점들 중 일부를 이웃 연결성을 활용하여 군집하는 과정을 도 4a 내지 도 4c를 참조하여 상세히 서술하도록 한다.
도 4a는 본원의 일 실시예에 따른 들로네 삼각 분할 알고리즘을 이용하여 도출되는 이웃 연결성을 활용하여 군집점을 대표점에 대하여 군집하는 과정을 설명하기 위한 도면이다.
도 4a를 참조하면, 포인트 클라우드 분류 장치(100)는 들로네 삼각 분할 알고리즘(또는, K-최근접 이웃 알고리즘)에 기초하여 대표점(FPS)의 주변점들의 기하 상관관계(Local Connectivity)를 도출할 수 있다. 예를 들어, 하나의 대표점 주변점들 중 기하 상관관계가 높은 순서대로 E 1 , E 2 , E 3 ···등으로 표시될 수 있다. 포인트 클라우드 분류 장치(100)는 기하 상관관계가 높은 소정의 주변점들을 선택하여 대표점에 대한 군집(Grouping on FPS)를 수행할 수 있다.
도 4a를 참조하면, 하나의 포인트 클라우드 입력(1)에 대하여 대표점(FPS)는 복수 개 결정될 수 있으며, 이에 따라 대표점에 대한 군집점 역시 복수 개의 그룹으로 결정될 수 있다. 또한, 실시예에 따라 서로 다른 대표점에 대한 군집점에 특정 점이 양 군집에 공통되도록 결정될 수 있다. 이러한 경우, 특정 점이 서로 다른 대표점에 대하여 군집되면, 이후 서로 다른 대표점에 대하여 하나의 특정점이 각각 원점 이동하므로 이후의 프로세스에서 다르게 취급될 수 있다.
도 4b는 본원의 일 실시예에 따른 K-최근접 이웃 알고리즘을 설명하기 위한 도면이다.
도 4b를 참조하면, K-최근접 이웃 알고리즘은 대표점을 기준으로 최소 유클리드 거리를 갖는 점들을 탐색하기 위한 알고리즘을 의미할 수 있다. 또한, 도 4b를 참조하면, 도 4b의 (a)의 경우, x i 를 대표점으로 하여 K-최근접 이웃 알고리즘을 적용하여 군집점을 선택한 것을 나타낸 것이고, 도 4b의 (b)의 경우, x j 를 대표점으로 하여 K-최근접 이웃 알고리즘을 적용하여 군집점을 선택한 것을 나타낸 것이다. 참고로, 점 A를 기준으로 한 점 B의 유클리드 거리는 하기 식 2를 통해 계산할 수 있다.
[식 2]
Figure pat00004
또한, 도 4b를 참조하면, x i5 x j7 은 포인트 클라우드 입력(1) 내에서 동일한 좌표를 가진 점이지만(달리 말해, 동일한 전역 좌표를 가진 점이지만) 서로 다른 대표점 x i x j 에 대하여 중첩하여 군집될 수 있다. 이후, x i5 x j7 은 서로 다른 대표점을 기준으로 하여 원점 이동하므로(달리 말해, 서로 다른 지역 좌표계로 이동하므로) 이후의 단계에서 서로 다른 좌표값을 가지게 될 수 있다.
또한, N a 개의 대표점이 존재하는 경우, N b 개의 주변점에 대한 유클리드 거리는 하기 식 3에 의한 행렬 연산으로 계산될 수 있다.
[식 3]
Figure pat00005
여기서, 행렬 A 및 행렬 B의 크기는 각각 Na3 및 NbX3이며,
Figure pat00006
은 요소별 곱셈(Element-wise Multiplication)을 의미할 수 있다. 만일 행렬 A 및 행렬 B의 크기가 서로 다르다면, 포인트 클라우드 분류 장치(100)는 둘 중에 큰 행렬의 차수에 맞게 작은 행렬의 크기를 늘려주는 브로드캐스팅(Broadcasting)을 행렬 연산에 앞서 수행할 수 있다. 또한, 식 3의 dN a XN b 크기의 행렬로 이루어진 유클리드 거리이다. d의 행과 열은 각각 대표점 및 특정 도착점을 의미할 수 있다. d 행렬을 획득한 후, 요소별로 내림차순으로 정렬하면 대표점에 대한 주변점들이 유클리드 거리가 가까운 순서로 정렬될 수 있다.
도 4c는 본원의 일 실시예에 따른 들로네 삼각 분할 알고리즘을 설명하기 위한 도면이다.
도 4c를 참조하면, 들로네 삼각 분할 알고리즘은, 평면 혹은 3차원 공간 내의 점들을 삼각형 또는 사면체로 분할하였을 경우, 삼각형 또는 사면체의 모든 내각의 합이 최소가 되도록 하는 분할 방식을 의미할 수 있다. 또한, 들로네 삼각 분할 알고리즘에 의할 경우, 어떠한 삼각형 또는 사면체의 외접원(외접구)의 내부에 해당 삼각형 또는 해당 사면체 이외의 다른 어떠한 점도 포함하지 않도록(달리 말해, 빈 외접원 특징 또는 빈 외접구 특징을 만족하도록) 복수의 점들이 분할될 수 있다.
특히, 도 4c는 본원에서 활용한 들로네 삼각 분할 알고리즘에 의한 분할 결과((b) 및 (d))와 일반 삼각 분할 방식에 의한 분할 결과((a) 및 (c))를 2차원 및 3차원에서 비교한 것을 나타낸 것이다. 도 4c의 (a)를 참조하면, 일반 삼각 분할 방식에 의하는 경우, 분할된 삼각형이 다소 불규칙적임을 확인할 수 있고, 초록색 점으로 이루어진 삼각형은 그 외접원의 내부에 두 개의 파란색 점이 위치하므로 빈 외접원 특성을 충족하지 못하는 것을 확인할 수 있다. 마찬가지로, 도 4c의 (c)를 참조하면, 초록색 점을 포함하는 사면체는 그 외접구의 내부에 다른 점이 위치하므로 빈 외접구 특성을 충족하지 못하는 것을 확인할 수 있다.
반대로, 본원의 들로네 삼각 분할 알고리즘의 의한 분할 결과인 도 4c의 (b)를 참조하면, 외접원 내에 세점 외 다른 점이 없는 빈 외접원 특성을 만족하며, 모든 삼각형이 정삼각형에 유사한 형태로 분할되는 것을 확인할 수 있다. 또한, 도 4c의 (d)를 참조하면, 본원의 들로네 삼각 분할 알고리즘에 의할 때 3차원 공간에서도 빈 외접구 특성을 만족하는 것을 확인할 수 있다.
본원의 일 실시예에 따르면, 들로네 삼각 분할 알고리즘에 의해 분할된 삼각형 각각은 메시(mesh)로 지칭될 수 있다. 들로네 삼각 분할 알고리즘에 의한 경우, 두 점 사이의 상관관계는 단순히 유클리드 거리에 의존하는 것이 아닌, 메시 기반의 기하학적 위상수학 관계를 고려하여 결정될 수 있으므로, 의미 있는 점끼리의 군집이 이루어질 수 있고, 나아가 포인트 클라우드 입력(1)의 대표점 주변의 국부적인 기하 특징이 군집점들에 잘 반영될 수 있다. 달리 말해, 들로네 삼각 분할 알고리즘에 의해 분할된 메시는 꼭지점의 위치 좌표인 기하정보와 두 꼭지점 사이의 연결 정보인 위상정보를 함께 포함할 수 있다.
이하에서는 도 5a 내지 도 5e를 참조하여, 들로네 삼각 분할 알고리즘에 기초한 분할 결과에 기초하여 대표점의 주변점들의 기하 상관관계를 도출하는 세부적인 프로세스를 상세히 설명하도록 한다.
도 5a 내지 도 5e는 대표점의 주변점들의 기하 상관관계를 행렬로 나타내는 과정을 나타낸 도면이다. 도 5a 내지 도 5e를 참조하면, 대표점에 대하여 주변점들의 기하 상관관계를 행렬로 연산할 수 있고, 연산된 행렬에 기초하여 대표점과 기하 상관관계가 높은 주변점들을 군집점으로 선택하여 대표점에 대한 군집을 수행할 수 있다. 참고로, 본원의 일 실시예에 따르면, 두 주변점의 기하 상관관계가 동등한 경우에는 두 주변점 중 대표점으로부터의 유클리드 거리가 가까운 주변점이 군집점으로 선택될 수 있다.
인접 행렬에서의 요소 (i,j)는 점 i와 점 j의 연결 관계를 나타내는 값일 수 있다. 예를 들어, 들로네 삼각 분할 알고리즘에 의한 분할 결과, 점 i와 점 j가 직접적으로 연결되어 있는 경우, ai,j=1이고, 연결되어 있지 않은 경우, ai,j=0일 수 있다. 포인트 클라우드 분류 장치(100)는, 대표점을 기준으로 하여 직접적으로 연결된 점(E1), 2개의 선을 거쳐서 도달할 수 있는 점(E2), 3개의 선을 거쳐서 도달할 수 있는 점(E3) 등으로 주변점들의 연결 관계를 확장하여 파악할 수 있다.
달리 말해, 포인트 클라우드 분류 장치(100)는, 한 점(대표점)에서 모든 점(주변점)까지 필요한 최단 경로에 대한 계산을 수행할 수 있으며, 이는 ASAP(All Paris Shortest Paths) 문제로 알려져 있다. 본원의 인접 행렬은 가중치와 방향성이 없는 특성을 가지므로, ASAP 문제를 해결하기 위해서는 변형된 세이델(Seidel) 알고리즘이 적용될 수 있다.
도 5a는 기하 상관관계와 연계된 행렬의 연산을 설명하기 위한 샘플 점집합을 나타낸 것이며, 도 5a에 도시된 점들의 인접 행렬(A1)은 도 5b로 표현될 수 있다. 도 5a 및 도 5b를 참조하면, 점 4는 점 1,2,3 및 5와 연결되어 있으므로, A1의 a4,1,a4,2,a4,3 및 a4,5는 1의 값을 가질 수 있다. 즉, A1은 두 점이 직접 연결된 경우 1을, 직접 연결되지 않은 경우 0을 값으로 가지는 인접 행렬일 수 있다. 또한, 도 5a에는, 점 4를 기준으로 1개의 선으로 도달할 수 있는 점(1,2,3,5)은 검은색으로, 2개의 선으로 도달할 수 있는 점(6,7,8)은 빨간색으로, 3개의 선으로 도달할 수 있는 점(9)은 파란색으로 표시되어 있다.
도 5c는 샘플 점집합의 모든 점들에 대하여 어느 한 점부터 다른 한 점까지 2개 이하의 선(변)을 통해 도달할 수 있는지 여부를 나타낸 행렬(B1)이다.
또한, 도 5d는 샘플 점집함의 모든 점들에 대하여 어느 한 점부터 다른 한 점까지 3개 이하의 선(변)을 통해 도달할 수 있는지 여부를 나타낸 행렬(B2)이다.
즉, Bk는 k+1개 이하의 선(변)을 통해 도달할 수 있는 점은 1로, 도달할 수 없는 점은 0으로 표현한 행렬을 의미할 수 있다.
본원의 일 실시예에 따르면, 행렬 Bk의 요소 bi,j는 하기 식 4-1에 의해 계산될 수 있다.
[식 4-1]
Figure pat00007
여기서, zij는 행렬 Z의 요소를 의미하며, 행렬 Z는 A1을 복수 회 행렬 곱하여 획득된 것일 수 있다. 예를 들어, A1*A1은 Z1, A1*A1*A1은 Z2로 각각 표현할 수 있다. aij는 행렬 A1의 요소를 나타낸다.
또한 도 5e는 샘플 점집합의 모든 점들에 대하여 어느 한 점부터 다른 한점까지 도달하기 위해 필요한 선(변)의 수를 표시한 행렬(C3)이다. 예시적으로 도 5e를 참조하면, 점 4에서 점 6,7 및 8은 2개의 선(변)을 거쳐 도달할 수 있고, 점 9는 3개의 선(변)을 거쳐 도달할 수 있다. 즉, 본원의 일 실시예에 따르면, 행렬을 이루는 요소의 값이 작을수록 행에 해당하는 점과 열에 해당하는 점은 높은 기하 상관관계를 가지는 것으로 파악될 수 있다.
도 5e에 도시된 행렬 C3는 하기 식 4-2를 통해 계산될 수 있다.
[식 4-2]
Figure pat00008
즉, 식 4-2에 의해 도 5e의 C3는 3XB2-B1-A1으로 계산된 것일 수 있다.
종합하면, 포인트 클라우드 분류 장치(100)는 들로네 삼각 분할 알고리즘을 통해 복수의 3차원 점들을 다수의 메시(mesh)로 분할하고, 메시(mesh) 상에서 한 점과 다른 한 점 사이의 연결 관계(예를 들어, 몇 개의 선을 거쳐 도달할 수 있는지에 대한 값)를 도출하여 점 사이의 기하 상관관계의 높고 낮음을 판단할 수 있다. 들로네 삼각 분할 알고리즘에 의해 분할된 메시는 상술한 바와 같이 기하정보 및 위상정보를 반영하고 있으므로, 위와 같은 방식으로 대표점과 기하 상관관계가 높은 주변점들을 군집점으로 선택하면 해당 대표점 주변의 국부적인 기하 특성을 잘 반영한 점들을 추려낼 수 있으므로, 대표점 주변 영역의 형상, 기하 특성에 대한 학습이 이후에 효과적으로 이루어질 수 있다.
이하에서는, 도 6을 참조하여, 밀집 연결성 네트워크의 구조 및 기능을 상세히 설명하도록 한다.
도 6은 본원의 일 실시예에 따른 밀집 연결성 네트워크를 설명하기 위한 개념도이다.
도 6을 참조하면, 밀집 연결성이라는 용어는 밀집 블록 내의 컨볼루션 레이어의 입력과 결과를 계속적으로 이어붙이는 것(concatenate)을 의미하며, 이는 하기 식 5로 요약될 수 있다.
[식 5]
Figure pat00009
즉, 밀집 연결성은 모든 레이어의 피처 맵을 이어 붙이기 때문에 두 개의 레이어 사이에 가치 있는 특징 데이터가 최대한 통과(후반부의 레이어에 전달)되도록 네트워크 구조를 구현한 것을 의미한다.
또한, 도 6을 참조하면, 포인트 클라우드 분류 장치(100)는 다층 퍼셉트론 수행 결과를 복수 개의 병목 레이어(Bottleneck)를 포함하는 밀집 블록 레이어에 통과시켜서 특징 데이터를 획득할 수 있다. 하나의 병목 레이어를 통과한 특징 데이터(예를 들어, 피처 맵)는 다음 병목 레이어로 전달(cocatenate)되고, 복수 개의 병목 레이어를 연속적으로 통과할 수 있다. 밀집 블록 레이어는 여러 개의 병목 레이어의 집합으로 동일한 크기의 컨볼루션을 학습하며 채널 방향으로 특징 데이터를 병합해주는 역할을 수행한다.
또한, 포인트 클라우드 분류 장치(100)는 획득된 특징 데이터를 변이 레이어(transition)에 통과시켜 가분 컨볼루션(Separable Convolution)을 수행하여 획득된 특징 데이터의 크기를 줄일 수 있다.
본원의 일 실시예에 따르면, 변이 레이어는 1x1 컨볼루션을 통해 특징 데이터(피처 맵)의 개수를 조절한 후, 2x2 평균 풀링 레이어를 통해 특징 데이터(피처 맵)의 가로와 세로 크기를 절반으로 줄일 수 있다. 즉, 1x1 컨볼루션에 입력되는 피처 맵의 개수가 m개라 할 때, 변이 레이어를 통과하여 출력되는 피처 맵의 개수는 0.5m이 될 수 있다. 즉, 변이 레이어는 모델을 소형화하기 위해 필요할 수 있다.
또한, 본원의 일 실시예에 따르면, 복수 개의 병목 레이어 각각은 구체적으로, 배치 정규화(BN), ELU 활성 함수 적용, 제1 컨볼루션, 배치 정규화(BN), ELU 활성 함수 적용 및 제2 컨볼루션을 순차적으로 수행하는 것일 수 있다.
본원의 일 실시예에 따르면, 제1 컨볼루션은 1x1 컨볼루션이고, 제2 컨볼루션은 1Xk 컨볼루션일 수 있다.
종래의 기법인 DenseNet에서는 ReLU(Rectified Linear Units) 함수를 활성화 함수로 사용하였으나, 본원에서는 ELU(Exponential Linear Units) 함수를 활성화 함수로 사용하여 계산 복잡성을 감소시켰다.
또한, DenseNet 에서는 본원의 제2 컨볼루션에 대응하는 단계에서 3x3 컨볼루션을 수행하였으나, 본원에서는 대표점을 중심으로 주변점에 대한 특징을 용이하게 탐색하기 위하여 1xK 컨볼루션을 적용할 수 있다.
또한, 밀집 블록 레이어에서는 동일한 크기의 피처 맵에 대하여 컨볼루션이 수행될 수 있으므로, 포인트 클라우드 분류 장치(100)는 밀집 블록 레이어 내에서 동일한 크기의 피처 맵을 유지하기 위하여 제로 패딩을 수행할 수 있다.
또한, DenseNet에서는 변이 레이어에 대응하는 단계에서 평균 풀링을 적용하였으나, 본원에서는 채널의 크기를 줄이는 1x1 컨볼루션 필터를 추가적으로 적용하여 하나의 채널로 특징이 합쳐질 수 있도록 구현할 수 있다.
특히, 본원의 변이 레이어에서 수행되는 가분 컨볼루션은 예를 들어 깊이별 가변 컨볼루션(Depthwise separable convolution)일 수 있다. 깊이별 가변 컨볼루션은 각 채널마다 독립적으로 컨볼루션을 수행하는 깊이 컨볼루션(Depth Convolution)과 여러 개의 채널을 하나의 새로운 채널로 합치는 점별 컨볼루션(Pointwise Convolution)을 결합한 방식을 의미하는 것일 수 있다.
본원의 일 실시예에 따르면, 반복이 수행될수록 각 반복 회차에 입력으로 인가되는 포인트 클라우드 입력(1)의 3차원 점들의 수는 이전 반복 회차에 대비하여 감소될 수 있다.
기 설정된 반복 횟수만큼의 반복이 종료되면, 포인트 클라우드 분류 장치(100)는 반복을 통해 획득된 특징 데이터를 종합하여 완전 연결 레이어(FC)를 구축하고, 구축된 완전 연결 레이어에 기초하여 원본 포인트 클라우드 입력(1)에 대한 객체 유형(2)을 분류할 수 있다. 예를 들어, 도 1을 참조하면, 포인트 클라우드 분류 장치(100)는 원본 포인트 클라우드 입력이 토끼, 자동차 등의 객체를 나타내고 있음을 결과로서 출력할 수 있다.
구체적으로, 완전 연결 레이어(FC)는 여러 개의 다층 퍼셉트론을 통해 소정의 클래스 개수에 해당하는 결과값(loss)을 압축한 것일 수 있다. 본원의 일 실시예에 따르면, 포인트 클라우드 분류 장치(100)는, 40개의 클래스와 40개의 loss값을 비교하여 학습을 수행하여, 원본 포인트 클라우드 입력에 대한 객체 유형(2) 분류 결과를 제공할 수 있다.
도 7은 본원의 일 실시예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치의 개략적인 구성도이다.
도 7을 참조하면, 포인트 클라우드 분류 장치(100)는, 대표점 추출부(110), 군집부(120), 퍼셉트론 수행부(130), 네트워크부(140) 및 객체 분류부(150)를 포함할 수 있다.
대표점 추출부(110)는, 복수의 3차원 점들을 포함하는 포인트 클라우드 입력(1)을 수신하여 3차원 점들 중 대표점을 결정할 수 있다.
군집부(120)는, 이웃 연결성을 활용하여 대표점의 주변점들 중 일부를 군집점으로 선택하여 대표점에 대하여 군집할 수 있다.
퍼셉트론 수행부(130)는, 군집점을 대표점을 원점으로 하는 좌표계로 원점 이동하고, 원점 이동된 군집점에 대하여 기존 특징 데이터를 반영한 다층 퍼셉트론을 수행할 수 있다.
네트워크부(140)는, 다층 퍼셉트론 수행 결과를 밀집 연결성 네트워크에 통과시켜 특징 데이터를 획득할 수 있다.
객체 분류부(150)는, 획득된 특징 데이터를 종합하여 완전 연결 레이어를 구축하고, 완전 연결 레이어에 기초하여 원본 포인트 클라우드 입력에 대한 객체 유형(2)을 분류할 수 있다.
특히, 객체 분류부(150)에서 완전 연결 레이어를 구축하기 위하여 활용되는 특징 데이터는 상술한 바와 같이 대표점 추출부(110), 군집부(120), 퍼셉트론 수행부(130) 및 네트워크부(140)가 기 설정된 반복 횟수(예를 들면 4회)만큼 각각의 프로세스를 반복하여 획득된 것일 수 있으며, 최종적인 특징 데이터는 밀집 연결성 네트워크의 특성상 이전 반복 회차에서 도출된 모든 특징 데이터를 다음 회차에 반영하여 전달하므로 종래의 분류 기법에서 발생하였던 기울기 소실 문제가 없다는 이점이 있다.
이하에서는 상기에 자세히 설명된 내용을 기반으로, 본원의 동작 흐름을 간단히 살펴보기로 한다.
도 8은 본원의 일 실시예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법에 대한 동작 흐름도이다.
도 8에 도시된 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법은 앞서 설명된 포인트 클라우드 분류 장치(100)에 의하여 수행될 수 있다. 따라서, 이하 생략된 내용이라고 하더라도 포인트 클라우드 분류 장치(100)에 대하여 설명된 내용은 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법에 대한 설명에도 동일하게 적용될 수 있다.
먼저, 단계 S810에서 포인트 클라우드 분류 장치(100)는, 이웃 연결성에 기초하여 포인트 클라우드 입력의 복수의 3차원 점들을 군집할 수 있다. 특히, 단계 S810에서는 K-최근접 이웃 알고리즘 또는 들로네 삼각 분할 알고리즘에 기초하여 이웃 연결성을 산출하는 것일 수 있다.
다음으로, 단계 S820에서 포인트 클라우드 분류 장치(100)는, 군집된 복수의 3차원 점들에 대하여 다층 퍼셉트론을 수행할 수 있다.
다음으로, 단계 S830에서 포인트 클라우드 분류 장치(100)는, 밀집 연결성 네트워크에 기초하여 다층 퍼셉트론 수행 결과로부터 특징 데이터를 도출할 수 있다.
상술한 설명에서, 단계 S810 내지 S830은 본원의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
도 9는 본원의 일 실시예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법에 대한 세부 동작 흐름도이다.
도 9에 도시된 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법은 앞서 설명된 포인트 클라우드 분류 장치(100)에 의하여 수행될 수 있다. 따라서, 이하 생략된 내용이라고 하더라도 포인트 클라우드 분류 장치(100)에 대하여 설명된 내용은 도 9에 대한 설명에도 동일하게 적용될 수 있다.
먼저, 단계 S910에서 대표점 추출부(110)는, (a) 복수의 3차원 점들을 포함하는 포인트 클라우드 입력을 수신하여 3차원 점들 중 대표점을 결정할 수 있다.
본원의 일 실시예에 따르면, 단계 S910에서(즉, (a) 단계에서) 대표점 추출부(110)는, FPS(Farthest Point Sampling) 알고리즘에 기초하여 대표점을 결정하는 것일 수 있다.
다음으로, 단계 S920에서 군집부(120)는, (b) 이웃 연결성을 활용하여 대표점의 주변점들 중 일부를 군집점으로 선택하여 대표점에 대하여 군집할 수 있다.
구체적으로, 단계 S920에서 군집부(120)는, (b1) K-최근접 이웃 알고리즘 또는 들로네 삼각 분할 알고리즘을 포함하는 기 설정된 국부 연결성 계산 알고리즘에 기초하여 대표점의 주변점들의 기하 상관관계를 도출할 수 있다. 또한, 군집부(120)는, (b2) 기하 상관관계에 기초하여 주변점들 중 일부를 군집점으로 선택할 수 있다.
여기서, 본원의 일 실시예에 다르면, 군집부(120)는 (b1) 단계에서, 포인트 클라우드 입력의 3차원 점들의 수에 기초하여 각각의 반복 회차에 적용되는 기 설정된 국부 연결성 계산 알고리즘을 K-최근접 이웃 알고리즘 또는 들로네 삼각 분할 알고리즘 중 어느 하나로 결정하는 것일 수 있다.
또한, 본원의 일 실시예에 따르면, 군집부(120)는 (b1) 단계에서, 1회차 반복 및 2회차 반복 수행 시, 기 설정된 국부 연결성 계산 알고리즘으로 K-최근접 이웃 알고리즘을 적용하고, 3회차 반복 및 4회차 반복 수행 시, 기 설정된 국부 연결성 계산 알고리즘으로 들로네 삼각 분할 알고리즘을 적용하도록 구현될 수 있다.
다음으로, 단계 S930에서 퍼셉트론 수행부(130)는, (c) 군집점을 대표점을 원점으로 하는 좌표계로 원점 이동할 수 있다.
다음으로, 단계 S940에서 퍼셉트론 수행부(130)는, (d) 원점 이동된 군집점에 대하여 기존 특징 데이터를 반영한 다층 퍼셉트론을 수행할 수 있다.
다음으로, 단계 S950에서 네트워크부(140)는, (e) 다층 퍼셉트론 수행 결과를 밀집 연결성 네트워크에 통과시켜 특징 데이터를 획득할 수 있다.
본원의 일 실시예에 따르면, 구체적으로 단계 S950에서 네트워크부(140)는, (e1) 다층 퍼셉트론 수행 결과를 복수 개의 병목 레이어를 포함하는 밀집 블록 레이어에 통과시켜 특징 데이터를 획득하고, (e2) 획득된 특징 데이터를 변이 레이어에 통과시켜 가분 컨볼루션을 수행하여 획득된 특징 데이터의 크기를 줄이도록 동작할 수 있다.
다음으로, 단계 S960에서 포인트 클라우드 분류 장치(100)는 (a) 내지 (e) 단계를 기 설정된 반복 횟수만큼 반복할 수 있다. 예를 들어, 기 설정된 반복 횟수는 4회일 수 있다.
다음으로, 단계 S970에서 객체 분류부(150)는, 반복을 통해 획득된 특징 데이터를 종합하여 완전 연결 레이어를 구축하고, 완전 연결 레이어에 기초하여 포인트 클라우드 입력(1)에 대한 객체 유형(2)을 분류할 수 있다.
상술한 설명에서, 단계 S910 내지 S970은 본원의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
도 10은 본원의 일 실시예에 따른 원점 이동된 군집점에 대하여 기존 특징 데이터를 반영한 다층 퍼셉트론을 수행하는 방법의 세부 동작 흐름도이다.
도 10에 도시된 원점 이동된 군집점에 대하여 기존 특징 데이터를 반영한 다층 퍼셉트론을 수행하는 방법은 앞서 설명된 포인트 클라우드 분류 장치(100)에 의하여 수행될 수 있다. 따라서, 이하 생략된 내용이라고 하더라도 포인트 클라우드 분류 장치(100)에 대하여 설명된 내용은 도 10에 대한 설명에도 동일하게 적용될 수 있다.
먼저, 단계 S1010에서 퍼셉트론 수행부(130)는, (d1) 원점 이동된 군집점에 χ 변환을 적용하는 제1 다층 퍼셉트론을 수행할 수 있다.
다음으로, 단계 S1020에서 퍼셉트론 수행부(130)는, (d2) 원점 이동된 군집점 각각에 대한 점별 다층 퍼셉트론을 수행하고, 기존 특징 데이터를 이어붙이는 제2 다층 퍼셉트론을 수행할 수 있다.
다음으로, 단계 S1030에서 퍼셉트론 수행부(130)는, 제1 다층 퍼셉트론 결과 및 제2 다층 퍼셉트론 결과에 대한 행렬 곱을 연산하여 다층 퍼셉트론 수행 결과를 도출할 수 있다.
상술한 설명에서, 단계 S1010 내지 S1030은 본원의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
도 11은 본원의 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법과 연계된 일 실험예로서 본원의 포인트 클라우드 분류 방법과 종래의 객체 분류 기법을 적용 파라미터의 수 및 정확도 측면에서 비교하여 나타낸 도표이다.
도 11을 참조하면, 본원의 일 실시예에 따른 포인트 클라우드 분류 방법(DenX-Conv)는 종래의 다른 연구에서 적용된 분류 모델들과 비교할 때 우수한 분류 성능을 보이는 것을 확인할 수 있다. 구체적으로, 종전의 최고 정확도를 보인 PointCNN과 비교하여 0.8% 포인트만큼의 향상된 분류 정확도를 보이는 것을 확인할 수 있다. 또한, 향상된 분류 정확도에도 불구하고 학습에 사용되는 파라미터의 수는 종래의 다른 연구와 비슷한 수준을 유지하는 것을 확인할 수 있다.
도 12는 본원의 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법과 연계된 일 실험예로서 본원의 포인트 클라우드 분류 방법과 종래의 객체 분류 기법을 포인트 클라우드 입력의 점의 개수에 따른 정확도 변화 측면에서 비교하여 나타낸 그래프이다.
도 12를 참조하면, 본원의 포인트 클라우드 분류 방법을 적용한 모델의 강건성을 확인하기 위하여 포인트 클라우드 입력(1)의 점의 개수를 줄여가며 정확도 변화를 관찰할 수 있다. 본원의 경우, 도 12에 도시된 바와 같이 점의 개수가 512개로 줄어들더라도 단지 0.8% 포인트만큼의 성능 감소를 보일 뿐이며, 128개로 더 줄어들더라도 90%이상의 분류 정확도(분별력)를 유지하는 것을 확인할 수 있다. 이와 달리, 종래의 다른 연구(특히, PointNe++)의 경우, 포인트 클라우드 입력(1)의 점의 개수가 감소함에 따라 분류 성능이 급감하는 것을 확인할 수 있다.
본원의 일 실시 예에 따른 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 전술한 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법은 기록 매체에 저장되는 컴퓨터에 의해 실행되는 컴퓨터 프로그램 또는 애플리케이션의 형태로도 구현될 수 있다.
전술한 본원의 설명은 예시를 위한 것이며, 본원이 속하는 기술분야의 통상의 지식을 가진 자는 본원의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본원의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본원의 범위에 포함되는 것으로 해석되어야 한다.
1: 포인트 클라우드 입력
2: 객체 유형
10: 포인트 클라우드 분류 시스템
100: 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치
110: 대표점 추출부
120: 군집부
130: 퍼셉트론 수행부
140: 네트워크부
150: 객체 분류부

Claims (13)

  1. 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법에 있어서,
    이웃 연결성에 기초하여 포인트 클라우드 입력의 복수의 3차원 점들을 군집하는 단계;
    상기 군집된 복수의 3차원 점들에 대하여 다층 퍼셉트론을 수행하는 단계; 및
    밀집 연결성 네트워크에 기초하여 상기 다층 퍼셉트론 수행 결과로부터 특징 데이터를 도출하는 단계,
    를 포함하는, 포인트 클라우드 분류 방법.
  2. 제1항에 있어서,
    상기 군집하는 단계는,
    K-최근접 이웃 알고리즘 또는 들로네 삼각 분할 알고리즘에 기초하여 상기 이웃 연결성을 산출하는 것인, 포인트 클라우드 분류 방법.
  3. 제1항에 있어서,
    상기 특징 데이터를 도출하는 단계는,
    상기 다층 퍼셉트론 수행 결과를 복수 개의 병목 레이어를 포함하는 밀집 블록 레이어에 통과시켜 특징 데이터를 획득하는 단계; 및
    상기 획득된 특징 데이터를 변이 레이어에 통과시켜 가분 컨볼루션을 수행하여 획득된 상기 특징 데이터의 크기를 줄이는 단계를 포함하는 것인, 포인트 클라우드 분류 방법.
  4. 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 방법에 있어서,
    (a) 복수의 3차원 점들을 포함하는 포인트 클라우드 입력을 수신하여 상기 3차원 점들 중 대표점을 결정하는 단계;
    (b) 이웃 연결성을 활용하여 상기 대표점의 주변점들 중 일부를 군집점으로 선택하여 상기 대표점에 대하여 군집하는 단계;
    (c) 상기 군집점을 상기 대표점을 원점으로 하는 좌표계로 원점 이동하는 단계;
    (d) 상기 원점 이동된 군집점에 대하여 기존 특징 데이터를 반영한 다층 퍼셉트론을 수행하는 단계;
    (e) 상기 다층 퍼셉트론 수행 결과를 밀집 연결성 네트워크에 통과시켜 특징 데이터를 획득하는 단계;
    (f) 상기 (a) 내지 (e) 단계를 기 설정된 반복 횟수만큼 반복하는 단계; 및
    (g) 반복을 통해 획득된 상기 특징 데이터를 종합하여 완전 연결 레이어를 구축하고, 상기 완전 연결 레이어에 기초하여 상기 포인트 클라우드 입력에 대한 객체 유형을 분류하는 단계,
    를 포함하는, 포인트 클라우드 분류 방법.
  5. 제4항에 있어서,
    상기 (b) 단계는,
    (b1) K-최근접 이웃 알고리즘 또는 들로네 삼각 분할 알고리즘을 포함하는 기 설정된 국부 연결성 계산 알고리즘에 기초하여 상기 대표점의 주변점들의 기하 상관관계를 도출하는 단계; 및
    (b2) 상기 기하 상관관계에 기초하여 상기 주변점들 중 일부를 군집점으로 선택하는 단계,
    를 포함하는 것인, 포인트 클라우드 분류 방법.
  6. 제5항에 있어서,
    상기 포인트 클라우드 입력의 3차원 점들의 수는 상기 (f) 단계에서 반복이 진행될수록 이전 반복 회차에 대비하여 감소되고,
    상기 (b1) 단계는,
    상기 포인트 클라우드 입력의 3차원 점들의 수에 기초하여 각각의 반복 회차에 적용되는 상기 기 설정된 국부 연결성 계산 알고리즘을 K-최근접 이웃 알고리즘 또는 들로네 삼각 분할 알고리즘 중 어느 하나로 결정하는 것을 특징으로 하는, 포인트 클라우드 분류 방법.
  7. 제5항에 있어서,
    상기 기 설정된 반복 횟수는 4회이고,
    상기 (b1) 단계는,
    1회차 반복 및 2회차 반복 수행 시, 상기 기 설정된 국부 연결성 계산 알고리즘으로 상기 K-최근접 이웃 알고리즘을 적용하고,
    3회차 반복 및 4회차 반복 수행 시, 상기 기 설정된 국부 연결성 계산 알고리즘으로 상기 들로네 삼각 분할 알고리즘을 적용하는 것을 특징으로 하는, 포인트 클라우드 분류 방법.
  8. 제4항에 있어서,
    상기 (a) 단계는,
    FPS(Farthest Point Sampling) 알고리즘에 기초하여 상기 대표점을 결정하는 것인, 포인트 클라우드 분류 방법.
  9. 제4항에 있어서,
    상기 (d) 단계는,
    (d1) 상기 원점 이동된 군집점에 χ 변환을 적용하는 제1 다층 퍼셉트론을 수행하는 단계;
    (d2) 상기 원점 이동된 군집점 각각에 대한 점별 다층 퍼셉트론을 수행하고, 기존 특징 데이터를 이어붙이는 제2 다층 퍼셉트론을 수행하는 단계; 및
    (d3) 상기 제1 다층 퍼셉트론 결과 및 상기 제2 다층 퍼셉트론 결과에 대한 행렬 곱을 연산하여 상기 다층 퍼셉트론 수행 결과를 도출하는 단계,
    를 포함하는 것인, 포인트 클라우드 분류 방법.
  10. 제4항에 있어서,
    상기 (e) 단계는,
    (e1) 상기 다층 퍼셉트론 수행 결과를 복수 개의 병목 레이어를 포함하는 밀집 블록 레이어에 통과시켜 특징 데이터를 획득하는 단계; 및
    (e2) 상기 획득된 특징 데이터를 변이 레이어에 통과시켜 가분 컨볼루션을 수행하여 획득된 상기 특징 데이터의 크기를 줄이는 단계,
    를 포함하는 것인, 포인트 클라우드 분류 방법.
  11. 제10항에 있어서,
    상기 복수 개의 병목 레이어 각각은,
    배치 정규화, ELU 함수 적용, 제1 컨볼루션, 배치 정규화, ELU 함수 적용 및 제2 컨볼루션을 순차적으로 수행하는 것을 특징으로 하는, 포인트 클라우드 분류 방법.
  12. 제11항에 있어서,
    상기 제1 컨볼루션은 1x1 컨볼루션이고,
    상기 제2 컨볼루션은 1xK 컨볼루션인 것을 특징으로 하는, 포인트 클라우드 분류 방법.
  13. 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치에 있어서,
    복수의 3차원 점들을 포함하는 포인트 클라우드 입력을 수신하여 상기 3차원 점들 중 대표점을 결정하는 대표점 추출부;
    이웃 연결성을 활용하여 상기 대표점의 주변점들 중 일부를 군집점으로 선택하여 상기 대표점에 대하여 군집하는 군집부;
    상기 군집점을 상기 대표점을 원점으로 하는 좌표계로 원점 이동하고, 상기 원점 이동된 군집점에 대하여 기존 특징 데이터를 반영한 다층 퍼셉트론을 수행하는 퍼셉트론 수행부;
    상기 다층 퍼셉트론 수행 결과를 밀집 연결성 네트워크에 통과시켜 특징 데이터를 획득하는 네트워크부; 및
    획득된 상기 특징 데이터를 종합하여 완전 연결 레이어를 구축하고, 상기 완전 연결 레이어에 기초하여 상기 포인트 클라우드 입력에 대한 객체 유형을 분류하는 객체 분류부,
    를 포함하는, 포인트 클라우드 분류 장치.
KR1020190116399A 2019-09-20 2019-09-20 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치 및 방법 KR102352826B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190116399A KR102352826B1 (ko) 2019-09-20 2019-09-20 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190116399A KR102352826B1 (ko) 2019-09-20 2019-09-20 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20210034429A true KR20210034429A (ko) 2021-03-30
KR102352826B1 KR102352826B1 (ko) 2022-01-17

Family

ID=75265236

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190116399A KR102352826B1 (ko) 2019-09-20 2019-09-20 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102352826B1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113487713A (zh) * 2021-06-16 2021-10-08 中南民族大学 一种点云特征提取方法、装置及电子设备
WO2022096943A1 (en) * 2021-04-15 2022-05-12 Sensetime International Pte. Ltd. Method and apparatus for processing point cloud data, device, and storage medium
US20220335654A1 (en) * 2021-04-15 2022-10-20 Sensetime International Pet Ltd. Method and apparatus for generating point cloud encoder, method and apparatus for generating point cloud data, electronic device and computer storage medium
KR20230032749A (ko) * 2021-08-31 2023-03-07 한국과학기술원 3차원 포인트 클라우드의 의미론적 분할을 위한 그래프 컨볼루션 신경망 가속 장치 및 이를 이용한 3차원 포인트 클라우드의 의미론적 분할 방법
CN116959477A (zh) * 2023-09-19 2023-10-27 杭州爱华仪器有限公司 一种基于卷积神经网络的噪声源分类的方法及装置
CN117058470A (zh) * 2023-10-12 2023-11-14 宁德思客琦智能装备有限公司 一种基于小样本学习的三维点云分类的方法和系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190108396A1 (en) * 2017-10-11 2019-04-11 Aquifi, Inc. Systems and methods for object identification

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190108396A1 (en) * 2017-10-11 2019-04-11 Aquifi, Inc. Systems and methods for object identification

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Dongki Jeong et al., Point Cloud Classification Using Deep Learning, Korean Surveying Society Conference Data, 110-113 pages *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022096943A1 (en) * 2021-04-15 2022-05-12 Sensetime International Pte. Ltd. Method and apparatus for processing point cloud data, device, and storage medium
US20220335654A1 (en) * 2021-04-15 2022-10-20 Sensetime International Pet Ltd. Method and apparatus for generating point cloud encoder, method and apparatus for generating point cloud data, electronic device and computer storage medium
CN113487713A (zh) * 2021-06-16 2021-10-08 中南民族大学 一种点云特征提取方法、装置及电子设备
KR20230032749A (ko) * 2021-08-31 2023-03-07 한국과학기술원 3차원 포인트 클라우드의 의미론적 분할을 위한 그래프 컨볼루션 신경망 가속 장치 및 이를 이용한 3차원 포인트 클라우드의 의미론적 분할 방법
CN116959477A (zh) * 2023-09-19 2023-10-27 杭州爱华仪器有限公司 一种基于卷积神经网络的噪声源分类的方法及装置
CN116959477B (zh) * 2023-09-19 2023-12-19 杭州爱华仪器有限公司 一种基于卷积神经网络的噪声源分类的方法及装置
CN117058470A (zh) * 2023-10-12 2023-11-14 宁德思客琦智能装备有限公司 一种基于小样本学习的三维点云分类的方法和系统
CN117058470B (zh) * 2023-10-12 2024-01-26 宁德思客琦智能装备有限公司 一种基于小样本学习的三维点云分类的方法和系统

Also Published As

Publication number Publication date
KR102352826B1 (ko) 2022-01-17

Similar Documents

Publication Publication Date Title
KR102352826B1 (ko) 이웃 연결성 합성곱 신경망을 이용한 포인트 클라우드 분류 장치 및 방법
Engelmann et al. Know what your neighbors do: 3D semantic segmentation of point clouds
CN109754064B (zh) 执行解卷积的神经网络的方法和装置
Ye et al. 3d recurrent neural networks with context fusion for point cloud semantic segmentation
Wang et al. Deep parametric continuous convolutional neural networks
Zhu et al. Class-balanced grouping and sampling for point cloud 3d object detection
Wang et al. Pointseg: Real-time semantic segmentation based on 3d lidar point cloud
EP3405845B1 (en) Object-focused active three-dimensional reconstruction
Wu et al. 3d shapenets for 2.5 d object recognition and next-best-view prediction
Maturana et al. Voxnet: A 3d convolutional neural network for real-time object recognition
CN111160214B (zh) 一种基于数据融合的3d目标检测方法
WO2019238560A1 (en) Generative adversarial networks for image segmentation
WO2020052678A1 (en) Method and system for generating synthetic point cloud data using a generative model
CN109716393A (zh) 用于创建虚拟3d模型的方法和系统
CN113378854A (zh) 一种融合原始点云和体素划分的点云目标检测方法
KR101507732B1 (ko) 영역 기반의 항공 영상 분할 방법 및 이를 실행하는 프로그램 코드를 저장하는 컴퓨터로 읽을 수 있는 저장 매체
Mazzini et al. Spatial sampling network for fast scene understanding
Rubio et al. Efficient monocular pose estimation for complex 3D models
Zhan et al. Activermap: Radiance field for active mapping and planning
CN113313176A (zh) 一种基于动态图卷积神经网络的点云分析方法
Xuan et al. MV-C3D: A spatial correlated multi-view 3d convolutional neural networks
CN114120095A (zh) 一种基于空中三维模型的移动机器人自主定位系统及方法
CN114913519B (zh) 一种3d目标检测方法、装置、电子设备及存储介质
CN116468950A (zh) 一种类别引导中心点邻域搜索半径的三维目标检测方法
Li et al. Automatic rocks segmentation based on deep learning for planetary rover images

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant