数字摄影测量实习报告_第1页
数字摄影测量实习报告_第2页
数字摄影测量实习报告_第3页
数字摄影测量实习报告_第4页
数字摄影测量实习报告_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程编:

课程性:必修数字摄影量实习学院:专业:

测绘学院测绘工程地点:

内班级:组号:姓名:学号:

201116110教师:

徐李

芳妍申丽丽20144月10

至20144月30目录实习目的..................................................................................................................................1VirtuoZo实习过程..................................................................................................................11、数据准备以及初步处理....................................................................................................1新建测区....................................................................................................................1初步处理....................................................................................................................1进一步处理................................................................................................................2产品生成....................................................................................................................2DEM编辑.............................................................................................................................2DEM拼接.............................................................................................................................3图像镶嵌............................................................................................................................4IGS数字化测图.................................................................................................................4空中三角测量....................................................................................................................5数据准备及预处理....................................................................................................5交互式编辑................................................................................................................6三角测量....................................................................................................................7DEM拼接和正射影像作.........................................................................................7三、GeoWay实习过程..................................................................................................................81、交互式编辑........................................................................................................................8新建工程并设置相关参数........................................................................................8生成内图廓................................................................................................................8交互式编辑................................................................................................................92、空三加密..........................................................................................................................10数据准备及检查......................................................................................................1控制网平差..............................................................................................................1精确匹配并查看匹配结果......................................................................................1刺点..........................................................................................................................13、立体测图..........................................................................................................................12新建方案和数据准备..............................................................................................12初步处理..................................................................................................................12批处理......................................................................................................................1地物采集..................................................................................................................1DEM编辑...................................................................................................................1TIN网编辑...............................................................................................................1质量检查..................................................................................................................1四、编程........................................................................................................................................17空间后方交会..................................................................................................................17特征匹配..........................................................................................................................21同名核线提取..................................................................................................................25五、心得体会................................................................................................................................28、实习的通过对数字摄影测软件的操作,熟数字摄影测量系,掌握数字摄影测量软件的作业程,加深对数字影测量过程的理。通过编程实习,加深对数字摄影测学相关方法原理理解,提高编程手能力。、VirtuoZo实过1、数据备以及步处理1)新建测区设置区参数,新建模设置模型参数设置相机参数设置控制点数据导入影像数据,此,准备工作完;图1

设置测区参数

图2

设置模型参数图3

导入控制点

图4

导入相机参数图5

导入影像2)内定向相对定绝对定向,至影像定向完成;0图6

内定向图7

相对定向相对定向做完之后统会自动进行绝定向,我们可以主界面查看绝对定向的结果:下是模型157-156绝对定向结果图图8157-156绝对定向果然后点击处理核重采样影像匹,做完这些就可准备生成产品;然后点击产品,可生成需要的产品如DEM,DOM,高线等;2、DEM辑由于生成的DEM含有房屋,树木等地物,所以并不是真意义上的数字高程模型,而应该DTM(数字表模型下图:1图9

数字表面模型图中的红色方框所围的可以很容易出来是房屋而不地形。所以需要对上上述DEM进行编辑,生成正真意义上的DEM。击“高级DEM辑入DEM编辑界面。图10

编辑后的DEM图中的红色部分就我们编辑的范围经过编辑后加载DEM显示立体图,可以看出其中的房高度已经贴合地了。3、DEM接由于每一个DEM只是两张影像形成的,一测区有多个DEM,因需要经过拼接才能形成个测区的DEM。点“高级-->DEM拼接”出DEM拼接界面,加载需拼接的DEM,用标划定拼接范围接下来就可以执拼接。2图11图12DEM拼接4、图像嵌生成整个测区的DEM后,我们就可以生成整个测的正射影像了。次点击“高级正射像制作”弹出制界面,选定DEM以相应的影像数据,然后执行,结如图图13

拼接后的正射影像5、IGS字化测点击“测图IGS数字化图”进入到数字化测界面,然后依次新建VZV矢量文件装影像数据后通过红绿眼睛对测区行矢量化。3图14IGS数字化测图图15

矢量图形6、空中角测量1)数据准备和图像处理打开VirtuozoAAT,依次“建测区—设置参---引入影像”4图16

