資源簡介
本軟件是計算機視覺中Tsai算法和Zhang算法的實現(xiàn),同時還實現(xiàn)了邊緣檢測、特征提取、梯度計算等算法

代碼片段和文件信息
//////////////////////////////////////////////////////////////////
//****************************************************************
//?Source?file?containing?the?management?of?all?events
//
//?Adelailson?Peixoto?and?Fabio?Franco?13/05/2003
//?Visgraf?-?IMPA
//
//****************************************************************
//////////////////////////////////////////////////////////////////
#include?“Calib.h“
float??aver=0.0;
/*////////////////////////////////////////*/
/*?Declaration?of?Local?Functions??*/
/*////////////////////////////////////////*/
static?void??cal_CornerFinder(Image?*imgpoint2D?*points?int?num_points?point2D?*p_subpix);
static?int???cal_Intersect(point2D?p0?point2D?p1?point2D?p2?point2D?p3?point2D?*p);??
static?void??cal_WarpLine(point2D?p0?point2D?p1?point2D?p2?int?n?point2D?*vpoints);
static?void??cal_ApplyConvolution(float?**SI?int?nx?int?nyfloat?*vIx?float?*vIy);
static?void??cal_Gradient(float?*SIint?nx?int?ny?point2D?**grad);
static?void??cal_Smooth(float?**SI?int?n_sx?int?n_sy);
/*////////////////////////////////////////////////////////*/
/*??????????????Implementation?of?Local?Functions?????????*/
/*////////////////////////////////////////////////////////*/
static?void?cal_ApplyConvolution(float?**SI?int?n_sx?int?n_sy?float?*vIx?float?*vIy)
{
int?ij?IprvInxtJ?Jprv?Jnxt?prvnxtk=0;
float??*auxSI;
?//Aplying?convolution?in?X?direction?
for(j=0;?j for(i=0;?i ??if(i==0)????????{Iprv=prv=0;}?else?{Iprv=i-1;?prv=1;}
??if(i==(n_sy-1))?{Inxt=nxt=0;}?else?{Inxt=i+1;?nxt=1;}
??J=j*n_sy;
??????????(*SI)[i+J]?=?(*SI)[Iprv+J]*vIx[0]*prv?+?(*SI)[i+J]*vIx[1]?+?(*SI)[Inxt+J]*vIx[2]*nxt;
}
????//Aplying?convolution?in?X?direction
????for(j=0;?j ???if(j==0)????????{Jprv=prv=0;}?else?{Jprv=j-1;?prv=1;}
???if(j==(n_sx-1))?{Jnxt=nxt=0;}?else?{Jnxt=j+1;?nxt=1;}
???J=j*n_sx;
???for(i=0;?i ??????????(*SI)[i+J]?=?(*SI)[Iprv+J]*vIy[0]*prv?+?(*SI)[i+J]*vIy[1]?+?(*SI)[Inxt+J]*vIy[2]*nxt;
}
???//Eliminating?SI?borders
???if((auxSI=new?float[(n_sx-2)*(n_sy-2)])==NULL)?return;
???for(j=1;?j<(n_sx-1);?j++)
for(i=1;?i<(n_sy-1);?i++)
auxSI[k++]=(*SI)[i+j*n_sy];
delete[](*SI);
(*SI)=auxSI;
}
//////////////////////////////////////////////////////////////////////////
static?void??cal_Smooth(float?**SI?int?nx?int?ny)
{
??int?ijnumind;
??float?*S=new?float[nx*ny]a;
??for(j=0;?j for(i=0;?i ??ind?=?i+j*nx;?num=0;?a=0.0f;
??if(i>0?&&?j>0) {a+=(*SI)[ind-1-nx];?num++;}
??if(j>0) {a+=(*SI)[ind-nx];?num++;}
??if(i0) {a+=(*SI)[ind+1-nx];?num++;}
??if(i>0) {a+=(*SI)[ind-1];num++;}
??if(i ??if(i>0?&&?j ??if(j ??if(i ??a+=(*SI)[ind];?num++;
??S[ind]=a
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????25124??2005-02-11?11:49??calib\calib.cpp
?????文件??????25116??2005-02-10?13:21??calib\calib.cpp~
?????文件????3317234??2005-02-10?13:48??calib\calib.exe
?????文件???????2183??2004-12-24?17:26??calib\Calib.h
?????文件??????38333??2005-02-10?13:44??calib\calib.o
?????文件??????28870??2004-09-30?09:16??calib\CarnegieMellow\Cal_main.cpp
?????文件???????3994??2004-12-24?17:27??calib\CarnegieMellow\Cal_main.h
?????文件??????44303??2005-02-08?13:04??calib\CarnegieMellow\Cal_main.o
?????文件????????540??2004-09-30?09:16??calib\CarnegieMellow\dpmpar.cpp
?????文件???????2821??2005-02-08?13:04??calib\CarnegieMellow\dpmpar.o
?????文件???????1253??2004-09-30?09:16??calib\CarnegieMellow\enorm.cpp
?????文件???????6108??2005-02-08?13:04??calib\CarnegieMellow\enorm.o
?????文件???????1405??2004-09-30?09:16??calib\CarnegieMellow\Fdjac2.cpp
?????文件???????5482??2005-02-08?13:04??calib\CarnegieMellow\Fdjac2.o
?????文件?????116010??2005-02-08?13:04??calib\CarnegieMellow\libcm.a
?????文件???????6705??2004-09-30?09:16??calib\CarnegieMellow\Lmdif.cpp
?????文件??????16649??2005-02-08?13:04??calib\CarnegieMellow\Lmdif.o
?????文件???????5674??2004-09-30?09:16??calib\CarnegieMellow\lmpar.cpp
?????文件??????12488??2005-02-08?13:04??calib\CarnegieMellow\lmpar.o
?????文件???????1009??2004-12-25?10:55??calib\CarnegieMellow\Makefile
?????文件???????8464??2004-09-30?09:16??calib\CarnegieMellow\matriz.cpp
?????文件????????758??2004-12-24?17:27??calib\CarnegieMellow\Matriz.h
?????文件???????8788??2005-02-08?13:04??calib\CarnegieMellow\matriz.o
?????文件???????2619??2004-12-25?10:56??calib\CarnegieMellow\qrfac.cpp
?????文件???????8871??2005-02-08?13:04??calib\CarnegieMellow\qrfac.o
?????文件???????2096??2004-12-25?10:56??calib\CarnegieMellow\qrsolv.cpp
?????文件???????9164??2005-02-08?13:04??calib\CarnegieMellow\qrsolv.o
?????文件??????41682??2004-09-30?08:50??calib\Draw.cpp
?????文件???????1887??2004-12-24?17:26??calib\Draw.h
?????文件?????773987??2005-02-08?13:02??calib\Draw.o
............此處省略80個文件信息
評論
共有 條評論