포인트 클라우드 라이브러리
Point Cloud Library이 기사는 주제와 너무 밀접하게 연관된 출처에 과도하게 의존할 수 있으며, 잠재적으로 기사가 검증 가능하고 중립적인 것을 방해할 수 있다. 할 수 있는 에 보다 인용문으로 하여 하십시오. (2014년 10월) (이 템플릿 를 및 |
![]() | |
원본 작성자 | 윌로우 차고 |
---|---|
초기 릴리즈 | 2010년 3월;[1][2] | 전
안정적 해제 | 1.12.1 / 2021년 12월 21일,[3] 전 |
리포지토리 | |
운영 체제 | 크로스 플랫폼 |
유형 | 도서관 |
면허증 | BSD 라이선스 |
웹사이트 | pointclouds |
PCL(Point Cloud Library)은 3차원 컴퓨터 비전에서 발생하는 것과 같은 점 구름 처리 작업과 3D 기하 처리를 위한 알고리즘의 오픈 소스 라이브러리다.라이브러리에는 필터링, 형상 추정, 표면 재구성, 3D 등록,[4] 모델 피팅, 객체 인식 및 분할에 대한 알고리즘이 포함되어 있다.각 모듈은 별도로 컴파일할 수 있는 작은 라이브러리(예: libpcl_filters, libpcl_features, libpcl_features, ...)로 구현된다.PCL은 포인트 클라우드 저장용 데이터 포맷인 PCD(Point Cloud Data)를 가지고 있지만, 데이터셋을 로드하고 다른 포맷으로 저장할 수도 있다.C++로 쓰여 있으며 BSD 라이선스에 따라 발매된다.
이 알고리즘, 예를 들어, 감지 로봇 공학에서 시끄러운 데이터, 땀 3D지점 구름 같이, 세그먼트 관련 한 장면의 부분, 추출물 keypoints과 각 분야별 색인을 아우르는 세상을 그들의 기하학적 외모에 근거한에서, 점과 구름에서 면을 만들고 그들을 시각화 사물을 인식하는 특수한 필터링 하는 데 사용되었다.[5][검증 실패한]
PCL에는 몇 개의 타사 라이브러리가 작동해야 하며,반드시 설치해야 한다.대부분의 수학 연산은 아이겐 라이브러리를 사용하여 구현된다.3D 포인트 클라우드용 시각화 모듈은 VTK를 기반으로 한다.Boost는 공유 포인터와 FLANN 라이브러리에 사용되어 빠른 k-가장 가까운 이웃을 검색할 수 있다.Qhull, OpenNI 또는 Qt와 같은 추가 라이브러리는 선택 사항이며 추가 기능으로 PCL을 확장한다.
PCL은 가장 많이 사용되는 운영 체제인 리눅스, 윈도, 맥OS, 안드로이드에서 실행되는 크로스 플랫폼 소프트웨어다.이 라이브러리는 로봇 운영 체제(ROS)와 완벽하게 통합되어 있으며 멀티 코어 병렬 처리를 위한 OpenMP 및 Intel TBB(Trading Building Block) 라이브러리를 지원한다.[6][7]
도서관은 끊임없이 업데이트되고 확장되며, 다양한 산업에서 도서관의 이용은 끊임없이 증가하고 있다.예를 들어 PCL은 구글 서머 오브 코드 2020 이니셔티브에 3개의 프로젝트로 참여했다.하나는 파이빈드11을 이용한 파이톤과 함께 사용할 수 있는 PCL의 확장이었다.[8]
PCL 웹사이트에서 C++ 소스 파일 또는 개별 단계에 대한 상세한 설명과 설명이 포함된 자습서로 많은 수의 예시와 자습서를 이용할 수 있다.
적용들
포인트 클라우드 라이브러리는 다양한 분야에서 널리 사용되고 있으며, 몇 가지 예를 들 수 있다.
- 3D 포인트 클라우드 연결
- 3D 물체의 기하학적 외관을 인식하다
- 노이즈가 많은 데이터 필터링 및 평활화
- 점 구름으로 표면을 만들다
- 이전에 캡처한 객체의 모델을 새로 캡처한 일부 데이터에 맞춤
- 클러스터 인식 및 6DOF 포즈 추정
- 실시간 시각화를 통해 모바일 장치에 클라우드 스트리밍을 포인트
타사 라이브러리
PCL은 아래에 나열된 몇 개의 타사 라이브러리를 설치할 것을 요구한다.일부 라이브러리는 선택 사항이며 추가 기능으로 PCL을 확장한다.PCL 라이브러리는 CMake 빌드 시스템(http://www.cmake.org/) 적어도 버전 3.5.0에서는)으로 구축된다.[9][7]
필수 라이브러리:
- 부스트(http://www.boost.org/) 이상 버전 1.46.1)이 C++ 라이브러리 세트는 스레딩 및 공유 포인터에 주로 사용되므로 이미 시스템에 있는 데이터를 다시 복사할 필요가 없다.
- 아이겐(http://eigen.tuxfamily.org/)은 적어도 3.0.0 버전에서는 필요하다.선형대수학(수학, 벡터)을 위한 오픈소스 템플릿 라이브러리다.PCL의 대부분의 수학적 연산(SSE 최적화)은 아이겐과 함께 구현된다.
- FLANN(버전 1.6.8 이상에서 http://www.cs.ubc.ca/research/flann/)).그것은 고차원 공간에서 가장 가까운 가까운 이웃의 빠른 검색을 수행하는 도서관이다.PCL에서는 kdtree 모듈에서 k-가장 가까운 빠른 이웃 검색 작업을 위해 특히 중요하다.
- VTK - Visualization ToolKit(http://www.vtk.org/) 이상 버전 5.6.1)3D 포인트 클라우드, 모델링, 이미지 처리, 볼륨 렌더링을 위한 멀티플랫폼 소프트웨어 시스템.점 구름 렌더링 및 시각화를 위해 시각화 모듈에 사용.
일부 추가 기능을 활성화하는 선택적 라이브러리:
- 버전 >= 2011.1의 QHUL (http://www.qhull.org/)에서는 볼록 선체, 델라우나이 삼각측량, 보로노이 도표 등의 연산을 실시한다.PCL에서는 표면의 볼록/콘크리브 선체 분해에 사용된다.
- 버전 >= 1.1.0.25(http://www.openni.org/)의 OpenNI는 깊이 센서에 대한 단일 통합 인터페이스를 제공한다.장치에서 점 구름을 검색하는 데 사용된다.
- Qt 버전 >= 4.6(https://www.qt.io/)은 그래픽 사용자 인터페이스(GUI)를 가진 애플리케이션 개발에 사용되는 교차 플랫폼 C++ 프레임워크다.
- 버전 >= 1.6.0 (http://code.google.com/p/googletest/)은 C++ 테스트 프레임워크다.PCL에서는 테스트 유닛을 구축하는 데 사용된다.
PCD 파일 형식
PCD(Point Cloud Data)는 3D 포인트 클라우드 데이터를 저장하기 위한 파일 형식이다.기존 포맷이 PCL 라이브러리에서 제공하는 일부 기능을 지원하지 않아 만들어졌다.PCL의 기본 데이터 형식은 PCL이지만, 라이브러리는 다른 형식(PLY, IFS, VTK, STL, OBJ, X3D 등)으로 데이터를 저장하고 로드할 수 있는 기능도 제공한다.그러나 이러한 다른 포맷들은 PCD 파일의 유연성과 속도를 가지고 있지 않다.PCD의 장점 중 하나는 조직화된 포인트 클라우드 데이터셋을 저장하고 처리하는 능력이다.또 하나는 이진 형태로 저장된 포인트의 매우 빠른 저장과 로딩이다.[10][11]
버전
PCD 버전은 각 파일의 헤더에 숫자 0.x(예: 0.5, 0.6 등)로 지정된다.2020년 정식 버전은 PCD 0.7(PCD_V7)이다.버전 0.6과 비교한 주요 차이점은 새로운 헤더 - POSITE가 추가되었다는 것이다.데이터 집합과 관련된 센서의 방향에 대한 정보를 지정한다.[12]
파일 구조
PCD 파일은 헤더와 데이터라는 두 부분으로 나뉜다.헤더에는 정밀하게 정의된 형식이 있으며, 헤더에 저장된 포인트 클라우드 데이터에 대해 필요한 정보가 포함되어 있다.헤더는 ASCII로 인코딩되어야 하지만, 데이터는 ASCII 또는 이진 형식으로 저장할 수 있다.ASCII 형식이 인간의 판독성이 더 뛰어나기 때문에 표준 소프트웨어 도구에서 열 수 있고 쉽게 편집할 수 있다.
0.7 버전에서 PCD 파일의 버전은 헤더 시작 부분에 있고, 저장된 데이터의 각 차원의 이름, 크기 및 유형이 그 뒤에 있다.또한 전체 클라우드에서 여러 포인트(높이*폭)와 포인트 클라우드 데이터 세트가 구성되었는지, 구성되지 않았는지에 대한 정보를 보여준다.데이터 유형은 점 구름 데이터가 저장되는 형식(ASCII 또는 이진)을 지정한다.헤딩 뒤에 포인트 세트가 따라온다.각각의 포인트는 별도의 라인(비조직화된 포인트 클라우드)에 저장하거나, 이미지처럼 조직된 구조(조직화된 포인트 클라우드)에 저장될 수 있다.[10]헤더 항목에 대한 자세한 내용은 설명서를 참조하십시오.다음은 PCD 파일의 예다.헤더 항목의 순서가 중요하다!
# .PCD v.7 - Point Cloud Data file format VERSION .7 FIELDS x y z rgb SIZE 4 4 4 4 TYPE F F F F COUNT 1 1 1 1 WIDTH 213 HEIGHT 1 VIEWPOINT 0 0 0 1 0 0 0 POINTS 213 DATA ascii 0.93773 0.33763 0 4.2108e+06 0.90805 0.35641 0 4.2108e+06 0.81915 0.32 0 4.2108e+06 0.97192 0.278 0 4.2108e+06 ... ...
역사
포인트 클라우드 도서관의 개발은 2010년 3월 윌로우 차고에서 시작되었다.이 프로젝트는 처음에 윌로우 정비소의 하위 영역에 거주하다가 2011년 3월에 새로운 웹사이트 www.pointclouds.org으로 이전했다.[1]PCL의 첫 정식 출시(버전 1.0)는 두 달 뒤인 2011년 5월 출시됐다.[2]
모듈
PCL은 별도로 컴파일할 수 있는 몇 개의 작은 코드 라이브러리로 나뉜다.가장 중요한 몇몇 모듈과 그 기능이 아래에 설명되어 있다.[13][14]
필터
3D 포인트 클라우드를 스캔할 때 오류와 다양한 편차가 발생할 수 있으며, 이로 인해 데이터에 노이즈가 발생할 수 있다.이는 표면 정규와 같은 일부 국지적 점 구름 특성 추정을 복잡하게 한다.이러한 부정확성은 추가 처리 시 중대한 오류를 초래할 수 있으므로 적절한 필터로 제거하는 것이 바람직하다.pcl_filters 라이브러리는 특이치와 노이즈를 제거하고 데이터 다운샘플링에 유용한 필터를 제공한다.이들 중 일부는 점을 다듬기 위해 간단한 기준을 사용하고, 다른 일부는 통계 분석을 사용한다.
- PassThrough 필터 - 선택한 치수 하나로 점을 필터링하는 데 사용된다.사용자가 지정한 범위 내에 있지 않은 지점을 차단할 수 있다는 뜻이다.
- 복셀그리드 필터 - 점 구름에 복셀 그리드를 만든다.그런 다음 각 복셀 내부의 점들은 그 중심에 의해 근사하게 계산된다.이는 점 구름 데이터의 다운샘플링(점수 감소)으로 이어진다.
- StatisticalOutlierRemoval 필터 - 각 점의 주변에 적용되는 통계 분석 기법을 사용하여 점 구름 데이터 집합에서 노이즈를 제거하고 평균 거리가 정의된 구간을 벗어나는 모든 점을 자른다.
- RadiusOutlierRemoval 필터 - 정의된 인접 네트워크에서 선택한 인접 개수보다 적은 점을 제거하십시오.
특징들
pcl_features 라이브러리에는 3D 기능 추정을 위한 알고리즘과 데이터 구조가 포함되어 있다.주로 사용되는 국소 기하학적 형상은 점 정규 및 기초 표면의 추정 곡면성이다.특징들은 선택된 k-근접(점 주위에 선택된 데이터 공간)을 바탕으로 특정 지점의 기하학적 패턴을 설명한다.근방은 가장 가까운 지역에서 고정된 점의 수를 결정하거나 점 주위의 구 반경을 정의하여 선택할 수 있다.
표면 정규 분포를 추정하기 위해 가장 쉽게 구현되는 방법 중 하나는 점 근처에서 생성된 공분산 행렬의 고유 벡터와 고유값을 분석하는 것이다.점 피쳐 히스토그램(또는 더 빠른 FPFH) 설명자는 고급 피쳐 표현이며 각 포인트의 정상 추정치에 의존한다.값의 다차원 히스토그램을 사용하여 점 주위의 평균 곡면성을 일반화한다.라이브러리의 다른 설명자 중에는 VFH(Pointment Feature Histogram), NARF 설명자, 관성 및 편심률 기반 설명자, GASD(Global Aligned Spatial Distribution) 설명자 등이 있다.
분할
pcl_segmentation 라이브러리는 점 구름을 다른 클러스터로 분할하기 위한 알고리즘을 포함하고 있다.클러스터링은 클라우드를 개별적인 부분으로 나누기 위해 종종 사용되는데, 이는 추가적으로 처리될 수 있다.다양한 세분화 방법을 지원하는 몇 가지 클래스가 구현되어 있다.
- 평면 모델 분할 - 점 구름에서 평면 모델을 지원하는 모든 점을 찾는 간단한 알고리즘
- 유클리드 군집화 - 유클리드 거리를 기반으로 점 군집 생성
- 조건부 유클리드 군집화 - 유클리드 거리 및 사용자 정의 조건을 기반으로 한 군집화 지점
- 영역 증가 분할 - 부드러움 제약 조건 측면에서 충분히 가까운 점 병합
- 색상 기반 영역 증가 분할 - 영역 증가와 동일한 개념이지만 정규 대신 색상을 사용
- Min-Cut 기반 바이너리 분할 - 전경에서 클라우드를 분할하고 지점의 배경 세트
- Normals Based Segmentation의 차이 - 스케일 기반 세그먼트화, 주어진 스케일 파라미터 내에 속하는 점 찾기
- 슈퍼록셀 클러스터링 - 3D 포인트 클라우드 데이터의 체적 과분할 생성
시각화
pcl_시각화 라이브러리는 3D 포인트 클라우드 데이터를 빠르고 쉽게 시각화하는 데 사용된다.이 패키지는 클라우드 및 범위 이미지를 3D 렌더링하는 데 VTK 라이브러리를 사용한다.도서관은 다음을 제공한다.
- CloudViewer 클래스는 간단한 포인트 클라우드 시각화용입니다.
- RangeImageVisualizer를 사용하여 범위 이미지를 3D 포인트 클라우드 또는 색상이 범위 값에 해당하는 그림으로 시각화할 수 있다.
- PCLVisualizer는 여러 응용 프로그램이 있는 시각화 클래스다.심플한 포인트 클라우드와 컬러 데이터를 담은 포인트 클라우드를 모두 표시할 수 있다.CloudViewer와 달리 노멀, 주 곡선, 기하학적 구조 등 흥미로운 포인트 클라우드 정보도 그릴 수 있다.여러 점 구름을 나란히 표시하여 쉽게 비교할 수 있도록 하거나, 점 집합이나 파라메트릭 방정식에서 다양한 원시 형태(예: 실린더, 구, 선, 다각형 등)를 그릴 수 있다.
- PCLPlotter 클래스는 다항함수에서 히스토그램에 이르기까지 그래프를 쉽게 플로팅하는 데 사용된다.다양한 유형의 플롯 입력(좌표, 함수)을 처리할 수 있으며 자동 채색을 한다.
- PCLHistogramVisualizer는 2D 그림을 위한 히스토그램 시각화 모듈이다.
등록
등록은 서로 다른 뷰에서 획득한 다양한 포인트 클라우드 데이터셋을 단일 포인트 클라우드 모델로 정렬하는 문제다.pcl_registration 라이브러리는 조직화된 데이터셋과 비조직화된 데이터셋 모두에 대해 포인트 클라우드 등록 알고리즘의 수를 구현한다.과제는 데이터 세트 사이에 해당하는 점을 식별하고 그 거리를 최소화하는 변환을 찾는 것이다.
반복적 근점 알고리즘은 두 점 구름 사이의 거리를 최소화하고 있다.한 PointCloud가 다른 PointCloud의 경직된 전환에 불과한지를 판단하는 데 사용할 수 있다.NDT(Normal Distribution Transform, NDT)는 10만 점 이상의 두 점 구름 사이의 경직된 변환을 결정하는 데 사용할 수 있는 등록 알고리즘이다.
샘플 컨센서스
샘플_Consensus 라이브러리는 RANSAC와 같은 SAMPLE Consensus(SAC) 방식과 포인트 클라우드에서 특정 물체를 감지하는 모델을 보유하고 있다.이 라이브러리에서 구현된 모델 중 일부는 벽이나 바닥과 같은 내부 표면을 감지하는 데 자주 사용되는 평면 모델을 포함한다.다음 모델은 평면, 구체, 실린더, 원뿔의 선, 2D 및 3D 원, 주어진 축과 평행한 선 결정 모델, 사용자 지정 축에 수직인 평면을 결정하는 모델, 사용자 지정 축에 평행한 평면 등이다.이것들은 일반적인 기하학적 구조를 가진 물체를 감지하는 데 사용될 수 있다(예: 머그잔에 실린더 모델을 장착하는 것).
라이브러리에서 사용할 수 있는 강력한 샘플 컨센서스 평가기:
- SAC_RANSAC - RANdom SAMPLE 컨센서스
- SAC_LMEDS - 최소 제곱 중위수
- SAC_MSAC - M-추정기 SAMPLE 컨센서스
- SAC_RRANSAC - 랜덤화된 RANSAC
- SAC_RMSAC - 랜덤화 MSAC
- SAC_MLESAC - 최대 유사성 추정 SAMPLE 컨센서스
- SAC_PROSAC - PROGPUCTION SAMPLE 컨센서스
표면
3D 포인트 클라우드의 표면 재구성을 위한 몇 가지 알고리즘이 pcl_surface 라이브러리에서 구현된다.표면을 재구성하는 방법에는 몇 가지가 있다.가장 흔히 쓰이는 것 중 하나가 메싱인데, PCL 라이브러리에는 두 가지 알고리즘이 있는데, 원점 삼각측정이 매우 빠르고 네트워킹이 느려서 역시 매끄럽고 구멍이 메워진다.클라우드가 소음이 심할 경우 구현된 알고리즘 중 하나를 사용하여 표면 평활을 사용하는 것이 바람직하다.
MLS(Moving Last Square) 표면 재구성 방법은 표면의 누락된 부분을 재구성할 수 있는 재샘플링 알고리즘이다.MLS는 주변 데이터 지점 간의 고차 다항식 보간 덕분에 스캔으로 인한 작은 오류를 수정하고 매끄럽게 처리할 수 있다.
탐욕스러운 투영 삼각측정은 정규 분포를 사용하여 정렬되지 않은 PointCloud에서 빠른 표면 삼각 측량을 위한 알고리즘을 구현한다.그 결과는 점의 정상을 따라 점의 로컬 근방을 투영하여 만들어진 삼각망이다.표면이 국소적으로 매끄럽고 점 밀도가 다른 영역 간에 매끄러운 전환이 있을 경우 가장 효과적이다.점 연결 시 고려하는 파라미터(근접 검색 횟수, 점 최대 거리, 삼각형의 최소 및 최대 각도)가 많이 설정될 수 있다.
도서관은 평면 모델을 위한 오목하거나 볼록한 선체 다각형 생성 기능, 그리드 투영 표면 재구성 알고리즘, 행진 큐브, 귀 자르기 삼각측량 알고리즘, 포아송 표면 재구성 알고리즘 등을 구현한다.
I/O
io_library를 사용하면 다양한 장치에서 클라우드를 캡처할 수 있을 뿐만 아니라 포인트 클라우드를 파일에 로드하고 저장할 수 있다.필드 유형과 개수가 동일한 두 개의 서로 다른 점 구름의 점을 결합할 수 있는 기능을 포함한다.또한 라이브러리는 동일한 수의 점으로 서로 다른 두 점 구름의 필드(예: 치수)를 연결할 수 있다.
이 라이브러리는 PCL 1.0부터 다양한 장치와 파일 형식에 쉽게 접근할 수 있는 새로운 일반 그래버 인터페이스를 제공한다.데이터 수집을 위해 지원되는 첫 번째 장치는 Open이었습니다.NI 호환 카메라(Primesense Reference Design, Microsoft Kinect 및 Asus Xtion Pro 카메라로 테스트됨).PCL 1.7을 기준으로 360도 포인트 클라우드를 생성하는 Velodyne High Definition LiDAR(HDL) 시스템에서도 포인트 클라우드 데이터를 얻을 수 있다.PCL은 원래의 HDL-64e와 HDL-32e를 모두 지원한다.다이너스트 카메라(IPA-1110, Cyclopes II, IPA-1002 ng T-Less NG로 테스트됨)를 위한 새로운 드라이버도 있다.PCL 1.8은 IDS-이미징 Ensenso 카메라, DepthSense 카메라(예: Creative Senz3D, DepthSense DS325) 및 DavidSDK 스캐너에 대한 지원을 제공한다.
KdTree
pcl_kdtree 라이브러리는 kd-tree 데이터 구조를 제공하여 k차원 공간에 점 집합을 구성할 수 있다.특정 지점 또는 위치의 K 가장 가까운 이웃(FLANN 사용)을 찾기 위해 사용한다.
옥트리
pcl_octree 라이브러리는 포인트 클라우드 데이터에 대해 8진수 계층형 트리 데이터 구조를 구현한다.도서관은 "복셀 검색 내의 근거리", "K 가장 가까운 이웃 검색", "반경 검색 내 근거리 검색"과 같은 가장 가까운 이웃 검색 알고리즘을 제공한다.또한 리프 노드의 속성에 따라 달라지는 여러 종류의 옥트리 종류가 있다.각 리프 노드는 단일 점 또는 점 지수 목록을 포함할 수 있으며, 또는 점 정보를 저장하지 않는다.도서관은 또한 옥텟 트리 구조의 재귀적 비교를 통해 다중 미조직 점 구름 사이의 공간 변화를 감지하는 데 사용될 수 있다.
검색
pcl_search 라이브러리는 KdTree, Octree 또는 조직화된 데이터셋에 대한 전문 검색과 같은 다른 모듈에서 찾을 수 있는 서로 다른 데이터 구조를 사용하여 가장 가까운 이웃을 검색하는 방법을 구현한다.
범위 이미지
range_image 라이브러리에는 픽셀 값이 센서와의 거리를 나타내는 범위 영상을 표시하고 작업하기 위한 두 클래스가 포함되어 있다.범위 이미지는 센서 위치가 지정되거나 그 위치에서 테두리를 추출할 수 있는 경우 점 구름으로 변환될 수 있다.
요점
pcl_keypoints 라이브러리에는 포인트 클라우드 키포인트 검출 알고리즘(AGAST 코너 포인트 검출기, 해리스 검출기, BRICE 검출기 등) 구현이 포함되어 있다.
공통의
pcl_common 라이브러리는 포인트 클라우드의 핵심 데이터 구조, 포인트 표현 유형, 표면 표준, RGB 색상 값 등을 포함한다.또한 거리, 평균값 및 공분산, 기하학적 변환 등을 계산하는 데 유용한 방법이 구현되어 있다.공용 라이브러리는 주로 다른 PCL 모듈에 의해 사용된다.
참조
- ^ a b B. Rusu, Radu (28 March 2011). "PointClouds.org: A new home for Point Cloud Library (PCL)". Willow Garage. Retrieved 26 November 2012.
- ^ a b 웨이백 머신에 2020-01-06 "PCL 1.0!". PCL. 12 May 2011. Retrieved 24 May 2013.보관
- ^ "Releases · PointCloudLibrary/PCL".
- ^ Holz, Dirk; Ichim, Alexandru E.; Tombari, Federico; Rusu, Radu B.; Behnke, Sven (2015). "Registration with the Point Cloud Library: A Modular Framework for Aligning in 3-D". IEEE Robotics Automation Magazine. 22 (4): 110–124. doi:10.1109/MRA.2015.2432331. S2CID 2621807.
- ^ 로봇 운영 체제: http://www.ros.org/wiki
- ^ Hsieh, C. (2012). "An efficient development of 3D surface registration by Point Cloud Library (PCL)". 2012 International Symposium on Intelligent Signal Processing and Communications Systems: 729–734. doi:10.1109/ISPACS.2012.6473587. ISBN 978-1-4673-5082-2. S2CID 5449026.
- ^ a b Rusu, R. B.; Cousins, S. (2011). "3D is here: Point Cloud Library (PCL)". 2011 IEEE International Conference on Robotics and Automation: 1–4. doi:10.1109/ICRA.2011.5980567. ISBN 978-1-61284-386-5. S2CID 206849822.
- ^ "Google Summer of Code 2020". Point Cloud Library. Retrieved 2020-11-09.
- ^ "Building PCL's dependencies from source on Windows — Point Cloud Library 0.0 documentation". pcl.readthedocs.io. Retrieved 2020-11-02.
- ^ a b "The PCD (Point Cloud Data) file format — Point Cloud Library 0.0 documentation". pcl.readthedocs.io. Retrieved 2020-11-02.
- ^ "The PCD (Point Cloud Data) file format — Point Cloud Library 0.0 documentation".
- ^ "Point Cloud Library (PCL): pcl::PCDReader Class Reference". pointclouds.org. Retrieved 2020-11-02.
- ^ "PCL Walkthrough — Point Cloud Library 0.0 documentation". pcl.readthedocs.io. Retrieved 2020-11-03.
- ^ "Introduction — Point Cloud Library 0.0 documentation". pcl.readthedocs.io. Retrieved 2020-11-04.