亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mainfrm.cpp

?? 圖像處理軟件,功能比較基礎
?? CPP
?? 第 1 頁 / 共 3 頁
字號:
		float Res;
		Res=dlg.height*tan(PI*34.0/180.0)/128.0;
		
		for (int m=0;m<50;m++)
		{			
			Client_circle.x=c[m];
			Client_circle.y=r[m];
			int row_ref,col_ref;
			row_ref=col_ref=(int)((256+64)*Res/10);				
			//========================存儲SAR參考圖=====================
				Picture temp_sar_ref;
				temp_sar_ref.row=row_ref;
				temp_sar_ref.col=col_ref;				
				temp_sar_ref.p=fspace_2d(row_ref,col_ref);
				for (i=0;i<row_ref;i++)
					for(int j=0;j<col_ref;j++)
					{
						if(Client_circle.x-col_ref/2+j>=0)
							temp_sar_ref.p[i][j]=input_sar.p[Client_circle.y-row_ref/2+i][Client_circle.x-col_ref/2+j];
					}
				::writepic(outsar,temp_sar_ref);
				ChangeNameExtension1(outsar);
				dspace_2d(temp_sar_ref.p,row_ref,col_ref);
				//======================存儲OPT參考圖====================
				if(dlg.m_refpath!="")
				{
					input_opt.p=InputImageWithName(dlg.m_refpath,input_opt.row,input_opt.col);
					Picture temp_opt_ref;
					temp_opt_ref.row=row_ref;
					temp_opt_ref.col=col_ref;
					temp_opt_ref.p=fspace_2d(row_ref,col_ref);
					for (i=0;i<row_ref;i++)
						for(int j=0;j<col_ref;j++)
						{
							if(Client_circle.x-col_ref/2+j>=0)
							temp_opt_ref.p[i][j]=input_opt.p[Client_circle.y-row_ref/2+i][Client_circle.x-col_ref/2+j];
						}
						::writepic(outopt,temp_opt_ref);
						ChangeNameExtension1(outopt);
						dspace_2d(temp_opt_ref.p,row_ref,col_ref);					
						dspace_2d(input_opt.p,input_opt.row,input_opt.col);
				}
				//======================存儲DEM參考圖====================
				if(dlg.m_dimpath!="")
				{
						FILE *demfile=NULL;
						demfile=fopen(dlg.m_dimpath,"r");
						input_dem.p=fspace_2d(3601,3601*2);
						fread(input_dem.p,3601*3601*2,1,demfile);
						fclose(demfile);
					Picture temp_dem_ref;
					temp_dem_ref.row=row_ref;
					temp_dem_ref.col=col_ref*2;
					temp_dem_ref.p=fspace_2d(row_ref,col_ref*2);
					for (i=0;i<row_ref;i++)
						for(int j=0;j<col_ref*2;j++)
						{
								if(Client_circle.x*2-col_ref+j>=0)
							temp_dem_ref.p[i][j]=input_dem.p[Client_circle.y-row_ref/2+i][Client_circle.x*2-col_ref+j];
						}
						::writepic(outdem,temp_dem_ref);
						ChangeNameExtension1(outdem);
						dspace_2d(temp_dem_ref.p,row_ref,col_ref*2);
							dspace_2d(input_dem.p,3601,3601*2);
				}			
		}				
		::MessageBox(NULL,"FINISH","NOTICE",MB_OK);
	
	}			
	//===========================================================
	return;

}
#ifndef FUTUERKNOWLEDGE_H
#define FUTUERKNOWLEDGE_H
#include "FutuerKnowledge.h"
#endif

