IFT6145 - Vision tridimensionelle
Hiver 2007

TP 2: Calibration avec des points 3D (partie 1)

Soit le modèle de caméra suivant (en géométrie projective):

Le modèle perspective:
(({{u}, {v}, {1}}))∝ (Subscript[M, 3×4])(({{X}, {Y}, {Z}, {1}})) = ∝ KR((Subscript[I, 3×3]) |  -C)(({{X}, {Y}, {Z}, {1}}))

avec K = (({{f, 0, (Subscript[u, 0])}, {0, f, (Subscript[v, 0])}, {0, 0, 1}}))

Le modèle affine:
(({{u}, {v}, {1}}))= (({{(Subscript[M, 2×4])}, {0 0 0 1}}))(({{X}, {Y}, {Z}, {1}}))

Caméra 1

Données

p1 = (({{97.64968441906987`, 120.01772213734672`}, {106.99193915362531`, 31.33438734893797`}, {129.4220286030846`, 143.15572981238634`}, {56.80506131846361`, 126.89118363555636`}, {53.868483592284676`, 82.04069125064046`}, {136.5940868580676`, 111.2008125237351`}, {35.52113033266196`, 132.83339054527738`}, {149.1603260887893`, 56.17383278619914`}, {108.31910094658782`, 12.529790834157833`}, {113.0039041670774`, 43.482337725179434`}, {94.35823072073542`, 82.63839416205083`}, {41.57635456274924`, 71.96468791213479`}}))
q1=(({{0.9490906278505403`, 14.75683131630561`, 23.004514841371403`}, {-0.16930892053433347`, 2.027019633783802`, 18.603089629191384`}, {6.133222771487293`, 16.800088781033292`, 20.890174938184494`}, {-4.483126913173245`, 16.5223640108292`, 20.298883409093207`}, {-6.233866141459572`, 10.489785575384753`, 21.67397425820277`}, {6.368636168101097`, 12.447512128744515`, 24.396759324137896`}, {-7.10644453035767`, 17.730121485881593`, 19.013224563040602`}, {5.996145348835886`, 4.071914853741064`, 16.78356915746504`}, {-0.8108986795977566`, -0.9901762667964037`, 27.215464685367795`}, {0.9659966298856185`, 3.444396272587043`, 17.7245768955761`}, {-0.4303488160966013`, 9.079356073847812`, 17.772097151804637`}, {-7.720229856610744`, 9.187967376501868`, 18.257598170578067`}}));

Caméra 2

Données