输入影像注意第二条航带的项要选上相机旋。然后进行“内向航带间偏移量”图17

航带间偏移量在图中选取航带间同名点,系统会动计算航带间偏量设置好航带间偏移量之后,始提取连接点,后运行自动挑点序。2)交互式编辑打开交互式编辑界,一次在每张图上选点,保证每蓝框周围至少有3个点就行。图18

选点

图19

使用PATB平差然后加入控制点,要在测区中加入个控制点,然后用PATB进行平差,就可以使“预测控制点”测出其余的控制的位置,然后依次选出控制点坐。5图20

控制点

图21

被挑出的点可能一次选择的点度不够会有误差限的点,显示在图21中带有星号,然后对带星号的点从新定,这样直到没有号的点。至此,交互式编辑完成。3)三角测量打开VirtuozoNT,打在AAT中建立的测区,自动创建区,之就可以使用批处理功进行自动化处理至此,三角测量成。图224)DEM拼接和正射影制作

批处理界面按照前面的拼接步进行DEM拼接和正影像的制作,结果如:图23DEM

图24

正射影像63、GeoWay实习流程1、交互编辑1)新建工程,设相关参数(PS:对照表添加[LAYER][ENDSEC],然后SYM符号库文件拷贝到C:\WINDOWS\GeoSymbol)图1参数设置界面2)生成内图廓线图2生成图廓线73)交互式地物编1、加载栅格图层点击栅格图层,加载tfw数据,加入栅格图,然后生成内图廓,网线图3加载栅格图层勾选跨层输入编辑设置激活图层,后点击相应地物设为输入地物类。点、单线、双线编点、线处理。悬挂和伪节点处理,具—检查—悬挂节点进行伪节点检测。批理—消除悬挂点伪节点能够消除部分错误,不能消除的部分进行工编辑。图4节点编辑后的图5、面处理。新建屋对照表,在拓扑构时启用房屋对照,然后8拓扑弧段预处理,后进行拓扑构建对于拓扑构建中遗漏的要手工处理后再次构建图5拓扑构建后的图2、GEOWAY空三加1)新建工程,数准备并检查依次点击“新建工选择数据所在目录初始构网”后点击“生成成果生成单色点”用mashlab开.ply文件,查点云和构网结果图6点云图

图7网形图92)控制网平差“常规处理光束平差删除残差于域值的点自网平差重复上述步骤直到小残差小于阈值60PS:每次删除的点能太多,以防删除过多正确点)3)精确匹配并查匹配结果点击“常规处理确匹配一步匹配图8图94)刺点常规处理光束法平常规处理绝定向(GPS)刺点10图10刺点界面5)空三结果图113、立体图(无机)1)新建方案和数准备影像管理加载影模型管理新建模型控制点编辑导入制点像点导入导入像点外方为元素导入入外方位元素2)初步处理内定向—相对定向绝对定向—核线采样11图12相对定向3)批处理图134)地物采集新建加工工程,然依次进行高程点道路、房屋、比点、等高线的采集图14地物采集结果5)DEM编辑点线处理采集特线处理—选择特征线理面处理—自适应内,量测点内插局置平、水域处理12图15DEM编辑前6)TIN网处理

图16DEM编辑后图17编辑前

图18编辑后13图19编辑后7)质量检查1、设置质检方案制作方案—加入工作案图20检查报告

图21方案设置2、新建检查任务指定目录到数据所在录。然后自动检错误并查看错误,然后对量图进行修改14图22编辑前

图23编辑后图24编辑前

