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

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

?? adjustment.cpp

?? 用于相機標定的程序。工業測量的一個重要手段是近景攝影測量。其中要用到相機標定。
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
                if (t>d) d=t;
                sm=s[mm-1]/d; sm1=s[mm-2]/d;
                em1=e[mm-2]/d;
                sk=s[kk-1]/d; ek=e[kk-1]/d;
                b=((sm1+sm)*(sm1-sm)+em1*em1)/2.0;
                c=sm*em1; c=c*c; shh=0.0;
                if ((b!=0.0)||(c!=0.0))
                  { shh=sqrt(b*b+c);
                    if (b<0.0) shh=-shh;
                    shh=c/(b+shh);
                  }
                fg[0]=(sk+sm)*(sk-sm)-shh;
                fg[1]=sk*ek;
                for (i=kk; i<=mm-1; i++)
                  { Adjustment::sss(fg,cs);
                    if (i!=kk) e[i-2]=fg[0];
                    fg[0]=cs[0]*s[i-1]+cs[1]*e[i-1];
                    e[i-1]=cs[0]*e[i-1]-cs[1]*s[i-1];
                    fg[1]=cs[1]*s[i];
                    s[i]=cs[0]*s[i];
                    if ((cs[0]!=1.0)||(cs[1]!=0.0))
                      for (j=1; j<=n; j++)
                        { ix=(j-1)*n+i-1;
                          iy=(j-1)*n+i;
                          d=cs[0]*v[ix]+cs[1]*v[iy];
                          v[iy]=-cs[1]*v[ix]+cs[0]*v[iy];
                          v[ix]=d;
                        }
                    Adjustment::sss(fg,cs);
                    s[i-1]=fg[0];
                    fg[0]=cs[0]*e[i-1]+cs[1]*s[i];
                    s[i]=-cs[1]*e[i-1]+cs[0]*s[i];
                    fg[1]=cs[1]*e[i];
                    e[i]=cs[0]*e[i];
                    if (i<m)
                      if ((cs[0]!=1.0)||(cs[1]!=0.0))
                        for (j=1; j<=m; j++)
                          { ix=(j-1)*m+i-1;
                            iy=(j-1)*m+i;
                            d=cs[0]*u[ix]+cs[1]*u[iy];
                            u[iy]=-cs[1]*u[ix]+cs[0]*u[iy];
                            u[ix]=d;
                          }
                  }
                e[mm-2]=fg[0];
                it=it-1;
              }
            else
              { if (ks==mm)
                  { kk=kk+1;
                    fg[1]=e[mm-2]; e[mm-2]=0.0;
                    for (ll=kk; ll<=mm-1; ll++)
                      { i=mm+kk-ll-1;
                        fg[0]=s[i-1];
                        Adjustment::sss(fg,cs);
                        s[i-1]=fg[0];
                        if (i!=kk)
                          { fg[1]=-cs[1]*e[i-2];
                            e[i-2]=cs[0]*e[i-2];
                          }
                        if ((cs[0]!=1.0)||(cs[1]!=0.0))
                          for (j=1; j<=n; j++)
                            { ix=(j-1)*n+i-1;
                              iy=(j-1)*n+mm-1;
                              d=cs[0]*v[ix]+cs[1]*v[iy];
                              v[iy]=-cs[1]*v[ix]+cs[0]*v[iy];
                              v[ix]=d;
                            }
                      }
                  }
                else
                  { kk=ks+1;
                    fg[1]=e[kk-2];
                    e[kk-2]=0.0;
                    for (i=kk; i<=mm; i++)
                      { fg[0]=s[i-1];
                        Adjustment::sss(fg,cs);
                        s[i-1]=fg[0];
                        fg[1]=-cs[1]*e[i-1];
                        e[i-1]=cs[0]*e[i-1];
                        if ((cs[0]!=1.0)||(cs[1]!=0.0))
                          for (j=1; j<=m; j++)
                            { ix=(j-1)*m+i-1;
                              iy=(j-1)*m+kk-2;
                              d=cs[0]*u[ix]+cs[1]*u[iy];
                              u[iy]=-cs[1]*u[ix]+cs[0]*u[iy];
                              u[ix]=d;
                            }
                      }
                  }
              }
          }
      }
    return(1);
  }

/******廣意矩陣求逆*********
 本函數的功能為:將矩陣a的逆矩陣放入aa中
 a為m*n矩陣的地址;
 aa為用于存放a逆矩陣的地址;
 u為m*m矩陣的地址;
 v為n*n矩陣的地址;
 esp為0.00001。
 *********************************/