q2=(({{6.618144464120237`, 21.041185980013314`, 34.07435615682066`}, {8.808305956161684`, 7.231778834112079`, 23.54016256623809`}, {14.024984393853437`, 26.99675435647562`, 21.47489818712546`}, {9.239201984619001`, 20.718317923646914`, 35.237632685553656`}, {6.632836587848436`, 13.010820797055034`, 32.402403195724474`}, {18.650987717176097`, 25.635836334848776`, 26.981508621864403`}, {-4.492386706434218`, 20.224477972448`, 31.02778467575976`}, {10.578884500966533`, 4.415010486172902`, 24.23260167613055`}, {5.534607596851704`, 12.308208221626536`, 31.488719002350372`}, {14.437414271855111`, 4.585143348708227`, 26.08588844695233`}, {10.951143878519835`, 12.354108140374976`, 18.328120978984852`}, {1.918752796973247`, 16.373506158300586`, 21.59360096064478`}, {3.638411725722749`, 21.87477874821932`, 34.46162468564842`}, {5.884342320457378`, 6.528016525551752`, 23.136287763378586`}, {14.97627479184085`, 20.359383535458598`, 28.376611717233285`}, {10.467332068883309`, 25.02232039875092`, 31.409145644853005`}, {-5.092935638860242`, 12.141860069018367`, 25.90067632914191`}, {19.0074807618914`, 12.44769555522266`, 32.68752226639528`}, {0.7387648459650347`, 27.094214013144736`, 33.45738416233853`}, {19.647925637509275`, 4.731585448265049`, 22.811658894661466`}, {10.943939821827964`, 5.543656589963278`, 31.418025435614773`}, {15.940435126090334`, 10.698237882244815`, 19.725211618148577`}, {9.92915991379682`, 20.494499815627222`, 32.53950198241362`}, {-5.670054116094821`, 11.047519718473568`, 18.562479676597682`}, {14.57556495586019`, 15.154932563187918`, 35.63736511240396`}, {2.496727991694978`, 15.653310535315306`, 25.710427933816312`}, {10.920863666197148`, 25.102033165999465`, 35.07230624041807`}, {3.972431102778292`, 20.650334311015072`, 22.572738056862953`}, {-3.806573340651718`, 12.41151073457661`, 36.59938380814167`}, {8.668052319666124`, 22.6209633198946`, 39.31784976075727`}, {-2.5405437103121944`, 23.61439389566721`, 29.419270923581706`}, {18.86706004493934`, 6.7782633318148395`, 22.36296006123104`}, {10.968673352933695`, 11.482637182424742`, 32.28896289240901`}, {3.879350621422309`, 16.597677403586992`, 23.090052040172317`}, {-0.14449150376524067`, 18.69076568041833`, 31.74324698057101`}, {4.189687272033937`, 20.34585438864736`, 25.595153129378843`}}));

p2=(({{177.780441786905`, 144.30805307762546`}, {185.947512442936`, 71.4540745998808`}, {242.57520031736195`, 185.35860845702797`}, {191.63214499288952`, 138.88196968581067`}, {172.0806585826653`, 102.9053791592064`}, {257.5251782460682`, 163.99701474222377`}, {120.63708164979256`, 156.1678303752008`}, {193.1686148625232`, 50.940434225650066`}, {164.93144160963487`, 101.53958192592088`}, {214.98534061089927`, 46.57813260236676`}, {213.86280352736625`, 102.38803489456438`}, {155.56968904847747`, 139.99679982014766`}, {164.48400093476624`, 154.1446520184231`}, {168.59539592038757`, 69.63752490041648`}, {229.93453439774046`, 137.89674531393106`}, {205.45316906943756`, 164.43546979699343`}, {106.06237648388317`, 116.45711541681172`}, {237.8039512943025`, 87.23647896548452`}, {153.80361718287185`, 182.1358409478806`}, {254.9921843005405`, 39.81025816713768`}, {190.28084212346624`, 58.88876940336753`}, {242.66480468269597`, 84.66547078285882`}, {196.72328234795992`, 141.44991296002524`}, {100.97307679259987`, 117.68051410892427`}, {213.9383258951788`, 105.56209201429283`}, {156.74269176202674`, 129.8254988359368`}, {202.21955856750705`, 159.02042305929282`}, {173.50396256573606`, 161.3590677189441`}, {114.91005362346745`, 109.95197279015235`}, {185.58661045907573`, 144.2941620358715`}, {134.4290000990495`, 174.5942396472902`}, {252.24874612161696`, 53.467739279490004`}, {194.35478065441947`, 91.51415226560259`}, {166.68594019151374`, 135.3290071655716`}, {142.35116075217738`, 141.65221318056086`}, {169.562730317208`, 154.64807223200984`}}));

Caméra 3

Données