图25编辑后15四、程内1、单像间后方会#include"hfjhdialog.h"#include<opencv.hpp>#include<vector>#include<string>#include<fstream>#include<iostream>#include<QFileDialog>usingnamespaceHFJHDialog::HFJHDialog(QWidget*parent):QDialog(parent),ui(newUi::HFJHDialog){ui->setupUi();char*title=空间后方交会;QStringqtitleQString::fromLocal8Bit(title);setWindowTitle(qtitle);ui->textBrowser->setText("---------------HFJH--------------"//焦距单位pixelfx=4547.99665;fy=4547.87373;//内方位元素pixel0=47.48571;0=12.02756;//畸变参数k1=-5.00793e-009;k2=1.83462e-016;p1=-2.24419e-008;p2=1.76820e-008;//初始值Xs0=4300.0;Ys0=-150.0;Zs0=-300.0;//单位mmphi0=0.0;omega0=0.0;kappa0=0.0;//单位r}HFJHDialog::~HFJHDialog(){deleteui;}//读取像点坐标intHFJHDialog::readxy(string{intindex=//path="F:\\我的课程\数字摄影测影像数据\\后方交会\像点坐标txt";ifstreamfil;fil.open(path);if(!fil){char*log=打开像点文件失败<<"ui->textBrowser->append(QString::fromLocal8Bit(log));return-1;}xytmp;while(!fil.eof()){fil>>tmp.index>>tmp.x>>tmp.y;ui->textBrowser->append(QString(x:%2y:%3").arg(index).arg(tmp.x).arg(tmp.y));index++;pic.push_back(tmp);}fil.close();return0;}//读取物方点坐标intHFJHDialog::readXYZ(string{intindex=16ifstreamfil;fil.open(path);if(!fil){char*log=打开控制点文件失败<<";ui->textBrowser->append(QString::fromLocal8Bit(log));return-1;}XYZtmp;stringhead;for(i=0;i<++i){fil>>head;}while(!fil.eof()){fil>>tmp.index>>tmp.X>>tmp.Y>>tmp.Z;ui->textBrowser->append(QString(X:%2Y:%3Z:%3").arg(index).arg(tmp.X).arg(tmp.Y).arg(tmp.Z));index++;obj.push_back(tmp);}fil.close();return0;}//读取相机参数文件intHFJHDialog::readcamera(string{intindex=//path="F:\\我的课程\数字摄影测影像数据\\后方交会\像点坐标txt";ifstreamfil;fil.open(path);if(!fil){char*log=打开相机文件失败<<"ui->textBrowser->append(QString::fromLocal8Bit(log));return-1;}fil.close();return0;}//空间后方交会算法体函数voidHFJHDialog::HFJH(){//结果值doubleXs=Xs0,Ys=Ys0,Zs=Zs0;//定义doubleomega=omega0,kappa=kappa0;//定义doublex,y,X,Y,Z;//定义X,Y,Zdoublea1,a2,a3,b1,b2,b3,c1,c2,c3;doubleX_,Y_,Z_;doublea11,a12,a13,a14,a15,a16;doublea21,a22,a23,a24,a25,a26;doublelx,ly;doubler_r,dy;cv::MatL,dX;//,A0,A1;//迭代终止阈值doublee=/206265;//单位权中误差doublem0;intindex=//求取主点坐标doubleW=5344.0;doubleH=4008.0;0=W/2x0;0=H/2y0;do{for(size_t=0;ipic.size();{17=pic[i].x;=pic[i].y;=0;=0;=0;for(size_t=0;j<obj.size();{if(obj[j].indexpic[i].index){=obj[j].X;=obj[j].Y;=obj[j].Z;break}}if(abs(x)1){char*arg1"像点";char*arg2"没有找到对应的制点";ui->textBrowser->append(QString().arg(QString::fromLocal8Bit(arg1)).arg(pic[i].index).arg(QString::fromLocal8Bit(arg2)));continue}//求观测值的改正r_r=(x-x0)*(xx0)+(y-y0)*(yy0);dx=(x-x0)*(k1*r_r+k2*r_r*r_r)+p1*(r_r+2*(x-x0)*(x-x0))-2*p2*(xx0)*(y-y0);dy=-(y-y0)*(k1*r_rk2*r_r*r_r)p2*(r_r2*-y0)*(y-y0))-2*p1*(xx0)*(y-y0);//经过畸变改正后的点坐标观测值=(x-x0)dx;=-(y-y0)dy;//求矩阵各元素的值a1=cos(phi)*cos(kappa)sin(phi)*sin(omega)*sin(kappa);a2=-cos(phi)*sin(kappa)sin(phi)*sin(omega)*cos(kappa);3=-sin(phi)*cos(omega);1=cos(omega)*sin(kappa);b2=cos(omega)*cos(kappa);3=-sin(omega);1=sin(phi)*cos(kappa)cos(phi)*sin(omega)*sin(kappa);c2=-sin(phi)*sin(kappa)cos(phi)*sin(omega)*cos(kappa);c3=cos(phi)*cos(omega);//求X,Y_,_=a1*(XXs)+b1*(YYs)+c1*(ZZs);_=a2*(XXs)+b2*(YYs)+c2*(ZZs);_=a3*(XXs)+b3*(YYs)+c3*(ZZs);//求x,的近似值doublex_=-fx*X_Z_;doubley_=-fy*Y_Z_;//求矩阵各元素的值lx=x-x_;ly=y-y_;//求矩阵各元素的值a11=1/Z_*(a1*fxa3*x);a12=1/Z_*(b1*fxb3*x);a13=1/Z_*(c1*fxc3*x);a21=1/Z_*(a2*fya3*y);a22=1/Z_*(b2*fyb3*y);a23=1/Z_*(c2*fyc3*y);a14=y*sin(omega)-(x/fx*(x*cos(kappa)-y*sin(kappa))+fx*cos(kappa))*cos(omega);a15=-fx*sin(kappa)x/fx*(x*sin(kappa)y*cos(kappa));a16=y;a24=-x*sin(omega)-(y/fy*(x*cos(kappa)-y*sin(kappa))-fy*sin(kappa))*cos(omega);a25=-fy*cos(kappa)y/fy*(x*sin(kappa)y*cos(kappa));a26=-x;//合成矩阵doublea[12]{a11,a12,a14,a15,a16,a21,a23,a24,a25,18a26};doublel[2]{lx,};cv::MatAi(2,CV_64FC1,a);cv::MatLi(2,CV_64FC1,l);A.push_back(Ai);L.push_back(Li);}//计算dX=(A.t()A).inv()A.t()*s+=dX.at<>(0,0);s+=dX.at<>(1,0);s+=dX.at<>(2,0);phi+=dX.at<>(3,0);omega+=dX.at<>(4,0);kappa+=dX.at<>(5,0);ui->textBrowser->append(QString(%2%3%4%5%6%7").arg(index).arg(dX.at<>(0)).arg(dX.at<double>(1)).arg(dX.at<double>(2)).arg(dX.at<>(3)).arg(dX.at<>(4)).arg(dX.at<>(5)));index++;cv::MatM0=(A*dXL).t()*(A*dXL);m0=sqrt(M0.at<>(0)/(2*pic.size()6));A.release();L.release();if(index>100)}while(fabs(dX.at<double>(0))>0.001||fabs(dX.at<>(3))>e);ui->textBrowser->append(QString());ui->textBrowser->append(QString(Ys:%2Zs:%3phi:%4omega:%5kappa:%6").arg(Xs).arg(Ys).arg(Zs).arg(phi).arg(omega).arg(kappa));char*log=单位权中误差:;ui->textBrowser->append(QString().arg(QString::fromLocal8Bit(log)).arg(m0));}voidHFJHDialog::on_pushButton_clicked(){QStringqpathQFileDialog::getOpenFileName();stringpathqpath.toLocal8Bit();if(readxy(path)-1){char*log"读取像点坐标误XXXXXX";ui->textBrowser->append(QString::fromLocal8Bit(log));return;}char*log=读取像点坐标结束OOOOO"ui->textBrowser->append(QString::fromLocal8Bit(log));ui->lineEdit->setText(qpath);}voidHFJHDialog::on_pushButton_2_clicked(){QStringqpathQFileDialog::getOpenFileName();stringpathqpath.toLocal8Bit();if(readXYZ(path)-1){char*log=读取控制点坐标错误XXXXX"ui->textBrowser->append(QString::fromLocal8Bit(log));return;}char*log=读取控制点坐标结束OOOOO"ui->textBrowser->append(QString::fromLocal8Bit(log));ui->lineEdit_2->setText(qpath);}voidHFJHDialog::on_pushButton_4_clicked(){HFJH();}voidHFJHDialog::on_pushButton_5_clicked(){HFJHDialog::close();}19图1控件后方交会2、特征配#include"match.h"#include<opencv.hpp>#include<iostream>#include<fstream>usingnamespaceusingnamespace//构造函数Mmatch::Mmatch(length,intflag){Mlength=length;Mflag=flag;match();}//构建子窗体voidMmatch::findsubwin(MatMat&dst,intintj,intlength){dst=Mat::zeros(length,CV_8UC1);intxl=ilength/intyl=jlength/intxr=ilength/intyr=jlength/intxdl=intydl=intxdr=length1;intydr=length1;if(xl<0){xdl=0-xl;xl=0;}if(yl<{ydl=0-yl;yl=0;}if(xr>=src.cols){xdr=(dst.cols(xr-(src.cols-1));20xr=src.cols1;}if(yr>=src.rows){ydr=(dst.rows-1)(yr-(src.rows-1));yr=src.rows1;}MatsROI=src(Range(yl+1,Range(xl+1,xr+1));sROI.copyTo(dst(Range(ydl+1,Range(xdl+1,xdr+1)));}//匹配算法主体函数intMmatch::match(){stringpath1"E:\\我的程\\数字摄测量影像数据\匹配\\1BAK.bmp"stringpath2"E:\\我的程\\数字摄测量影像数据\匹配\\2BAK.bmp"stringpath"E:\\我的课程\数字摄影量影像数据\\匹配\\1BAK_points.txt"ifstreamfil;vector<point>pointssrc;fil.open(path);if(!fil){cout<<"readpoints<<endl;return-1;}intindex;pointpt;while(!fil.eof()){fil>>indexpt.xpt.y;pointssrc.push_back(pt);}Matsrc1=imread(path1,CV_LOAD_IMAGE_GRAYSCALE);Matsrc2=imread(path2,CV_LOAD_IMAGE_GRAYSCALE);if(src1.empty()src2.empty()){cout<<"readimage<<endl;return-1;}vector<point>pointsdst;Matsubwinsrc,subwindst;for(inti0;i<pointssrc.size();{pointtpoint;findsubwin(src1,subwinsrc,pointssrc[i].x,pointssrc[i].y,Mlength);findsamename(src2,subwinsrc,tpoint);pointsdst.push_back(tpoint);}Matdst1,dst2;cvtColor(src1,dst1,CV_GRAY2RGB);cvtColor(src2,dst2,CV_GRAY2RGB);CvFontfont;cvInitFont(&font,CV_FONT_HERSHEY_PLAIN,1.0,1.0);for(inti0;i<pointssrc.size();{charcind[5];sprintf(cind,,i+1);line(dst1,Point(pointssrc[i].x-3,pointssrc[i].y-3),Point(pointssrc[i].x+3,pointssrc[i].y+3),CV_RGB(255,0,0));line(dst1,Point(pointssrc[i].x-3,pointssrc[i].y+3),Point(pointssrc[i].x+3,pointssrc[i].y-3),CV_RGB(255,0));putText(dst1,cind,Point(pointssrc[i].x+4,pointssrc[i].y+5),CV_FONT_HERSHEY_PLAIN,1.0,CV_RGB(255,0,0));line(dst2,Point(pointsdst[i].x-3,pointsdst[i].y-3),Point(pointsdst[i].x+3,pointsdst[i].y+3),CV_RGB(255,0,0));line(dst2,Point(pointsdst[i].x-3,pointsdst[i].y+3),Point(pointsdst[i].x+3,pointsdst[i].y-3),CV_RGB(255,0,0));putText(dst2,cind,Point(pointsdst[i].x+4,pointsdst[i].y+5),CV_FONT_HERSHEY_PLAIN,1.0,CV_RGB(255,0,0));}21imshow(,dst1);imshow(,dst2);waitKey();return0;}//寻找同名点函数voidMmatch::findsamename(MatMat&subwin,point{Matsubwind;intlengthsubwin.cols;inthelf_lengthlength2;intflag=Mflag;floatrelate0;for(inti0;i<src.cols;{for(intj0;j<src.rows;{findsubwin(src,subwind,j,length);if(i==helf_lengthj==helf_length){relate=compare(subwin,flag);dst.x=dst.y=}floattmp=compare(subwin,flag);if(tmp>relate){relate=tmp;dst.x=dst.y=}}}}//特征向量比较函数floatMmatch::compare(MatMat&subwind,flag){floatsum=0.0;floatavg10.0,avg20.0;floatsdv10.0,sdv20.0;intnr=subwin.rows;intnc=subwin.cols;if(subwin.isContinuous()&&subwind.isContinuous()){nc=nc*nr;nr=1;}switch(flag){case1://关函数法for(inti0;i<nr;{uchar*subwin_ptrsubwin.ptr<uchar>(i);uchar*subwind_ptr=subwind.ptr<uchar>(i);for(intj0;j<nc;{sum+=(float)(*(subwin_ptr+j)*(*(subwind_ptr+j)));}}returnsum;case2:协方差函数法for(inti0;i<nr;{uchar*subwin_ptrsubwin.ptr<uchar>(i);uchar*subwind_ptr=subwind.ptr<uchar>(i);for(intj0;j<nc;{avg1+=*(subwin_ptr+j);avg2+=*(subwind_ptr+j);22}}avg1=avg1(subwin.rows*subwin.cols);avg2=avg2(subwind.rows*subwind.cols);for(inti0;i<nr;{uchar*subwin_ptrsubwin.ptr<uchar>(i);uchar*subwind_ptr=subwind.ptr<uchar>(i);for(intj0;j<nc;{sum+=(*(subwin_ptr+j)-avg1)*(*(subwind_ptr+j)-avg2);}}returnsum;case3:相关系数法for(inti0;i<nr;{uchar*subwin_ptrsubwin.ptr<uchar>(i);uchar*subwind_ptr=subwind.ptr<uchar>(i);for(intj0;j<nc;{avg1+=*(subwin_ptr+j);avg2+=*(subwind_ptr+j);}}avg1=avg1(subwin.rows*subwin.cols);avg2=avg2(subwind.rows*subwind.cols);for(inti0;i<nr;{uchar*subwin_ptrsubwin.ptr<uchar>(i);uchar*subwind_ptr=subwind.ptr<uchar>(i);for(intj0;j<nc;{sum+=(*(subwin_ptr+j)-avg1)*(*(subwind_ptr+j)-avg2);}}for(inti0;i<nr;{uchar*subwin_ptrsubwin.ptr<uchar>(i);uchar*subwind_ptr=subwind.ptr<uchar>(i);for(intj0;j<nc;{sdv1+=(*(subwin_ptr+j)-avg1)*(*(subwin_ptr+j)-avg1);sdv2+=(*(subwind_ptr+j)-avg2)*(*(subwind_ptr+j)-avg2);}}sum=sum/sqrtf(sdv1*sdv2);returnsum;case4:差平方和法for(inti0;i<nr;{uchar*subwin_ptrsubwin.ptr<uchar>(i);uchar*subwind_ptr=subwind.ptr<uchar>(i);for(intj0;j<nc;{sum+=(float)(*(subwin_ptr+j)-*(subwind_ptr+j))*(*(subwin_ptr+j)-*(subwind_ptr+j));}}return-sum;case5:差绝对值和法for(inti0;i<nr;{uchar*subwin_ptrsubwin.ptr<uchar>(i);uchar*subwind_ptr=subwind.ptr<uchar>(i);for(intj0;j<nc;{sum+=(float)abs(*(subwin_ptr+j)-*(subwind_ptr+j));}23}

}return-sum;defaultbreak}returnsum;图2相关函数