int Adjustment::bginv(double *a,int m,int n,double *aa,double eps,double *u,double *v,int ka)
  { int i,j,k,l,t,p,q,f;
    extern int bmuav();
    i=Adjustment::bmuav(a,m,n,u,v,eps,ka);
    if (i<0) return(-1);
    j=n;
    if (m<n) j=m;
    j=j-1;
    k=0;
    while ((k<=j)&&(a[k*n+k]!=0.0)) k=k+1;
    k=k-1;
    for (i=0; i<=n-1; i++)
    for (j=0; j<=m-1; j++)
      { t=i*m+j; aa[t]=0.0;
        for (l=0; l<=k; l++)
          { f=l*n+i; p=j*m+l; q=l*n+l;
            aa[t]=aa[t]+v[f]*u[p]/a[q];
          }
      }
    return(1);
  }



/*********矩陣相乘**********
本函數的功能為:將矩陣a與b相乘的結果放入c中
 a為m*n矩陣的地址; 
 b為n*k矩陣的地址;
 c為m*k矩陣的地址。
 *********************************/
void Adjustment::brmul(double *a,double *b,int m,int n,int k,double *c)
  { int i,j,l,u;
    for (i=0; i<=m-1; i++)
    for (j=0; j<=k-1; j++)
      { u=i*k+j; c[u]=0.0;
        for (l=0; l<=n-1; l++)
          c[u]=c[u]+a[i*n+l]*b[l*k+j];
      }
    return;
  }

/*********參數平差**********
本函數的功能為:將觀測方程形式為V=AX-L的平差結果放入pra矩陣中
 A為m*n的系數矩陣首地址; 
 P為m*m的權矩陣首地址;
 L為m*1的常數矩陣首地址;
 pra為n*1的矩陣首地址,用于存放平差結果。
 *********************************/
