
点云重建
juebai123
这个作者很懒,什么都没留下…
展开
-
投影矩阵的使用(续)
接前面控制台显示用 meshlab 来把重建的点文件和pmvs的点文件比较一下旋转一下并没有远离,假如用下面这个匹配图直接重建会怎么样呢?这就相差很远了还有一些函数//读取一个投影矩阵void read1Project(string name,Mat &project){ ifstream in; //文件读翻译 2017-12-19 15:35:32 · 545 阅读 · 2 评论 -
稀疏重建-->密集重建的过渡文件
1。bundle.out文件包含了一些经过估算得到的场景和相机几何信息。文件的格式如下: //---------------------------------------------------------------------------------------------------------------------开始# Bundle file v0.3翻译 2017-12-15 18:39:55 · 1061 阅读 · 1 评论 -
把 bundle.out 读入内存中
现在,按照前面的 out 文件的说明,把 bundle.out 文件 读入内存中。 在bundle 中,有一系列 out 文件,如bundle.init.out、bundle_001.out、bundle.rd.out 等先定义几个结构体://在图像中的位置struct outPOINT2D{int n;//图片个数intsift_num;//sift序号原创 2017-12-16 08:44:42 · 1128 阅读 · 1 评论 -
从两幅图像的匹配点计算焦距f
从网络中找到两种计算焦距的方法1。两幅图像的单应矩阵H计算焦距f(取自《全景图拼接》opencv代码)//从两幅图像的单应矩阵H计算焦距f。void focalsFromHomography(const Mat& H, double &f0, double &f1, bool &f0_ok, bool &f1_ok){ CV_Assert(H.type() == CV_64转载 2018-01-01 13:13:51 · 2488 阅读 · 0 评论 -
初始内参矩阵
相机内参矩阵: fx s x0 K = 0 fy y0 0 0 1其中,fx,fy为焦距,一般设二者相等,初始设为图的长边长。x0、y0为主点坐标(相对于成像平面),为图像中心点坐标。s为畸变系数,初始设为0 int Focalf = max(image.rows, image.c翻译 2017-12-27 07:52:33 · 1332 阅读 · 2 评论 -
投影矩阵的使用
opencv3.0中有一个函数 triangulatePoints 可以用两个投影矩阵和匹配点来得到 3D点现在就用这个函数来重建,相当于一个简易的 pmvs。 先写一个流程:1。在visualize下读入两个图(已经崎变校正过的)2。检测特征点(可以任何一种,后面用AKAZE)3。匹配(1)粗配--match_feature翻译 2017-12-19 10:51:52 · 4631 阅读 · 2 评论 -
从两幅图像的取得相机畸变系数
现在利用bundler-v0.4-source 来取得内外参现在要把bundler作为一个函数来使用,首先要抛弃Cygwin,自己来做所有工作。先来看一下bundler的输入:1。一组图(最少两个图),由一个list.txt提供路径和文件名2。所有图的sift特征点和描述符 ,由list_keys.txt 提供3。一个从图像中提取得参考焦距,也放到list.txt 中4。一翻译 2018-01-13 11:18:27 · 4482 阅读 · 6 评论 -
由两个径向畸变系数生成不失真图像
根据前面得到的两个径向畸变系数来校正失真图像。校正函数://校正图象void UndistortImage(const std::string &in, //原始畸变图文件名 const camera_params_t &camera,//图像的焦距,和两个径向畸变系数 const std::string翻译 2018-01-17 09:28:28 · 883 阅读 · 0 评论