資源簡介
介紹使用基于窗口的稀疏點匹配及三維重建的程序實現,程序使用OpenCV、OpenGL、以及GLUT實現。

代碼片段和文件信息
#include?“cv.h“
#include?“highgui.h“
#include?“cvut/cvut.h“
#include?“three_dimensional_reconstruction.h“
#include?
#include?
#include?
#include?
using?namespace?std;
using?namespace?cvut;
#pragma?comment(lib“cxcore“)
#pragma?comment(lib“cv“)
#pragma?comment(lib“highgui“)
//#define?REAL_TIME_MATCHING_SHOW
int?main(int?argcchar**?argv)
{
string?left_image_name?=?“image/1_l.bmp“;
string?right_image_name?=?“image/1_r.bmp“;
Image?left(left_image_name);
Image?right(right_image_name);
Matrix?M1(341);
Matrix?M2(341);
/************************************************************************
獲取透視投影矩陣
*************************************************************************/
ifstream?fin(“projective_matrix.txt“);
int?ij;
for?(i=0;i<3;i++)?{
for?(j=0;j<4;j++)?{
fin>>M1(ij);
}
}
for?(i=0;i<3;i++)?{
for?(j=0;j<4;j++)?{
fin>>M2(ij);
}
}
/************************************************************************
計算基礎矩陣
*************************************************************************/
Matrix?F(calc_fundamental(M1M2));
CvMatrix3?matrix;
for?(int?x=0;x<3;x++)?{
for?(int?y=0;y<3;y++)?{
matrix.m[x][y]=F(xy);
}
}
/************************************************************************
圖像校正
*************************************************************************/
cout<<“圖像校正……“;
left.show(“校正前?left“);
right.show(“校正前?right“4000);
cvWaitKey();
left.close();
right.close();
do_morphing(leftright&matrix);
left.show(“校正后?left“);
right.show(“校正后?right“4000);
cvWaitKey();
left.close();
right.close();
cout<<“完成“< /************************************************************************
特征提取
*************************************************************************/
cout<<“特征提取……“;
Image?left_gray(left.size()81);
Image?right_gray(right.size()81);
Image?left_edge(left.size()81);
Image?right_edge(right.size()81);
//獲取灰度圖
rgb2gray(leftleft_gray);
rgb2gray(rightright_gray);
//直方圖均衡化
hist_equalize(left_gray);
hist_equalize(right_gray);
//輪廓提取
? cvCanny(left_gray.cvimageleft_edge.cvimage10.110.0);
? cvCanny(right_gray.cvimageright_edge.cvimage10.110.0);
left_edge.show(“left“);
right_edge.show(“right“4000);
cvWaitKey();
left_edge.close();
right_edge.close();
//輪廓腐蝕
cvDilate(right_edge.cvimageright_edge.cvimageNULL1);
cvDilate(left_edge.cvimageleft_edge.cvimageNULL1);
left_edge.show(“left“);
right_edge.show(“right“4000);
cvWaitKey();
left_edge.close();
right_edge.close();
cout<<“完成“<
/************************************************************************
特征匹配
*************************************************************************/
cout<<“特征匹配……“;
vector?>?depth;
vect
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????277??2007-05-29?14:05??稀疏點匹配與重建\cvut_test\cvut\cvut.h
?????文件???????5172??2007-05-29?13:28??稀疏點匹配與重建\cvut_test\cvut\cvutImage.h
?????文件??????16538??2007-05-29?14:13??稀疏點匹配與重建\cvut_test\cvut\cvutMatrix.h
?????文件???????6162??2007-05-29?14:08??稀疏點匹配與重建\cvut_test\cvut\cvutSeq.h
?????文件???????6442??2007-05-29?14:34??稀疏點匹配與重建\cvut_test\cvut\cvutUtil.h
?????文件???????5007??2007-06-19?20:13??稀疏點匹配與重建\cvut_test\cvut_test.dsp
?????文件????????543??2007-05-29?14:36??稀疏點匹配與重建\cvut_test\cvut_test.dsw
?????文件?????716899??2008-08-02?17:56??稀疏點匹配與重建\cvut_test\cvut_test.exe
?????文件?????320512??2008-08-02?17:57??稀疏點匹配與重建\cvut_test\cvut_test.ncb
?????文件??????62976??2008-08-02?17:57??稀疏點匹配與重建\cvut_test\cvut_test.opt
?????文件???????5068??2008-08-02?17:56??稀疏點匹配與重建\cvut_test\cvut_test.plg
?????文件????????587??2007-06-21?22:04??稀疏點匹配與重建\cvut_test\cvut_test.positions
?????文件??????27670??2000-12-13?00:22??稀疏點匹配與重建\cvut_test\glut.h
?????文件?????237568??2001-11-08?02:27??稀疏點匹配與重建\cvut_test\glut32.dll
?????文件??????28728??2001-11-08?02:27??稀疏點匹配與重建\cvut_test\glut32.lib
?????文件?????111670??2006-10-31?21:31??稀疏點匹配與重建\cvut_test\image\1_l.bmp
?????文件?????111670??2006-10-31?21:31??稀疏點匹配與重建\cvut_test\image\1_r.bmp
????..A.SH.?????22528??2007-06-19?23:45??稀疏點匹配與重建\cvut_test\image\Thumbs.db
?????文件???????6689??2007-06-21?21:51??稀疏點匹配與重建\cvut_test\image_rectify.cpp
?????文件???????7409??2003-06-05?17:01??稀疏點匹配與重建\cvut_test\ltga.cpp
?????文件???????4065??2003-06-05?17:01??稀疏點匹配與重建\cvut_test\ltga.h
?????文件????????295??2007-05-19?11:20??稀疏點匹配與重建\cvut_test\projective_matrix.txt
?????文件???????9658??2007-07-30?18:03??稀疏點匹配與重建\cvut_test\three_dimensional_reconstruction.cpp
?????文件????????876??2007-05-29?14:07??稀疏點匹配與重建\cvut_test\three_dimensional_reconstruction.h
?????目錄??????????0??2008-08-02?18:13??稀疏點匹配與重建\cvut_test\cvut
?????目錄??????????0??2008-08-02?18:13??稀疏點匹配與重建\cvut_test\image
?????目錄??????????0??2008-08-02?18:13??稀疏點匹配與重建\cvut_test
?????目錄??????????0??2008-08-02?18:13??稀疏點匹配與重建
-----------?---------??----------?-----??----
??????????????1715009????????????????????28
............此處省略1個文件信息
評論
共有 條評論