PCL(3): Point Cloud 데이터를 PCD 파일에 쓰기
15062 단어 점운
1. 코드
pcdwrite.cpp의 파일이며 다음 코드가 들어 있습니다.
#include
#include
#include
int
main (int argc, char** argv)
{
pcl::PointCloud<pcl::PointXYZ> cloud;
// Fill in the cloud data
cloud.width = 5;
cloud.height = 1;
cloud.is_dense = false;
cloud.points.resize (cloud.width * cloud.height);
for (std::size_t i = 0; i < cloud.points.size (); ++i)
{
cloud.points[i].x = 1024 * rand () / (RAND_MAX + 1.0f);
cloud.points[i].y = 1024 * rand () / (RAND_MAX + 1.0f);
cloud.points[i].z = 1024 * rand () / (RAND_MAX + 1.0f);
}
pcl::io::savePCDFileASCII ("test_pcd.pcd", cloud);
std::cerr << "Saved " << cloud.points.size () << " data points to test_pcd.pcd." << std::endl;
for (std::size_t i = 0; i < cloud.points.size (); ++i)
std::cerr << " " << cloud.points[i].x << " " << cloud.points[i].y << " " << cloud.points[i].z << std::endl;
system("pause");
return (0);
}
2. 설명
이제 코드를 단계별로 분해합시다.
#include
#include
첫 번째 파일은 PCD의 입출력 작업 정의를 포함하는 헤더 파일이고, 두 번째 파일은 pcl::PointXYZ를 포함한 몇 가지 점 유형 구조의 정의를 포함한다.우리가 사용할 구조는 바로 이것이다.
pcl::PointCloud<pcl::PointXYZ> cloud;
우리가 만들 템플릿화된 PointCloud 구조를 설명합니다. 유형의 각 점은 pcl::PointXYZ로 설정됩니다.
// Fill in the cloud data
cloud.width = 5;
cloud.height = 1;
cloud.is_dense = false;
cloud.points.resize (cloud.width * cloud.height);
for (std::size_t i = 0; i < cloud.points.size (); ++i)
{
cloud.points[i].x = 1024 * rand () / (RAND_MAX + 1.0f);
cloud.points[i].y = 1024 * rand () / (RAND_MAX + 1.0f);
cloud.points[i].z = 1024 * rand () / (RAND_MAX + 1.0f);
}
PointCloud 구조를 임의 점 값으로 채우고 적절한 매개변수(너비, 높이, is dense)를 설정합니다.
pcl::io::savePCDFileASCII ("test_pcd.pcd", cloud);
PointCloud 데이터를 테스트라는 이름으로 디스크에 저장합니다.pcd.pcd 파일
std::cerr << "Saved " << cloud.points.size () << " data points to test_pcd.pcd." << std::endl;
for (std::size_t i = 0; i < cloud.points.size (); ++i)
std::cerr << " " << cloud.points[i].x << " " << cloud.points[i].y << " " << cloud.points[i].z << std::endl;
생성된 데이터를 표시하는 데 사용합니다.
3. 결과
다음과 같이 표시됩니다.
Saved 5 data points to test_pcd.pcd. 1.28125 577.094 197.938 828.125 599.031 491.375 358.688 917.438 842.563 764.5 178.281 879.531 727.531 525.844 311.281
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
RealSense D400 시리즈 설치 방법(Windows 편)다음 github에서 Intel로 이동합니다.RealSense.SDK.다운로드 Intel.RealSense.SDK.설치 exe RealSense D400 시리즈를 USB 3으로 사용합니다.0까지 찌르기 끝났어!(가끔...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.