图3协方差图4相关系数

图5差平方和图6差绝对值3、同名线提取#include"hx.h"#include<opencv.hpp>#include<vector>#include<string>#include<fstream>#include<iostream>#include<QFileDialog>usingnamespace//构造函数HXDialog::HXDialog(QWidget*parent):QDialog(parent),ui(newUi::Dialog){ui->setupUi();}HXDialog::~HXDialog(){}voidHXDialog::on_pushButton_clicked(){path1=QFileDialog::getOpenFileName(ui->lineEdit->setText(path1);24}voidHXDialog::on_pushButton_2_clicked(){path2=QFileDialog::getOpenFileName();ui->lineEdit_2->setText(path2);}voidHXDialog::on_pushButton_3_clicked(){tpath1=QFileDialog::getOpenFileName(ui->lineEdit_3->setText(tpath1);}voidHXDialog::on_pushButton_4_clicked(){tpath2=QFileDialog::getOpenFileName(ui->lineEdit_4->setText(tpath2);}//读取同名点数据intHXDialog::readxy(stringp2){intindex=ifstreamfil;xytmp;inthead;//读取图像的像点坐标fil.open(p1);if(!fil){cout<<"readerror"<<endl;return-1;}fil>>head;while(!fil.eof()){fil>>tmp.indextmp.x>>tmp.y;cout<<"read"<<index<<":"<<tmp.index<<""<<tmp.x<<""<<tmp.y<<endl;index++;pic1.push_back(tmp);}fil.clear();fil.close();//读取图像的像点坐标index=fil.open(p2);if(!fil){cout<<"readerror"<<endl;return-1;}fil>>head;while(!fil.eof()){fil>>tmp.indextmp.x>>tmp.y;cout<<"read"<<index<<":"<<tmp.index<<""<<tmp.x<<""<<tmp.y<<endl;index++;pic2.push_back(tmp);}cout<<"read<<endl;fil.close();cout<<"closeobjfile..."endl;return0;}classfindxy{publicfindxy(index){indindex;}intind;booloperator(HXDialog::xy&pt){25returnindpt.index;}};//同名核线算法主函voidHXDialog::HX(){stringp1=tpath1.toLocal8Bit();stringp2=tpath2.toLocal8Bit();//读取同名点坐标readxy(p1,p2);//初始值p1=path1.toLocal8Bit();p2=path2.toLocal8Bit();cv::Matimg1cv::imread(p1);cv::Matimg2cv::imread(p2);cv::Matcv::Matif(img1.empty()img2.empty()){cout<<"readimage<<endl;return;}for(inti0;i<pic1.size();{doublex=pic1[i].x;doubley=pic1[i].y;doublex_=pic2[i].x;doubley_=pic2[i].y;cv::MattmpB(cv::Size(8,CV_64FC1);tmpB.at<>(0)=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论