q3=(({{1.942241782193215`, 1.334822618882161`, 17.63176796472066`}, {-1.5561047407734443`, -4.516607627915318`, 15.21600700157872`}, {-10.479662716244533`, 2.7197228048427333`, 16.358953880970603`}, {0.842247237320844`, 5.2978467514520196`, 15.726299533021106`}, {-6.868161374994119`, -2.094660981470887`, 15.986547227150274`}, {-4.454604171105313`, 11.751747548234073`, 16.139770740873157`}, {-6.835213645149713`, 7.218625413829428`, 18.19067493240219`}, {-3.904894633387414`, 15.928552875517525`, 21.41451626681407`}, {-8.002134594492498`, 6.413726086738229`, 14.268902377317115`}, {-2.701521656252844`, 0.11262646461950136`, 17.835202103422866`}, {-3.466235938168374`, 3.3604384328942363`, 14.946058695801161`}, {2.86285283798566`, 2.477771078961805`, 14.078186656675635`}, {-1.6210034535192954`, -2.5081735066693644`, 12.594918449178053`}, {-2.089611200515151`, -2.896739169415783`, 18.932539029098272`}, {-5.532601769509983`, -0.6230527950237211`, 16.15312656489809`}, {-0.5980406195909015`, 2.478823581028181`, 15.47767807294847`}, {-0.31176783282916554`, 9.238296562324727`, 14.060605678360094`}, {-1.4333071725123476`, 9.782019101322705`, 20.191921120010523`}, {-1.7929502619815314`, 1.1816193336612646`, 15.38982821317534`}, {1.484908295920906`, 4.959430219293819`, 18.427071406239886`}, {-3.550283623578043`, 4.604097580843084`, 14.961747610142789`}, {-4.306767542185313`, -3.2800649621632822`, 18.074992782744435`}, {-3.7654478509710945`, 5.491924299985144`, 12.933906888495628`}, {1.9141357654373785`, 3.6852970963784886`, 13.340093631490907`}, {-0.7919715384004152`, -4.735573400091458`, 17.921221032792776`}}));

p3=(({{220.1888478754561`, 51.3861082016295`}, {172.75275781123798`, 5.674330197900197`}, {101.41211014252019`, 92.20509599168372`}, {217.4254221336872`, 94.83409373312955`}, {126.2631346374918`, 38.650377465949546`}, {178.97679304713415`, 167.21059116181024`}, {146.5155335648316`, 125.15181510434668`}, {193.91330779583467`, 198.53738426663372`}, {132.55038521626213`, 125.78656019578693`}, {171.6279651899918`, 48.69663372336053`}, {170.91446022734647`, 85.81042715881745`}, {230.50556501804434`, 66.40627748991034`}, {176.20852802364453`, 28.820187427450907`}, {171.9145720434582`, 16.446289937715004`}, {142.4189857032592`, 49.83855224694484`}, {197.19158409425228`, 70.63835249238807`}, {213.8468123480731`, 137.84911677959937`}, {205.1210974704264`, 135.7783043712585`}, {182.68138679486`, 60.91304224274302`}, {223.17031165993276`, 85.50779338514779`}, {172.34361865653315`, 98.09503293994463`}, {149.16109448887534`, 18.857128810447755`}, {172.05770942180072`, 109.84379038455754`}, {223.97340352586008`, 80.71019253291644`}, {180.5903154800055`, -2.2670410016203153`}}))

Caméra 4

Données

q4=(({{5.428300039367642`, 19.371940243902174`, 37.81280659729868`}, {8.7672273825663`, 3.8929099133184595`, 21.016064845531606`}, {15.53032303380586`, 21.77536831476833`, 27.247230874055223`}, {9.490281037257049`, 19.092530388995428`, 33.74443283313463`}, {0.906178696104579`, 17.753861084302773`, 35.11729007120701`}, {11.338017997173615`, 18.55165457978072`, 25.64934423323825`}, {-1.8302402423806425`, 28.931644362955105`, 30.09345535550909`}, {7.292548856028603`, 17.774686827125457`, 20.784586130986817`}, {5.7901227013536305`, 10.691118312799748`, 41.10994490282491`}, {11.030477300306762`, 8.179527374003772`, 26.992896258832033`}, {4.067031139041946`, 14.168557210533919`, 31.150172317350638`}, {2.5746815562148937`, 11.115180953474187`, 24.90124988322275`}, {7.1871209558323885`, 17.787667220213226`, 26.488412605339484`}, {1.5049609630378307`, 2.1609075107294444`, 20.38134062399865`}, {19.340916247478344`, 22.272835787531946`, 24.94383202266165`}, {-4.001279425558697`, 31.02728551343586`, 21.770613442070083`}, {6.218769562066196`, 14.290338483403149`, 22.284415543352313`}, {12.775885530656826`, 20.16501673085355`, 33.92899286890036`}, {4.006616799653326`, 19.048169711751214`, 28.35265399960364`}, {20.233467480772713`, 13.257762606779739`, 26.45796567068998`}, {2.2905004289834325`, 10.216309961232806`, 32.91741467443839`}, {8.966123259538394`, 6.41190750422259`, 27.152812128798043`}, {7.063907696982943`, 11.606735697001934`, 31.685951298963033`}, {1.226157888996652`, 17.177302386974752`, 19.313247760755317`}, {2.4103090714831668`, 19.90266615389461`, 30.383408566694747`}, {9.479091307087185`, 10.770733475307392`, 29.21669092201792`}, {17.399055166799638`, 25.130440782785186`, 35.29445934314504`}, {6.893152247716466`, 18.60234865310287`, 33.954838897620164`}, {5.06901915491979`, 10.659578508245255`, 33.05200891140584`}, {12.024465026975278`, 20.78288619348833`, 30.138317023776455`}, {-3.2226663902341404`, 20.858570721601655`, 28.434744480626023`}, {17.791315302867048`, 14.96635798339171`, 18.85636880300785`}, {7.14940279435504`, 5.659158849645758`, 30.731014089695098`}, {8.390396047806911`, 17.66098390501625`, 28.76031071919172`}, {6.819368192918355`, 23.173403490017208`, 32.58440037927329`}, {6.93922480611517`, 14.357699743243154`, 18.695690098220506`}}))

p4=(({{189.05062623988277`, 43.957814466711866`}, {146.30469658311046`, 122.67621831879241`}, {229.4887408193796`, 21.853264635652913`}, {109.5272087303889`, 29.1827384407635`}, {103.10877371552249`, 46.579244557726085`}, {172.23824488464916`, 83.78868444532159`}, {170.54956455157955`, 13.92071246567571`}, {192.75346021464802`, 71.69958822317173`}, {134.74127102451325`, 132.3662496837301`}, {184.06614616895024`, 93.18387242311445`}, {143.86130998715387`, 84.6775227683503`}, {97.52821941153628`, 79.88909680272762`}, {149.42219383693416`, 20.163977858940147`}, {114.10855409244022`, 107.96098336109287`}, {159.0760310435904`, 41.2256330849777`}, {124.15023508951023`, 17.182848592384445`}, {121.6343148496917`, 67.17776849683938`}, {167.94674990588243`, 32.66803959718079`}, {144.60601620398103`, 41.08487736735735`}, {202.5105073302528`, 75.78338175932339`}, {137.4660955289476`, 126.18926352771902`}, {172.69474122400706`, 99.40730891859751`}, {150.37921810949132`, 72.5213903511068`}, {100.05572722227645`, 79.42395639552015`}, {131.36401722586413`, 65.19278435635022`}, {188.9553147199608`, 122.58443975668828`}, {173.2859288330457`, 15.554674707771191`}, {133.6727817904506`, 20.08004386848267`}, {151.99057494174764`, 80.91874143708269`}, {170.5595529053872`, 50.98221093719805`}, {123.72395969194665`, 38.671123913413425`}, {178.5203128976627`, 96.53646677170737`}, {109.88334484938113`, 100.13183779291603`}, {186.69406440286994`, 65.67728557104522`}, {138.2143051683741`, 84.39120033016563`}, {100.68133728957564`, 16.756190911521347`}}))