#include "Match.h"
#include "matchdlg.h"
void CMainFrame::OnPipei() 
{
	int i,j,rect_length,rect_centre;
	int Maskinner,Maskouter;
	unsigned char **TempImg;
	RadonResult res;
	int true_theta;
	POINT firstpos,endpos;
	int num=0;
	
	CMatchDlg dlg;
//	unsigned char **ref;
	FILE *fp;
	int *r,*c;
	POINT outresult[50],outorgresult[50];
	double cor[50];
	
	//=======================================================================
	char inputFileName[512];
	char inputRefSarName[512];
	char outputtxtName[512];
	Picture inputpic,inputref;
	
	//=======================================================================
	//::MessageBox(NULL,"BEGIN","WARNING",MB_OK);
	//===================================初始化變量區========================
	int result[8];					
	if(dlg.DoModal()==IDOK)
	{
//		dlg.UpdateData(FALSE);
		true_theta=dlg.m_truecorner;
		Maskinner=dlg.m_mask_inner;
		Maskouter=dlg.m_mask_outer;
		rect_length=dlg.m_rect_length;
		rect_centre=76;//(Maskouter-Maskinner)/2+Maskinner;
		strcpy(inputFileName,dlg.m_sar_path);
		strcpy(inputRefSarName,dlg.m_ref_path);
		strcpy(outputtxtName,dlg.m_txt_path);	
		r=new int [dlg.m_num];
		c=new int [dlg.m_num];
		fp=fopen(dlg.m_inputpath,"r");
		fseek( fp, 76, SEEK_SET );
		fscanf( fp, "%d", &r[0] );
		fseek(fp,27,SEEK_CUR);
		fscanf(fp,"%d",&c[0]);	
		for (i=1;i<dlg.m_num;i++)
		{
			fseek(fp,41,SEEK_CUR);
			fscanf(fp,"%d",&r[i]);
			fseek(fp,27,SEEK_CUR);
			fscanf(fp,"%d",&c[i]);
		}
		fclose(fp);
	
	TempImg=fspace_2d(rect_length,rect_length);
	if(TempImg==NULL)
		return;
	//===========================生成MASK圖形================================	
	Picture maskpic1;
	unsigned char **mask;	
	maskpic1.row=256;
	maskpic1.col=256;
	maskpic1.p=fspace_2d(maskpic1.row,maskpic1.col);
	for(i=0;i<maskpic1.row;i++)
		for (j=0;j<maskpic1.col;j++)
			maskpic1.p[i][j]=255;
		int span;
		for (i=0;i<maskpic1.row;i++)
			for (j=0;j<maskpic1.col;j++)
			{
				span=(int)(pow(i-maskpic1.row/2,2)+pow(j-maskpic1.col/2,2));
				if(span<=Maskinner*Maskinner||span>Maskouter*Maskouter)
					maskpic1.p[i][j]=0;
			}							
			//=======================================================================
			struct _timeb timebuffer,timebuffer1;				
			_ftime( &timebuffer );
			for(int x=0;x<dlg.m_num;x++)
			{
				inputpic.p=InputImageWithName(inputFileName,inputpic.row,inputpic.col);	
				inputref.p=InputImageWithName(inputRefSarName,inputref.row,inputref.col);					
				num=0;	
				//::MessageBox(NULL,"BEGIN","WARNING",MB_OK);
				for (int theta=0;theta<360;theta=theta+45)
				{
					j=(int)(inputpic.col/2.0-rect_centre*cos(theta*3.1416/180.0));
					i=(int)(inputpic.row/2.0-rect_centre*sin(theta*3.1416/180.0));
					{			
						for (int k=0;k<rect_length;k++)							
							{								
								memcpy(TempImg[k],inputpic.p[i+k-(int)(rect_length/2.0)]+j-(int)(rect_length/2.0),rect_length);
							} 		
						radon(TempImg,rect_length,rect_length,&res);
						if(abs(res.theta-true_theta)<=7)
						{						
							result[num]=res.avernum;
						}	
						else
						{
							result[num]=256;
						}
						num++;
					}
				}	
				int temp1=256;
				int Angle;	
				for (int t=0;t<8;t++)
				{
					if(temp1>result[t])
					{
						temp1=result[t];
						Angle=t*45;
					}
				}
				if(temp1==256)
				{/*
					unsigned char **ttemp,**ttempmask;
					ttemp=fspace_2d(256,256);
					ttempmask=fspace_2d(256,256);
					for(int x=0;x<256;x++)
					{
						memcpy(ttemp[x],inputpic.p[x+122]+122,256);
						memcpy(ttempmask[x],maskpic1.p[x+122]+122,256);						
					}
					FILE *fp;					
					CMatch match;					
					POINT temppos;
					temppos.x=temppos.y=0;
					ref=CComlib::ImgScaleCubicLinear(inputref.p ,inputref.row,inputref.col,320,320 ) ;
					NPOT ret=match.SingleMatch_Box(ref,ttemp,ttempmask,320,320,256,256,temppos);		
					POINT tempresult;
					tempresult.x=(ret.x)*(inputref.row/320.0)+c[9]-(inputref.row/2);
					tempresult.y=(ret.y)*(inputref.row/320.0)+r[9]-(inputref.row/2);
					fp=fopen(outputtxtName,"a");
					fprintf(fp,"圖片%d= ",x+1);
					//fprintf(fp,"   沒有發現機場目標");		
					fprintf(fp," 理論匹配點(%d,%d), 實際匹配結果 (%d,%d),  誤差(%d,%d)  ,相關cor=%f \n",c[x],r[x],tempresult.x,tempresult.y,abs(tempresult.x-c[x]),abs(tempresult.y-r[x]),ret.cor);
					fclose(fp);					
					dspace_2d(inputpic.p,inputpic.row,inputpic.col);
					dspace_2d(inputref.p,inputref.row,inputref.col);
					inputpic.p=NULL;
					ChangeNameExtension1(inputFileName);
					ChangeNameExtension1(inputRefSarName);
					continue;*/
				}		
				firstpos.x=(int)(inputpic.col/2.0-rect_centre*cos(Angle*3.1416/180.0));
				firstpos.y=(int)(inputpic.row/2.0-rect_centre*sin(Angle*3.1416/180.0));
				POINT temppos;
				temppos.x=firstpos.x-(rect_length/2.0);
				temppos.y=firstpos.y-(rect_length/2.0);
				unsigned char **outsar;
				outsar=fspace_2d(rect_length,rect_length);
				mask=fspace_2d(rect_length,rect_length);
				for (int k=0;k<rect_length;k++)					
					{
						memcpy(outsar[k],inputpic.p[temppos.y+k]+temppos.x,rect_length);
						memcpy(mask[k],maskpic1.p[temppos.y+k]+temppos.x,rect_length);						
					} 	
				OutputImageWithName(outsar,rect_length,rect_length,"c:\\1.pic");
				OutputImageWithName(mask,rect_length,rect_length,"c:\\11.pic");
					CMatch match;										
					NPOT ret=match.SingleMatch_Box(inputref.p,outsar,mask,inputref.row,inputref.col,rect_length,rect_length,temppos);					
					//========================================									
					Picture tempc;
					tempc.p=fspace_2d(320,320);
					tempc.row=tempc.col=320;
					POINT ttemp;
					ttemp.x=ret.x+firstpos.x-50;
					ttemp.y=ret.y+firstpos.y-50;
					for (k=0;k<320;k++)
						for (int l=0;l<320;l++)
						{
							if(k!=ttemp.y&&l!=ttemp.x&&k!=ttemp.y+100&&l!=ttemp.x+100)
								tempc.p[k][l]=inputref.p[k][l];						
							else if(k>=ttemp.y&&k<ttemp.y+100&&l==ttemp.x)
								tempc.p[k][l]=255;
							else if(k==ttemp.y&&l>=ttemp.x&&l<ttemp.x+100)
								tempc.p[k][l]=255;
							else if(k==ttemp.y+100&&l>=ttemp.x&&l<ttemp.x+100)
								tempc.p[k][l]=255;
							else if(k>=ttemp.y&&k<ttemp.y+100&&l==ttemp.x+100)
								tempc.p[k][l]=255;
							else
								tempc.p[k][l]=inputref.p[k][l];
						}
						
						::writepic("c:\\111.pic",tempc);
						
						//==============================================										
						dspace_2d(outsar,rect_length,rect_length);
						dspace_2d(mask,rect_length,rect_length);					
///						::MessageBox(NULL,"FINISH","WARNING",MB_OK);						
						POINT tempresult;
						outorgresult[x].x=ret.x;
						outorgresult[x].y=ret.y;
						outresult[x].x=(ret.x+inputpic.col/2.0)*atof(dlg.m_Res)/10.0+c[x]-320*atof(dlg.m_Res)/20.0;
						outresult[x].y=(ret.y+inputpic.row/2.0)*atof(dlg.m_Res)/10.0+r[x]-320*atof(dlg.m_Res)/20.0;
						cor[x]=ret.cor;
						dspace_2d(inputpic.p,inputpic.row,inputpic.col);
						dspace_2d(inputref.p,inputref.row,inputref.col);
						inputpic.p=NULL;
						ChangeNameExtension1(inputFileName);
						ChangeNameExtension1(inputRefSarName);
						}
						_ftime( &timebuffer1);
						int second=timebuffer1.time-timebuffer.time;
						FILE *fp;	
						fp=fopen(outputtxtName,"a");
						for (int i=0;i<dlg.m_num;i++)
						{
							fprintf(fp,"圖片%d",i+1);	
							//fprintf(fp," local(%d,%d),  match(%d,%d),%f",outorgresult[i].x,outorgresult[i].y,
							//	outorgresult[i].x-32,outorgresult[i].y-32,sqrt(pow(outorgresult[i].x-32,2)+
							//	pow(outorgresult[i].y-32,2)) );
							fprintf(fp," 理論匹配點(%d,%d), 實際匹配結果 (%d,%d),  誤差(%d,%d)  ,相關cor=%f ,半徑=%f\n",c[i],r[i]
								,outresult[i].x,outresult[i].y,(outresult[i].x-c[i]),(outresult[i].y-r[i]),cor[i],
								sqrt(  (outresult[i].y-r[i])*(outresult[i].y-r[i])+(outresult[i].x-c[i])*(outresult[i].x-c[i]) ));
						}

						double averx=0,avery=0;						
						for (i=0;i<dlg.m_num;i++)
						{
							averx+=(outresult[i].x-c[i]);
							avery+=(outresult[i].y-r[i]);
						}
						averx=averx/dlg.m_num;
						avery=avery/dlg.m_num;
						double faix=0,faiy=0;	
						
						for (i=0;i<dlg.m_num;i++)
						{
							faix+=pow(outresult[i].x-c[i]-averx,2);
							faiy+=pow(outresult[i].y-r[i]-avery,2);
						}
						faix=sqrt(faix/49.0);
						faiy=sqrt(faiy/49.0);

						double averx1=0,avery1=0;						
						for (i=0;i<dlg.m_num;i++)
						{
							averx1+=(outorgresult[i].x-32);
							avery1+=(outorgresult[i].y-32);
						}
						averx1=averx1/dlg.m_num;
						avery1=avery1/dlg.m_num;
						double faix1=0,faiy1=0;	
						
						for (i=0;i<dlg.m_num;i++)
						{
							faix1+=pow(outorgresult[i].x-32-averx1,2);
							faiy1+=pow(outorgresult[i].y-32-avery1,2);
						}
						faix1=sqrt(faix1/49.0);
						faiy1=sqrt(faiy1/49.0);
						fprintf(fp,"\n\n");												
						fprintf(fp,"總運行時間為:%d 秒\n",second);
						fprintf(fp,"均值為 (%f,%f)\n",averx,avery);
						fprintf(fp,"方差為(%f,%f)\n",faix,faiy);
						
						fprintf(fp,"\n\n");												
						for (i=0;i<dlg.m_num;i++)
						{
							fprintf(fp,"圖片%d   ",i+1);	
							fprintf(fp," local(%d,%d),  match(%d,%d),%f\n",outorgresult[i].x,outorgresult[i].y,
								outorgresult[i].x-32,outorgresult[i].y-32,sqrt(pow(outorgresult[i].x-32,2)+
								pow(outorgresult[i].y-32,2)) );
						}
						fprintf(fp,"均值為 (%f,%f)\n",averx1,avery1);
						fprintf(fp,"方差為(%f,%f)\n",faix1,faiy1);


						fclose(fp);			
						::MessageBox(NULL,"FINISH","WARNING",MB_OK);						
						delete[] r;
						delete[] c;
}
	else
		return;	

}