void Adjustment::ParameterAdjustment(double *A,double *P,double *L,int m,int n,double *Pra)
{
	int i,j;
	int ka=n+1;
	double *P1,*P2,*P3,*P4,*P5,*P6,*P7,eps;
	eps=0.00001;

    P1=new double[m*n];
	P2=new double[n*m];
	P3=new double[n*n];
	P4=new double[n];
	P5=new double[n*n];
	P6=new double[n*n];
	P7=new double[n*n];
	
	//矩陣轉秩,P1存放A的轉秩陣
	for(i=0;i<m;i++)
		for(j=0;j<n;j++)
		{
			P1[j*m+i]=A[i*n+j];
		}

    //計算法方程矩陣N即A'pA
	brmul(P1,P, n, m,m,P2);
	brmul(P2,A, n, m,n,P3);
    //計算法方程矩陣L即A'pl
	brmul(P2,L, n, m,1,P4);
    
	//求矩陣N的逆
	bginv(P3, n, n,P5,eps,P6,P7,ka);
    
	//求平差結果
	brmul(P5,P4, n, n,1,Pra);

	for(i=0;i<n;i++)
	{
		Pra[i]=-Pra[i];
	}
	delete[] P1;
	delete[] P2;
	delete[] P3;
	delete[] P4;
	delete[] P5;
	delete[] P6;
	delete[] P7;

}
/*****************具有條件的參數平差**************************************
 本函數的功能為:將觀測方程形式為V=AX-L,條件方程為:BX+w=0的平差結果放入pra矩陣中
   *A參數系數,  *P權陣, *L參數式中的常數項, 
   *B條件式系數, *w條件式常數項,
   m--A的行數,n-- A、B的列數 , r--B的行數, 
   *Pra--存儲參數的或然值, *DitXYZ--各參數的中誤差

********************************************************************/
void Adjustment::ParameterAdjustmentWithCondi(double *A, double *P, double *L, double *B, double *w, int m, int n, int r, double *Pra, double *DitPra)
{
	
	int i,j;
	int ka=n+1;
	double *P1,*P2,*P3,*P4,*P5,*P6,*P7,eps;
	double *P8,*P9,*P10,*P11,*P12,*P13,*P14,*P15,*P16,*P17;
	eps=0.00001;

    P1=new double[m*n];
	P2=new double[n*m];
	P3=new double[n*n];
	P4=new double[n];
	P5=new double[n*n];
	P6=new double[n*n];
	P7=new double[n*n];
	P8=new double[r*n];
	P9=new double[r*n];
	P10=new double[r*r];
	P11=new double[n*1];
	P12=new double[r*r];
	P13=new double[r*r];
	P14=new double[r*r];
	P15=new double[r];
	P16=new double[r];
	P17=new double[n];
	//A的轉秩
	for(i=0;i<n;i++)
		for(j=0;j<m;j++)
		{
			P1[i*m+j]=A[j*n+i];
		}

   //B的轉秩=P8
	for(i=0;i<n;i++)
		for(j=0;j<r;j++)
		{
			P8[i*r+j]=B[j*n+i];
		}
    //N=P3
    brmul(P1,P,n,m,m,P2);//矩陣相乘
	brmul(P2,A, n, m,n,P3);
	//L=P4,即A'Pl
    brmul(P2,L, n, m,1,P4);
    //N的逆陣=P5
	bginv(P3, n, n,P5,eps,P6,P7,ka);//矩陣求逆

    //K
    brmul(B,P5, r, n,n,P9);//矩陣相乘B*N-1
    brmul(P9,P8, r, n,r,P10);//B*N-1*Bt=P10
    bginv(P10, r, r,P12,eps,P13,P14,ka);//矩陣求逆
    brmul(P9,P4, r, n,1,P15);//B*N-1*Bt=P10
	
	for(i=0;i<r;i++)
		P15[i]=w[i]-P15[i];//Bt*B*(N-1)*U+U=P4
    //參數值
	brmul(P12,P15, r, r,1,P16);//K
    brmul(P8,P16, n, r,1,P17);//BT*k
	//BT*k+U
    for(i=0;i<n;i++)
	{
		P17[i]+=P4[i];
	}
	brmul(P5,P17, n, n,1,Pra);//BT*k
    
	for(i=0;i<n;i++)
	{
		Pra[i]=-Pra[i];
	}

	delete[] P1;
	delete[] P2;
	delete[] P3;
	delete[] P4;
	delete[] P5;
	delete[] P6;
	delete[] P7;
	delete[] P8;
	delete[] P9;
	delete[] P10;
	delete[] P11;
	delete[] P12;
	delete[] P13;
	delete[] P14;
	delete[] P15;
	delete[] P16;
	delete[] P17;

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区三区高清播放| 欧美性欧美巨大黑白大战| 东方aⅴ免费观看久久av| 色婷婷综合久久| 精品久久久久久久久久久久久久久 | 日本午夜一区二区| av中文字幕一区| 久久午夜免费电影| 日韩精品国产精品| 91小视频免费观看| 日本一区二区综合亚洲| 秋霞国产午夜精品免费视频| 91美女在线视频| 中文字幕在线不卡视频| 国内外精品视频| 欧美一区二区三区免费在线看| 亚洲精品一二三| av成人老司机| 国产区在线观看成人精品| 久久99精品久久久久久久久久久久| 欧美影视一区二区三区| 1024国产精品| 99久久婷婷国产综合精品电影| 国产片一区二区| 国产最新精品精品你懂的| 日韩精品一区二区三区视频| 美女视频一区在线观看| 欧美一区二区在线看| 亚洲成人自拍一区| 欧美精品亚洲二区| 日日夜夜一区二区| 欧美精品久久99| 免费成人深夜小野草| 6080国产精品一区二区| 午夜电影一区二区三区| 欧美久久免费观看| 日韩国产一区二| 欧美一区二区三级| 久久精品噜噜噜成人88aⅴ | 色欧美88888久久久久久影院| 亚洲欧洲日韩av| 91啪九色porn原创视频在线观看| 国产精品美女一区二区在线观看| 成人免费视频caoporn| 国产精品久久精品日日| 色先锋久久av资源部| 亚洲一区在线视频| 日韩一区二区三区三四区视频在线观看| 亚洲成人av福利| 欧美疯狂做受xxxx富婆| 狠狠色狠狠色综合系列| 国产女主播一区| 色综合天天性综合| 午夜电影网一区| 久久蜜臀精品av| 97久久超碰国产精品| 亚洲综合色婷婷| 日韩欧美不卡一区| 成人av午夜电影| 亚洲国产aⅴ天堂久久| 欧美tickle裸体挠脚心vk| 国产黄色91视频| 亚洲老妇xxxxxx| 欧美一区二区精品| 成+人+亚洲+综合天堂| 亚洲第一福利一区| 久久亚洲综合色| 在线观看亚洲a| 黄一区二区三区| 亚洲一区在线视频| 26uuu国产电影一区二区| 91天堂素人约啪| 久久精品国产99| 亚洲乱码精品一二三四区日韩在线| 777xxx欧美| 91麻豆6部合集magnet| 麻豆国产91在线播放| 国产精品视频免费看| 欧美一区二区在线免费播放| 成人av电影在线网| 久久成人18免费观看| 亚洲视频中文字幕| 久久午夜电影网| 欧美精品日韩一本| www.欧美色图| 国模一区二区三区白浆| 亚洲午夜电影网| 中文字幕一区免费在线观看| 日韩美一区二区三区| 欧美性猛片xxxx免费看久爱| 国产成a人无v码亚洲福利| 日本三级亚洲精品| 一区二区高清免费观看影视大全 | 欧美日韩一级二级三级| 国产成人亚洲综合a∨婷婷| 日本午夜精品一区二区三区电影 | 91久久精品一区二区| 国产精品主播直播| 六月婷婷色综合| 日韩精品一二三区| 亚洲电影一区二区三区| 国产精品成人免费| 国产欧美一区二区精品久导航| 91精品国产91综合久久蜜臀| 欧美色综合久久| 色婷婷综合久久久中文字幕| 99久久免费国产| 成人午夜激情影院| 国产成人高清视频| 久久99精品国产.久久久久 | 日韩欧美一区在线观看| 欧美久久婷婷综合色| 欧美人与性动xxxx| 欧美日韩视频在线第一区 | 国产一区 二区| 青青草精品视频| 亚洲va欧美va人人爽午夜| 亚洲精品国产一区二区三区四区在线| 国产丝袜美腿一区二区三区| 久久综合色8888| www国产亚洲精品久久麻豆| 国产欧美日韩在线视频| 日韩你懂的电影在线观看| 欧美xxxxxxxx| 日本一区二区三区在线不卡| 久久久亚洲欧洲日产国码αv| 久久精品夜夜夜夜久久| 日本一区二区综合亚洲| 亚洲欧美国产毛片在线| 伊人夜夜躁av伊人久久| 亚洲va在线va天堂| 久久se精品一区精品二区| 国产一区二区三区久久悠悠色av| 国产在线国偷精品产拍免费yy| 国产成人免费视频网站 | 久久久久久夜精品精品免费| 久久亚洲精品国产精品紫薇| 国产精品污污网站在线观看| 亚洲激情在线播放| 日韩综合一区二区| 国产一区二区免费视频| av中文字幕不卡| 欧美日韩国产不卡| 久久这里只有精品视频网| 欧美国产在线观看| 亚洲中国最大av网站| 免费成人在线观看| www.在线欧美| 日韩一区二区中文字幕| 中文字幕的久久| 午夜欧美视频在线观看| 久久97超碰色| 91精彩视频在线观看| 日韩一区二区三区四区五区六区| 国产亚洲欧洲一区高清在线观看| 依依成人精品视频| 国内精品久久久久影院薰衣草 | 欧美日韩视频第一区| 久久中文娱乐网| 午夜视频在线观看一区二区三区| 国产在线日韩欧美| 欧美做爰猛烈大尺度电影无法无天| 日韩欧美国产一区在线观看| 自拍偷自拍亚洲精品播放| 青青草97国产精品免费观看| 91在线看国产| 久久综合精品国产一区二区三区| 亚洲国产精品一区二区久久| 国产福利精品导航| 日韩视频一区在线观看| 一区二区在线看| 成人午夜免费视频| 欧美一区二区三区四区五区 | 精品在线观看视频| 91九色02白丝porn| 欧美国产欧美综合| 日本不卡一二三| 欧美日韩中文国产| 综合久久久久综合| 风间由美中文字幕在线看视频国产欧美 | 欧美激情一区二区在线| 麻豆视频观看网址久久| 欧美日韩一本到| 亚洲欧美另类久久久精品| 国产精品一线二线三线| 日韩一区二区三免费高清| 亚洲自拍偷拍av| 91色porny蝌蚪| 中文字幕一区二区三区蜜月| 精品一区二区三区影院在线午夜| 欧美猛男超大videosgay| 亚洲男人天堂av网| 99久久久精品| 国产精品第一页第二页第三页 | 日韩制服丝袜av| 一本大道久久a久久综合婷婷 | www.亚洲色图.com| 国产精品免费久久久久| 成人午夜激情片| 成人免费一区二区三区视频|