华中科技大学硕士学位论文基于双目立体视觉的三维定位技术研究姓名:刘晶晶申请学位级别:硕士专业:计算机软件与理论指导教师:宋恩民20070602IIIAbstractStereoVisionisusedtolocatespatialpoint,whichisanimportantresearchfieldofComputerVision.BinocularStereoVisionisthefamousoneinStereoVision,duetoitscharacteristicofsimulatingthemannerofman’seyesprocessinginformation,whichhasgreatapplicability.ResearchisdoneonBinocularStereoVision’skeytechnique,basedontheprojectnamedon3DProbabilityModelAssistedProstateTumorBiopsyNavigationSystem.Thesystemcancalculatethepositionofsurgeryinstrumentandinstructdoctorlocatingthepartoffocus.ThemaintechniqueofBinocularStereoVisioniscomposedofcameracalibration,stereomatchingand3Dcoordinatescomputing.Cameracalibrationisakeyone.FortheSurgicalNavigationSystemofComputer-AssistedSurgerymusthavesimpleoperation,highprecisionandgoodstability,themethodofcameracalibrationmustbesimple,flexibleandfast.WeadoptZhang’sflexiblenewcameracalibrationmethod,andsolvetheproblemabouthowtoautomaticallygetthepixelcoordinatesandworldcoordinatesofallthecharacteristicpointsonthecalibrationboardbyhomographymatrix.Besides,weconsidertheeffectoftangentialdistortiontoimprovetheZhang’sshortageonlycalibratingradialdistortion,whichhasbetterresultandhighprecision.Accordingtotheactualneed,weputforwardastereomatchingmethodbasedoncharacteristicspoints,whichcanobtainsubpixelprecision.Intheprocessofmatching,weproposeanewwaytofilterpointsbasedonthejumpofgray,inthemeantimeweutilizepolarlinerestricttolower2Dresearchto1D,whichconsumedlyreducethetimeandadvancetheefficiency.Atthelast,the3Dcoordinatesaregivenbyleastsquaremethodthroughtheresultsofstereomatching.Theexperimenthasshownthatthestereopositioningprecisionofthesystemishighandtheerrorissmallunderthecurrentexperimentcondition,alsotheoperationissimple.Keywords:binocularstereovision,cameracalibration,stereomatching_____111.1CTMRI(ComputedAssistedSurgeryCAS)[1,2]CASCASCAS,[1,2,3]0.11.0mm2()1.21.2.1(StereoVision)60MITRoberts3202080MarrMarr[4,5]Marr()1.1(PrimarySketch)1.1Marr3D2.54Marr201.2.2[6],[7]1.2CMUTomasiKanade[8]5KatholiekePollefeys[9]Pollefeys1.2[10](AR)[11](MR)(SR)MRCCDCCD6SRMRSRAR[12]CCDKINAMEDHipNavigationSystem1.2.38635s/1.0cm7[13]CVSuiteKruppaASA-610V2.5mmAngelplan-CAS1000,0.6mm1.3892()()2.1[4,5]PCI[14]2.1LOROLZRZlOrOlOrObfLXRXLYRYlXrXlYrY10lXrXLXRXlYrYLYRYP()llyxp,1()rryxp,2(2.1)2.1−=−=−=rlwrllwrllwxxbfzxxbyyxxbxx(2.1)()=−P(2.1)b11P2.2[15]DirectShow2.22.2CCD122.2.13D2.2.2()()[16,17]2.2.3[18]132.2.42.2.5142.3153()3.1(pin-hole)3.1.11NM×MN3.116UV()vu,()vu,()vu,XY1OXYUV3.11O1OUV()00,vuXY,xydd(3.1)+=+=00vdyvudxuyx(3.1)=11001001100yxvdudvuyx(3.2)()00,vuVUXYO1O1723.2ccccOXYZ1cOOcOcXcYXYcZ1O3.23WXWYWZ3.2RTP()1,,,()1,,,ccczyx(3.3)==111012(3.3)R33×T()0,0,00=2M44×3.1.2PPpcOPcOP(3.4)==cccczfyyzfxx(3.4)()yx,p()ccccyx,,P(3.5)=101000000001cccczyxffyxz(3.5)(3.3)(3.5)Pp()vu,(3.6)19====111][10000110010000000010010011210000(3.6)xxafd=Uyyafd=VM43×1Mxaya0u0vxaya0u0v2Mxaya0u0vR9T3R33×36MP()()vu,(3.6)cz()vu,p()vu,PMM()vu,(3.6)czwxwywzcOPp[4,5]203.1.3()uuuyxp,()dddyxp,(3.7)[5]()()+=+=ddyduddxduyxyyyxxx,,δδ(3.7)xδyδ[19,20,21]1,()()Z,,3.3(a)(b)3.3(3.8)()()()()+++=+++=634221634221,,ddddddyddddddxrkrkrkyyxrkrkrkxyxδδ(3.8)222dddrxy=+1k2k3k212(3.9)()()()()++=++=ddddddyddddddxyxpxypyxyxpyxpyx1222222123,23,δδ(3.9)1p2p3(3.10)()()()()+=+=222221,,ddddyddddxyxsyxyxsyxδδ(3.10)1s2s(3.11)()()()()()()()()++++++=++++++=222122242212212221422123,23,dddddddddddydddddddddddxyxsyxpxyprkrkyyxyxsyxpyxprkrkxyxδδ(3.11)95%xaya0u0v1k2k1p2pR3T33.2[16,17]3.2.122[22]3.2.1.1Abdel-AzizKarara70(DLT)[23]3.1DLT3.2.1.280Tsai(RadialAlignmentConstraintRAC)[24,25](1)f(2)K(3)RT233.2.2Faugeras1986[26,27][28][29,30,31][21,32][33,34]3.3242D[5,35](1)(2)(3)(4)(5)(1)(2)(3)(4)253.3.179×3.413mm×13mm240320×3.43.3.2[26]263.5XY3.5(1)(2)()iiizyx,,()iivu,1,2,3,4i=Z0()iiyx,(3)()iivu,4.1.1()'',iivu(4)(3.12)27=11''iiiiyxMvu(3.12)s0331M=111213212223313233[]TmMMMMMMMMM=(3.13)010000001''''''=−−−−−−mvyvxvyxuyuxuyxiiiiiiiiiiiiii(3.13)()'',iivu()iiyx,8mMM(5)(4)M(3.13)(6)(5)(4)4.1.13.3.30z=Riir()TzyxM1,,,=28()Tvum1,,=(3.14)[][]==110121321yxTrrAyxTrrrAvus(3.14)A(3.15)=100000vauaAyxγ(3.15)γ[]TrrAH21=HijhHij331h=111213212223313233[]Thhhhhhhhhh=(3.16)010000001=−−−−−−hvvyvxyxuuyuxyx(3.16)80(3.16)160hHHλ[]321hhhH=(3.17)[][]TrrAhhh21321λ=(3.17)1r2r(3.18)==−−−−−−2121112110hAAhhAAhhAAhTTTTTT(3.18)29()()()++−−−−−−−−+−−−===−−1112202220020220020020220022222200223332312322211312111yyxyyyxyyxyyyxyyyxyxyxyyxxTavaaauvavaaauvaaauvavaaauvaaaaaaaauvaaaBBBBBBBBBAABγγγγγγγγγγ(3.19)B[]TBBBBBBb332313221211=(3.20)Hi[]Tiiiihhhh321=(3.21)TTijijhBhvb=(3.21)[]Tjijijijijijijijijiijhhhhhhhhhhhhhhhh