资源简介
一个关于坐标转换的算法,ICP迭代算法实现。VC++ 6.0
代码片段和文件信息
/*
Copyright 2011. All rights reserved.
Institute of Measurement and Control Systems
Karlsruhe Institute of Technology Germany
This file is part of libicp.
Authors: Andreas Geiger
libicp is free software; you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation; either version 3 of the License or any later version.
libicp is distributed in the hope that it will be useful but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with
libicp; if not write to the Free Software Foundation Inc. 51 Franklin
Street Fifth Floor Boston MA 02110-1301 USA
*/
// Demo program showing how libicp can be used
#include
#include “icpPointToPoint.h“
#include “icpPointToPlane.h“
#include “lasreader.h“
#include “laswriter.h“
#include “lasdefinitions.h“
using namespace std;
int main (int argc char** argv) {
// define a 3 dim problem with 10000 model points
// and 10000 template points:
int32_t dim = 3;
int32_t num=10000;
double* M = new double[3*num];
double* T = new double[3*num];
// set model and template points
cout << endl << “Creating model with 10000 points ...“ << endl;
cout << “Creating template by shifting model by (111) ...“ << endl;
int32_t k=0;
for (double x=-2; x<2; x+=0.04) {
for (double y=-2; y<2; y+=0.04) {
double z=5*x*exp(-x*x-y*y);
M[k*3+0] = x;
M[k*3+1] = y;
M[k*3+2] = z;
T[k*3+0] = x-1;
T[k*3+1] = y-1;
T[k*3+2] = z-1;
k++;
}
}
// start with identity as initial transformation
// in practice you might want to use some kind of prediction here
Matrix R = Matrix::eye(3);
Matrix t(31);
//double m=0.01;
// run point-to-plane ICP (-1 = no outlier threshold)
cout << endl << “Running ICP (point-to-plane no outliers)“ << endl;
IcpPointToPlane icp(Mnumdim);
icp.fit(TnumRt-1);
// results
cout << endl << “Transformation results:“ << endl;
cout << “R:“ << endl << R << endl << endl;
cout << “t:“ << endl << t << endl << endl;
// free memory
free(M);
free(T);
//delete []M;
//delete []T;
// success
return 0;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 325120 2014-03-30 18:29 ICPdemo_test\Debug\ICPdemo_test.exe
文件 1862524 2014-03-30 18:29 ICPdemo_test\Debug\ICPdemo_test.ilk
文件 2903040 2014-03-30 18:29 ICPdemo_test\Debug\ICPdemo_test.pdb
文件 11034 2014-03-31 19:30 ICPdemo_test\ICPdemo_test\Debug\cl.command.1.tlog
文件 535634 2014-03-31 19:30 ICPdemo_test\ICPdemo_test\Debug\CL.read.1.tlog
文件 8602 2014-03-31 19:30 ICPdemo_test\ICPdemo_test\Debug\CL.write.1.tlog
文件 406 2014-03-17 11:07 ICPdemo_test\ICPdemo_test\Debug\ICPdemo_test.exe.em
文件 472 2014-03-30 18:26 ICPdemo_test\ICPdemo_test\Debug\ICPdemo_test.exe.em
文件 381 2014-03-30 18:29 ICPdemo_test\ICPdemo_test\Debug\ICPdemo_test.exe.intermediate.manifest
文件 84 2014-03-31 19:30 ICPdemo_test\ICPdemo_test\Debug\ICPdemo_test.lastbuildstate
文件 2003 2014-03-31 19:30 ICPdemo_test\ICPdemo_test\Debug\ICPdemo_test.log
文件 0 2014-03-31 19:30 ICPdemo_test\ICPdemo_test\Debug\ICPdemo_test.unsuccessfulbuild
文件 214 2014-03-17 11:07 ICPdemo_test\ICPdemo_test\Debug\ICPdemo_test_manifest.rc
文件 79369 2014-03-31 19:28 ICPdemo_test\ICPdemo_test\Debug\lasreader.obj
文件 77775 2014-03-31 19:28 ICPdemo_test\ICPdemo_test\Debug\laswriter.obj
文件 2 2014-03-30 18:29 ICPdemo_test\ICPdemo_test\Debug\li
文件 2 2014-03-30 18:29 ICPdemo_test\ICPdemo_test\Debug\li
文件 2 2014-03-30 18:29 ICPdemo_test\ICPdemo_test\Debug\li
文件 2 2014-03-30 18:29 ICPdemo_test\ICPdemo_test\Debug\li
文件 2 2014-03-30 18:29 ICPdemo_test\ICPdemo_test\Debug\li
文件 2 2014-03-30 18:29 ICPdemo_test\ICPdemo_test\Debug\li
文件 2 2014-03-30 18:29 ICPdemo_test\ICPdemo_test\Debug\li
文件 2 2014-03-30 18:29 ICPdemo_test\ICPdemo_test\Debug\li
文件 2 2014-03-30 18:29 ICPdemo_test\ICPdemo_test\Debug\li
文件 2 2014-03-30 18:29 ICPdemo_test\ICPdemo_test\Debug\li
文件 5590 2014-03-30 18:29 ICPdemo_test\ICPdemo_test\Debug\li
文件 9966 2014-03-30 18:29 ICPdemo_test\ICPdemo_test\Debug\li
文件 3558 2014-03-30 18:29 ICPdemo_test\ICPdemo_test\Debug\li
文件 169566 2014-03-31 19:28 ICPdemo_test\ICPdemo_test\Debug\matrix.obj
文件 850 2014-03-30 18:29 ICPdemo_test\ICPdemo_test\Debug\mt.command.1.tlog
............此处省略56个文件信息
相关资源
- c++英语字典
- 孔令德 计算机图形学基础教程visual
- Essential C++中文版+完整源代码+习题答
- Visual C++6.0精简绿色版支持WIN10
- C++学习实用实践项目源代码
- 《Essential_C++》(中文版) pdf
- 数据结构C++语言版邓俊辉 高清版
- c++ 图像处理
- Effective C++ 3rd Edition 中文版.pdf
- 基于GBN的可靠数据传输
- VISUAL C++MFC编程85个PDF电子书
- C++ 编程思想238458
- Data Structures and Algorithms in C++ 2nd Edit
- Visual C++实践与提高-COM和COM+篇高清p
- C++程序设计基础(第4版)PPT课后答案
- C\\C++ 读写 HDF5 所需头文件和库文件
- C++ Templates 第2版 英文版
- C/C++ 程序员 面试宝典
- NSGA II代码实现集合包含、讲解及 网络
- C++游戏编程入门 中文版 第4版 高清
- C++语言程序设计-郑莉-清华大学本科教
- 台达ASDA2伺服电机简单控制C++程序
- c++ primer plus 高清pdf+ 源码
- Matlab安装MinGW-w64 C/C++ 编译器
- C和C++程序员面试秘笈完整版-董山海
- C和C++程序员面试秘笈
- 基于最短路径的物流分配方法
- C++程序设计教程(第二版)钱能高清
- c++超市管理系统 毕业论文参考
- C++_MFC的CButtonST含使用说明书及多个
评论
共有 条评论