회전, 이동, 스케일 변환에 불변인 특징점인 키포인트는 포인트 클라우드 정합 시 중요한 기술이다. 최근, 불변인 키포인트는 딥러닝 모델 구축에도 중요한 부분이 되고 있다.
머리말
키포인트 및 포인트 설명자(descriptor)는 2D 이미지 처리 및 분석 시 중요하다. 오늘날 3D 포인트 클라우드 데이터는 점점 더 중요 해지고 있다.
2차원 키포인트는 이미지 등록 및 이미지 스티칭, 물체 인식, 동작에서 구조 별 3D 재구성에 이르기까지 다양한 응용 분야에서 사용되었다. 키포인트는 SIFT(Lowe, 2004), SURF(Bay et al., 2006), MSER(Matas et al., 2004), SUSAN (Smith)과 같은 대표적인 알고리즘을 사용하여 2D 컴퓨터 비전 시 사용된다. 3차원 키포인트는 이를 3차원으로 확장한 것이다.
포인트 클라우드 정합과 키포인트
두 개의 포인트 클라우드를 정합하기 위해 변환과 회전으로 구성된 강체 변환은 키포인트 기반 거친 정렬 (Rusu et al., 2008)과 포인트 기반 미세 정렬 (Chen)의 최첨단 조합으로 계산된다.
3D-SIFT 키포인트는 DoG (Differential-of-Gaussian) 함수의 스케일 공간 극한에 위치한다. 사용 된 가우스 스케일 공간은 크기가 다른 복셀 그리드 필터로 다운 샘플링하고, 각 포인트 p에 대해 반경 검색을 수행 한 다음 새 강도(intensity)를 발견된 이웃의 가중 평균으로 계산하여 생성한다. 인접한 두 포인트 클라우드 각각에 대해 새로운 DoG 포인트 클라우드가 계산된다. 결과 DoG 포인트 클라우드의 모든 포인트는 관련 포인트 클라우드에서와 동일한 위치를 갖지만 해당 강도 값은 원래 포인트의 강도 값 차이를 나타낸다.
DoG는 안정된 키포인트를 생성하는 데 사용할 수 있는 가우스(Gaussian) 함수의 스케일 정규화 된 라플라시안에 대한 좋은 근사치이다. 포인트는 자체 내에서 가장 가까운 k 개의 인접 포인트 중 가장 높거나 가장 낮은 DoG 값을 갖고 있는 경우, 하위 및 상위 DoG 포인트 클라우드 이웃에 있는 경우에 키포인트 후보로 표시된다. 곡률값이 낮은 영역의 모든 키포인트는 제거되어 안정적인 결과를 얻는다.
3D SIFT 검출기가 NARF 검출기보다 더 많은 키포인트를 표시한다한다. 두 키포인트 감지기는 대부분 테이블 평면의 중심을 무시하고 테이블 경계에 많은 포인트를 표시한다. 3D-SIFT는 물체 경계 및 주요 표면 변화에 강력하게 반응하는 반면, NARF는 대부분 물체 경계 근처의 키포인트에 반응한다. 3D-SIFT 검출기는 NARF 검출기보다 런타임이 상당히 높다. 이 포인트 클라우드에 대한 NARF의 중간 런타임은 약 0.05 초이며 3D-SIFT는 약 2 초가 필요한다(예. 100,000포인트).
포인트 클라우드에 적은 3D 정보 (즉, 포인트)가 포함 된 경우 각 3D 구조 간의 유사성을 기반으로 다른 포인트 클라우드와 일치시키기가 더 어렵다. NARF 키포인트는 계산 속도가 빠르지 만 결과 키포인트 하위 집합이 너무 작아 글로벌 포인트 클라우드 그래프에서 사용할 수 없다. NARF 키포인트 감지기와 비교하여 3D-SIFT 키포인트 감지기는 더 많은 계산 시간이 필요하지만 더 나은 융합 결과를 제공한다.
pointSIFT 딥러닝 모델과 키포인트 특징점
3D 포인트 클라우드 해석은 오래된 문제이다. 3D 개체 분류(3Dshapenet), 3D 개체 감지(2ddriven ; qi2017frustum ; DeepSlidingShapes) 및 3D 시맨틱 분할(qi2016pointnet ; qi2017pointnetplusplus ; Riegler2017OctNet) 등은 이런 작업 중 일부이다. 이러한 작업 중에서 3D 시맨틱 분할은 도전적이다. 이는 3D 공간의 모든 포인트에 라벨을 붙이는 것을 목표로한다. 포인트 간의 관계는 암시적이며 표현하기 어렵다.
이전 연구를 돌이켜 보면 몇 가지 해결책을 찾을 수 있다. 복셀은 기하학적 관계를 가져 오는 데 사용된다. RGB 및 깊이 이미지 (4 채널) 모두에서 2D CNN 기능이 추출될 수 있다. 다만, 2D 컨볼루션은 3D 지오메트리 정보 (정상 및 모양)를 놓치는 반면, 3D 컨볼루션은 많은 계산이 필요하다.
최근 PointNet 아키텍처는 복셀 또는 메시 대신 포인트 클라우드를 입력으로 특징을 직접 추출한다. 계산을 가속화 할뿐만 아니라 세분화 성능을 현저하게 향상시킨다. 핵심 문제는 포인트 입력의 모양 패턴특징을 캡처하는 방법이다. 형상 특징이나 설명자를 살펴보면, SIFT는 가장 성공적인 기술 중 하나이다. 이는 SIFT가 형상 표현의 두 가지 기능, 즉 방향 인코딩과 스케일 인식을 고려하기 때문이다.
특히, 스케일 인식은 SIFT가 타겟팅 모양의 가장 대표적인 스케일을 선택할 수 있고, 방향 인코딩은 다양한 방향의 패턴을 포괄적으로 인식 할 수 있다. SIFT와 달리 PointSIFT는 신경망 모듈이다.
PointSIFT는 각 키 포인트(픽셀)에서 방향 정보가 인코딩된다. PointSIFT의 기본 블록은 8 개 방향으로 가장 가까운 지점의 특징을 컨볼루션한다. pointNet++의 K-최근검색과 비교하면, 방향 인코딩 체계가 모든 방향의 정보를 캡처할 수 있다. 이 기술은 여러 방향 인코딩(OE) 정보를 추가로 스택한다. 이러한 방식으로 서로 다른 누적 OE 단위의 뉴런은 서로 다른 척도를 인식 할 수 있다. PointSIFT 기반 방법은 S3DIS(s3dis) 및 ScanNet 스캔넷 데이터 세트에서 최근 방법보다 성능이 우수하다는 것을 보여준다 .
입력 데이터 포맷은 딥러닝 모델 성능에 큰 영향을 준다. 예를 들어, 체적 표현의 주요 이슈는 공간적 희박성과 계산 복잡성이다. 특별한 방법(예 : OcTree 구조)으로 희소성 문제를 해결하려고 한다. 그러나 포인트 클라우드를 복셀로 변환하는 데는 여전히 많은 시간이 걸린다. 스펙트럼 영역에서 푸리에 변환은 CNN을 곱셈으로 변환한다. 그러나 이러한 종류의 방법은 메시데이터로 제한된다. 카메라에서 캡쳐한 멀티뷰 입력은 많은 수의 지오메트리 세부 정보를 무시한다. 모양 및 의미 분할과 같은 일부 특정 작업의 성능을 크게 제한 할 수 있다. 최근에는 포인트 클라우드를 직접 입력하는 pointCNN 을 고려한다.
포인트 클라우드 분할 작업은 다음과 같이 설명 할 수 있다. 3D 공간의 포인트 세트가 주어지면 각 포인트에 범주 레이블을 할당한다. PointNet은 T-Net을 사용하여 완전히 연결된 레이어로 기능을 추출하기 전에 순서없는 포인트 클라우드의 균형을 맞춘다. 로컬 기하학적 세부 사항을 캡처하기 위해 계층적 신경망을 제안했다.
pointSIFT 입력은 방향 인코딩 포인트 컨벌루션 레이어 스택에 배치된다. 그런 다음 모든 출력이 연결된다. 모양 특징 패턴을 캡처하려면 다른 방향의 모양 정보를 명시적으로 인코딩 할 수 있어야 한다. 따라서 모든 지점에서 동작하는 방향 인코딩 컨볼루션을 정의한다. 컨볼루션 방향을 인식하기 위해 X, Y, Z의 세 축을 따라, 3 단계 컨볼루션을 수행한다. PointSIFT모듈은 일반 시맨틱 분할 네트워크 segnet 과 유사하게 아키텍처를 인코더와 디코더의 두 부분으로 구성한다.
Point orientation-encoding
End-to-end network architecture
pointnet++ 방법은 입력 크기가 8192 인 경우 첫 번째 단계는 8192 포인트를 1024 포인트로 다운 샘플링한다. 이 모델은 1024 개의 중심을 선택하고 검색 반경 내에서 가장 가까운 32 개의 점을 컨볼루션한다. PointSIFT은 다중 레이어 컨볼루션을 수행하여 계산에 더 많은 포인트를 포함한다.
S3DIS 데이터 세트 s3dis 는 3개 다른 건물(271 개의 방 포함)에서 RGB-D 포인트 클라우드 데이터의 6 개 폴더를 제공한다. 각 포인트에는 13 개 범주의 레이블이 주석으로 표시된다. 이 데이터를 pointnet 방식에 따라 교육 및 테스트 세트로 분할했다 . 전체 정확도 및 mIoU는 PointSIFT 아키텍처가 다른 방법보다 성능이 뛰어나다.
레퍼런스
댓글 없음:
댓글 쓰기