void CMainFrame::OnOrgMatch() 
{
		int i,j,rect_length,rect_centre;
	int Maskinner,Maskouter;
	unsigned char **TempImg;
	RadonResult res;
	int true_theta;
	POINT firstpos,endpos;
	int num=0;
	
	CMatchDlg dlg;
	unsigned char **ref;
	FILE *fp;
	int *r,*c;
	
	//=======================================================================
	char inputFileName[512];
	char inputRefSarName[512];
	char outputtxtName[512];
	Picture inputpic,inputref;
	
	//=======================================================================
	//::MessageBox(NULL,"BEGIN","WARNING",MB_OK);
	//===================================初始化變量區========================
	int result[8];					
	if(dlg.DoModal()==IDOK)
	{
		true_theta=dlg.m_truecorner;
		Maskinner=dlg.m_mask_inner;
		Maskouter=dlg.m_mask_outer;
		rect_length=dlg.m_rect_length;
		rect_centre=76;//(Maskouter-Maskinner)/2+Maskinner;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品乱码一区二三区小蝌蚪| 欧美精选一区二区| 久久精品一区二区三区av| 免费在线看一区| 日韩视频免费观看高清完整版在线观看| 亚洲一区二区三区在线看| 欧美体内she精高潮| 亚洲成人免费看| 日韩一区二区麻豆国产| 精品一区二区三区久久| 久久久久久久免费视频了| 成人激情图片网| 亚洲欧美日韩国产手机在线| 欧美视频三区在线播放| 免费欧美在线视频| 精品国产髙清在线看国产毛片| 精品一区二区在线免费观看| 中文字幕免费不卡| 欧日韩精品视频| 日本视频免费一区| 久久亚区不卡日本| 91亚洲永久精品| 亚洲高清三级视频| 久久午夜电影网| 一本久久综合亚洲鲁鲁五月天| 天天综合网 天天综合色| 亚洲精品一区二区三区香蕉| 99久久婷婷国产综合精品电影| 亚洲青青青在线视频| 欧美精品少妇一区二区三区| 国产一区二区视频在线播放| 综合激情成人伊人| 日韩午夜中文字幕| av激情亚洲男人天堂| 日韩电影网1区2区| 国产肉丝袜一区二区| 欧美亚洲一区三区| 国产传媒一区在线| 香蕉影视欧美成人| 国产色产综合色产在线视频| 欧美一a一片一级一片| 国产一区二区网址| 丝袜诱惑制服诱惑色一区在线观看 | 老司机免费视频一区二区| 国产欧美日产一区| 欧美视频一区二区三区四区| 成人精品免费网站| 日韩高清国产一区在线| 亚洲图片你懂的| 2023国产精品自拍| 制服视频三区第一页精品| www.日韩av| 国内精品免费在线观看| 亚洲图片欧美综合| 中文字幕在线不卡一区 | 国内成+人亚洲+欧美+综合在线| 亚洲精品中文字幕乱码三区| 久久久久国产精品厨房| 欧美日本高清视频在线观看| 色婷婷av一区| 成人免费视频一区| 韩国av一区二区| 日韩**一区毛片| 亚洲午夜一二三区视频| 亚洲天堂精品在线观看| 久久久国产精华| 日韩欧美激情四射| 欧美日韩国产高清一区二区| 91麻豆swag| 91免费精品国自产拍在线不卡| 粉嫩av一区二区三区| 韩国午夜理伦三级不卡影院| 日本美女一区二区| 三级久久三级久久久| 亚洲一区在线免费观看| 亚洲综合色自拍一区| ...中文天堂在线一区| 中文字幕日韩一区二区| 欧美经典三级视频一区二区三区| 久久日韩粉嫩一区二区三区| 欧美精品一区二区三区四区| 精品久久人人做人人爰| 精品国产百合女同互慰| 久久美女艺术照精彩视频福利播放 | a亚洲天堂av| www.日韩大片| 91久久精品一区二区三| 欧美午夜一区二区| 欧美三级视频在线观看| 欧美色老头old∨ideo| 欧美日韩一区二区三区四区五区| 欧美性受极品xxxx喷水| 欧美三电影在线| 91精品婷婷国产综合久久| 日韩三级伦理片妻子的秘密按摩| 精品免费视频一区二区| 久久久国产综合精品女国产盗摄| 国产精品人成在线观看免费| 中文字幕视频一区| 亚洲一区二区偷拍精品| 亚洲自拍偷拍av| 日韩成人精品在线| 久久www免费人成看片高清| 国产一区三区三区| 97精品久久久午夜一区二区三区 | 麻豆精品一区二区av白丝在线| 极品少妇一区二区| 成人精品国产一区二区4080| 色噜噜狠狠色综合中国| 91精品在线观看入口| 国产日韩成人精品| 亚洲三级在线看| 日韩精品欧美成人高清一区二区| 精品一区二区三区在线播放 | 久久久久久久免费视频了| 亚洲欧洲日韩av| 日本少妇一区二区| 成人性生交大片免费看中文| 色噜噜狠狠一区二区三区果冻| 欧美久久久久免费| 日韩一级成人av| 久久久精品2019中文字幕之3| 亚洲欧洲韩国日本视频| 婷婷久久综合九色综合绿巨人| 久久成人av少妇免费| 国产成人超碰人人澡人人澡| 91国偷自产一区二区三区成为亚洲经典| 欧洲中文字幕精品| 欧美变态tickling挠脚心| 中文字幕精品三区| 亚洲成人精品一区二区| 亚洲欧美另类在线| 久久av中文字幕片| zzijzzij亚洲日本少妇熟睡| 欧美日韩国产综合久久| 国产午夜精品久久久久久久| 国产精品久久久爽爽爽麻豆色哟哟| 爽好久久久欧美精品| 国产一区二区久久| 欧美伊人久久大香线蕉综合69 | 国产亚洲一区二区三区在线观看| 日韩一区欧美一区| 久久国产精品一区二区| 色综合久久久久| 久久综合九色综合欧美就去吻 | 毛片av一区二区三区| 午夜日韩在线观看| 波多野结衣精品在线| 日韩视频永久免费| 亚洲欧美激情插 | 欧美日精品一区视频| 国产女人水真多18毛片18精品视频| 亚洲成国产人片在线观看| 久久成人久久爱| 日韩一区二区在线免费观看| 亚洲激情图片一区| 成熟亚洲日本毛茸茸凸凹| 欧美一区二区在线免费播放| 久久精品免视看| 国产精品亚洲午夜一区二区三区 | 欧美一区二区三区男人的天堂| 国产精品毛片久久久久久久| 夜夜精品视频一区二区| 99国产欧美久久久精品| 久久这里只精品最新地址| 日韩1区2区3区| 欧美在线综合视频| 国产精品短视频| eeuss影院一区二区三区| 国产日韩欧美激情| 精品一区二区三区在线视频| 777午夜精品视频在线播放| 一区二区三区成人在线视频| 色狠狠色噜噜噜综合网| 中文字幕一区二区三区不卡| 国产高清不卡一区| 久久这里都是精品| 激情综合色播激情啊| 国产欧美日韩视频一区二区 | 久久久久99精品一区| 国产91丝袜在线播放0| 久久夜色精品国产噜噜av| 久久精品噜噜噜成人88aⅴ | 91女人视频在线观看| 久久一区二区三区四区| 国内精品国产成人国产三级粉色| 日韩免费视频一区二区| 久久精品国产在热久久| 久久嫩草精品久久久久| 国产精品自拍网站| 国产欧美日韩视频一区二区| 国产91在线看| 国产午夜久久久久| 91蜜桃视频在线| 亚洲一区欧美一区| 欧美日韩免费在线视频| 天天综合色天天综合色h| 欧美另类久久久品| 首页国产欧美久久| 日韩视频在线你懂得|