Calib3d.cs 274 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346
  1. 
  2. using OpenCVForUnity.CoreModule;
  3. using OpenCVForUnity.UtilsModule;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Runtime.InteropServices;
  7. namespace OpenCVForUnity.Calib3dModule
  8. {
  9. // C++: class Calib3d
  10. //javadoc: Calib3d
  11. public class Calib3d
  12. {
  13. // C++: enum UndistortTypes
  14. public const int PROJ_SPHERICAL_ORTHO = 0;
  15. public const int PROJ_SPHERICAL_EQRECT = 1;
  16. // C++: enum <unnamed>
  17. public const int CALIB_USE_INTRINSIC_GUESS = 1;
  18. public const int CALIB_RECOMPUTE_EXTRINSIC = 2;
  19. public const int CALIB_CHECK_COND = 4;
  20. public const int CALIB_FIX_SKEW = 8;
  21. public const int CALIB_FIX_K1 = 16;
  22. public const int CALIB_FIX_K2 = 32;
  23. public const int CALIB_FIX_K3 = 64;
  24. public const int CALIB_FIX_K4 = 128;
  25. public const int CALIB_FIX_INTRINSIC = 256;
  26. public const int CV_ITERATIVE = 0;
  27. public const int CV_EPNP = 1;
  28. public const int CV_P3P = 2;
  29. public const int CV_DLS = 3;
  30. public const int LMEDS = 4;
  31. public const int RANSAC = 8;
  32. public const int RHO = 16;
  33. public const int SOLVEPNP_ITERATIVE = 0;
  34. public const int SOLVEPNP_EPNP = 1;
  35. public const int SOLVEPNP_P3P = 2;
  36. public const int SOLVEPNP_DLS = 3;
  37. public const int SOLVEPNP_UPNP = 4;
  38. public const int SOLVEPNP_AP3P = 5;
  39. public const int SOLVEPNP_MAX_COUNT = 5 + 1;
  40. public const int CALIB_CB_ADAPTIVE_THRESH = 1;
  41. public const int CALIB_CB_NORMALIZE_IMAGE = 2;
  42. public const int CALIB_CB_FILTER_QUADS = 4;
  43. public const int CALIB_CB_FAST_CHECK = 8;
  44. public const int CALIB_CB_EXHAUSTIVE = 16;
  45. public const int CALIB_CB_ACCURACY = 32;
  46. public const int CALIB_CB_SYMMETRIC_GRID = 1;
  47. public const int CALIB_CB_ASYMMETRIC_GRID = 2;
  48. public const int CALIB_CB_CLUSTERING = 4;
  49. public const int CALIB_NINTRINSIC = 18;
  50. public const int CALIB_FIX_ASPECT_RATIO = 0x00002;
  51. public const int CALIB_FIX_PRINCIPAL_POINT = 0x00004;
  52. public const int CALIB_ZERO_TANGENT_DIST = 0x00008;
  53. public const int CALIB_FIX_FOCAL_LENGTH = 0x00010;
  54. public const int CALIB_FIX_K5 = 0x01000;
  55. public const int CALIB_FIX_K6 = 0x02000;
  56. public const int CALIB_RATIONAL_MODEL = 0x04000;
  57. public const int CALIB_THIN_PRISM_MODEL = 0x08000;
  58. public const int CALIB_FIX_S1_S2_S3_S4 = 0x10000;
  59. public const int CALIB_TILTED_MODEL = 0x40000;
  60. public const int CALIB_FIX_TAUX_TAUY = 0x80000;
  61. public const int CALIB_USE_QR = 0x100000;
  62. public const int CALIB_FIX_TANGENT_DIST = 0x200000;
  63. public const int CALIB_SAME_FOCAL_LENGTH = 0x00200;
  64. public const int CALIB_ZERO_DISPARITY = 0x00400;
  65. public const int CALIB_USE_LU = (1 << 17);
  66. public const int CALIB_USE_EXTRINSIC_GUESS = (1 << 22);
  67. public const int FM_7POINT = 1;
  68. public const int FM_8POINT = 2;
  69. public const int FM_LMEDS = 4;
  70. public const int FM_RANSAC = 8;
  71. public const int fisheye_CALIB_USE_INTRINSIC_GUESS = 1 << 0;
  72. public const int fisheye_CALIB_RECOMPUTE_EXTRINSIC = 1 << 1;
  73. public const int fisheye_CALIB_CHECK_COND = 1 << 2;
  74. public const int fisheye_CALIB_FIX_SKEW = 1 << 3;
  75. public const int fisheye_CALIB_FIX_K1 = 1 << 4;
  76. public const int fisheye_CALIB_FIX_K2 = 1 << 5;
  77. public const int fisheye_CALIB_FIX_K3 = 1 << 6;
  78. public const int fisheye_CALIB_FIX_K4 = 1 << 7;
  79. public const int fisheye_CALIB_FIX_INTRINSIC = 1 << 8;
  80. public const int fisheye_CALIB_FIX_PRINCIPAL_POINT = 1 << 9;
  81. //
  82. // C++: Mat cv::estimateAffine2D(Mat from, Mat to, Mat& inliers = Mat(), int method = RANSAC, double ransacReprojThreshold = 3, size_t maxIters = 2000, double confidence = 0.99, size_t refineIters = 10)
  83. //
  84. //javadoc: estimateAffine2D(from, to, inliers, method, ransacReprojThreshold, maxIters, confidence, refineIters)
  85. public static Mat estimateAffine2D (Mat from, Mat to, Mat inliers, int method, double ransacReprojThreshold, long maxIters, double confidence, long refineIters)
  86. {
  87. if (from != null)
  88. from.ThrowIfDisposed ();
  89. if (to != null)
  90. to.ThrowIfDisposed ();
  91. if (inliers != null)
  92. inliers.ThrowIfDisposed ();
  93. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  94. Mat retVal = new Mat (calib3d_Calib3d_estimateAffine2D_10 (from.nativeObj, to.nativeObj, inliers.nativeObj, method, ransacReprojThreshold, maxIters, confidence, refineIters));
  95. return retVal;
  96. #else
  97. return null;
  98. #endif
  99. }
  100. //javadoc: estimateAffine2D(from, to, inliers, method, ransacReprojThreshold, maxIters, confidence)
  101. public static Mat estimateAffine2D (Mat from, Mat to, Mat inliers, int method, double ransacReprojThreshold, long maxIters, double confidence)
  102. {
  103. if (from != null)
  104. from.ThrowIfDisposed ();
  105. if (to != null)
  106. to.ThrowIfDisposed ();
  107. if (inliers != null)
  108. inliers.ThrowIfDisposed ();
  109. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  110. Mat retVal = new Mat (calib3d_Calib3d_estimateAffine2D_11 (from.nativeObj, to.nativeObj, inliers.nativeObj, method, ransacReprojThreshold, maxIters, confidence));
  111. return retVal;
  112. #else
  113. return null;
  114. #endif
  115. }
  116. //javadoc: estimateAffine2D(from, to, inliers, method, ransacReprojThreshold, maxIters)
  117. public static Mat estimateAffine2D (Mat from, Mat to, Mat inliers, int method, double ransacReprojThreshold, long maxIters)
  118. {
  119. if (from != null)
  120. from.ThrowIfDisposed ();
  121. if (to != null)
  122. to.ThrowIfDisposed ();
  123. if (inliers != null)
  124. inliers.ThrowIfDisposed ();
  125. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  126. Mat retVal = new Mat (calib3d_Calib3d_estimateAffine2D_12 (from.nativeObj, to.nativeObj, inliers.nativeObj, method, ransacReprojThreshold, maxIters));
  127. return retVal;
  128. #else
  129. return null;
  130. #endif
  131. }
  132. //javadoc: estimateAffine2D(from, to, inliers, method, ransacReprojThreshold)
  133. public static Mat estimateAffine2D (Mat from, Mat to, Mat inliers, int method, double ransacReprojThreshold)
  134. {
  135. if (from != null)
  136. from.ThrowIfDisposed ();
  137. if (to != null)
  138. to.ThrowIfDisposed ();
  139. if (inliers != null)
  140. inliers.ThrowIfDisposed ();
  141. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  142. Mat retVal = new Mat (calib3d_Calib3d_estimateAffine2D_13 (from.nativeObj, to.nativeObj, inliers.nativeObj, method, ransacReprojThreshold));
  143. return retVal;
  144. #else
  145. return null;
  146. #endif
  147. }
  148. //javadoc: estimateAffine2D(from, to, inliers, method)
  149. public static Mat estimateAffine2D (Mat from, Mat to, Mat inliers, int method)
  150. {
  151. if (from != null)
  152. from.ThrowIfDisposed ();
  153. if (to != null)
  154. to.ThrowIfDisposed ();
  155. if (inliers != null)
  156. inliers.ThrowIfDisposed ();
  157. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  158. Mat retVal = new Mat (calib3d_Calib3d_estimateAffine2D_14 (from.nativeObj, to.nativeObj, inliers.nativeObj, method));
  159. return retVal;
  160. #else
  161. return null;
  162. #endif
  163. }
  164. //javadoc: estimateAffine2D(from, to, inliers)
  165. public static Mat estimateAffine2D (Mat from, Mat to, Mat inliers)
  166. {
  167. if (from != null)
  168. from.ThrowIfDisposed ();
  169. if (to != null)
  170. to.ThrowIfDisposed ();
  171. if (inliers != null)
  172. inliers.ThrowIfDisposed ();
  173. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  174. Mat retVal = new Mat (calib3d_Calib3d_estimateAffine2D_15 (from.nativeObj, to.nativeObj, inliers.nativeObj));
  175. return retVal;
  176. #else
  177. return null;
  178. #endif
  179. }
  180. //javadoc: estimateAffine2D(from, to)
  181. public static Mat estimateAffine2D (Mat from, Mat to)
  182. {
  183. if (from != null)
  184. from.ThrowIfDisposed ();
  185. if (to != null)
  186. to.ThrowIfDisposed ();
  187. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  188. Mat retVal = new Mat (calib3d_Calib3d_estimateAffine2D_16 (from.nativeObj, to.nativeObj));
  189. return retVal;
  190. #else
  191. return null;
  192. #endif
  193. }
  194. //
  195. // C++: Mat cv::estimateAffinePartial2D(Mat from, Mat to, Mat& inliers = Mat(), int method = RANSAC, double ransacReprojThreshold = 3, size_t maxIters = 2000, double confidence = 0.99, size_t refineIters = 10)
  196. //
  197. //javadoc: estimateAffinePartial2D(from, to, inliers, method, ransacReprojThreshold, maxIters, confidence, refineIters)
  198. public static Mat estimateAffinePartial2D (Mat from, Mat to, Mat inliers, int method, double ransacReprojThreshold, long maxIters, double confidence, long refineIters)
  199. {
  200. if (from != null)
  201. from.ThrowIfDisposed ();
  202. if (to != null)
  203. to.ThrowIfDisposed ();
  204. if (inliers != null)
  205. inliers.ThrowIfDisposed ();
  206. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  207. Mat retVal = new Mat (calib3d_Calib3d_estimateAffinePartial2D_10 (from.nativeObj, to.nativeObj, inliers.nativeObj, method, ransacReprojThreshold, maxIters, confidence, refineIters));
  208. return retVal;
  209. #else
  210. return null;
  211. #endif
  212. }
  213. //javadoc: estimateAffinePartial2D(from, to, inliers, method, ransacReprojThreshold, maxIters, confidence)
  214. public static Mat estimateAffinePartial2D (Mat from, Mat to, Mat inliers, int method, double ransacReprojThreshold, long maxIters, double confidence)
  215. {
  216. if (from != null)
  217. from.ThrowIfDisposed ();
  218. if (to != null)
  219. to.ThrowIfDisposed ();
  220. if (inliers != null)
  221. inliers.ThrowIfDisposed ();
  222. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  223. Mat retVal = new Mat (calib3d_Calib3d_estimateAffinePartial2D_11 (from.nativeObj, to.nativeObj, inliers.nativeObj, method, ransacReprojThreshold, maxIters, confidence));
  224. return retVal;
  225. #else
  226. return null;
  227. #endif
  228. }
  229. //javadoc: estimateAffinePartial2D(from, to, inliers, method, ransacReprojThreshold, maxIters)
  230. public static Mat estimateAffinePartial2D (Mat from, Mat to, Mat inliers, int method, double ransacReprojThreshold, long maxIters)
  231. {
  232. if (from != null)
  233. from.ThrowIfDisposed ();
  234. if (to != null)
  235. to.ThrowIfDisposed ();
  236. if (inliers != null)
  237. inliers.ThrowIfDisposed ();
  238. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  239. Mat retVal = new Mat (calib3d_Calib3d_estimateAffinePartial2D_12 (from.nativeObj, to.nativeObj, inliers.nativeObj, method, ransacReprojThreshold, maxIters));
  240. return retVal;
  241. #else
  242. return null;
  243. #endif
  244. }
  245. //javadoc: estimateAffinePartial2D(from, to, inliers, method, ransacReprojThreshold)
  246. public static Mat estimateAffinePartial2D (Mat from, Mat to, Mat inliers, int method, double ransacReprojThreshold)
  247. {
  248. if (from != null)
  249. from.ThrowIfDisposed ();
  250. if (to != null)
  251. to.ThrowIfDisposed ();
  252. if (inliers != null)
  253. inliers.ThrowIfDisposed ();
  254. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  255. Mat retVal = new Mat (calib3d_Calib3d_estimateAffinePartial2D_13 (from.nativeObj, to.nativeObj, inliers.nativeObj, method, ransacReprojThreshold));
  256. return retVal;
  257. #else
  258. return null;
  259. #endif
  260. }
  261. //javadoc: estimateAffinePartial2D(from, to, inliers, method)
  262. public static Mat estimateAffinePartial2D (Mat from, Mat to, Mat inliers, int method)
  263. {
  264. if (from != null)
  265. from.ThrowIfDisposed ();
  266. if (to != null)
  267. to.ThrowIfDisposed ();
  268. if (inliers != null)
  269. inliers.ThrowIfDisposed ();
  270. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  271. Mat retVal = new Mat (calib3d_Calib3d_estimateAffinePartial2D_14 (from.nativeObj, to.nativeObj, inliers.nativeObj, method));
  272. return retVal;
  273. #else
  274. return null;
  275. #endif
  276. }
  277. //javadoc: estimateAffinePartial2D(from, to, inliers)
  278. public static Mat estimateAffinePartial2D (Mat from, Mat to, Mat inliers)
  279. {
  280. if (from != null)
  281. from.ThrowIfDisposed ();
  282. if (to != null)
  283. to.ThrowIfDisposed ();
  284. if (inliers != null)
  285. inliers.ThrowIfDisposed ();
  286. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  287. Mat retVal = new Mat (calib3d_Calib3d_estimateAffinePartial2D_15 (from.nativeObj, to.nativeObj, inliers.nativeObj));
  288. return retVal;
  289. #else
  290. return null;
  291. #endif
  292. }
  293. //javadoc: estimateAffinePartial2D(from, to)
  294. public static Mat estimateAffinePartial2D (Mat from, Mat to)
  295. {
  296. if (from != null)
  297. from.ThrowIfDisposed ();
  298. if (to != null)
  299. to.ThrowIfDisposed ();
  300. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  301. Mat retVal = new Mat (calib3d_Calib3d_estimateAffinePartial2D_16 (from.nativeObj, to.nativeObj));
  302. return retVal;
  303. #else
  304. return null;
  305. #endif
  306. }
  307. //
  308. // C++: Mat cv::findEssentialMat(Mat points1, Mat points2, Mat cameraMatrix, int method = RANSAC, double prob = 0.999, double threshold = 1.0, Mat& mask = Mat())
  309. //
  310. //javadoc: findEssentialMat(points1, points2, cameraMatrix, method, prob, threshold, mask)
  311. public static Mat findEssentialMat (Mat points1, Mat points2, Mat cameraMatrix, int method, double prob, double threshold, Mat mask)
  312. {
  313. if (points1 != null)
  314. points1.ThrowIfDisposed ();
  315. if (points2 != null)
  316. points2.ThrowIfDisposed ();
  317. if (cameraMatrix != null)
  318. cameraMatrix.ThrowIfDisposed ();
  319. if (mask != null)
  320. mask.ThrowIfDisposed ();
  321. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  322. Mat retVal = new Mat (calib3d_Calib3d_findEssentialMat_10 (points1.nativeObj, points2.nativeObj, cameraMatrix.nativeObj, method, prob, threshold, mask.nativeObj));
  323. return retVal;
  324. #else
  325. return null;
  326. #endif
  327. }
  328. //javadoc: findEssentialMat(points1, points2, cameraMatrix, method, prob, threshold)
  329. public static Mat findEssentialMat (Mat points1, Mat points2, Mat cameraMatrix, int method, double prob, double threshold)
  330. {
  331. if (points1 != null)
  332. points1.ThrowIfDisposed ();
  333. if (points2 != null)
  334. points2.ThrowIfDisposed ();
  335. if (cameraMatrix != null)
  336. cameraMatrix.ThrowIfDisposed ();
  337. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  338. Mat retVal = new Mat (calib3d_Calib3d_findEssentialMat_11 (points1.nativeObj, points2.nativeObj, cameraMatrix.nativeObj, method, prob, threshold));
  339. return retVal;
  340. #else
  341. return null;
  342. #endif
  343. }
  344. //javadoc: findEssentialMat(points1, points2, cameraMatrix, method, prob)
  345. public static Mat findEssentialMat (Mat points1, Mat points2, Mat cameraMatrix, int method, double prob)
  346. {
  347. if (points1 != null)
  348. points1.ThrowIfDisposed ();
  349. if (points2 != null)
  350. points2.ThrowIfDisposed ();
  351. if (cameraMatrix != null)
  352. cameraMatrix.ThrowIfDisposed ();
  353. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  354. Mat retVal = new Mat (calib3d_Calib3d_findEssentialMat_12 (points1.nativeObj, points2.nativeObj, cameraMatrix.nativeObj, method, prob));
  355. return retVal;
  356. #else
  357. return null;
  358. #endif
  359. }
  360. //javadoc: findEssentialMat(points1, points2, cameraMatrix, method)
  361. public static Mat findEssentialMat (Mat points1, Mat points2, Mat cameraMatrix, int method)
  362. {
  363. if (points1 != null)
  364. points1.ThrowIfDisposed ();
  365. if (points2 != null)
  366. points2.ThrowIfDisposed ();
  367. if (cameraMatrix != null)
  368. cameraMatrix.ThrowIfDisposed ();
  369. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  370. Mat retVal = new Mat (calib3d_Calib3d_findEssentialMat_13 (points1.nativeObj, points2.nativeObj, cameraMatrix.nativeObj, method));
  371. return retVal;
  372. #else
  373. return null;
  374. #endif
  375. }
  376. //javadoc: findEssentialMat(points1, points2, cameraMatrix)
  377. public static Mat findEssentialMat (Mat points1, Mat points2, Mat cameraMatrix)
  378. {
  379. if (points1 != null)
  380. points1.ThrowIfDisposed ();
  381. if (points2 != null)
  382. points2.ThrowIfDisposed ();
  383. if (cameraMatrix != null)
  384. cameraMatrix.ThrowIfDisposed ();
  385. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  386. Mat retVal = new Mat (calib3d_Calib3d_findEssentialMat_14 (points1.nativeObj, points2.nativeObj, cameraMatrix.nativeObj));
  387. return retVal;
  388. #else
  389. return null;
  390. #endif
  391. }
  392. //
  393. // C++: Mat cv::findEssentialMat(Mat points1, Mat points2, double focal = 1.0, Point2d pp = Point2d(0, 0), int method = RANSAC, double prob = 0.999, double threshold = 1.0, Mat& mask = Mat())
  394. //
  395. //javadoc: findEssentialMat(points1, points2, focal, pp, method, prob, threshold, mask)
  396. public static Mat findEssentialMat (Mat points1, Mat points2, double focal, Point pp, int method, double prob, double threshold, Mat mask)
  397. {
  398. if (points1 != null)
  399. points1.ThrowIfDisposed ();
  400. if (points2 != null)
  401. points2.ThrowIfDisposed ();
  402. if (mask != null)
  403. mask.ThrowIfDisposed ();
  404. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  405. Mat retVal = new Mat (calib3d_Calib3d_findEssentialMat_15 (points1.nativeObj, points2.nativeObj, focal, pp.x, pp.y, method, prob, threshold, mask.nativeObj));
  406. return retVal;
  407. #else
  408. return null;
  409. #endif
  410. }
  411. //javadoc: findEssentialMat(points1, points2, focal, pp, method, prob, threshold)
  412. public static Mat findEssentialMat (Mat points1, Mat points2, double focal, Point pp, int method, double prob, double threshold)
  413. {
  414. if (points1 != null)
  415. points1.ThrowIfDisposed ();
  416. if (points2 != null)
  417. points2.ThrowIfDisposed ();
  418. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  419. Mat retVal = new Mat (calib3d_Calib3d_findEssentialMat_16 (points1.nativeObj, points2.nativeObj, focal, pp.x, pp.y, method, prob, threshold));
  420. return retVal;
  421. #else
  422. return null;
  423. #endif
  424. }
  425. //javadoc: findEssentialMat(points1, points2, focal, pp, method, prob)
  426. public static Mat findEssentialMat (Mat points1, Mat points2, double focal, Point pp, int method, double prob)
  427. {
  428. if (points1 != null)
  429. points1.ThrowIfDisposed ();
  430. if (points2 != null)
  431. points2.ThrowIfDisposed ();
  432. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  433. Mat retVal = new Mat (calib3d_Calib3d_findEssentialMat_17 (points1.nativeObj, points2.nativeObj, focal, pp.x, pp.y, method, prob));
  434. return retVal;
  435. #else
  436. return null;
  437. #endif
  438. }
  439. //javadoc: findEssentialMat(points1, points2, focal, pp, method)
  440. public static Mat findEssentialMat (Mat points1, Mat points2, double focal, Point pp, int method)
  441. {
  442. if (points1 != null)
  443. points1.ThrowIfDisposed ();
  444. if (points2 != null)
  445. points2.ThrowIfDisposed ();
  446. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  447. Mat retVal = new Mat (calib3d_Calib3d_findEssentialMat_18 (points1.nativeObj, points2.nativeObj, focal, pp.x, pp.y, method));
  448. return retVal;
  449. #else
  450. return null;
  451. #endif
  452. }
  453. //javadoc: findEssentialMat(points1, points2, focal, pp)
  454. public static Mat findEssentialMat (Mat points1, Mat points2, double focal, Point pp)
  455. {
  456. if (points1 != null)
  457. points1.ThrowIfDisposed ();
  458. if (points2 != null)
  459. points2.ThrowIfDisposed ();
  460. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  461. Mat retVal = new Mat (calib3d_Calib3d_findEssentialMat_19 (points1.nativeObj, points2.nativeObj, focal, pp.x, pp.y));
  462. return retVal;
  463. #else
  464. return null;
  465. #endif
  466. }
  467. //javadoc: findEssentialMat(points1, points2, focal)
  468. public static Mat findEssentialMat (Mat points1, Mat points2, double focal)
  469. {
  470. if (points1 != null)
  471. points1.ThrowIfDisposed ();
  472. if (points2 != null)
  473. points2.ThrowIfDisposed ();
  474. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  475. Mat retVal = new Mat (calib3d_Calib3d_findEssentialMat_110 (points1.nativeObj, points2.nativeObj, focal));
  476. return retVal;
  477. #else
  478. return null;
  479. #endif
  480. }
  481. //javadoc: findEssentialMat(points1, points2)
  482. public static Mat findEssentialMat (Mat points1, Mat points2)
  483. {
  484. if (points1 != null)
  485. points1.ThrowIfDisposed ();
  486. if (points2 != null)
  487. points2.ThrowIfDisposed ();
  488. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  489. Mat retVal = new Mat (calib3d_Calib3d_findEssentialMat_111 (points1.nativeObj, points2.nativeObj));
  490. return retVal;
  491. #else
  492. return null;
  493. #endif
  494. }
  495. //
  496. // C++: Mat cv::findFundamentalMat(vector_Point2f points1, vector_Point2f points2, int method = FM_RANSAC, double ransacReprojThreshold = 3., double confidence = 0.99, Mat& mask = Mat())
  497. //
  498. //javadoc: findFundamentalMat(points1, points2, method, ransacReprojThreshold, confidence, mask)
  499. public static Mat findFundamentalMat (MatOfPoint2f points1, MatOfPoint2f points2, int method, double ransacReprojThreshold, double confidence, Mat mask)
  500. {
  501. if (points1 != null)
  502. points1.ThrowIfDisposed ();
  503. if (points2 != null)
  504. points2.ThrowIfDisposed ();
  505. if (mask != null)
  506. mask.ThrowIfDisposed ();
  507. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  508. Mat points1_mat = points1;
  509. Mat points2_mat = points2;
  510. Mat retVal = new Mat (calib3d_Calib3d_findFundamentalMat_10 (points1_mat.nativeObj, points2_mat.nativeObj, method, ransacReprojThreshold, confidence, mask.nativeObj));
  511. return retVal;
  512. #else
  513. return null;
  514. #endif
  515. }
  516. //javadoc: findFundamentalMat(points1, points2, method, ransacReprojThreshold, confidence)
  517. public static Mat findFundamentalMat (MatOfPoint2f points1, MatOfPoint2f points2, int method, double ransacReprojThreshold, double confidence)
  518. {
  519. if (points1 != null)
  520. points1.ThrowIfDisposed ();
  521. if (points2 != null)
  522. points2.ThrowIfDisposed ();
  523. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  524. Mat points1_mat = points1;
  525. Mat points2_mat = points2;
  526. Mat retVal = new Mat (calib3d_Calib3d_findFundamentalMat_11 (points1_mat.nativeObj, points2_mat.nativeObj, method, ransacReprojThreshold, confidence));
  527. return retVal;
  528. #else
  529. return null;
  530. #endif
  531. }
  532. //javadoc: findFundamentalMat(points1, points2, method, ransacReprojThreshold)
  533. public static Mat findFundamentalMat (MatOfPoint2f points1, MatOfPoint2f points2, int method, double ransacReprojThreshold)
  534. {
  535. if (points1 != null)
  536. points1.ThrowIfDisposed ();
  537. if (points2 != null)
  538. points2.ThrowIfDisposed ();
  539. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  540. Mat points1_mat = points1;
  541. Mat points2_mat = points2;
  542. Mat retVal = new Mat (calib3d_Calib3d_findFundamentalMat_12 (points1_mat.nativeObj, points2_mat.nativeObj, method, ransacReprojThreshold));
  543. return retVal;
  544. #else
  545. return null;
  546. #endif
  547. }
  548. //javadoc: findFundamentalMat(points1, points2, method)
  549. public static Mat findFundamentalMat (MatOfPoint2f points1, MatOfPoint2f points2, int method)
  550. {
  551. if (points1 != null)
  552. points1.ThrowIfDisposed ();
  553. if (points2 != null)
  554. points2.ThrowIfDisposed ();
  555. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  556. Mat points1_mat = points1;
  557. Mat points2_mat = points2;
  558. Mat retVal = new Mat (calib3d_Calib3d_findFundamentalMat_13 (points1_mat.nativeObj, points2_mat.nativeObj, method));
  559. return retVal;
  560. #else
  561. return null;
  562. #endif
  563. }
  564. //javadoc: findFundamentalMat(points1, points2)
  565. public static Mat findFundamentalMat (MatOfPoint2f points1, MatOfPoint2f points2)
  566. {
  567. if (points1 != null)
  568. points1.ThrowIfDisposed ();
  569. if (points2 != null)
  570. points2.ThrowIfDisposed ();
  571. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  572. Mat points1_mat = points1;
  573. Mat points2_mat = points2;
  574. Mat retVal = new Mat (calib3d_Calib3d_findFundamentalMat_14 (points1_mat.nativeObj, points2_mat.nativeObj));
  575. return retVal;
  576. #else
  577. return null;
  578. #endif
  579. }
  580. //
  581. // C++: Mat cv::findHomography(vector_Point2f srcPoints, vector_Point2f dstPoints, int method = 0, double ransacReprojThreshold = 3, Mat& mask = Mat(), int maxIters = 2000, double confidence = 0.995)
  582. //
  583. //javadoc: findHomography(srcPoints, dstPoints, method, ransacReprojThreshold, mask, maxIters, confidence)
  584. public static Mat findHomography (MatOfPoint2f srcPoints, MatOfPoint2f dstPoints, int method, double ransacReprojThreshold, Mat mask, int maxIters, double confidence)
  585. {
  586. if (srcPoints != null)
  587. srcPoints.ThrowIfDisposed ();
  588. if (dstPoints != null)
  589. dstPoints.ThrowIfDisposed ();
  590. if (mask != null)
  591. mask.ThrowIfDisposed ();
  592. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  593. Mat srcPoints_mat = srcPoints;
  594. Mat dstPoints_mat = dstPoints;
  595. Mat retVal = new Mat (calib3d_Calib3d_findHomography_10 (srcPoints_mat.nativeObj, dstPoints_mat.nativeObj, method, ransacReprojThreshold, mask.nativeObj, maxIters, confidence));
  596. return retVal;
  597. #else
  598. return null;
  599. #endif
  600. }
  601. //javadoc: findHomography(srcPoints, dstPoints, method, ransacReprojThreshold, mask, maxIters)
  602. public static Mat findHomography (MatOfPoint2f srcPoints, MatOfPoint2f dstPoints, int method, double ransacReprojThreshold, Mat mask, int maxIters)
  603. {
  604. if (srcPoints != null)
  605. srcPoints.ThrowIfDisposed ();
  606. if (dstPoints != null)
  607. dstPoints.ThrowIfDisposed ();
  608. if (mask != null)
  609. mask.ThrowIfDisposed ();
  610. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  611. Mat srcPoints_mat = srcPoints;
  612. Mat dstPoints_mat = dstPoints;
  613. Mat retVal = new Mat (calib3d_Calib3d_findHomography_11 (srcPoints_mat.nativeObj, dstPoints_mat.nativeObj, method, ransacReprojThreshold, mask.nativeObj, maxIters));
  614. return retVal;
  615. #else
  616. return null;
  617. #endif
  618. }
  619. //javadoc: findHomography(srcPoints, dstPoints, method, ransacReprojThreshold, mask)
  620. public static Mat findHomography (MatOfPoint2f srcPoints, MatOfPoint2f dstPoints, int method, double ransacReprojThreshold, Mat mask)
  621. {
  622. if (srcPoints != null)
  623. srcPoints.ThrowIfDisposed ();
  624. if (dstPoints != null)
  625. dstPoints.ThrowIfDisposed ();
  626. if (mask != null)
  627. mask.ThrowIfDisposed ();
  628. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  629. Mat srcPoints_mat = srcPoints;
  630. Mat dstPoints_mat = dstPoints;
  631. Mat retVal = new Mat (calib3d_Calib3d_findHomography_12 (srcPoints_mat.nativeObj, dstPoints_mat.nativeObj, method, ransacReprojThreshold, mask.nativeObj));
  632. return retVal;
  633. #else
  634. return null;
  635. #endif
  636. }
  637. //javadoc: findHomography(srcPoints, dstPoints, method, ransacReprojThreshold)
  638. public static Mat findHomography (MatOfPoint2f srcPoints, MatOfPoint2f dstPoints, int method, double ransacReprojThreshold)
  639. {
  640. if (srcPoints != null)
  641. srcPoints.ThrowIfDisposed ();
  642. if (dstPoints != null)
  643. dstPoints.ThrowIfDisposed ();
  644. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  645. Mat srcPoints_mat = srcPoints;
  646. Mat dstPoints_mat = dstPoints;
  647. Mat retVal = new Mat (calib3d_Calib3d_findHomography_13 (srcPoints_mat.nativeObj, dstPoints_mat.nativeObj, method, ransacReprojThreshold));
  648. return retVal;
  649. #else
  650. return null;
  651. #endif
  652. }
  653. //javadoc: findHomography(srcPoints, dstPoints, method)
  654. public static Mat findHomography (MatOfPoint2f srcPoints, MatOfPoint2f dstPoints, int method)
  655. {
  656. if (srcPoints != null)
  657. srcPoints.ThrowIfDisposed ();
  658. if (dstPoints != null)
  659. dstPoints.ThrowIfDisposed ();
  660. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  661. Mat srcPoints_mat = srcPoints;
  662. Mat dstPoints_mat = dstPoints;
  663. Mat retVal = new Mat (calib3d_Calib3d_findHomography_14 (srcPoints_mat.nativeObj, dstPoints_mat.nativeObj, method));
  664. return retVal;
  665. #else
  666. return null;
  667. #endif
  668. }
  669. //javadoc: findHomography(srcPoints, dstPoints)
  670. public static Mat findHomography (MatOfPoint2f srcPoints, MatOfPoint2f dstPoints)
  671. {
  672. if (srcPoints != null)
  673. srcPoints.ThrowIfDisposed ();
  674. if (dstPoints != null)
  675. dstPoints.ThrowIfDisposed ();
  676. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  677. Mat srcPoints_mat = srcPoints;
  678. Mat dstPoints_mat = dstPoints;
  679. Mat retVal = new Mat (calib3d_Calib3d_findHomography_15 (srcPoints_mat.nativeObj, dstPoints_mat.nativeObj));
  680. return retVal;
  681. #else
  682. return null;
  683. #endif
  684. }
  685. //
  686. // C++: Mat cv::getDefaultNewCameraMatrix(Mat cameraMatrix, Size imgsize = Size(), bool centerPrincipalPoint = false)
  687. //
  688. //javadoc: getDefaultNewCameraMatrix(cameraMatrix, imgsize, centerPrincipalPoint)
  689. public static Mat getDefaultNewCameraMatrix (Mat cameraMatrix, Size imgsize, bool centerPrincipalPoint)
  690. {
  691. if (cameraMatrix != null)
  692. cameraMatrix.ThrowIfDisposed ();
  693. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  694. Mat retVal = new Mat (calib3d_Calib3d_getDefaultNewCameraMatrix_10 (cameraMatrix.nativeObj, imgsize.width, imgsize.height, centerPrincipalPoint));
  695. return retVal;
  696. #else
  697. return null;
  698. #endif
  699. }
  700. //javadoc: getDefaultNewCameraMatrix(cameraMatrix, imgsize)
  701. public static Mat getDefaultNewCameraMatrix (Mat cameraMatrix, Size imgsize)
  702. {
  703. if (cameraMatrix != null)
  704. cameraMatrix.ThrowIfDisposed ();
  705. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  706. Mat retVal = new Mat (calib3d_Calib3d_getDefaultNewCameraMatrix_11 (cameraMatrix.nativeObj, imgsize.width, imgsize.height));
  707. return retVal;
  708. #else
  709. return null;
  710. #endif
  711. }
  712. //javadoc: getDefaultNewCameraMatrix(cameraMatrix)
  713. public static Mat getDefaultNewCameraMatrix (Mat cameraMatrix)
  714. {
  715. if (cameraMatrix != null)
  716. cameraMatrix.ThrowIfDisposed ();
  717. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  718. Mat retVal = new Mat (calib3d_Calib3d_getDefaultNewCameraMatrix_12 (cameraMatrix.nativeObj));
  719. return retVal;
  720. #else
  721. return null;
  722. #endif
  723. }
  724. //
  725. // C++: Mat cv::getOptimalNewCameraMatrix(Mat cameraMatrix, Mat distCoeffs, Size imageSize, double alpha, Size newImgSize = Size(), Rect* validPixROI = 0, bool centerPrincipalPoint = false)
  726. //
  727. //javadoc: getOptimalNewCameraMatrix(cameraMatrix, distCoeffs, imageSize, alpha, newImgSize, validPixROI, centerPrincipalPoint)
  728. public static Mat getOptimalNewCameraMatrix (Mat cameraMatrix, Mat distCoeffs, Size imageSize, double alpha, Size newImgSize, Rect validPixROI, bool centerPrincipalPoint)
  729. {
  730. if (cameraMatrix != null)
  731. cameraMatrix.ThrowIfDisposed ();
  732. if (distCoeffs != null)
  733. distCoeffs.ThrowIfDisposed ();
  734. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  735. double[] validPixROI_out = new double[4];
  736. Mat retVal = new Mat (calib3d_Calib3d_getOptimalNewCameraMatrix_10 (cameraMatrix.nativeObj, distCoeffs.nativeObj, imageSize.width, imageSize.height, alpha, newImgSize.width, newImgSize.height, validPixROI_out, centerPrincipalPoint));
  737. if (validPixROI != null) {
  738. validPixROI.x = (int)validPixROI_out [0];
  739. validPixROI.y = (int)validPixROI_out [1];
  740. validPixROI.width = (int)validPixROI_out [2];
  741. validPixROI.height = (int)validPixROI_out [3];
  742. }
  743. return retVal;
  744. #else
  745. return null;
  746. #endif
  747. }
  748. //javadoc: getOptimalNewCameraMatrix(cameraMatrix, distCoeffs, imageSize, alpha, newImgSize, validPixROI)
  749. public static Mat getOptimalNewCameraMatrix (Mat cameraMatrix, Mat distCoeffs, Size imageSize, double alpha, Size newImgSize, Rect validPixROI)
  750. {
  751. if (cameraMatrix != null)
  752. cameraMatrix.ThrowIfDisposed ();
  753. if (distCoeffs != null)
  754. distCoeffs.ThrowIfDisposed ();
  755. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  756. double[] validPixROI_out = new double[4];
  757. Mat retVal = new Mat (calib3d_Calib3d_getOptimalNewCameraMatrix_11 (cameraMatrix.nativeObj, distCoeffs.nativeObj, imageSize.width, imageSize.height, alpha, newImgSize.width, newImgSize.height, validPixROI_out));
  758. if (validPixROI != null) {
  759. validPixROI.x = (int)validPixROI_out [0];
  760. validPixROI.y = (int)validPixROI_out [1];
  761. validPixROI.width = (int)validPixROI_out [2];
  762. validPixROI.height = (int)validPixROI_out [3];
  763. }
  764. return retVal;
  765. #else
  766. return null;
  767. #endif
  768. }
  769. //javadoc: getOptimalNewCameraMatrix(cameraMatrix, distCoeffs, imageSize, alpha, newImgSize)
  770. public static Mat getOptimalNewCameraMatrix (Mat cameraMatrix, Mat distCoeffs, Size imageSize, double alpha, Size newImgSize)
  771. {
  772. if (cameraMatrix != null)
  773. cameraMatrix.ThrowIfDisposed ();
  774. if (distCoeffs != null)
  775. distCoeffs.ThrowIfDisposed ();
  776. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  777. Mat retVal = new Mat (calib3d_Calib3d_getOptimalNewCameraMatrix_12 (cameraMatrix.nativeObj, distCoeffs.nativeObj, imageSize.width, imageSize.height, alpha, newImgSize.width, newImgSize.height));
  778. return retVal;
  779. #else
  780. return null;
  781. #endif
  782. }
  783. //javadoc: getOptimalNewCameraMatrix(cameraMatrix, distCoeffs, imageSize, alpha)
  784. public static Mat getOptimalNewCameraMatrix (Mat cameraMatrix, Mat distCoeffs, Size imageSize, double alpha)
  785. {
  786. if (cameraMatrix != null)
  787. cameraMatrix.ThrowIfDisposed ();
  788. if (distCoeffs != null)
  789. distCoeffs.ThrowIfDisposed ();
  790. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  791. Mat retVal = new Mat (calib3d_Calib3d_getOptimalNewCameraMatrix_13 (cameraMatrix.nativeObj, distCoeffs.nativeObj, imageSize.width, imageSize.height, alpha));
  792. return retVal;
  793. #else
  794. return null;
  795. #endif
  796. }
  797. //
  798. // C++: Mat cv::initCameraMatrix2D(vector_vector_Point3f objectPoints, vector_vector_Point2f imagePoints, Size imageSize, double aspectRatio = 1.0)
  799. //
  800. //javadoc: initCameraMatrix2D(objectPoints, imagePoints, imageSize, aspectRatio)
  801. public static Mat initCameraMatrix2D (List<MatOfPoint3f> objectPoints, List<MatOfPoint2f> imagePoints, Size imageSize, double aspectRatio)
  802. {
  803. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  804. List<Mat> objectPoints_tmplm = new List<Mat> ((objectPoints != null) ? objectPoints.Count : 0);
  805. Mat objectPoints_mat = Converters.vector_vector_Point3f_to_Mat (objectPoints, objectPoints_tmplm);
  806. List<Mat> imagePoints_tmplm = new List<Mat> ((imagePoints != null) ? imagePoints.Count : 0);
  807. Mat imagePoints_mat = Converters.vector_vector_Point2f_to_Mat (imagePoints, imagePoints_tmplm);
  808. Mat retVal = new Mat (calib3d_Calib3d_initCameraMatrix2D_10 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, imageSize.width, imageSize.height, aspectRatio));
  809. return retVal;
  810. #else
  811. return null;
  812. #endif
  813. }
  814. //javadoc: initCameraMatrix2D(objectPoints, imagePoints, imageSize)
  815. public static Mat initCameraMatrix2D (List<MatOfPoint3f> objectPoints, List<MatOfPoint2f> imagePoints, Size imageSize)
  816. {
  817. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  818. List<Mat> objectPoints_tmplm = new List<Mat> ((objectPoints != null) ? objectPoints.Count : 0);
  819. Mat objectPoints_mat = Converters.vector_vector_Point3f_to_Mat (objectPoints, objectPoints_tmplm);
  820. List<Mat> imagePoints_tmplm = new List<Mat> ((imagePoints != null) ? imagePoints.Count : 0);
  821. Mat imagePoints_mat = Converters.vector_vector_Point2f_to_Mat (imagePoints, imagePoints_tmplm);
  822. Mat retVal = new Mat (calib3d_Calib3d_initCameraMatrix2D_11 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, imageSize.width, imageSize.height));
  823. return retVal;
  824. #else
  825. return null;
  826. #endif
  827. }
  828. //
  829. // C++: Rect cv::getValidDisparityROI(Rect roi1, Rect roi2, int minDisparity, int numberOfDisparities, int SADWindowSize)
  830. //
  831. //javadoc: getValidDisparityROI(roi1, roi2, minDisparity, numberOfDisparities, SADWindowSize)
  832. public static Rect getValidDisparityROI (Rect roi1, Rect roi2, int minDisparity, int numberOfDisparities, int SADWindowSize)
  833. {
  834. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  835. double[] tmpArray = new double[4];
  836. calib3d_Calib3d_getValidDisparityROI_10 (roi1.x, roi1.y, roi1.width, roi1.height, roi2.x, roi2.y, roi2.width, roi2.height, minDisparity, numberOfDisparities, SADWindowSize, tmpArray);
  837. Rect retVal = new Rect (tmpArray);
  838. return retVal;
  839. #else
  840. return null;
  841. #endif
  842. }
  843. //
  844. // C++: Vec3d cv::RQDecomp3x3(Mat src, Mat& mtxR, Mat& mtxQ, Mat& Qx = Mat(), Mat& Qy = Mat(), Mat& Qz = Mat())
  845. //
  846. //javadoc: RQDecomp3x3(src, mtxR, mtxQ, Qx, Qy, Qz)
  847. public static double[] RQDecomp3x3 (Mat src, Mat mtxR, Mat mtxQ, Mat Qx, Mat Qy, Mat Qz)
  848. {
  849. if (src != null)
  850. src.ThrowIfDisposed ();
  851. if (mtxR != null)
  852. mtxR.ThrowIfDisposed ();
  853. if (mtxQ != null)
  854. mtxQ.ThrowIfDisposed ();
  855. if (Qx != null)
  856. Qx.ThrowIfDisposed ();
  857. if (Qy != null)
  858. Qy.ThrowIfDisposed ();
  859. if (Qz != null)
  860. Qz.ThrowIfDisposed ();
  861. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  862. double[] retVal = new double[3];
  863. calib3d_Calib3d_RQDecomp3x3_10 (src.nativeObj, mtxR.nativeObj, mtxQ.nativeObj, Qx.nativeObj, Qy.nativeObj, Qz.nativeObj, retVal);
  864. return retVal;
  865. #else
  866. return null;
  867. #endif
  868. }
  869. //javadoc: RQDecomp3x3(src, mtxR, mtxQ, Qx, Qy)
  870. public static double[] RQDecomp3x3 (Mat src, Mat mtxR, Mat mtxQ, Mat Qx, Mat Qy)
  871. {
  872. if (src != null)
  873. src.ThrowIfDisposed ();
  874. if (mtxR != null)
  875. mtxR.ThrowIfDisposed ();
  876. if (mtxQ != null)
  877. mtxQ.ThrowIfDisposed ();
  878. if (Qx != null)
  879. Qx.ThrowIfDisposed ();
  880. if (Qy != null)
  881. Qy.ThrowIfDisposed ();
  882. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  883. double[] retVal = new double[3];
  884. calib3d_Calib3d_RQDecomp3x3_11 (src.nativeObj, mtxR.nativeObj, mtxQ.nativeObj, Qx.nativeObj, Qy.nativeObj, retVal);
  885. return retVal;
  886. #else
  887. return null;
  888. #endif
  889. }
  890. //javadoc: RQDecomp3x3(src, mtxR, mtxQ, Qx)
  891. public static double[] RQDecomp3x3 (Mat src, Mat mtxR, Mat mtxQ, Mat Qx)
  892. {
  893. if (src != null)
  894. src.ThrowIfDisposed ();
  895. if (mtxR != null)
  896. mtxR.ThrowIfDisposed ();
  897. if (mtxQ != null)
  898. mtxQ.ThrowIfDisposed ();
  899. if (Qx != null)
  900. Qx.ThrowIfDisposed ();
  901. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  902. double[] retVal = new double[3];
  903. calib3d_Calib3d_RQDecomp3x3_12 (src.nativeObj, mtxR.nativeObj, mtxQ.nativeObj, Qx.nativeObj, retVal);
  904. return retVal;
  905. #else
  906. return null;
  907. #endif
  908. }
  909. //javadoc: RQDecomp3x3(src, mtxR, mtxQ)
  910. public static double[] RQDecomp3x3 (Mat src, Mat mtxR, Mat mtxQ)
  911. {
  912. if (src != null)
  913. src.ThrowIfDisposed ();
  914. if (mtxR != null)
  915. mtxR.ThrowIfDisposed ();
  916. if (mtxQ != null)
  917. mtxQ.ThrowIfDisposed ();
  918. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  919. double[] retVal = new double[3];
  920. calib3d_Calib3d_RQDecomp3x3_13 (src.nativeObj, mtxR.nativeObj, mtxQ.nativeObj, retVal);
  921. return retVal;
  922. #else
  923. return null;
  924. #endif
  925. }
  926. //
  927. // C++: bool cv::checkChessboard(Mat img, Size size)
  928. //
  929. //javadoc: checkChessboard(img, size)
  930. public static bool checkChessboard (Mat img, Size size)
  931. {
  932. if (img != null)
  933. img.ThrowIfDisposed ();
  934. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  935. bool retVal = calib3d_Calib3d_checkChessboard_10 (img.nativeObj, size.width, size.height);
  936. return retVal;
  937. #else
  938. return false;
  939. #endif
  940. }
  941. //
  942. // C++: bool cv::findChessboardCorners(Mat image, Size patternSize, vector_Point2f& corners, int flags = CALIB_CB_ADAPTIVE_THRESH + CALIB_CB_NORMALIZE_IMAGE)
  943. //
  944. //javadoc: findChessboardCorners(image, patternSize, corners, flags)
  945. public static bool findChessboardCorners (Mat image, Size patternSize, MatOfPoint2f corners, int flags)
  946. {
  947. if (image != null)
  948. image.ThrowIfDisposed ();
  949. if (corners != null)
  950. corners.ThrowIfDisposed ();
  951. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  952. Mat corners_mat = corners;
  953. bool retVal = calib3d_Calib3d_findChessboardCorners_10 (image.nativeObj, patternSize.width, patternSize.height, corners_mat.nativeObj, flags);
  954. return retVal;
  955. #else
  956. return false;
  957. #endif
  958. }
  959. //javadoc: findChessboardCorners(image, patternSize, corners)
  960. public static bool findChessboardCorners (Mat image, Size patternSize, MatOfPoint2f corners)
  961. {
  962. if (image != null)
  963. image.ThrowIfDisposed ();
  964. if (corners != null)
  965. corners.ThrowIfDisposed ();
  966. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  967. Mat corners_mat = corners;
  968. bool retVal = calib3d_Calib3d_findChessboardCorners_11 (image.nativeObj, patternSize.width, patternSize.height, corners_mat.nativeObj);
  969. return retVal;
  970. #else
  971. return false;
  972. #endif
  973. }
  974. //
  975. // C++: bool cv::findChessboardCornersSB(Mat image, Size patternSize, Mat& corners, int flags = 0)
  976. //
  977. //javadoc: findChessboardCornersSB(image, patternSize, corners, flags)
  978. public static bool findChessboardCornersSB (Mat image, Size patternSize, Mat corners, int flags)
  979. {
  980. if (image != null)
  981. image.ThrowIfDisposed ();
  982. if (corners != null)
  983. corners.ThrowIfDisposed ();
  984. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  985. bool retVal = calib3d_Calib3d_findChessboardCornersSB_10 (image.nativeObj, patternSize.width, patternSize.height, corners.nativeObj, flags);
  986. return retVal;
  987. #else
  988. return false;
  989. #endif
  990. }
  991. //javadoc: findChessboardCornersSB(image, patternSize, corners)
  992. public static bool findChessboardCornersSB (Mat image, Size patternSize, Mat corners)
  993. {
  994. if (image != null)
  995. image.ThrowIfDisposed ();
  996. if (corners != null)
  997. corners.ThrowIfDisposed ();
  998. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  999. bool retVal = calib3d_Calib3d_findChessboardCornersSB_11 (image.nativeObj, patternSize.width, patternSize.height, corners.nativeObj);
  1000. return retVal;
  1001. #else
  1002. return false;
  1003. #endif
  1004. }
  1005. //
  1006. // C++: bool cv::findCirclesGrid(Mat image, Size patternSize, Mat& centers, int flags, Ptr_FeatureDetector blobDetector, CirclesGridFinderParameters parameters)
  1007. //
  1008. // Unknown type 'Ptr_FeatureDetector' (I), skipping the function
  1009. //
  1010. // C++: bool cv::findCirclesGrid(Mat image, Size patternSize, Mat& centers, int flags = CALIB_CB_SYMMETRIC_GRID, Ptr_FeatureDetector blobDetector = SimpleBlobDetector::create())
  1011. //
  1012. //javadoc: findCirclesGrid(image, patternSize, centers, flags)
  1013. public static bool findCirclesGrid (Mat image, Size patternSize, Mat centers, int flags)
  1014. {
  1015. if (image != null)
  1016. image.ThrowIfDisposed ();
  1017. if (centers != null)
  1018. centers.ThrowIfDisposed ();
  1019. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1020. bool retVal = calib3d_Calib3d_findCirclesGrid_10 (image.nativeObj, patternSize.width, patternSize.height, centers.nativeObj, flags);
  1021. return retVal;
  1022. #else
  1023. return false;
  1024. #endif
  1025. }
  1026. //javadoc: findCirclesGrid(image, patternSize, centers)
  1027. public static bool findCirclesGrid (Mat image, Size patternSize, Mat centers)
  1028. {
  1029. if (image != null)
  1030. image.ThrowIfDisposed ();
  1031. if (centers != null)
  1032. centers.ThrowIfDisposed ();
  1033. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1034. bool retVal = calib3d_Calib3d_findCirclesGrid_12 (image.nativeObj, patternSize.width, patternSize.height, centers.nativeObj);
  1035. return retVal;
  1036. #else
  1037. return false;
  1038. #endif
  1039. }
  1040. //
  1041. // C++: bool cv::solvePnP(vector_Point3f objectPoints, vector_Point2f imagePoints, Mat cameraMatrix, vector_double distCoeffs, Mat& rvec, Mat& tvec, bool useExtrinsicGuess = false, int flags = SOLVEPNP_ITERATIVE)
  1042. //
  1043. //javadoc: solvePnP(objectPoints, imagePoints, cameraMatrix, distCoeffs, rvec, tvec, useExtrinsicGuess, flags)
  1044. public static bool solvePnP (MatOfPoint3f objectPoints, MatOfPoint2f imagePoints, Mat cameraMatrix, MatOfDouble distCoeffs, Mat rvec, Mat tvec, bool useExtrinsicGuess, int flags)
  1045. {
  1046. if (objectPoints != null)
  1047. objectPoints.ThrowIfDisposed ();
  1048. if (imagePoints != null)
  1049. imagePoints.ThrowIfDisposed ();
  1050. if (cameraMatrix != null)
  1051. cameraMatrix.ThrowIfDisposed ();
  1052. if (distCoeffs != null)
  1053. distCoeffs.ThrowIfDisposed ();
  1054. if (rvec != null)
  1055. rvec.ThrowIfDisposed ();
  1056. if (tvec != null)
  1057. tvec.ThrowIfDisposed ();
  1058. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1059. Mat objectPoints_mat = objectPoints;
  1060. Mat imagePoints_mat = imagePoints;
  1061. Mat distCoeffs_mat = distCoeffs;
  1062. bool retVal = calib3d_Calib3d_solvePnP_10 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, cameraMatrix.nativeObj, distCoeffs_mat.nativeObj, rvec.nativeObj, tvec.nativeObj, useExtrinsicGuess, flags);
  1063. return retVal;
  1064. #else
  1065. return false;
  1066. #endif
  1067. }
  1068. //javadoc: solvePnP(objectPoints, imagePoints, cameraMatrix, distCoeffs, rvec, tvec, useExtrinsicGuess)
  1069. public static bool solvePnP (MatOfPoint3f objectPoints, MatOfPoint2f imagePoints, Mat cameraMatrix, MatOfDouble distCoeffs, Mat rvec, Mat tvec, bool useExtrinsicGuess)
  1070. {
  1071. if (objectPoints != null)
  1072. objectPoints.ThrowIfDisposed ();
  1073. if (imagePoints != null)
  1074. imagePoints.ThrowIfDisposed ();
  1075. if (cameraMatrix != null)
  1076. cameraMatrix.ThrowIfDisposed ();
  1077. if (distCoeffs != null)
  1078. distCoeffs.ThrowIfDisposed ();
  1079. if (rvec != null)
  1080. rvec.ThrowIfDisposed ();
  1081. if (tvec != null)
  1082. tvec.ThrowIfDisposed ();
  1083. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1084. Mat objectPoints_mat = objectPoints;
  1085. Mat imagePoints_mat = imagePoints;
  1086. Mat distCoeffs_mat = distCoeffs;
  1087. bool retVal = calib3d_Calib3d_solvePnP_11 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, cameraMatrix.nativeObj, distCoeffs_mat.nativeObj, rvec.nativeObj, tvec.nativeObj, useExtrinsicGuess);
  1088. return retVal;
  1089. #else
  1090. return false;
  1091. #endif
  1092. }
  1093. //javadoc: solvePnP(objectPoints, imagePoints, cameraMatrix, distCoeffs, rvec, tvec)
  1094. public static bool solvePnP (MatOfPoint3f objectPoints, MatOfPoint2f imagePoints, Mat cameraMatrix, MatOfDouble distCoeffs, Mat rvec, Mat tvec)
  1095. {
  1096. if (objectPoints != null)
  1097. objectPoints.ThrowIfDisposed ();
  1098. if (imagePoints != null)
  1099. imagePoints.ThrowIfDisposed ();
  1100. if (cameraMatrix != null)
  1101. cameraMatrix.ThrowIfDisposed ();
  1102. if (distCoeffs != null)
  1103. distCoeffs.ThrowIfDisposed ();
  1104. if (rvec != null)
  1105. rvec.ThrowIfDisposed ();
  1106. if (tvec != null)
  1107. tvec.ThrowIfDisposed ();
  1108. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1109. Mat objectPoints_mat = objectPoints;
  1110. Mat imagePoints_mat = imagePoints;
  1111. Mat distCoeffs_mat = distCoeffs;
  1112. bool retVal = calib3d_Calib3d_solvePnP_12 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, cameraMatrix.nativeObj, distCoeffs_mat.nativeObj, rvec.nativeObj, tvec.nativeObj);
  1113. return retVal;
  1114. #else
  1115. return false;
  1116. #endif
  1117. }
  1118. //
  1119. // C++: bool cv::solvePnPRansac(vector_Point3f objectPoints, vector_Point2f imagePoints, Mat cameraMatrix, vector_double distCoeffs, Mat& rvec, Mat& tvec, bool useExtrinsicGuess = false, int iterationsCount = 100, float reprojectionError = 8.0, double confidence = 0.99, Mat& inliers = Mat(), int flags = SOLVEPNP_ITERATIVE)
  1120. //
  1121. //javadoc: solvePnPRansac(objectPoints, imagePoints, cameraMatrix, distCoeffs, rvec, tvec, useExtrinsicGuess, iterationsCount, reprojectionError, confidence, inliers, flags)
  1122. public static bool solvePnPRansac (MatOfPoint3f objectPoints, MatOfPoint2f imagePoints, Mat cameraMatrix, MatOfDouble distCoeffs, Mat rvec, Mat tvec, bool useExtrinsicGuess, int iterationsCount, float reprojectionError, double confidence, Mat inliers, int flags)
  1123. {
  1124. if (objectPoints != null)
  1125. objectPoints.ThrowIfDisposed ();
  1126. if (imagePoints != null)
  1127. imagePoints.ThrowIfDisposed ();
  1128. if (cameraMatrix != null)
  1129. cameraMatrix.ThrowIfDisposed ();
  1130. if (distCoeffs != null)
  1131. distCoeffs.ThrowIfDisposed ();
  1132. if (rvec != null)
  1133. rvec.ThrowIfDisposed ();
  1134. if (tvec != null)
  1135. tvec.ThrowIfDisposed ();
  1136. if (inliers != null)
  1137. inliers.ThrowIfDisposed ();
  1138. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1139. Mat objectPoints_mat = objectPoints;
  1140. Mat imagePoints_mat = imagePoints;
  1141. Mat distCoeffs_mat = distCoeffs;
  1142. bool retVal = calib3d_Calib3d_solvePnPRansac_10 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, cameraMatrix.nativeObj, distCoeffs_mat.nativeObj, rvec.nativeObj, tvec.nativeObj, useExtrinsicGuess, iterationsCount, reprojectionError, confidence, inliers.nativeObj, flags);
  1143. return retVal;
  1144. #else
  1145. return false;
  1146. #endif
  1147. }
  1148. //javadoc: solvePnPRansac(objectPoints, imagePoints, cameraMatrix, distCoeffs, rvec, tvec, useExtrinsicGuess, iterationsCount, reprojectionError, confidence, inliers)
  1149. public static bool solvePnPRansac (MatOfPoint3f objectPoints, MatOfPoint2f imagePoints, Mat cameraMatrix, MatOfDouble distCoeffs, Mat rvec, Mat tvec, bool useExtrinsicGuess, int iterationsCount, float reprojectionError, double confidence, Mat inliers)
  1150. {
  1151. if (objectPoints != null)
  1152. objectPoints.ThrowIfDisposed ();
  1153. if (imagePoints != null)
  1154. imagePoints.ThrowIfDisposed ();
  1155. if (cameraMatrix != null)
  1156. cameraMatrix.ThrowIfDisposed ();
  1157. if (distCoeffs != null)
  1158. distCoeffs.ThrowIfDisposed ();
  1159. if (rvec != null)
  1160. rvec.ThrowIfDisposed ();
  1161. if (tvec != null)
  1162. tvec.ThrowIfDisposed ();
  1163. if (inliers != null)
  1164. inliers.ThrowIfDisposed ();
  1165. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1166. Mat objectPoints_mat = objectPoints;
  1167. Mat imagePoints_mat = imagePoints;
  1168. Mat distCoeffs_mat = distCoeffs;
  1169. bool retVal = calib3d_Calib3d_solvePnPRansac_11 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, cameraMatrix.nativeObj, distCoeffs_mat.nativeObj, rvec.nativeObj, tvec.nativeObj, useExtrinsicGuess, iterationsCount, reprojectionError, confidence, inliers.nativeObj);
  1170. return retVal;
  1171. #else
  1172. return false;
  1173. #endif
  1174. }
  1175. //javadoc: solvePnPRansac(objectPoints, imagePoints, cameraMatrix, distCoeffs, rvec, tvec, useExtrinsicGuess, iterationsCount, reprojectionError, confidence)
  1176. public static bool solvePnPRansac (MatOfPoint3f objectPoints, MatOfPoint2f imagePoints, Mat cameraMatrix, MatOfDouble distCoeffs, Mat rvec, Mat tvec, bool useExtrinsicGuess, int iterationsCount, float reprojectionError, double confidence)
  1177. {
  1178. if (objectPoints != null)
  1179. objectPoints.ThrowIfDisposed ();
  1180. if (imagePoints != null)
  1181. imagePoints.ThrowIfDisposed ();
  1182. if (cameraMatrix != null)
  1183. cameraMatrix.ThrowIfDisposed ();
  1184. if (distCoeffs != null)
  1185. distCoeffs.ThrowIfDisposed ();
  1186. if (rvec != null)
  1187. rvec.ThrowIfDisposed ();
  1188. if (tvec != null)
  1189. tvec.ThrowIfDisposed ();
  1190. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1191. Mat objectPoints_mat = objectPoints;
  1192. Mat imagePoints_mat = imagePoints;
  1193. Mat distCoeffs_mat = distCoeffs;
  1194. bool retVal = calib3d_Calib3d_solvePnPRansac_12 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, cameraMatrix.nativeObj, distCoeffs_mat.nativeObj, rvec.nativeObj, tvec.nativeObj, useExtrinsicGuess, iterationsCount, reprojectionError, confidence);
  1195. return retVal;
  1196. #else
  1197. return false;
  1198. #endif
  1199. }
  1200. //javadoc: solvePnPRansac(objectPoints, imagePoints, cameraMatrix, distCoeffs, rvec, tvec, useExtrinsicGuess, iterationsCount, reprojectionError)
  1201. public static bool solvePnPRansac (MatOfPoint3f objectPoints, MatOfPoint2f imagePoints, Mat cameraMatrix, MatOfDouble distCoeffs, Mat rvec, Mat tvec, bool useExtrinsicGuess, int iterationsCount, float reprojectionError)
  1202. {
  1203. if (objectPoints != null)
  1204. objectPoints.ThrowIfDisposed ();
  1205. if (imagePoints != null)
  1206. imagePoints.ThrowIfDisposed ();
  1207. if (cameraMatrix != null)
  1208. cameraMatrix.ThrowIfDisposed ();
  1209. if (distCoeffs != null)
  1210. distCoeffs.ThrowIfDisposed ();
  1211. if (rvec != null)
  1212. rvec.ThrowIfDisposed ();
  1213. if (tvec != null)
  1214. tvec.ThrowIfDisposed ();
  1215. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1216. Mat objectPoints_mat = objectPoints;
  1217. Mat imagePoints_mat = imagePoints;
  1218. Mat distCoeffs_mat = distCoeffs;
  1219. bool retVal = calib3d_Calib3d_solvePnPRansac_13 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, cameraMatrix.nativeObj, distCoeffs_mat.nativeObj, rvec.nativeObj, tvec.nativeObj, useExtrinsicGuess, iterationsCount, reprojectionError);
  1220. return retVal;
  1221. #else
  1222. return false;
  1223. #endif
  1224. }
  1225. //javadoc: solvePnPRansac(objectPoints, imagePoints, cameraMatrix, distCoeffs, rvec, tvec, useExtrinsicGuess, iterationsCount)
  1226. public static bool solvePnPRansac (MatOfPoint3f objectPoints, MatOfPoint2f imagePoints, Mat cameraMatrix, MatOfDouble distCoeffs, Mat rvec, Mat tvec, bool useExtrinsicGuess, int iterationsCount)
  1227. {
  1228. if (objectPoints != null)
  1229. objectPoints.ThrowIfDisposed ();
  1230. if (imagePoints != null)
  1231. imagePoints.ThrowIfDisposed ();
  1232. if (cameraMatrix != null)
  1233. cameraMatrix.ThrowIfDisposed ();
  1234. if (distCoeffs != null)
  1235. distCoeffs.ThrowIfDisposed ();
  1236. if (rvec != null)
  1237. rvec.ThrowIfDisposed ();
  1238. if (tvec != null)
  1239. tvec.ThrowIfDisposed ();
  1240. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1241. Mat objectPoints_mat = objectPoints;
  1242. Mat imagePoints_mat = imagePoints;
  1243. Mat distCoeffs_mat = distCoeffs;
  1244. bool retVal = calib3d_Calib3d_solvePnPRansac_14 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, cameraMatrix.nativeObj, distCoeffs_mat.nativeObj, rvec.nativeObj, tvec.nativeObj, useExtrinsicGuess, iterationsCount);
  1245. return retVal;
  1246. #else
  1247. return false;
  1248. #endif
  1249. }
  1250. //javadoc: solvePnPRansac(objectPoints, imagePoints, cameraMatrix, distCoeffs, rvec, tvec, useExtrinsicGuess)
  1251. public static bool solvePnPRansac (MatOfPoint3f objectPoints, MatOfPoint2f imagePoints, Mat cameraMatrix, MatOfDouble distCoeffs, Mat rvec, Mat tvec, bool useExtrinsicGuess)
  1252. {
  1253. if (objectPoints != null)
  1254. objectPoints.ThrowIfDisposed ();
  1255. if (imagePoints != null)
  1256. imagePoints.ThrowIfDisposed ();
  1257. if (cameraMatrix != null)
  1258. cameraMatrix.ThrowIfDisposed ();
  1259. if (distCoeffs != null)
  1260. distCoeffs.ThrowIfDisposed ();
  1261. if (rvec != null)
  1262. rvec.ThrowIfDisposed ();
  1263. if (tvec != null)
  1264. tvec.ThrowIfDisposed ();
  1265. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1266. Mat objectPoints_mat = objectPoints;
  1267. Mat imagePoints_mat = imagePoints;
  1268. Mat distCoeffs_mat = distCoeffs;
  1269. bool retVal = calib3d_Calib3d_solvePnPRansac_15 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, cameraMatrix.nativeObj, distCoeffs_mat.nativeObj, rvec.nativeObj, tvec.nativeObj, useExtrinsicGuess);
  1270. return retVal;
  1271. #else
  1272. return false;
  1273. #endif
  1274. }
  1275. //javadoc: solvePnPRansac(objectPoints, imagePoints, cameraMatrix, distCoeffs, rvec, tvec)
  1276. public static bool solvePnPRansac (MatOfPoint3f objectPoints, MatOfPoint2f imagePoints, Mat cameraMatrix, MatOfDouble distCoeffs, Mat rvec, Mat tvec)
  1277. {
  1278. if (objectPoints != null)
  1279. objectPoints.ThrowIfDisposed ();
  1280. if (imagePoints != null)
  1281. imagePoints.ThrowIfDisposed ();
  1282. if (cameraMatrix != null)
  1283. cameraMatrix.ThrowIfDisposed ();
  1284. if (distCoeffs != null)
  1285. distCoeffs.ThrowIfDisposed ();
  1286. if (rvec != null)
  1287. rvec.ThrowIfDisposed ();
  1288. if (tvec != null)
  1289. tvec.ThrowIfDisposed ();
  1290. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1291. Mat objectPoints_mat = objectPoints;
  1292. Mat imagePoints_mat = imagePoints;
  1293. Mat distCoeffs_mat = distCoeffs;
  1294. bool retVal = calib3d_Calib3d_solvePnPRansac_16 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, cameraMatrix.nativeObj, distCoeffs_mat.nativeObj, rvec.nativeObj, tvec.nativeObj);
  1295. return retVal;
  1296. #else
  1297. return false;
  1298. #endif
  1299. }
  1300. //
  1301. // C++: bool cv::stereoRectifyUncalibrated(Mat points1, Mat points2, Mat F, Size imgSize, Mat& H1, Mat& H2, double threshold = 5)
  1302. //
  1303. //javadoc: stereoRectifyUncalibrated(points1, points2, F, imgSize, H1, H2, threshold)
  1304. public static bool stereoRectifyUncalibrated (Mat points1, Mat points2, Mat F, Size imgSize, Mat H1, Mat H2, double threshold)
  1305. {
  1306. if (points1 != null)
  1307. points1.ThrowIfDisposed ();
  1308. if (points2 != null)
  1309. points2.ThrowIfDisposed ();
  1310. if (F != null)
  1311. F.ThrowIfDisposed ();
  1312. if (H1 != null)
  1313. H1.ThrowIfDisposed ();
  1314. if (H2 != null)
  1315. H2.ThrowIfDisposed ();
  1316. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1317. bool retVal = calib3d_Calib3d_stereoRectifyUncalibrated_10 (points1.nativeObj, points2.nativeObj, F.nativeObj, imgSize.width, imgSize.height, H1.nativeObj, H2.nativeObj, threshold);
  1318. return retVal;
  1319. #else
  1320. return false;
  1321. #endif
  1322. }
  1323. //javadoc: stereoRectifyUncalibrated(points1, points2, F, imgSize, H1, H2)
  1324. public static bool stereoRectifyUncalibrated (Mat points1, Mat points2, Mat F, Size imgSize, Mat H1, Mat H2)
  1325. {
  1326. if (points1 != null)
  1327. points1.ThrowIfDisposed ();
  1328. if (points2 != null)
  1329. points2.ThrowIfDisposed ();
  1330. if (F != null)
  1331. F.ThrowIfDisposed ();
  1332. if (H1 != null)
  1333. H1.ThrowIfDisposed ();
  1334. if (H2 != null)
  1335. H2.ThrowIfDisposed ();
  1336. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1337. bool retVal = calib3d_Calib3d_stereoRectifyUncalibrated_11 (points1.nativeObj, points2.nativeObj, F.nativeObj, imgSize.width, imgSize.height, H1.nativeObj, H2.nativeObj);
  1338. return retVal;
  1339. #else
  1340. return false;
  1341. #endif
  1342. }
  1343. //
  1344. // C++: double cv::calibrateCamera(vector_Mat objectPoints, vector_Mat imagePoints, Size imageSize, Mat& cameraMatrix, Mat& distCoeffs, vector_Mat& rvecs, vector_Mat& tvecs, Mat& stdDeviationsIntrinsics, Mat& stdDeviationsExtrinsics, Mat& perViewErrors, int flags = 0, TermCriteria criteria = TermCriteria( TermCriteria::COUNT + TermCriteria::EPS, 30, DBL_EPSILON))
  1345. //
  1346. //javadoc: calibrateCameraExtended(objectPoints, imagePoints, imageSize, cameraMatrix, distCoeffs, rvecs, tvecs, stdDeviationsIntrinsics, stdDeviationsExtrinsics, perViewErrors, flags, criteria)
  1347. public static double calibrateCameraExtended (List<Mat> objectPoints, List<Mat> imagePoints, Size imageSize, Mat cameraMatrix, Mat distCoeffs, List<Mat> rvecs, List<Mat> tvecs, Mat stdDeviationsIntrinsics, Mat stdDeviationsExtrinsics, Mat perViewErrors, int flags, TermCriteria criteria)
  1348. {
  1349. if (cameraMatrix != null)
  1350. cameraMatrix.ThrowIfDisposed ();
  1351. if (distCoeffs != null)
  1352. distCoeffs.ThrowIfDisposed ();
  1353. if (stdDeviationsIntrinsics != null)
  1354. stdDeviationsIntrinsics.ThrowIfDisposed ();
  1355. if (stdDeviationsExtrinsics != null)
  1356. stdDeviationsExtrinsics.ThrowIfDisposed ();
  1357. if (perViewErrors != null)
  1358. perViewErrors.ThrowIfDisposed ();
  1359. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1360. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1361. Mat imagePoints_mat = Converters.vector_Mat_to_Mat (imagePoints);
  1362. Mat rvecs_mat = new Mat ();
  1363. Mat tvecs_mat = new Mat ();
  1364. double retVal = calib3d_Calib3d_calibrateCameraExtended_10 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, imageSize.width, imageSize.height, cameraMatrix.nativeObj, distCoeffs.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj, stdDeviationsIntrinsics.nativeObj, stdDeviationsExtrinsics.nativeObj, perViewErrors.nativeObj, flags, criteria.type, criteria.maxCount, criteria.epsilon);
  1365. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  1366. rvecs_mat.release ();
  1367. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  1368. tvecs_mat.release ();
  1369. return retVal;
  1370. #else
  1371. return -1;
  1372. #endif
  1373. }
  1374. //javadoc: calibrateCameraExtended(objectPoints, imagePoints, imageSize, cameraMatrix, distCoeffs, rvecs, tvecs, stdDeviationsIntrinsics, stdDeviationsExtrinsics, perViewErrors, flags)
  1375. public static double calibrateCameraExtended (List<Mat> objectPoints, List<Mat> imagePoints, Size imageSize, Mat cameraMatrix, Mat distCoeffs, List<Mat> rvecs, List<Mat> tvecs, Mat stdDeviationsIntrinsics, Mat stdDeviationsExtrinsics, Mat perViewErrors, int flags)
  1376. {
  1377. if (cameraMatrix != null)
  1378. cameraMatrix.ThrowIfDisposed ();
  1379. if (distCoeffs != null)
  1380. distCoeffs.ThrowIfDisposed ();
  1381. if (stdDeviationsIntrinsics != null)
  1382. stdDeviationsIntrinsics.ThrowIfDisposed ();
  1383. if (stdDeviationsExtrinsics != null)
  1384. stdDeviationsExtrinsics.ThrowIfDisposed ();
  1385. if (perViewErrors != null)
  1386. perViewErrors.ThrowIfDisposed ();
  1387. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1388. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1389. Mat imagePoints_mat = Converters.vector_Mat_to_Mat (imagePoints);
  1390. Mat rvecs_mat = new Mat ();
  1391. Mat tvecs_mat = new Mat ();
  1392. double retVal = calib3d_Calib3d_calibrateCameraExtended_11 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, imageSize.width, imageSize.height, cameraMatrix.nativeObj, distCoeffs.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj, stdDeviationsIntrinsics.nativeObj, stdDeviationsExtrinsics.nativeObj, perViewErrors.nativeObj, flags);
  1393. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  1394. rvecs_mat.release ();
  1395. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  1396. tvecs_mat.release ();
  1397. return retVal;
  1398. #else
  1399. return -1;
  1400. #endif
  1401. }
  1402. //javadoc: calibrateCameraExtended(objectPoints, imagePoints, imageSize, cameraMatrix, distCoeffs, rvecs, tvecs, stdDeviationsIntrinsics, stdDeviationsExtrinsics, perViewErrors)
  1403. public static double calibrateCameraExtended (List<Mat> objectPoints, List<Mat> imagePoints, Size imageSize, Mat cameraMatrix, Mat distCoeffs, List<Mat> rvecs, List<Mat> tvecs, Mat stdDeviationsIntrinsics, Mat stdDeviationsExtrinsics, Mat perViewErrors)
  1404. {
  1405. if (cameraMatrix != null)
  1406. cameraMatrix.ThrowIfDisposed ();
  1407. if (distCoeffs != null)
  1408. distCoeffs.ThrowIfDisposed ();
  1409. if (stdDeviationsIntrinsics != null)
  1410. stdDeviationsIntrinsics.ThrowIfDisposed ();
  1411. if (stdDeviationsExtrinsics != null)
  1412. stdDeviationsExtrinsics.ThrowIfDisposed ();
  1413. if (perViewErrors != null)
  1414. perViewErrors.ThrowIfDisposed ();
  1415. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1416. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1417. Mat imagePoints_mat = Converters.vector_Mat_to_Mat (imagePoints);
  1418. Mat rvecs_mat = new Mat ();
  1419. Mat tvecs_mat = new Mat ();
  1420. double retVal = calib3d_Calib3d_calibrateCameraExtended_12 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, imageSize.width, imageSize.height, cameraMatrix.nativeObj, distCoeffs.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj, stdDeviationsIntrinsics.nativeObj, stdDeviationsExtrinsics.nativeObj, perViewErrors.nativeObj);
  1421. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  1422. rvecs_mat.release ();
  1423. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  1424. tvecs_mat.release ();
  1425. return retVal;
  1426. #else
  1427. return -1;
  1428. #endif
  1429. }
  1430. //
  1431. // C++: double cv::calibrateCamera(vector_Mat objectPoints, vector_Mat imagePoints, Size imageSize, Mat& cameraMatrix, Mat& distCoeffs, vector_Mat& rvecs, vector_Mat& tvecs, int flags = 0, TermCriteria criteria = TermCriteria( TermCriteria::COUNT + TermCriteria::EPS, 30, DBL_EPSILON))
  1432. //
  1433. //javadoc: calibrateCamera(objectPoints, imagePoints, imageSize, cameraMatrix, distCoeffs, rvecs, tvecs, flags, criteria)
  1434. public static double calibrateCamera (List<Mat> objectPoints, List<Mat> imagePoints, Size imageSize, Mat cameraMatrix, Mat distCoeffs, List<Mat> rvecs, List<Mat> tvecs, int flags, TermCriteria criteria)
  1435. {
  1436. if (cameraMatrix != null)
  1437. cameraMatrix.ThrowIfDisposed ();
  1438. if (distCoeffs != null)
  1439. distCoeffs.ThrowIfDisposed ();
  1440. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1441. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1442. Mat imagePoints_mat = Converters.vector_Mat_to_Mat (imagePoints);
  1443. Mat rvecs_mat = new Mat ();
  1444. Mat tvecs_mat = new Mat ();
  1445. double retVal = calib3d_Calib3d_calibrateCamera_10 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, imageSize.width, imageSize.height, cameraMatrix.nativeObj, distCoeffs.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj, flags, criteria.type, criteria.maxCount, criteria.epsilon);
  1446. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  1447. rvecs_mat.release ();
  1448. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  1449. tvecs_mat.release ();
  1450. return retVal;
  1451. #else
  1452. return -1;
  1453. #endif
  1454. }
  1455. //javadoc: calibrateCamera(objectPoints, imagePoints, imageSize, cameraMatrix, distCoeffs, rvecs, tvecs, flags)
  1456. public static double calibrateCamera (List<Mat> objectPoints, List<Mat> imagePoints, Size imageSize, Mat cameraMatrix, Mat distCoeffs, List<Mat> rvecs, List<Mat> tvecs, int flags)
  1457. {
  1458. if (cameraMatrix != null)
  1459. cameraMatrix.ThrowIfDisposed ();
  1460. if (distCoeffs != null)
  1461. distCoeffs.ThrowIfDisposed ();
  1462. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1463. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1464. Mat imagePoints_mat = Converters.vector_Mat_to_Mat (imagePoints);
  1465. Mat rvecs_mat = new Mat ();
  1466. Mat tvecs_mat = new Mat ();
  1467. double retVal = calib3d_Calib3d_calibrateCamera_11 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, imageSize.width, imageSize.height, cameraMatrix.nativeObj, distCoeffs.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj, flags);
  1468. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  1469. rvecs_mat.release ();
  1470. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  1471. tvecs_mat.release ();
  1472. return retVal;
  1473. #else
  1474. return -1;
  1475. #endif
  1476. }
  1477. //javadoc: calibrateCamera(objectPoints, imagePoints, imageSize, cameraMatrix, distCoeffs, rvecs, tvecs)
  1478. public static double calibrateCamera (List<Mat> objectPoints, List<Mat> imagePoints, Size imageSize, Mat cameraMatrix, Mat distCoeffs, List<Mat> rvecs, List<Mat> tvecs)
  1479. {
  1480. if (cameraMatrix != null)
  1481. cameraMatrix.ThrowIfDisposed ();
  1482. if (distCoeffs != null)
  1483. distCoeffs.ThrowIfDisposed ();
  1484. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1485. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1486. Mat imagePoints_mat = Converters.vector_Mat_to_Mat (imagePoints);
  1487. Mat rvecs_mat = new Mat ();
  1488. Mat tvecs_mat = new Mat ();
  1489. double retVal = calib3d_Calib3d_calibrateCamera_12 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, imageSize.width, imageSize.height, cameraMatrix.nativeObj, distCoeffs.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj);
  1490. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  1491. rvecs_mat.release ();
  1492. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  1493. tvecs_mat.release ();
  1494. return retVal;
  1495. #else
  1496. return -1;
  1497. #endif
  1498. }
  1499. //
  1500. // C++: double cv::calibrateCameraRO(vector_Mat objectPoints, vector_Mat imagePoints, Size imageSize, int iFixedPoint, Mat& cameraMatrix, Mat& distCoeffs, vector_Mat& rvecs, vector_Mat& tvecs, Mat& newObjPoints, Mat& stdDeviationsIntrinsics, Mat& stdDeviationsExtrinsics, Mat& stdDeviationsObjPoints, Mat& perViewErrors, int flags = 0, TermCriteria criteria = TermCriteria( TermCriteria::COUNT + TermCriteria::EPS, 30, DBL_EPSILON))
  1501. //
  1502. //javadoc: calibrateCameraROExtended(objectPoints, imagePoints, imageSize, iFixedPoint, cameraMatrix, distCoeffs, rvecs, tvecs, newObjPoints, stdDeviationsIntrinsics, stdDeviationsExtrinsics, stdDeviationsObjPoints, perViewErrors, flags, criteria)
  1503. public static double calibrateCameraROExtended (List<Mat> objectPoints, List<Mat> imagePoints, Size imageSize, int iFixedPoint, Mat cameraMatrix, Mat distCoeffs, List<Mat> rvecs, List<Mat> tvecs, Mat newObjPoints, Mat stdDeviationsIntrinsics, Mat stdDeviationsExtrinsics, Mat stdDeviationsObjPoints, Mat perViewErrors, int flags, TermCriteria criteria)
  1504. {
  1505. if (cameraMatrix != null)
  1506. cameraMatrix.ThrowIfDisposed ();
  1507. if (distCoeffs != null)
  1508. distCoeffs.ThrowIfDisposed ();
  1509. if (newObjPoints != null)
  1510. newObjPoints.ThrowIfDisposed ();
  1511. if (stdDeviationsIntrinsics != null)
  1512. stdDeviationsIntrinsics.ThrowIfDisposed ();
  1513. if (stdDeviationsExtrinsics != null)
  1514. stdDeviationsExtrinsics.ThrowIfDisposed ();
  1515. if (stdDeviationsObjPoints != null)
  1516. stdDeviationsObjPoints.ThrowIfDisposed ();
  1517. if (perViewErrors != null)
  1518. perViewErrors.ThrowIfDisposed ();
  1519. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1520. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1521. Mat imagePoints_mat = Converters.vector_Mat_to_Mat (imagePoints);
  1522. Mat rvecs_mat = new Mat ();
  1523. Mat tvecs_mat = new Mat ();
  1524. double retVal = calib3d_Calib3d_calibrateCameraROExtended_10 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, imageSize.width, imageSize.height, iFixedPoint, cameraMatrix.nativeObj, distCoeffs.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj, newObjPoints.nativeObj, stdDeviationsIntrinsics.nativeObj, stdDeviationsExtrinsics.nativeObj, stdDeviationsObjPoints.nativeObj, perViewErrors.nativeObj, flags, criteria.type, criteria.maxCount, criteria.epsilon);
  1525. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  1526. rvecs_mat.release ();
  1527. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  1528. tvecs_mat.release ();
  1529. return retVal;
  1530. #else
  1531. return -1;
  1532. #endif
  1533. }
  1534. //javadoc: calibrateCameraROExtended(objectPoints, imagePoints, imageSize, iFixedPoint, cameraMatrix, distCoeffs, rvecs, tvecs, newObjPoints, stdDeviationsIntrinsics, stdDeviationsExtrinsics, stdDeviationsObjPoints, perViewErrors, flags)
  1535. public static double calibrateCameraROExtended (List<Mat> objectPoints, List<Mat> imagePoints, Size imageSize, int iFixedPoint, Mat cameraMatrix, Mat distCoeffs, List<Mat> rvecs, List<Mat> tvecs, Mat newObjPoints, Mat stdDeviationsIntrinsics, Mat stdDeviationsExtrinsics, Mat stdDeviationsObjPoints, Mat perViewErrors, int flags)
  1536. {
  1537. if (cameraMatrix != null)
  1538. cameraMatrix.ThrowIfDisposed ();
  1539. if (distCoeffs != null)
  1540. distCoeffs.ThrowIfDisposed ();
  1541. if (newObjPoints != null)
  1542. newObjPoints.ThrowIfDisposed ();
  1543. if (stdDeviationsIntrinsics != null)
  1544. stdDeviationsIntrinsics.ThrowIfDisposed ();
  1545. if (stdDeviationsExtrinsics != null)
  1546. stdDeviationsExtrinsics.ThrowIfDisposed ();
  1547. if (stdDeviationsObjPoints != null)
  1548. stdDeviationsObjPoints.ThrowIfDisposed ();
  1549. if (perViewErrors != null)
  1550. perViewErrors.ThrowIfDisposed ();
  1551. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1552. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1553. Mat imagePoints_mat = Converters.vector_Mat_to_Mat (imagePoints);
  1554. Mat rvecs_mat = new Mat ();
  1555. Mat tvecs_mat = new Mat ();
  1556. double retVal = calib3d_Calib3d_calibrateCameraROExtended_11 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, imageSize.width, imageSize.height, iFixedPoint, cameraMatrix.nativeObj, distCoeffs.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj, newObjPoints.nativeObj, stdDeviationsIntrinsics.nativeObj, stdDeviationsExtrinsics.nativeObj, stdDeviationsObjPoints.nativeObj, perViewErrors.nativeObj, flags);
  1557. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  1558. rvecs_mat.release ();
  1559. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  1560. tvecs_mat.release ();
  1561. return retVal;
  1562. #else
  1563. return -1;
  1564. #endif
  1565. }
  1566. //javadoc: calibrateCameraROExtended(objectPoints, imagePoints, imageSize, iFixedPoint, cameraMatrix, distCoeffs, rvecs, tvecs, newObjPoints, stdDeviationsIntrinsics, stdDeviationsExtrinsics, stdDeviationsObjPoints, perViewErrors)
  1567. public static double calibrateCameraROExtended (List<Mat> objectPoints, List<Mat> imagePoints, Size imageSize, int iFixedPoint, Mat cameraMatrix, Mat distCoeffs, List<Mat> rvecs, List<Mat> tvecs, Mat newObjPoints, Mat stdDeviationsIntrinsics, Mat stdDeviationsExtrinsics, Mat stdDeviationsObjPoints, Mat perViewErrors)
  1568. {
  1569. if (cameraMatrix != null)
  1570. cameraMatrix.ThrowIfDisposed ();
  1571. if (distCoeffs != null)
  1572. distCoeffs.ThrowIfDisposed ();
  1573. if (newObjPoints != null)
  1574. newObjPoints.ThrowIfDisposed ();
  1575. if (stdDeviationsIntrinsics != null)
  1576. stdDeviationsIntrinsics.ThrowIfDisposed ();
  1577. if (stdDeviationsExtrinsics != null)
  1578. stdDeviationsExtrinsics.ThrowIfDisposed ();
  1579. if (stdDeviationsObjPoints != null)
  1580. stdDeviationsObjPoints.ThrowIfDisposed ();
  1581. if (perViewErrors != null)
  1582. perViewErrors.ThrowIfDisposed ();
  1583. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1584. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1585. Mat imagePoints_mat = Converters.vector_Mat_to_Mat (imagePoints);
  1586. Mat rvecs_mat = new Mat ();
  1587. Mat tvecs_mat = new Mat ();
  1588. double retVal = calib3d_Calib3d_calibrateCameraROExtended_12 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, imageSize.width, imageSize.height, iFixedPoint, cameraMatrix.nativeObj, distCoeffs.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj, newObjPoints.nativeObj, stdDeviationsIntrinsics.nativeObj, stdDeviationsExtrinsics.nativeObj, stdDeviationsObjPoints.nativeObj, perViewErrors.nativeObj);
  1589. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  1590. rvecs_mat.release ();
  1591. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  1592. tvecs_mat.release ();
  1593. return retVal;
  1594. #else
  1595. return -1;
  1596. #endif
  1597. }
  1598. //
  1599. // C++: double cv::calibrateCameraRO(vector_Mat objectPoints, vector_Mat imagePoints, Size imageSize, int iFixedPoint, Mat& cameraMatrix, Mat& distCoeffs, vector_Mat& rvecs, vector_Mat& tvecs, Mat& newObjPoints, int flags = 0, TermCriteria criteria = TermCriteria( TermCriteria::COUNT + TermCriteria::EPS, 30, DBL_EPSILON))
  1600. //
  1601. //javadoc: calibrateCameraRO(objectPoints, imagePoints, imageSize, iFixedPoint, cameraMatrix, distCoeffs, rvecs, tvecs, newObjPoints, flags, criteria)
  1602. public static double calibrateCameraRO (List<Mat> objectPoints, List<Mat> imagePoints, Size imageSize, int iFixedPoint, Mat cameraMatrix, Mat distCoeffs, List<Mat> rvecs, List<Mat> tvecs, Mat newObjPoints, int flags, TermCriteria criteria)
  1603. {
  1604. if (cameraMatrix != null)
  1605. cameraMatrix.ThrowIfDisposed ();
  1606. if (distCoeffs != null)
  1607. distCoeffs.ThrowIfDisposed ();
  1608. if (newObjPoints != null)
  1609. newObjPoints.ThrowIfDisposed ();
  1610. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1611. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1612. Mat imagePoints_mat = Converters.vector_Mat_to_Mat (imagePoints);
  1613. Mat rvecs_mat = new Mat ();
  1614. Mat tvecs_mat = new Mat ();
  1615. double retVal = calib3d_Calib3d_calibrateCameraRO_10 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, imageSize.width, imageSize.height, iFixedPoint, cameraMatrix.nativeObj, distCoeffs.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj, newObjPoints.nativeObj, flags, criteria.type, criteria.maxCount, criteria.epsilon);
  1616. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  1617. rvecs_mat.release ();
  1618. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  1619. tvecs_mat.release ();
  1620. return retVal;
  1621. #else
  1622. return -1;
  1623. #endif
  1624. }
  1625. //javadoc: calibrateCameraRO(objectPoints, imagePoints, imageSize, iFixedPoint, cameraMatrix, distCoeffs, rvecs, tvecs, newObjPoints, flags)
  1626. public static double calibrateCameraRO (List<Mat> objectPoints, List<Mat> imagePoints, Size imageSize, int iFixedPoint, Mat cameraMatrix, Mat distCoeffs, List<Mat> rvecs, List<Mat> tvecs, Mat newObjPoints, int flags)
  1627. {
  1628. if (cameraMatrix != null)
  1629. cameraMatrix.ThrowIfDisposed ();
  1630. if (distCoeffs != null)
  1631. distCoeffs.ThrowIfDisposed ();
  1632. if (newObjPoints != null)
  1633. newObjPoints.ThrowIfDisposed ();
  1634. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1635. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1636. Mat imagePoints_mat = Converters.vector_Mat_to_Mat (imagePoints);
  1637. Mat rvecs_mat = new Mat ();
  1638. Mat tvecs_mat = new Mat ();
  1639. double retVal = calib3d_Calib3d_calibrateCameraRO_11 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, imageSize.width, imageSize.height, iFixedPoint, cameraMatrix.nativeObj, distCoeffs.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj, newObjPoints.nativeObj, flags);
  1640. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  1641. rvecs_mat.release ();
  1642. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  1643. tvecs_mat.release ();
  1644. return retVal;
  1645. #else
  1646. return -1;
  1647. #endif
  1648. }
  1649. //javadoc: calibrateCameraRO(objectPoints, imagePoints, imageSize, iFixedPoint, cameraMatrix, distCoeffs, rvecs, tvecs, newObjPoints)
  1650. public static double calibrateCameraRO (List<Mat> objectPoints, List<Mat> imagePoints, Size imageSize, int iFixedPoint, Mat cameraMatrix, Mat distCoeffs, List<Mat> rvecs, List<Mat> tvecs, Mat newObjPoints)
  1651. {
  1652. if (cameraMatrix != null)
  1653. cameraMatrix.ThrowIfDisposed ();
  1654. if (distCoeffs != null)
  1655. distCoeffs.ThrowIfDisposed ();
  1656. if (newObjPoints != null)
  1657. newObjPoints.ThrowIfDisposed ();
  1658. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1659. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1660. Mat imagePoints_mat = Converters.vector_Mat_to_Mat (imagePoints);
  1661. Mat rvecs_mat = new Mat ();
  1662. Mat tvecs_mat = new Mat ();
  1663. double retVal = calib3d_Calib3d_calibrateCameraRO_12 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, imageSize.width, imageSize.height, iFixedPoint, cameraMatrix.nativeObj, distCoeffs.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj, newObjPoints.nativeObj);
  1664. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  1665. rvecs_mat.release ();
  1666. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  1667. tvecs_mat.release ();
  1668. return retVal;
  1669. #else
  1670. return -1;
  1671. #endif
  1672. }
  1673. //
  1674. // C++: double cv::sampsonDistance(Mat pt1, Mat pt2, Mat F)
  1675. //
  1676. //javadoc: sampsonDistance(pt1, pt2, F)
  1677. public static double sampsonDistance (Mat pt1, Mat pt2, Mat F)
  1678. {
  1679. if (pt1 != null)
  1680. pt1.ThrowIfDisposed ();
  1681. if (pt2 != null)
  1682. pt2.ThrowIfDisposed ();
  1683. if (F != null)
  1684. F.ThrowIfDisposed ();
  1685. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1686. double retVal = calib3d_Calib3d_sampsonDistance_10 (pt1.nativeObj, pt2.nativeObj, F.nativeObj);
  1687. return retVal;
  1688. #else
  1689. return -1;
  1690. #endif
  1691. }
  1692. //
  1693. // C++: double cv::stereoCalibrate(vector_Mat objectPoints, vector_Mat imagePoints1, vector_Mat imagePoints2, Mat& cameraMatrix1, Mat& distCoeffs1, Mat& cameraMatrix2, Mat& distCoeffs2, Size imageSize, Mat& R, Mat& T, Mat& E, Mat& F, Mat& perViewErrors, int flags = CALIB_FIX_INTRINSIC, TermCriteria criteria = TermCriteria(TermCriteria::COUNT+TermCriteria::EPS, 30, 1e-6))
  1694. //
  1695. //javadoc: stereoCalibrateExtended(objectPoints, imagePoints1, imagePoints2, cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, imageSize, R, T, E, F, perViewErrors, flags, criteria)
  1696. public static double stereoCalibrateExtended (List<Mat> objectPoints, List<Mat> imagePoints1, List<Mat> imagePoints2, Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Size imageSize, Mat R, Mat T, Mat E, Mat F, Mat perViewErrors, int flags, TermCriteria criteria)
  1697. {
  1698. if (cameraMatrix1 != null)
  1699. cameraMatrix1.ThrowIfDisposed ();
  1700. if (distCoeffs1 != null)
  1701. distCoeffs1.ThrowIfDisposed ();
  1702. if (cameraMatrix2 != null)
  1703. cameraMatrix2.ThrowIfDisposed ();
  1704. if (distCoeffs2 != null)
  1705. distCoeffs2.ThrowIfDisposed ();
  1706. if (R != null)
  1707. R.ThrowIfDisposed ();
  1708. if (T != null)
  1709. T.ThrowIfDisposed ();
  1710. if (E != null)
  1711. E.ThrowIfDisposed ();
  1712. if (F != null)
  1713. F.ThrowIfDisposed ();
  1714. if (perViewErrors != null)
  1715. perViewErrors.ThrowIfDisposed ();
  1716. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1717. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1718. Mat imagePoints1_mat = Converters.vector_Mat_to_Mat (imagePoints1);
  1719. Mat imagePoints2_mat = Converters.vector_Mat_to_Mat (imagePoints2);
  1720. double retVal = calib3d_Calib3d_stereoCalibrateExtended_10 (objectPoints_mat.nativeObj, imagePoints1_mat.nativeObj, imagePoints2_mat.nativeObj, cameraMatrix1.nativeObj, distCoeffs1.nativeObj, cameraMatrix2.nativeObj, distCoeffs2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, T.nativeObj, E.nativeObj, F.nativeObj, perViewErrors.nativeObj, flags, criteria.type, criteria.maxCount, criteria.epsilon);
  1721. return retVal;
  1722. #else
  1723. return -1;
  1724. #endif
  1725. }
  1726. //javadoc: stereoCalibrateExtended(objectPoints, imagePoints1, imagePoints2, cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, imageSize, R, T, E, F, perViewErrors, flags)
  1727. public static double stereoCalibrateExtended (List<Mat> objectPoints, List<Mat> imagePoints1, List<Mat> imagePoints2, Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Size imageSize, Mat R, Mat T, Mat E, Mat F, Mat perViewErrors, int flags)
  1728. {
  1729. if (cameraMatrix1 != null)
  1730. cameraMatrix1.ThrowIfDisposed ();
  1731. if (distCoeffs1 != null)
  1732. distCoeffs1.ThrowIfDisposed ();
  1733. if (cameraMatrix2 != null)
  1734. cameraMatrix2.ThrowIfDisposed ();
  1735. if (distCoeffs2 != null)
  1736. distCoeffs2.ThrowIfDisposed ();
  1737. if (R != null)
  1738. R.ThrowIfDisposed ();
  1739. if (T != null)
  1740. T.ThrowIfDisposed ();
  1741. if (E != null)
  1742. E.ThrowIfDisposed ();
  1743. if (F != null)
  1744. F.ThrowIfDisposed ();
  1745. if (perViewErrors != null)
  1746. perViewErrors.ThrowIfDisposed ();
  1747. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1748. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1749. Mat imagePoints1_mat = Converters.vector_Mat_to_Mat (imagePoints1);
  1750. Mat imagePoints2_mat = Converters.vector_Mat_to_Mat (imagePoints2);
  1751. double retVal = calib3d_Calib3d_stereoCalibrateExtended_11 (objectPoints_mat.nativeObj, imagePoints1_mat.nativeObj, imagePoints2_mat.nativeObj, cameraMatrix1.nativeObj, distCoeffs1.nativeObj, cameraMatrix2.nativeObj, distCoeffs2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, T.nativeObj, E.nativeObj, F.nativeObj, perViewErrors.nativeObj, flags);
  1752. return retVal;
  1753. #else
  1754. return -1;
  1755. #endif
  1756. }
  1757. //javadoc: stereoCalibrateExtended(objectPoints, imagePoints1, imagePoints2, cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, imageSize, R, T, E, F, perViewErrors)
  1758. public static double stereoCalibrateExtended (List<Mat> objectPoints, List<Mat> imagePoints1, List<Mat> imagePoints2, Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Size imageSize, Mat R, Mat T, Mat E, Mat F, Mat perViewErrors)
  1759. {
  1760. if (cameraMatrix1 != null)
  1761. cameraMatrix1.ThrowIfDisposed ();
  1762. if (distCoeffs1 != null)
  1763. distCoeffs1.ThrowIfDisposed ();
  1764. if (cameraMatrix2 != null)
  1765. cameraMatrix2.ThrowIfDisposed ();
  1766. if (distCoeffs2 != null)
  1767. distCoeffs2.ThrowIfDisposed ();
  1768. if (R != null)
  1769. R.ThrowIfDisposed ();
  1770. if (T != null)
  1771. T.ThrowIfDisposed ();
  1772. if (E != null)
  1773. E.ThrowIfDisposed ();
  1774. if (F != null)
  1775. F.ThrowIfDisposed ();
  1776. if (perViewErrors != null)
  1777. perViewErrors.ThrowIfDisposed ();
  1778. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1779. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1780. Mat imagePoints1_mat = Converters.vector_Mat_to_Mat (imagePoints1);
  1781. Mat imagePoints2_mat = Converters.vector_Mat_to_Mat (imagePoints2);
  1782. double retVal = calib3d_Calib3d_stereoCalibrateExtended_12 (objectPoints_mat.nativeObj, imagePoints1_mat.nativeObj, imagePoints2_mat.nativeObj, cameraMatrix1.nativeObj, distCoeffs1.nativeObj, cameraMatrix2.nativeObj, distCoeffs2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, T.nativeObj, E.nativeObj, F.nativeObj, perViewErrors.nativeObj);
  1783. return retVal;
  1784. #else
  1785. return -1;
  1786. #endif
  1787. }
  1788. //
  1789. // C++: double cv::stereoCalibrate(vector_Mat objectPoints, vector_Mat imagePoints1, vector_Mat imagePoints2, Mat& cameraMatrix1, Mat& distCoeffs1, Mat& cameraMatrix2, Mat& distCoeffs2, Size imageSize, Mat& R, Mat& T, Mat& E, Mat& F, int flags = CALIB_FIX_INTRINSIC, TermCriteria criteria = TermCriteria(TermCriteria::COUNT+TermCriteria::EPS, 30, 1e-6))
  1790. //
  1791. //javadoc: stereoCalibrate(objectPoints, imagePoints1, imagePoints2, cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, imageSize, R, T, E, F, flags, criteria)
  1792. public static double stereoCalibrate (List<Mat> objectPoints, List<Mat> imagePoints1, List<Mat> imagePoints2, Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Size imageSize, Mat R, Mat T, Mat E, Mat F, int flags, TermCriteria criteria)
  1793. {
  1794. if (cameraMatrix1 != null)
  1795. cameraMatrix1.ThrowIfDisposed ();
  1796. if (distCoeffs1 != null)
  1797. distCoeffs1.ThrowIfDisposed ();
  1798. if (cameraMatrix2 != null)
  1799. cameraMatrix2.ThrowIfDisposed ();
  1800. if (distCoeffs2 != null)
  1801. distCoeffs2.ThrowIfDisposed ();
  1802. if (R != null)
  1803. R.ThrowIfDisposed ();
  1804. if (T != null)
  1805. T.ThrowIfDisposed ();
  1806. if (E != null)
  1807. E.ThrowIfDisposed ();
  1808. if (F != null)
  1809. F.ThrowIfDisposed ();
  1810. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1811. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1812. Mat imagePoints1_mat = Converters.vector_Mat_to_Mat (imagePoints1);
  1813. Mat imagePoints2_mat = Converters.vector_Mat_to_Mat (imagePoints2);
  1814. double retVal = calib3d_Calib3d_stereoCalibrate_10 (objectPoints_mat.nativeObj, imagePoints1_mat.nativeObj, imagePoints2_mat.nativeObj, cameraMatrix1.nativeObj, distCoeffs1.nativeObj, cameraMatrix2.nativeObj, distCoeffs2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, T.nativeObj, E.nativeObj, F.nativeObj, flags, criteria.type, criteria.maxCount, criteria.epsilon);
  1815. return retVal;
  1816. #else
  1817. return -1;
  1818. #endif
  1819. }
  1820. //javadoc: stereoCalibrate(objectPoints, imagePoints1, imagePoints2, cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, imageSize, R, T, E, F, flags)
  1821. public static double stereoCalibrate (List<Mat> objectPoints, List<Mat> imagePoints1, List<Mat> imagePoints2, Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Size imageSize, Mat R, Mat T, Mat E, Mat F, int flags)
  1822. {
  1823. if (cameraMatrix1 != null)
  1824. cameraMatrix1.ThrowIfDisposed ();
  1825. if (distCoeffs1 != null)
  1826. distCoeffs1.ThrowIfDisposed ();
  1827. if (cameraMatrix2 != null)
  1828. cameraMatrix2.ThrowIfDisposed ();
  1829. if (distCoeffs2 != null)
  1830. distCoeffs2.ThrowIfDisposed ();
  1831. if (R != null)
  1832. R.ThrowIfDisposed ();
  1833. if (T != null)
  1834. T.ThrowIfDisposed ();
  1835. if (E != null)
  1836. E.ThrowIfDisposed ();
  1837. if (F != null)
  1838. F.ThrowIfDisposed ();
  1839. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1840. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1841. Mat imagePoints1_mat = Converters.vector_Mat_to_Mat (imagePoints1);
  1842. Mat imagePoints2_mat = Converters.vector_Mat_to_Mat (imagePoints2);
  1843. double retVal = calib3d_Calib3d_stereoCalibrate_11 (objectPoints_mat.nativeObj, imagePoints1_mat.nativeObj, imagePoints2_mat.nativeObj, cameraMatrix1.nativeObj, distCoeffs1.nativeObj, cameraMatrix2.nativeObj, distCoeffs2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, T.nativeObj, E.nativeObj, F.nativeObj, flags);
  1844. return retVal;
  1845. #else
  1846. return -1;
  1847. #endif
  1848. }
  1849. //javadoc: stereoCalibrate(objectPoints, imagePoints1, imagePoints2, cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, imageSize, R, T, E, F)
  1850. public static double stereoCalibrate (List<Mat> objectPoints, List<Mat> imagePoints1, List<Mat> imagePoints2, Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Size imageSize, Mat R, Mat T, Mat E, Mat F)
  1851. {
  1852. if (cameraMatrix1 != null)
  1853. cameraMatrix1.ThrowIfDisposed ();
  1854. if (distCoeffs1 != null)
  1855. distCoeffs1.ThrowIfDisposed ();
  1856. if (cameraMatrix2 != null)
  1857. cameraMatrix2.ThrowIfDisposed ();
  1858. if (distCoeffs2 != null)
  1859. distCoeffs2.ThrowIfDisposed ();
  1860. if (R != null)
  1861. R.ThrowIfDisposed ();
  1862. if (T != null)
  1863. T.ThrowIfDisposed ();
  1864. if (E != null)
  1865. E.ThrowIfDisposed ();
  1866. if (F != null)
  1867. F.ThrowIfDisposed ();
  1868. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1869. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1870. Mat imagePoints1_mat = Converters.vector_Mat_to_Mat (imagePoints1);
  1871. Mat imagePoints2_mat = Converters.vector_Mat_to_Mat (imagePoints2);
  1872. double retVal = calib3d_Calib3d_stereoCalibrate_12 (objectPoints_mat.nativeObj, imagePoints1_mat.nativeObj, imagePoints2_mat.nativeObj, cameraMatrix1.nativeObj, distCoeffs1.nativeObj, cameraMatrix2.nativeObj, distCoeffs2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, T.nativeObj, E.nativeObj, F.nativeObj);
  1873. return retVal;
  1874. #else
  1875. return -1;
  1876. #endif
  1877. }
  1878. //
  1879. // C++: double cv::fisheye::calibrate(vector_Mat objectPoints, vector_Mat imagePoints, Size image_size, Mat& K, Mat& D, vector_Mat& rvecs, vector_Mat& tvecs, int flags = 0, TermCriteria criteria = TermCriteria(TermCriteria::COUNT + TermCriteria::EPS, 100, DBL_EPSILON))
  1880. //
  1881. //javadoc: fisheye_calibrate(objectPoints, imagePoints, image_size, K, D, rvecs, tvecs, flags, criteria)
  1882. public static double fisheye_calibrate (List<Mat> objectPoints, List<Mat> imagePoints, Size image_size, Mat K, Mat D, List<Mat> rvecs, List<Mat> tvecs, int flags, TermCriteria criteria)
  1883. {
  1884. if (K != null)
  1885. K.ThrowIfDisposed ();
  1886. if (D != null)
  1887. D.ThrowIfDisposed ();
  1888. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1889. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1890. Mat imagePoints_mat = Converters.vector_Mat_to_Mat (imagePoints);
  1891. Mat rvecs_mat = new Mat ();
  1892. Mat tvecs_mat = new Mat ();
  1893. double retVal = calib3d_Calib3d_fisheye_1calibrate_10 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, image_size.width, image_size.height, K.nativeObj, D.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj, flags, criteria.type, criteria.maxCount, criteria.epsilon);
  1894. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  1895. rvecs_mat.release ();
  1896. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  1897. tvecs_mat.release ();
  1898. return retVal;
  1899. #else
  1900. return -1;
  1901. #endif
  1902. }
  1903. //javadoc: fisheye_calibrate(objectPoints, imagePoints, image_size, K, D, rvecs, tvecs, flags)
  1904. public static double fisheye_calibrate (List<Mat> objectPoints, List<Mat> imagePoints, Size image_size, Mat K, Mat D, List<Mat> rvecs, List<Mat> tvecs, int flags)
  1905. {
  1906. if (K != null)
  1907. K.ThrowIfDisposed ();
  1908. if (D != null)
  1909. D.ThrowIfDisposed ();
  1910. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1911. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1912. Mat imagePoints_mat = Converters.vector_Mat_to_Mat (imagePoints);
  1913. Mat rvecs_mat = new Mat ();
  1914. Mat tvecs_mat = new Mat ();
  1915. double retVal = calib3d_Calib3d_fisheye_1calibrate_11 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, image_size.width, image_size.height, K.nativeObj, D.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj, flags);
  1916. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  1917. rvecs_mat.release ();
  1918. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  1919. tvecs_mat.release ();
  1920. return retVal;
  1921. #else
  1922. return -1;
  1923. #endif
  1924. }
  1925. //javadoc: fisheye_calibrate(objectPoints, imagePoints, image_size, K, D, rvecs, tvecs)
  1926. public static double fisheye_calibrate (List<Mat> objectPoints, List<Mat> imagePoints, Size image_size, Mat K, Mat D, List<Mat> rvecs, List<Mat> tvecs)
  1927. {
  1928. if (K != null)
  1929. K.ThrowIfDisposed ();
  1930. if (D != null)
  1931. D.ThrowIfDisposed ();
  1932. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1933. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1934. Mat imagePoints_mat = Converters.vector_Mat_to_Mat (imagePoints);
  1935. Mat rvecs_mat = new Mat ();
  1936. Mat tvecs_mat = new Mat ();
  1937. double retVal = calib3d_Calib3d_fisheye_1calibrate_12 (objectPoints_mat.nativeObj, imagePoints_mat.nativeObj, image_size.width, image_size.height, K.nativeObj, D.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj);
  1938. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  1939. rvecs_mat.release ();
  1940. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  1941. tvecs_mat.release ();
  1942. return retVal;
  1943. #else
  1944. return -1;
  1945. #endif
  1946. }
  1947. //
  1948. // C++: double cv::fisheye::stereoCalibrate(vector_Mat objectPoints, vector_Mat imagePoints1, vector_Mat imagePoints2, Mat& K1, Mat& D1, Mat& K2, Mat& D2, Size imageSize, Mat& R, Mat& T, int flags = fisheye::CALIB_FIX_INTRINSIC, TermCriteria criteria = TermCriteria(TermCriteria::COUNT + TermCriteria::EPS, 100, DBL_EPSILON))
  1949. //
  1950. //javadoc: fisheye_stereoCalibrate(objectPoints, imagePoints1, imagePoints2, K1, D1, K2, D2, imageSize, R, T, flags, criteria)
  1951. public static double fisheye_stereoCalibrate (List<Mat> objectPoints, List<Mat> imagePoints1, List<Mat> imagePoints2, Mat K1, Mat D1, Mat K2, Mat D2, Size imageSize, Mat R, Mat T, int flags, TermCriteria criteria)
  1952. {
  1953. if (K1 != null)
  1954. K1.ThrowIfDisposed ();
  1955. if (D1 != null)
  1956. D1.ThrowIfDisposed ();
  1957. if (K2 != null)
  1958. K2.ThrowIfDisposed ();
  1959. if (D2 != null)
  1960. D2.ThrowIfDisposed ();
  1961. if (R != null)
  1962. R.ThrowIfDisposed ();
  1963. if (T != null)
  1964. T.ThrowIfDisposed ();
  1965. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1966. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1967. Mat imagePoints1_mat = Converters.vector_Mat_to_Mat (imagePoints1);
  1968. Mat imagePoints2_mat = Converters.vector_Mat_to_Mat (imagePoints2);
  1969. double retVal = calib3d_Calib3d_fisheye_1stereoCalibrate_10 (objectPoints_mat.nativeObj, imagePoints1_mat.nativeObj, imagePoints2_mat.nativeObj, K1.nativeObj, D1.nativeObj, K2.nativeObj, D2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, T.nativeObj, flags, criteria.type, criteria.maxCount, criteria.epsilon);
  1970. return retVal;
  1971. #else
  1972. return -1;
  1973. #endif
  1974. }
  1975. //javadoc: fisheye_stereoCalibrate(objectPoints, imagePoints1, imagePoints2, K1, D1, K2, D2, imageSize, R, T, flags)
  1976. public static double fisheye_stereoCalibrate (List<Mat> objectPoints, List<Mat> imagePoints1, List<Mat> imagePoints2, Mat K1, Mat D1, Mat K2, Mat D2, Size imageSize, Mat R, Mat T, int flags)
  1977. {
  1978. if (K1 != null)
  1979. K1.ThrowIfDisposed ();
  1980. if (D1 != null)
  1981. D1.ThrowIfDisposed ();
  1982. if (K2 != null)
  1983. K2.ThrowIfDisposed ();
  1984. if (D2 != null)
  1985. D2.ThrowIfDisposed ();
  1986. if (R != null)
  1987. R.ThrowIfDisposed ();
  1988. if (T != null)
  1989. T.ThrowIfDisposed ();
  1990. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  1991. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  1992. Mat imagePoints1_mat = Converters.vector_Mat_to_Mat (imagePoints1);
  1993. Mat imagePoints2_mat = Converters.vector_Mat_to_Mat (imagePoints2);
  1994. double retVal = calib3d_Calib3d_fisheye_1stereoCalibrate_11 (objectPoints_mat.nativeObj, imagePoints1_mat.nativeObj, imagePoints2_mat.nativeObj, K1.nativeObj, D1.nativeObj, K2.nativeObj, D2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, T.nativeObj, flags);
  1995. return retVal;
  1996. #else
  1997. return -1;
  1998. #endif
  1999. }
  2000. //javadoc: fisheye_stereoCalibrate(objectPoints, imagePoints1, imagePoints2, K1, D1, K2, D2, imageSize, R, T)
  2001. public static double fisheye_stereoCalibrate (List<Mat> objectPoints, List<Mat> imagePoints1, List<Mat> imagePoints2, Mat K1, Mat D1, Mat K2, Mat D2, Size imageSize, Mat R, Mat T)
  2002. {
  2003. if (K1 != null)
  2004. K1.ThrowIfDisposed ();
  2005. if (D1 != null)
  2006. D1.ThrowIfDisposed ();
  2007. if (K2 != null)
  2008. K2.ThrowIfDisposed ();
  2009. if (D2 != null)
  2010. D2.ThrowIfDisposed ();
  2011. if (R != null)
  2012. R.ThrowIfDisposed ();
  2013. if (T != null)
  2014. T.ThrowIfDisposed ();
  2015. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2016. Mat objectPoints_mat = Converters.vector_Mat_to_Mat (objectPoints);
  2017. Mat imagePoints1_mat = Converters.vector_Mat_to_Mat (imagePoints1);
  2018. Mat imagePoints2_mat = Converters.vector_Mat_to_Mat (imagePoints2);
  2019. double retVal = calib3d_Calib3d_fisheye_1stereoCalibrate_12 (objectPoints_mat.nativeObj, imagePoints1_mat.nativeObj, imagePoints2_mat.nativeObj, K1.nativeObj, D1.nativeObj, K2.nativeObj, D2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, T.nativeObj);
  2020. return retVal;
  2021. #else
  2022. return -1;
  2023. #endif
  2024. }
  2025. //
  2026. // C++: float cv::rectify3Collinear(Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Mat cameraMatrix3, Mat distCoeffs3, vector_Mat imgpt1, vector_Mat imgpt3, Size imageSize, Mat R12, Mat T12, Mat R13, Mat T13, Mat& R1, Mat& R2, Mat& R3, Mat& P1, Mat& P2, Mat& P3, Mat& Q, double alpha, Size newImgSize, Rect* roi1, Rect* roi2, int flags)
  2027. //
  2028. //javadoc: rectify3Collinear(cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, cameraMatrix3, distCoeffs3, imgpt1, imgpt3, imageSize, R12, T12, R13, T13, R1, R2, R3, P1, P2, P3, Q, alpha, newImgSize, roi1, roi2, flags)
  2029. public static float rectify3Collinear (Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Mat cameraMatrix3, Mat distCoeffs3, List<Mat> imgpt1, List<Mat> imgpt3, Size imageSize, Mat R12, Mat T12, Mat R13, Mat T13, Mat R1, Mat R2, Mat R3, Mat P1, Mat P2, Mat P3, Mat Q, double alpha, Size newImgSize, Rect roi1, Rect roi2, int flags)
  2030. {
  2031. if (cameraMatrix1 != null)
  2032. cameraMatrix1.ThrowIfDisposed ();
  2033. if (distCoeffs1 != null)
  2034. distCoeffs1.ThrowIfDisposed ();
  2035. if (cameraMatrix2 != null)
  2036. cameraMatrix2.ThrowIfDisposed ();
  2037. if (distCoeffs2 != null)
  2038. distCoeffs2.ThrowIfDisposed ();
  2039. if (cameraMatrix3 != null)
  2040. cameraMatrix3.ThrowIfDisposed ();
  2041. if (distCoeffs3 != null)
  2042. distCoeffs3.ThrowIfDisposed ();
  2043. if (R12 != null)
  2044. R12.ThrowIfDisposed ();
  2045. if (T12 != null)
  2046. T12.ThrowIfDisposed ();
  2047. if (R13 != null)
  2048. R13.ThrowIfDisposed ();
  2049. if (T13 != null)
  2050. T13.ThrowIfDisposed ();
  2051. if (R1 != null)
  2052. R1.ThrowIfDisposed ();
  2053. if (R2 != null)
  2054. R2.ThrowIfDisposed ();
  2055. if (R3 != null)
  2056. R3.ThrowIfDisposed ();
  2057. if (P1 != null)
  2058. P1.ThrowIfDisposed ();
  2059. if (P2 != null)
  2060. P2.ThrowIfDisposed ();
  2061. if (P3 != null)
  2062. P3.ThrowIfDisposed ();
  2063. if (Q != null)
  2064. Q.ThrowIfDisposed ();
  2065. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2066. Mat imgpt1_mat = Converters.vector_Mat_to_Mat (imgpt1);
  2067. Mat imgpt3_mat = Converters.vector_Mat_to_Mat (imgpt3);
  2068. double[] roi1_out = new double[4];
  2069. double[] roi2_out = new double[4];
  2070. float retVal = calib3d_Calib3d_rectify3Collinear_10 (cameraMatrix1.nativeObj, distCoeffs1.nativeObj, cameraMatrix2.nativeObj, distCoeffs2.nativeObj, cameraMatrix3.nativeObj, distCoeffs3.nativeObj, imgpt1_mat.nativeObj, imgpt3_mat.nativeObj, imageSize.width, imageSize.height, R12.nativeObj, T12.nativeObj, R13.nativeObj, T13.nativeObj, R1.nativeObj, R2.nativeObj, R3.nativeObj, P1.nativeObj, P2.nativeObj, P3.nativeObj, Q.nativeObj, alpha, newImgSize.width, newImgSize.height, roi1_out, roi2_out, flags);
  2071. if (roi1 != null) {
  2072. roi1.x = (int)roi1_out [0];
  2073. roi1.y = (int)roi1_out [1];
  2074. roi1.width = (int)roi1_out [2];
  2075. roi1.height = (int)roi1_out [3];
  2076. }
  2077. if (roi2 != null) {
  2078. roi2.x = (int)roi2_out [0];
  2079. roi2.y = (int)roi2_out [1];
  2080. roi2.width = (int)roi2_out [2];
  2081. roi2.height = (int)roi2_out [3];
  2082. }
  2083. return retVal;
  2084. #else
  2085. return -1;
  2086. #endif
  2087. }
  2088. //
  2089. // C++: int cv::decomposeHomographyMat(Mat H, Mat K, vector_Mat& rotations, vector_Mat& translations, vector_Mat& normals)
  2090. //
  2091. //javadoc: decomposeHomographyMat(H, K, rotations, translations, normals)
  2092. public static int decomposeHomographyMat (Mat H, Mat K, List<Mat> rotations, List<Mat> translations, List<Mat> normals)
  2093. {
  2094. if (H != null)
  2095. H.ThrowIfDisposed ();
  2096. if (K != null)
  2097. K.ThrowIfDisposed ();
  2098. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2099. Mat rotations_mat = new Mat ();
  2100. Mat translations_mat = new Mat ();
  2101. Mat normals_mat = new Mat ();
  2102. int retVal = calib3d_Calib3d_decomposeHomographyMat_10 (H.nativeObj, K.nativeObj, rotations_mat.nativeObj, translations_mat.nativeObj, normals_mat.nativeObj);
  2103. Converters.Mat_to_vector_Mat (rotations_mat, rotations);
  2104. rotations_mat.release ();
  2105. Converters.Mat_to_vector_Mat (translations_mat, translations);
  2106. translations_mat.release ();
  2107. Converters.Mat_to_vector_Mat (normals_mat, normals);
  2108. normals_mat.release ();
  2109. return retVal;
  2110. #else
  2111. return -1;
  2112. #endif
  2113. }
  2114. //
  2115. // C++: int cv::estimateAffine3D(Mat src, Mat dst, Mat& _out, Mat& inliers, double ransacThreshold = 3, double confidence = 0.99)
  2116. //
  2117. //javadoc: estimateAffine3D(src, dst, _out, inliers, ransacThreshold, confidence)
  2118. public static int estimateAffine3D (Mat src, Mat dst, Mat _out, Mat inliers, double ransacThreshold, double confidence)
  2119. {
  2120. if (src != null)
  2121. src.ThrowIfDisposed ();
  2122. if (dst != null)
  2123. dst.ThrowIfDisposed ();
  2124. if (_out != null)
  2125. _out.ThrowIfDisposed ();
  2126. if (inliers != null)
  2127. inliers.ThrowIfDisposed ();
  2128. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2129. int retVal = calib3d_Calib3d_estimateAffine3D_10 (src.nativeObj, dst.nativeObj, _out.nativeObj, inliers.nativeObj, ransacThreshold, confidence);
  2130. return retVal;
  2131. #else
  2132. return -1;
  2133. #endif
  2134. }
  2135. //javadoc: estimateAffine3D(src, dst, _out, inliers, ransacThreshold)
  2136. public static int estimateAffine3D (Mat src, Mat dst, Mat _out, Mat inliers, double ransacThreshold)
  2137. {
  2138. if (src != null)
  2139. src.ThrowIfDisposed ();
  2140. if (dst != null)
  2141. dst.ThrowIfDisposed ();
  2142. if (_out != null)
  2143. _out.ThrowIfDisposed ();
  2144. if (inliers != null)
  2145. inliers.ThrowIfDisposed ();
  2146. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2147. int retVal = calib3d_Calib3d_estimateAffine3D_11 (src.nativeObj, dst.nativeObj, _out.nativeObj, inliers.nativeObj, ransacThreshold);
  2148. return retVal;
  2149. #else
  2150. return -1;
  2151. #endif
  2152. }
  2153. //javadoc: estimateAffine3D(src, dst, _out, inliers)
  2154. public static int estimateAffine3D (Mat src, Mat dst, Mat _out, Mat inliers)
  2155. {
  2156. if (src != null)
  2157. src.ThrowIfDisposed ();
  2158. if (dst != null)
  2159. dst.ThrowIfDisposed ();
  2160. if (_out != null)
  2161. _out.ThrowIfDisposed ();
  2162. if (inliers != null)
  2163. inliers.ThrowIfDisposed ();
  2164. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2165. int retVal = calib3d_Calib3d_estimateAffine3D_12 (src.nativeObj, dst.nativeObj, _out.nativeObj, inliers.nativeObj);
  2166. return retVal;
  2167. #else
  2168. return -1;
  2169. #endif
  2170. }
  2171. //
  2172. // C++: int cv::recoverPose(Mat E, Mat points1, Mat points2, Mat& R, Mat& t, double focal = 1.0, Point2d pp = Point2d(0, 0), Mat& mask = Mat())
  2173. //
  2174. //javadoc: recoverPose(E, points1, points2, R, t, focal, pp, mask)
  2175. public static int recoverPose (Mat E, Mat points1, Mat points2, Mat R, Mat t, double focal, Point pp, Mat mask)
  2176. {
  2177. if (E != null)
  2178. E.ThrowIfDisposed ();
  2179. if (points1 != null)
  2180. points1.ThrowIfDisposed ();
  2181. if (points2 != null)
  2182. points2.ThrowIfDisposed ();
  2183. if (R != null)
  2184. R.ThrowIfDisposed ();
  2185. if (t != null)
  2186. t.ThrowIfDisposed ();
  2187. if (mask != null)
  2188. mask.ThrowIfDisposed ();
  2189. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2190. int retVal = calib3d_Calib3d_recoverPose_10 (E.nativeObj, points1.nativeObj, points2.nativeObj, R.nativeObj, t.nativeObj, focal, pp.x, pp.y, mask.nativeObj);
  2191. return retVal;
  2192. #else
  2193. return -1;
  2194. #endif
  2195. }
  2196. //javadoc: recoverPose(E, points1, points2, R, t, focal, pp)
  2197. public static int recoverPose (Mat E, Mat points1, Mat points2, Mat R, Mat t, double focal, Point pp)
  2198. {
  2199. if (E != null)
  2200. E.ThrowIfDisposed ();
  2201. if (points1 != null)
  2202. points1.ThrowIfDisposed ();
  2203. if (points2 != null)
  2204. points2.ThrowIfDisposed ();
  2205. if (R != null)
  2206. R.ThrowIfDisposed ();
  2207. if (t != null)
  2208. t.ThrowIfDisposed ();
  2209. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2210. int retVal = calib3d_Calib3d_recoverPose_11 (E.nativeObj, points1.nativeObj, points2.nativeObj, R.nativeObj, t.nativeObj, focal, pp.x, pp.y);
  2211. return retVal;
  2212. #else
  2213. return -1;
  2214. #endif
  2215. }
  2216. //javadoc: recoverPose(E, points1, points2, R, t, focal)
  2217. public static int recoverPose (Mat E, Mat points1, Mat points2, Mat R, Mat t, double focal)
  2218. {
  2219. if (E != null)
  2220. E.ThrowIfDisposed ();
  2221. if (points1 != null)
  2222. points1.ThrowIfDisposed ();
  2223. if (points2 != null)
  2224. points2.ThrowIfDisposed ();
  2225. if (R != null)
  2226. R.ThrowIfDisposed ();
  2227. if (t != null)
  2228. t.ThrowIfDisposed ();
  2229. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2230. int retVal = calib3d_Calib3d_recoverPose_12 (E.nativeObj, points1.nativeObj, points2.nativeObj, R.nativeObj, t.nativeObj, focal);
  2231. return retVal;
  2232. #else
  2233. return -1;
  2234. #endif
  2235. }
  2236. //javadoc: recoverPose(E, points1, points2, R, t)
  2237. public static int recoverPose (Mat E, Mat points1, Mat points2, Mat R, Mat t)
  2238. {
  2239. if (E != null)
  2240. E.ThrowIfDisposed ();
  2241. if (points1 != null)
  2242. points1.ThrowIfDisposed ();
  2243. if (points2 != null)
  2244. points2.ThrowIfDisposed ();
  2245. if (R != null)
  2246. R.ThrowIfDisposed ();
  2247. if (t != null)
  2248. t.ThrowIfDisposed ();
  2249. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2250. int retVal = calib3d_Calib3d_recoverPose_13 (E.nativeObj, points1.nativeObj, points2.nativeObj, R.nativeObj, t.nativeObj);
  2251. return retVal;
  2252. #else
  2253. return -1;
  2254. #endif
  2255. }
  2256. //
  2257. // C++: int cv::recoverPose(Mat E, Mat points1, Mat points2, Mat cameraMatrix, Mat& R, Mat& t, Mat& mask = Mat())
  2258. //
  2259. //javadoc: recoverPose(E, points1, points2, cameraMatrix, R, t, mask)
  2260. public static int recoverPose (Mat E, Mat points1, Mat points2, Mat cameraMatrix, Mat R, Mat t, Mat mask)
  2261. {
  2262. if (E != null)
  2263. E.ThrowIfDisposed ();
  2264. if (points1 != null)
  2265. points1.ThrowIfDisposed ();
  2266. if (points2 != null)
  2267. points2.ThrowIfDisposed ();
  2268. if (cameraMatrix != null)
  2269. cameraMatrix.ThrowIfDisposed ();
  2270. if (R != null)
  2271. R.ThrowIfDisposed ();
  2272. if (t != null)
  2273. t.ThrowIfDisposed ();
  2274. if (mask != null)
  2275. mask.ThrowIfDisposed ();
  2276. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2277. int retVal = calib3d_Calib3d_recoverPose_14 (E.nativeObj, points1.nativeObj, points2.nativeObj, cameraMatrix.nativeObj, R.nativeObj, t.nativeObj, mask.nativeObj);
  2278. return retVal;
  2279. #else
  2280. return -1;
  2281. #endif
  2282. }
  2283. //javadoc: recoverPose(E, points1, points2, cameraMatrix, R, t)
  2284. public static int recoverPose (Mat E, Mat points1, Mat points2, Mat cameraMatrix, Mat R, Mat t)
  2285. {
  2286. if (E != null)
  2287. E.ThrowIfDisposed ();
  2288. if (points1 != null)
  2289. points1.ThrowIfDisposed ();
  2290. if (points2 != null)
  2291. points2.ThrowIfDisposed ();
  2292. if (cameraMatrix != null)
  2293. cameraMatrix.ThrowIfDisposed ();
  2294. if (R != null)
  2295. R.ThrowIfDisposed ();
  2296. if (t != null)
  2297. t.ThrowIfDisposed ();
  2298. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2299. int retVal = calib3d_Calib3d_recoverPose_15 (E.nativeObj, points1.nativeObj, points2.nativeObj, cameraMatrix.nativeObj, R.nativeObj, t.nativeObj);
  2300. return retVal;
  2301. #else
  2302. return -1;
  2303. #endif
  2304. }
  2305. //
  2306. // C++: int cv::recoverPose(Mat E, Mat points1, Mat points2, Mat cameraMatrix, Mat& R, Mat& t, double distanceThresh, Mat& mask = Mat(), Mat& triangulatedPoints = Mat())
  2307. //
  2308. //javadoc: recoverPose(E, points1, points2, cameraMatrix, R, t, distanceThresh, mask, triangulatedPoints)
  2309. public static int recoverPose (Mat E, Mat points1, Mat points2, Mat cameraMatrix, Mat R, Mat t, double distanceThresh, Mat mask, Mat triangulatedPoints)
  2310. {
  2311. if (E != null)
  2312. E.ThrowIfDisposed ();
  2313. if (points1 != null)
  2314. points1.ThrowIfDisposed ();
  2315. if (points2 != null)
  2316. points2.ThrowIfDisposed ();
  2317. if (cameraMatrix != null)
  2318. cameraMatrix.ThrowIfDisposed ();
  2319. if (R != null)
  2320. R.ThrowIfDisposed ();
  2321. if (t != null)
  2322. t.ThrowIfDisposed ();
  2323. if (mask != null)
  2324. mask.ThrowIfDisposed ();
  2325. if (triangulatedPoints != null)
  2326. triangulatedPoints.ThrowIfDisposed ();
  2327. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2328. int retVal = calib3d_Calib3d_recoverPose_16 (E.nativeObj, points1.nativeObj, points2.nativeObj, cameraMatrix.nativeObj, R.nativeObj, t.nativeObj, distanceThresh, mask.nativeObj, triangulatedPoints.nativeObj);
  2329. return retVal;
  2330. #else
  2331. return -1;
  2332. #endif
  2333. }
  2334. //javadoc: recoverPose(E, points1, points2, cameraMatrix, R, t, distanceThresh, mask)
  2335. public static int recoverPose (Mat E, Mat points1, Mat points2, Mat cameraMatrix, Mat R, Mat t, double distanceThresh, Mat mask)
  2336. {
  2337. if (E != null)
  2338. E.ThrowIfDisposed ();
  2339. if (points1 != null)
  2340. points1.ThrowIfDisposed ();
  2341. if (points2 != null)
  2342. points2.ThrowIfDisposed ();
  2343. if (cameraMatrix != null)
  2344. cameraMatrix.ThrowIfDisposed ();
  2345. if (R != null)
  2346. R.ThrowIfDisposed ();
  2347. if (t != null)
  2348. t.ThrowIfDisposed ();
  2349. if (mask != null)
  2350. mask.ThrowIfDisposed ();
  2351. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2352. int retVal = calib3d_Calib3d_recoverPose_17 (E.nativeObj, points1.nativeObj, points2.nativeObj, cameraMatrix.nativeObj, R.nativeObj, t.nativeObj, distanceThresh, mask.nativeObj);
  2353. return retVal;
  2354. #else
  2355. return -1;
  2356. #endif
  2357. }
  2358. //javadoc: recoverPose(E, points1, points2, cameraMatrix, R, t, distanceThresh)
  2359. public static int recoverPose (Mat E, Mat points1, Mat points2, Mat cameraMatrix, Mat R, Mat t, double distanceThresh)
  2360. {
  2361. if (E != null)
  2362. E.ThrowIfDisposed ();
  2363. if (points1 != null)
  2364. points1.ThrowIfDisposed ();
  2365. if (points2 != null)
  2366. points2.ThrowIfDisposed ();
  2367. if (cameraMatrix != null)
  2368. cameraMatrix.ThrowIfDisposed ();
  2369. if (R != null)
  2370. R.ThrowIfDisposed ();
  2371. if (t != null)
  2372. t.ThrowIfDisposed ();
  2373. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2374. int retVal = calib3d_Calib3d_recoverPose_18 (E.nativeObj, points1.nativeObj, points2.nativeObj, cameraMatrix.nativeObj, R.nativeObj, t.nativeObj, distanceThresh);
  2375. return retVal;
  2376. #else
  2377. return -1;
  2378. #endif
  2379. }
  2380. //
  2381. // C++: int cv::solveP3P(Mat objectPoints, Mat imagePoints, Mat cameraMatrix, Mat distCoeffs, vector_Mat& rvecs, vector_Mat& tvecs, int flags)
  2382. //
  2383. //javadoc: solveP3P(objectPoints, imagePoints, cameraMatrix, distCoeffs, rvecs, tvecs, flags)
  2384. public static int solveP3P (Mat objectPoints, Mat imagePoints, Mat cameraMatrix, Mat distCoeffs, List<Mat> rvecs, List<Mat> tvecs, int flags)
  2385. {
  2386. if (objectPoints != null)
  2387. objectPoints.ThrowIfDisposed ();
  2388. if (imagePoints != null)
  2389. imagePoints.ThrowIfDisposed ();
  2390. if (cameraMatrix != null)
  2391. cameraMatrix.ThrowIfDisposed ();
  2392. if (distCoeffs != null)
  2393. distCoeffs.ThrowIfDisposed ();
  2394. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2395. Mat rvecs_mat = new Mat ();
  2396. Mat tvecs_mat = new Mat ();
  2397. int retVal = calib3d_Calib3d_solveP3P_10 (objectPoints.nativeObj, imagePoints.nativeObj, cameraMatrix.nativeObj, distCoeffs.nativeObj, rvecs_mat.nativeObj, tvecs_mat.nativeObj, flags);
  2398. Converters.Mat_to_vector_Mat (rvecs_mat, rvecs);
  2399. rvecs_mat.release ();
  2400. Converters.Mat_to_vector_Mat (tvecs_mat, tvecs);
  2401. tvecs_mat.release ();
  2402. return retVal;
  2403. #else
  2404. return -1;
  2405. #endif
  2406. }
  2407. //
  2408. // C++: void cv::Rodrigues(Mat src, Mat& dst, Mat& jacobian = Mat())
  2409. //
  2410. //javadoc: Rodrigues(src, dst, jacobian)
  2411. public static void Rodrigues (Mat src, Mat dst, Mat jacobian)
  2412. {
  2413. if (src != null)
  2414. src.ThrowIfDisposed ();
  2415. if (dst != null)
  2416. dst.ThrowIfDisposed ();
  2417. if (jacobian != null)
  2418. jacobian.ThrowIfDisposed ();
  2419. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2420. calib3d_Calib3d_Rodrigues_10 (src.nativeObj, dst.nativeObj, jacobian.nativeObj);
  2421. return;
  2422. #else
  2423. return;
  2424. #endif
  2425. }
  2426. //javadoc: Rodrigues(src, dst)
  2427. public static void Rodrigues (Mat src, Mat dst)
  2428. {
  2429. if (src != null)
  2430. src.ThrowIfDisposed ();
  2431. if (dst != null)
  2432. dst.ThrowIfDisposed ();
  2433. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2434. calib3d_Calib3d_Rodrigues_11 (src.nativeObj, dst.nativeObj);
  2435. return;
  2436. #else
  2437. return;
  2438. #endif
  2439. }
  2440. //
  2441. // C++: void cv::calibrationMatrixValues(Mat cameraMatrix, Size imageSize, double apertureWidth, double apertureHeight, double& fovx, double& fovy, double& focalLength, Point2d& principalPoint, double& aspectRatio)
  2442. //
  2443. //javadoc: calibrationMatrixValues(cameraMatrix, imageSize, apertureWidth, apertureHeight, fovx, fovy, focalLength, principalPoint, aspectRatio)
  2444. public static void calibrationMatrixValues (Mat cameraMatrix, Size imageSize, double apertureWidth, double apertureHeight, double[] fovx, double[] fovy, double[] focalLength, Point principalPoint, double[] aspectRatio)
  2445. {
  2446. if (cameraMatrix != null)
  2447. cameraMatrix.ThrowIfDisposed ();
  2448. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2449. double[] fovx_out = new double[1];
  2450. double[] fovy_out = new double[1];
  2451. double[] focalLength_out = new double[1];
  2452. double[] principalPoint_out = new double[2];
  2453. double[] aspectRatio_out = new double[1];
  2454. calib3d_Calib3d_calibrationMatrixValues_10 (cameraMatrix.nativeObj, imageSize.width, imageSize.height, apertureWidth, apertureHeight, fovx_out, fovy_out, focalLength_out, principalPoint_out, aspectRatio_out);
  2455. if (fovx != null)
  2456. fovx [0] = (double)fovx_out [0];
  2457. if (fovy != null)
  2458. fovy [0] = (double)fovy_out [0];
  2459. if (focalLength != null)
  2460. focalLength [0] = (double)focalLength_out [0];
  2461. if (principalPoint != null) {
  2462. principalPoint.x = principalPoint_out [0];
  2463. principalPoint.y = principalPoint_out [1];
  2464. }
  2465. if (aspectRatio != null)
  2466. aspectRatio [0] = (double)aspectRatio_out [0];
  2467. return;
  2468. #else
  2469. return;
  2470. #endif
  2471. }
  2472. //
  2473. // C++: void cv::composeRT(Mat rvec1, Mat tvec1, Mat rvec2, Mat tvec2, Mat& rvec3, Mat& tvec3, Mat& dr3dr1 = Mat(), Mat& dr3dt1 = Mat(), Mat& dr3dr2 = Mat(), Mat& dr3dt2 = Mat(), Mat& dt3dr1 = Mat(), Mat& dt3dt1 = Mat(), Mat& dt3dr2 = Mat(), Mat& dt3dt2 = Mat())
  2474. //
  2475. //javadoc: composeRT(rvec1, tvec1, rvec2, tvec2, rvec3, tvec3, dr3dr1, dr3dt1, dr3dr2, dr3dt2, dt3dr1, dt3dt1, dt3dr2, dt3dt2)
  2476. public static void composeRT (Mat rvec1, Mat tvec1, Mat rvec2, Mat tvec2, Mat rvec3, Mat tvec3, Mat dr3dr1, Mat dr3dt1, Mat dr3dr2, Mat dr3dt2, Mat dt3dr1, Mat dt3dt1, Mat dt3dr2, Mat dt3dt2)
  2477. {
  2478. if (rvec1 != null)
  2479. rvec1.ThrowIfDisposed ();
  2480. if (tvec1 != null)
  2481. tvec1.ThrowIfDisposed ();
  2482. if (rvec2 != null)
  2483. rvec2.ThrowIfDisposed ();
  2484. if (tvec2 != null)
  2485. tvec2.ThrowIfDisposed ();
  2486. if (rvec3 != null)
  2487. rvec3.ThrowIfDisposed ();
  2488. if (tvec3 != null)
  2489. tvec3.ThrowIfDisposed ();
  2490. if (dr3dr1 != null)
  2491. dr3dr1.ThrowIfDisposed ();
  2492. if (dr3dt1 != null)
  2493. dr3dt1.ThrowIfDisposed ();
  2494. if (dr3dr2 != null)
  2495. dr3dr2.ThrowIfDisposed ();
  2496. if (dr3dt2 != null)
  2497. dr3dt2.ThrowIfDisposed ();
  2498. if (dt3dr1 != null)
  2499. dt3dr1.ThrowIfDisposed ();
  2500. if (dt3dt1 != null)
  2501. dt3dt1.ThrowIfDisposed ();
  2502. if (dt3dr2 != null)
  2503. dt3dr2.ThrowIfDisposed ();
  2504. if (dt3dt2 != null)
  2505. dt3dt2.ThrowIfDisposed ();
  2506. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2507. calib3d_Calib3d_composeRT_10 (rvec1.nativeObj, tvec1.nativeObj, rvec2.nativeObj, tvec2.nativeObj, rvec3.nativeObj, tvec3.nativeObj, dr3dr1.nativeObj, dr3dt1.nativeObj, dr3dr2.nativeObj, dr3dt2.nativeObj, dt3dr1.nativeObj, dt3dt1.nativeObj, dt3dr2.nativeObj, dt3dt2.nativeObj);
  2508. return;
  2509. #else
  2510. return;
  2511. #endif
  2512. }
  2513. //javadoc: composeRT(rvec1, tvec1, rvec2, tvec2, rvec3, tvec3, dr3dr1, dr3dt1, dr3dr2, dr3dt2, dt3dr1, dt3dt1, dt3dr2)
  2514. public static void composeRT (Mat rvec1, Mat tvec1, Mat rvec2, Mat tvec2, Mat rvec3, Mat tvec3, Mat dr3dr1, Mat dr3dt1, Mat dr3dr2, Mat dr3dt2, Mat dt3dr1, Mat dt3dt1, Mat dt3dr2)
  2515. {
  2516. if (rvec1 != null)
  2517. rvec1.ThrowIfDisposed ();
  2518. if (tvec1 != null)
  2519. tvec1.ThrowIfDisposed ();
  2520. if (rvec2 != null)
  2521. rvec2.ThrowIfDisposed ();
  2522. if (tvec2 != null)
  2523. tvec2.ThrowIfDisposed ();
  2524. if (rvec3 != null)
  2525. rvec3.ThrowIfDisposed ();
  2526. if (tvec3 != null)
  2527. tvec3.ThrowIfDisposed ();
  2528. if (dr3dr1 != null)
  2529. dr3dr1.ThrowIfDisposed ();
  2530. if (dr3dt1 != null)
  2531. dr3dt1.ThrowIfDisposed ();
  2532. if (dr3dr2 != null)
  2533. dr3dr2.ThrowIfDisposed ();
  2534. if (dr3dt2 != null)
  2535. dr3dt2.ThrowIfDisposed ();
  2536. if (dt3dr1 != null)
  2537. dt3dr1.ThrowIfDisposed ();
  2538. if (dt3dt1 != null)
  2539. dt3dt1.ThrowIfDisposed ();
  2540. if (dt3dr2 != null)
  2541. dt3dr2.ThrowIfDisposed ();
  2542. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2543. calib3d_Calib3d_composeRT_11 (rvec1.nativeObj, tvec1.nativeObj, rvec2.nativeObj, tvec2.nativeObj, rvec3.nativeObj, tvec3.nativeObj, dr3dr1.nativeObj, dr3dt1.nativeObj, dr3dr2.nativeObj, dr3dt2.nativeObj, dt3dr1.nativeObj, dt3dt1.nativeObj, dt3dr2.nativeObj);
  2544. return;
  2545. #else
  2546. return;
  2547. #endif
  2548. }
  2549. //javadoc: composeRT(rvec1, tvec1, rvec2, tvec2, rvec3, tvec3, dr3dr1, dr3dt1, dr3dr2, dr3dt2, dt3dr1, dt3dt1)
  2550. public static void composeRT (Mat rvec1, Mat tvec1, Mat rvec2, Mat tvec2, Mat rvec3, Mat tvec3, Mat dr3dr1, Mat dr3dt1, Mat dr3dr2, Mat dr3dt2, Mat dt3dr1, Mat dt3dt1)
  2551. {
  2552. if (rvec1 != null)
  2553. rvec1.ThrowIfDisposed ();
  2554. if (tvec1 != null)
  2555. tvec1.ThrowIfDisposed ();
  2556. if (rvec2 != null)
  2557. rvec2.ThrowIfDisposed ();
  2558. if (tvec2 != null)
  2559. tvec2.ThrowIfDisposed ();
  2560. if (rvec3 != null)
  2561. rvec3.ThrowIfDisposed ();
  2562. if (tvec3 != null)
  2563. tvec3.ThrowIfDisposed ();
  2564. if (dr3dr1 != null)
  2565. dr3dr1.ThrowIfDisposed ();
  2566. if (dr3dt1 != null)
  2567. dr3dt1.ThrowIfDisposed ();
  2568. if (dr3dr2 != null)
  2569. dr3dr2.ThrowIfDisposed ();
  2570. if (dr3dt2 != null)
  2571. dr3dt2.ThrowIfDisposed ();
  2572. if (dt3dr1 != null)
  2573. dt3dr1.ThrowIfDisposed ();
  2574. if (dt3dt1 != null)
  2575. dt3dt1.ThrowIfDisposed ();
  2576. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2577. calib3d_Calib3d_composeRT_12 (rvec1.nativeObj, tvec1.nativeObj, rvec2.nativeObj, tvec2.nativeObj, rvec3.nativeObj, tvec3.nativeObj, dr3dr1.nativeObj, dr3dt1.nativeObj, dr3dr2.nativeObj, dr3dt2.nativeObj, dt3dr1.nativeObj, dt3dt1.nativeObj);
  2578. return;
  2579. #else
  2580. return;
  2581. #endif
  2582. }
  2583. //javadoc: composeRT(rvec1, tvec1, rvec2, tvec2, rvec3, tvec3, dr3dr1, dr3dt1, dr3dr2, dr3dt2, dt3dr1)
  2584. public static void composeRT (Mat rvec1, Mat tvec1, Mat rvec2, Mat tvec2, Mat rvec3, Mat tvec3, Mat dr3dr1, Mat dr3dt1, Mat dr3dr2, Mat dr3dt2, Mat dt3dr1)
  2585. {
  2586. if (rvec1 != null)
  2587. rvec1.ThrowIfDisposed ();
  2588. if (tvec1 != null)
  2589. tvec1.ThrowIfDisposed ();
  2590. if (rvec2 != null)
  2591. rvec2.ThrowIfDisposed ();
  2592. if (tvec2 != null)
  2593. tvec2.ThrowIfDisposed ();
  2594. if (rvec3 != null)
  2595. rvec3.ThrowIfDisposed ();
  2596. if (tvec3 != null)
  2597. tvec3.ThrowIfDisposed ();
  2598. if (dr3dr1 != null)
  2599. dr3dr1.ThrowIfDisposed ();
  2600. if (dr3dt1 != null)
  2601. dr3dt1.ThrowIfDisposed ();
  2602. if (dr3dr2 != null)
  2603. dr3dr2.ThrowIfDisposed ();
  2604. if (dr3dt2 != null)
  2605. dr3dt2.ThrowIfDisposed ();
  2606. if (dt3dr1 != null)
  2607. dt3dr1.ThrowIfDisposed ();
  2608. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2609. calib3d_Calib3d_composeRT_13 (rvec1.nativeObj, tvec1.nativeObj, rvec2.nativeObj, tvec2.nativeObj, rvec3.nativeObj, tvec3.nativeObj, dr3dr1.nativeObj, dr3dt1.nativeObj, dr3dr2.nativeObj, dr3dt2.nativeObj, dt3dr1.nativeObj);
  2610. return;
  2611. #else
  2612. return;
  2613. #endif
  2614. }
  2615. //javadoc: composeRT(rvec1, tvec1, rvec2, tvec2, rvec3, tvec3, dr3dr1, dr3dt1, dr3dr2, dr3dt2)
  2616. public static void composeRT (Mat rvec1, Mat tvec1, Mat rvec2, Mat tvec2, Mat rvec3, Mat tvec3, Mat dr3dr1, Mat dr3dt1, Mat dr3dr2, Mat dr3dt2)
  2617. {
  2618. if (rvec1 != null)
  2619. rvec1.ThrowIfDisposed ();
  2620. if (tvec1 != null)
  2621. tvec1.ThrowIfDisposed ();
  2622. if (rvec2 != null)
  2623. rvec2.ThrowIfDisposed ();
  2624. if (tvec2 != null)
  2625. tvec2.ThrowIfDisposed ();
  2626. if (rvec3 != null)
  2627. rvec3.ThrowIfDisposed ();
  2628. if (tvec3 != null)
  2629. tvec3.ThrowIfDisposed ();
  2630. if (dr3dr1 != null)
  2631. dr3dr1.ThrowIfDisposed ();
  2632. if (dr3dt1 != null)
  2633. dr3dt1.ThrowIfDisposed ();
  2634. if (dr3dr2 != null)
  2635. dr3dr2.ThrowIfDisposed ();
  2636. if (dr3dt2 != null)
  2637. dr3dt2.ThrowIfDisposed ();
  2638. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2639. calib3d_Calib3d_composeRT_14 (rvec1.nativeObj, tvec1.nativeObj, rvec2.nativeObj, tvec2.nativeObj, rvec3.nativeObj, tvec3.nativeObj, dr3dr1.nativeObj, dr3dt1.nativeObj, dr3dr2.nativeObj, dr3dt2.nativeObj);
  2640. return;
  2641. #else
  2642. return;
  2643. #endif
  2644. }
  2645. //javadoc: composeRT(rvec1, tvec1, rvec2, tvec2, rvec3, tvec3, dr3dr1, dr3dt1, dr3dr2)
  2646. public static void composeRT (Mat rvec1, Mat tvec1, Mat rvec2, Mat tvec2, Mat rvec3, Mat tvec3, Mat dr3dr1, Mat dr3dt1, Mat dr3dr2)
  2647. {
  2648. if (rvec1 != null)
  2649. rvec1.ThrowIfDisposed ();
  2650. if (tvec1 != null)
  2651. tvec1.ThrowIfDisposed ();
  2652. if (rvec2 != null)
  2653. rvec2.ThrowIfDisposed ();
  2654. if (tvec2 != null)
  2655. tvec2.ThrowIfDisposed ();
  2656. if (rvec3 != null)
  2657. rvec3.ThrowIfDisposed ();
  2658. if (tvec3 != null)
  2659. tvec3.ThrowIfDisposed ();
  2660. if (dr3dr1 != null)
  2661. dr3dr1.ThrowIfDisposed ();
  2662. if (dr3dt1 != null)
  2663. dr3dt1.ThrowIfDisposed ();
  2664. if (dr3dr2 != null)
  2665. dr3dr2.ThrowIfDisposed ();
  2666. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2667. calib3d_Calib3d_composeRT_15 (rvec1.nativeObj, tvec1.nativeObj, rvec2.nativeObj, tvec2.nativeObj, rvec3.nativeObj, tvec3.nativeObj, dr3dr1.nativeObj, dr3dt1.nativeObj, dr3dr2.nativeObj);
  2668. return;
  2669. #else
  2670. return;
  2671. #endif
  2672. }
  2673. //javadoc: composeRT(rvec1, tvec1, rvec2, tvec2, rvec3, tvec3, dr3dr1, dr3dt1)
  2674. public static void composeRT (Mat rvec1, Mat tvec1, Mat rvec2, Mat tvec2, Mat rvec3, Mat tvec3, Mat dr3dr1, Mat dr3dt1)
  2675. {
  2676. if (rvec1 != null)
  2677. rvec1.ThrowIfDisposed ();
  2678. if (tvec1 != null)
  2679. tvec1.ThrowIfDisposed ();
  2680. if (rvec2 != null)
  2681. rvec2.ThrowIfDisposed ();
  2682. if (tvec2 != null)
  2683. tvec2.ThrowIfDisposed ();
  2684. if (rvec3 != null)
  2685. rvec3.ThrowIfDisposed ();
  2686. if (tvec3 != null)
  2687. tvec3.ThrowIfDisposed ();
  2688. if (dr3dr1 != null)
  2689. dr3dr1.ThrowIfDisposed ();
  2690. if (dr3dt1 != null)
  2691. dr3dt1.ThrowIfDisposed ();
  2692. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2693. calib3d_Calib3d_composeRT_16 (rvec1.nativeObj, tvec1.nativeObj, rvec2.nativeObj, tvec2.nativeObj, rvec3.nativeObj, tvec3.nativeObj, dr3dr1.nativeObj, dr3dt1.nativeObj);
  2694. return;
  2695. #else
  2696. return;
  2697. #endif
  2698. }
  2699. //javadoc: composeRT(rvec1, tvec1, rvec2, tvec2, rvec3, tvec3, dr3dr1)
  2700. public static void composeRT (Mat rvec1, Mat tvec1, Mat rvec2, Mat tvec2, Mat rvec3, Mat tvec3, Mat dr3dr1)
  2701. {
  2702. if (rvec1 != null)
  2703. rvec1.ThrowIfDisposed ();
  2704. if (tvec1 != null)
  2705. tvec1.ThrowIfDisposed ();
  2706. if (rvec2 != null)
  2707. rvec2.ThrowIfDisposed ();
  2708. if (tvec2 != null)
  2709. tvec2.ThrowIfDisposed ();
  2710. if (rvec3 != null)
  2711. rvec3.ThrowIfDisposed ();
  2712. if (tvec3 != null)
  2713. tvec3.ThrowIfDisposed ();
  2714. if (dr3dr1 != null)
  2715. dr3dr1.ThrowIfDisposed ();
  2716. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2717. calib3d_Calib3d_composeRT_17 (rvec1.nativeObj, tvec1.nativeObj, rvec2.nativeObj, tvec2.nativeObj, rvec3.nativeObj, tvec3.nativeObj, dr3dr1.nativeObj);
  2718. return;
  2719. #else
  2720. return;
  2721. #endif
  2722. }
  2723. //javadoc: composeRT(rvec1, tvec1, rvec2, tvec2, rvec3, tvec3)
  2724. public static void composeRT (Mat rvec1, Mat tvec1, Mat rvec2, Mat tvec2, Mat rvec3, Mat tvec3)
  2725. {
  2726. if (rvec1 != null)
  2727. rvec1.ThrowIfDisposed ();
  2728. if (tvec1 != null)
  2729. tvec1.ThrowIfDisposed ();
  2730. if (rvec2 != null)
  2731. rvec2.ThrowIfDisposed ();
  2732. if (tvec2 != null)
  2733. tvec2.ThrowIfDisposed ();
  2734. if (rvec3 != null)
  2735. rvec3.ThrowIfDisposed ();
  2736. if (tvec3 != null)
  2737. tvec3.ThrowIfDisposed ();
  2738. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2739. calib3d_Calib3d_composeRT_18 (rvec1.nativeObj, tvec1.nativeObj, rvec2.nativeObj, tvec2.nativeObj, rvec3.nativeObj, tvec3.nativeObj);
  2740. return;
  2741. #else
  2742. return;
  2743. #endif
  2744. }
  2745. //
  2746. // C++: void cv::computeCorrespondEpilines(Mat points, int whichImage, Mat F, Mat& lines)
  2747. //
  2748. //javadoc: computeCorrespondEpilines(points, whichImage, F, lines)
  2749. public static void computeCorrespondEpilines (Mat points, int whichImage, Mat F, Mat lines)
  2750. {
  2751. if (points != null)
  2752. points.ThrowIfDisposed ();
  2753. if (F != null)
  2754. F.ThrowIfDisposed ();
  2755. if (lines != null)
  2756. lines.ThrowIfDisposed ();
  2757. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2758. calib3d_Calib3d_computeCorrespondEpilines_10 (points.nativeObj, whichImage, F.nativeObj, lines.nativeObj);
  2759. return;
  2760. #else
  2761. return;
  2762. #endif
  2763. }
  2764. //
  2765. // C++: void cv::convertPointsFromHomogeneous(Mat src, Mat& dst)
  2766. //
  2767. //javadoc: convertPointsFromHomogeneous(src, dst)
  2768. public static void convertPointsFromHomogeneous (Mat src, Mat dst)
  2769. {
  2770. if (src != null)
  2771. src.ThrowIfDisposed ();
  2772. if (dst != null)
  2773. dst.ThrowIfDisposed ();
  2774. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2775. calib3d_Calib3d_convertPointsFromHomogeneous_10 (src.nativeObj, dst.nativeObj);
  2776. return;
  2777. #else
  2778. return;
  2779. #endif
  2780. }
  2781. //
  2782. // C++: void cv::convertPointsToHomogeneous(Mat src, Mat& dst)
  2783. //
  2784. //javadoc: convertPointsToHomogeneous(src, dst)
  2785. public static void convertPointsToHomogeneous (Mat src, Mat dst)
  2786. {
  2787. if (src != null)
  2788. src.ThrowIfDisposed ();
  2789. if (dst != null)
  2790. dst.ThrowIfDisposed ();
  2791. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2792. calib3d_Calib3d_convertPointsToHomogeneous_10 (src.nativeObj, dst.nativeObj);
  2793. return;
  2794. #else
  2795. return;
  2796. #endif
  2797. }
  2798. //
  2799. // C++: void cv::correctMatches(Mat F, Mat points1, Mat points2, Mat& newPoints1, Mat& newPoints2)
  2800. //
  2801. //javadoc: correctMatches(F, points1, points2, newPoints1, newPoints2)
  2802. public static void correctMatches (Mat F, Mat points1, Mat points2, Mat newPoints1, Mat newPoints2)
  2803. {
  2804. if (F != null)
  2805. F.ThrowIfDisposed ();
  2806. if (points1 != null)
  2807. points1.ThrowIfDisposed ();
  2808. if (points2 != null)
  2809. points2.ThrowIfDisposed ();
  2810. if (newPoints1 != null)
  2811. newPoints1.ThrowIfDisposed ();
  2812. if (newPoints2 != null)
  2813. newPoints2.ThrowIfDisposed ();
  2814. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2815. calib3d_Calib3d_correctMatches_10 (F.nativeObj, points1.nativeObj, points2.nativeObj, newPoints1.nativeObj, newPoints2.nativeObj);
  2816. return;
  2817. #else
  2818. return;
  2819. #endif
  2820. }
  2821. //
  2822. // C++: void cv::decomposeEssentialMat(Mat E, Mat& R1, Mat& R2, Mat& t)
  2823. //
  2824. //javadoc: decomposeEssentialMat(E, R1, R2, t)
  2825. public static void decomposeEssentialMat (Mat E, Mat R1, Mat R2, Mat t)
  2826. {
  2827. if (E != null)
  2828. E.ThrowIfDisposed ();
  2829. if (R1 != null)
  2830. R1.ThrowIfDisposed ();
  2831. if (R2 != null)
  2832. R2.ThrowIfDisposed ();
  2833. if (t != null)
  2834. t.ThrowIfDisposed ();
  2835. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2836. calib3d_Calib3d_decomposeEssentialMat_10 (E.nativeObj, R1.nativeObj, R2.nativeObj, t.nativeObj);
  2837. return;
  2838. #else
  2839. return;
  2840. #endif
  2841. }
  2842. //
  2843. // C++: void cv::decomposeProjectionMatrix(Mat projMatrix, Mat& cameraMatrix, Mat& rotMatrix, Mat& transVect, Mat& rotMatrixX = Mat(), Mat& rotMatrixY = Mat(), Mat& rotMatrixZ = Mat(), Mat& eulerAngles = Mat())
  2844. //
  2845. //javadoc: decomposeProjectionMatrix(projMatrix, cameraMatrix, rotMatrix, transVect, rotMatrixX, rotMatrixY, rotMatrixZ, eulerAngles)
  2846. public static void decomposeProjectionMatrix (Mat projMatrix, Mat cameraMatrix, Mat rotMatrix, Mat transVect, Mat rotMatrixX, Mat rotMatrixY, Mat rotMatrixZ, Mat eulerAngles)
  2847. {
  2848. if (projMatrix != null)
  2849. projMatrix.ThrowIfDisposed ();
  2850. if (cameraMatrix != null)
  2851. cameraMatrix.ThrowIfDisposed ();
  2852. if (rotMatrix != null)
  2853. rotMatrix.ThrowIfDisposed ();
  2854. if (transVect != null)
  2855. transVect.ThrowIfDisposed ();
  2856. if (rotMatrixX != null)
  2857. rotMatrixX.ThrowIfDisposed ();
  2858. if (rotMatrixY != null)
  2859. rotMatrixY.ThrowIfDisposed ();
  2860. if (rotMatrixZ != null)
  2861. rotMatrixZ.ThrowIfDisposed ();
  2862. if (eulerAngles != null)
  2863. eulerAngles.ThrowIfDisposed ();
  2864. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2865. calib3d_Calib3d_decomposeProjectionMatrix_10 (projMatrix.nativeObj, cameraMatrix.nativeObj, rotMatrix.nativeObj, transVect.nativeObj, rotMatrixX.nativeObj, rotMatrixY.nativeObj, rotMatrixZ.nativeObj, eulerAngles.nativeObj);
  2866. return;
  2867. #else
  2868. return;
  2869. #endif
  2870. }
  2871. //javadoc: decomposeProjectionMatrix(projMatrix, cameraMatrix, rotMatrix, transVect, rotMatrixX, rotMatrixY, rotMatrixZ)
  2872. public static void decomposeProjectionMatrix (Mat projMatrix, Mat cameraMatrix, Mat rotMatrix, Mat transVect, Mat rotMatrixX, Mat rotMatrixY, Mat rotMatrixZ)
  2873. {
  2874. if (projMatrix != null)
  2875. projMatrix.ThrowIfDisposed ();
  2876. if (cameraMatrix != null)
  2877. cameraMatrix.ThrowIfDisposed ();
  2878. if (rotMatrix != null)
  2879. rotMatrix.ThrowIfDisposed ();
  2880. if (transVect != null)
  2881. transVect.ThrowIfDisposed ();
  2882. if (rotMatrixX != null)
  2883. rotMatrixX.ThrowIfDisposed ();
  2884. if (rotMatrixY != null)
  2885. rotMatrixY.ThrowIfDisposed ();
  2886. if (rotMatrixZ != null)
  2887. rotMatrixZ.ThrowIfDisposed ();
  2888. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2889. calib3d_Calib3d_decomposeProjectionMatrix_11 (projMatrix.nativeObj, cameraMatrix.nativeObj, rotMatrix.nativeObj, transVect.nativeObj, rotMatrixX.nativeObj, rotMatrixY.nativeObj, rotMatrixZ.nativeObj);
  2890. return;
  2891. #else
  2892. return;
  2893. #endif
  2894. }
  2895. //javadoc: decomposeProjectionMatrix(projMatrix, cameraMatrix, rotMatrix, transVect, rotMatrixX, rotMatrixY)
  2896. public static void decomposeProjectionMatrix (Mat projMatrix, Mat cameraMatrix, Mat rotMatrix, Mat transVect, Mat rotMatrixX, Mat rotMatrixY)
  2897. {
  2898. if (projMatrix != null)
  2899. projMatrix.ThrowIfDisposed ();
  2900. if (cameraMatrix != null)
  2901. cameraMatrix.ThrowIfDisposed ();
  2902. if (rotMatrix != null)
  2903. rotMatrix.ThrowIfDisposed ();
  2904. if (transVect != null)
  2905. transVect.ThrowIfDisposed ();
  2906. if (rotMatrixX != null)
  2907. rotMatrixX.ThrowIfDisposed ();
  2908. if (rotMatrixY != null)
  2909. rotMatrixY.ThrowIfDisposed ();
  2910. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2911. calib3d_Calib3d_decomposeProjectionMatrix_12 (projMatrix.nativeObj, cameraMatrix.nativeObj, rotMatrix.nativeObj, transVect.nativeObj, rotMatrixX.nativeObj, rotMatrixY.nativeObj);
  2912. return;
  2913. #else
  2914. return;
  2915. #endif
  2916. }
  2917. //javadoc: decomposeProjectionMatrix(projMatrix, cameraMatrix, rotMatrix, transVect, rotMatrixX)
  2918. public static void decomposeProjectionMatrix (Mat projMatrix, Mat cameraMatrix, Mat rotMatrix, Mat transVect, Mat rotMatrixX)
  2919. {
  2920. if (projMatrix != null)
  2921. projMatrix.ThrowIfDisposed ();
  2922. if (cameraMatrix != null)
  2923. cameraMatrix.ThrowIfDisposed ();
  2924. if (rotMatrix != null)
  2925. rotMatrix.ThrowIfDisposed ();
  2926. if (transVect != null)
  2927. transVect.ThrowIfDisposed ();
  2928. if (rotMatrixX != null)
  2929. rotMatrixX.ThrowIfDisposed ();
  2930. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2931. calib3d_Calib3d_decomposeProjectionMatrix_13 (projMatrix.nativeObj, cameraMatrix.nativeObj, rotMatrix.nativeObj, transVect.nativeObj, rotMatrixX.nativeObj);
  2932. return;
  2933. #else
  2934. return;
  2935. #endif
  2936. }
  2937. //javadoc: decomposeProjectionMatrix(projMatrix, cameraMatrix, rotMatrix, transVect)
  2938. public static void decomposeProjectionMatrix (Mat projMatrix, Mat cameraMatrix, Mat rotMatrix, Mat transVect)
  2939. {
  2940. if (projMatrix != null)
  2941. projMatrix.ThrowIfDisposed ();
  2942. if (cameraMatrix != null)
  2943. cameraMatrix.ThrowIfDisposed ();
  2944. if (rotMatrix != null)
  2945. rotMatrix.ThrowIfDisposed ();
  2946. if (transVect != null)
  2947. transVect.ThrowIfDisposed ();
  2948. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2949. calib3d_Calib3d_decomposeProjectionMatrix_14 (projMatrix.nativeObj, cameraMatrix.nativeObj, rotMatrix.nativeObj, transVect.nativeObj);
  2950. return;
  2951. #else
  2952. return;
  2953. #endif
  2954. }
  2955. //
  2956. // C++: void cv::drawChessboardCorners(Mat& image, Size patternSize, vector_Point2f corners, bool patternWasFound)
  2957. //
  2958. //javadoc: drawChessboardCorners(image, patternSize, corners, patternWasFound)
  2959. public static void drawChessboardCorners (Mat image, Size patternSize, MatOfPoint2f corners, bool patternWasFound)
  2960. {
  2961. if (image != null)
  2962. image.ThrowIfDisposed ();
  2963. if (corners != null)
  2964. corners.ThrowIfDisposed ();
  2965. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2966. Mat corners_mat = corners;
  2967. calib3d_Calib3d_drawChessboardCorners_10 (image.nativeObj, patternSize.width, patternSize.height, corners_mat.nativeObj, patternWasFound);
  2968. return;
  2969. #else
  2970. return;
  2971. #endif
  2972. }
  2973. //
  2974. // C++: void cv::drawFrameAxes(Mat& image, Mat cameraMatrix, Mat distCoeffs, Mat rvec, Mat tvec, float length, int thickness = 3)
  2975. //
  2976. //javadoc: drawFrameAxes(image, cameraMatrix, distCoeffs, rvec, tvec, length, thickness)
  2977. public static void drawFrameAxes (Mat image, Mat cameraMatrix, Mat distCoeffs, Mat rvec, Mat tvec, float length, int thickness)
  2978. {
  2979. if (image != null)
  2980. image.ThrowIfDisposed ();
  2981. if (cameraMatrix != null)
  2982. cameraMatrix.ThrowIfDisposed ();
  2983. if (distCoeffs != null)
  2984. distCoeffs.ThrowIfDisposed ();
  2985. if (rvec != null)
  2986. rvec.ThrowIfDisposed ();
  2987. if (tvec != null)
  2988. tvec.ThrowIfDisposed ();
  2989. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  2990. calib3d_Calib3d_drawFrameAxes_10 (image.nativeObj, cameraMatrix.nativeObj, distCoeffs.nativeObj, rvec.nativeObj, tvec.nativeObj, length, thickness);
  2991. return;
  2992. #else
  2993. return;
  2994. #endif
  2995. }
  2996. //javadoc: drawFrameAxes(image, cameraMatrix, distCoeffs, rvec, tvec, length)
  2997. public static void drawFrameAxes (Mat image, Mat cameraMatrix, Mat distCoeffs, Mat rvec, Mat tvec, float length)
  2998. {
  2999. if (image != null)
  3000. image.ThrowIfDisposed ();
  3001. if (cameraMatrix != null)
  3002. cameraMatrix.ThrowIfDisposed ();
  3003. if (distCoeffs != null)
  3004. distCoeffs.ThrowIfDisposed ();
  3005. if (rvec != null)
  3006. rvec.ThrowIfDisposed ();
  3007. if (tvec != null)
  3008. tvec.ThrowIfDisposed ();
  3009. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3010. calib3d_Calib3d_drawFrameAxes_11 (image.nativeObj, cameraMatrix.nativeObj, distCoeffs.nativeObj, rvec.nativeObj, tvec.nativeObj, length);
  3011. return;
  3012. #else
  3013. return;
  3014. #endif
  3015. }
  3016. //
  3017. // C++: void cv::filterHomographyDecompByVisibleRefpoints(vector_Mat rotations, vector_Mat normals, Mat beforePoints, Mat afterPoints, Mat& possibleSolutions, Mat pointsMask = Mat())
  3018. //
  3019. //javadoc: filterHomographyDecompByVisibleRefpoints(rotations, normals, beforePoints, afterPoints, possibleSolutions, pointsMask)
  3020. public static void filterHomographyDecompByVisibleRefpoints (List<Mat> rotations, List<Mat> normals, Mat beforePoints, Mat afterPoints, Mat possibleSolutions, Mat pointsMask)
  3021. {
  3022. if (beforePoints != null)
  3023. beforePoints.ThrowIfDisposed ();
  3024. if (afterPoints != null)
  3025. afterPoints.ThrowIfDisposed ();
  3026. if (possibleSolutions != null)
  3027. possibleSolutions.ThrowIfDisposed ();
  3028. if (pointsMask != null)
  3029. pointsMask.ThrowIfDisposed ();
  3030. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3031. Mat rotations_mat = Converters.vector_Mat_to_Mat (rotations);
  3032. Mat normals_mat = Converters.vector_Mat_to_Mat (normals);
  3033. calib3d_Calib3d_filterHomographyDecompByVisibleRefpoints_10 (rotations_mat.nativeObj, normals_mat.nativeObj, beforePoints.nativeObj, afterPoints.nativeObj, possibleSolutions.nativeObj, pointsMask.nativeObj);
  3034. return;
  3035. #else
  3036. return;
  3037. #endif
  3038. }
  3039. //javadoc: filterHomographyDecompByVisibleRefpoints(rotations, normals, beforePoints, afterPoints, possibleSolutions)
  3040. public static void filterHomographyDecompByVisibleRefpoints (List<Mat> rotations, List<Mat> normals, Mat beforePoints, Mat afterPoints, Mat possibleSolutions)
  3041. {
  3042. if (beforePoints != null)
  3043. beforePoints.ThrowIfDisposed ();
  3044. if (afterPoints != null)
  3045. afterPoints.ThrowIfDisposed ();
  3046. if (possibleSolutions != null)
  3047. possibleSolutions.ThrowIfDisposed ();
  3048. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3049. Mat rotations_mat = Converters.vector_Mat_to_Mat (rotations);
  3050. Mat normals_mat = Converters.vector_Mat_to_Mat (normals);
  3051. calib3d_Calib3d_filterHomographyDecompByVisibleRefpoints_11 (rotations_mat.nativeObj, normals_mat.nativeObj, beforePoints.nativeObj, afterPoints.nativeObj, possibleSolutions.nativeObj);
  3052. return;
  3053. #else
  3054. return;
  3055. #endif
  3056. }
  3057. //
  3058. // C++: void cv::filterSpeckles(Mat& img, double newVal, int maxSpeckleSize, double maxDiff, Mat& buf = Mat())
  3059. //
  3060. //javadoc: filterSpeckles(img, newVal, maxSpeckleSize, maxDiff, buf)
  3061. public static void filterSpeckles (Mat img, double newVal, int maxSpeckleSize, double maxDiff, Mat buf)
  3062. {
  3063. if (img != null)
  3064. img.ThrowIfDisposed ();
  3065. if (buf != null)
  3066. buf.ThrowIfDisposed ();
  3067. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3068. calib3d_Calib3d_filterSpeckles_10 (img.nativeObj, newVal, maxSpeckleSize, maxDiff, buf.nativeObj);
  3069. return;
  3070. #else
  3071. return;
  3072. #endif
  3073. }
  3074. //javadoc: filterSpeckles(img, newVal, maxSpeckleSize, maxDiff)
  3075. public static void filterSpeckles (Mat img, double newVal, int maxSpeckleSize, double maxDiff)
  3076. {
  3077. if (img != null)
  3078. img.ThrowIfDisposed ();
  3079. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3080. calib3d_Calib3d_filterSpeckles_11 (img.nativeObj, newVal, maxSpeckleSize, maxDiff);
  3081. return;
  3082. #else
  3083. return;
  3084. #endif
  3085. }
  3086. //
  3087. // C++: void cv::initUndistortRectifyMap(Mat cameraMatrix, Mat distCoeffs, Mat R, Mat newCameraMatrix, Size size, int m1type, Mat& map1, Mat& map2)
  3088. //
  3089. //javadoc: initUndistortRectifyMap(cameraMatrix, distCoeffs, R, newCameraMatrix, size, m1type, map1, map2)
  3090. public static void initUndistortRectifyMap (Mat cameraMatrix, Mat distCoeffs, Mat R, Mat newCameraMatrix, Size size, int m1type, Mat map1, Mat map2)
  3091. {
  3092. if (cameraMatrix != null)
  3093. cameraMatrix.ThrowIfDisposed ();
  3094. if (distCoeffs != null)
  3095. distCoeffs.ThrowIfDisposed ();
  3096. if (R != null)
  3097. R.ThrowIfDisposed ();
  3098. if (newCameraMatrix != null)
  3099. newCameraMatrix.ThrowIfDisposed ();
  3100. if (map1 != null)
  3101. map1.ThrowIfDisposed ();
  3102. if (map2 != null)
  3103. map2.ThrowIfDisposed ();
  3104. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3105. calib3d_Calib3d_initUndistortRectifyMap_10 (cameraMatrix.nativeObj, distCoeffs.nativeObj, R.nativeObj, newCameraMatrix.nativeObj, size.width, size.height, m1type, map1.nativeObj, map2.nativeObj);
  3106. return;
  3107. #else
  3108. return;
  3109. #endif
  3110. }
  3111. //
  3112. // C++: void cv::matMulDeriv(Mat A, Mat B, Mat& dABdA, Mat& dABdB)
  3113. //
  3114. //javadoc: matMulDeriv(A, B, dABdA, dABdB)
  3115. public static void matMulDeriv (Mat A, Mat B, Mat dABdA, Mat dABdB)
  3116. {
  3117. if (A != null)
  3118. A.ThrowIfDisposed ();
  3119. if (B != null)
  3120. B.ThrowIfDisposed ();
  3121. if (dABdA != null)
  3122. dABdA.ThrowIfDisposed ();
  3123. if (dABdB != null)
  3124. dABdB.ThrowIfDisposed ();
  3125. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3126. calib3d_Calib3d_matMulDeriv_10 (A.nativeObj, B.nativeObj, dABdA.nativeObj, dABdB.nativeObj);
  3127. return;
  3128. #else
  3129. return;
  3130. #endif
  3131. }
  3132. //
  3133. // C++: void cv::projectPoints(vector_Point3f objectPoints, Mat rvec, Mat tvec, Mat cameraMatrix, vector_double distCoeffs, vector_Point2f& imagePoints, Mat& jacobian = Mat(), double aspectRatio = 0)
  3134. //
  3135. //javadoc: projectPoints(objectPoints, rvec, tvec, cameraMatrix, distCoeffs, imagePoints, jacobian, aspectRatio)
  3136. public static void projectPoints (MatOfPoint3f objectPoints, Mat rvec, Mat tvec, Mat cameraMatrix, MatOfDouble distCoeffs, MatOfPoint2f imagePoints, Mat jacobian, double aspectRatio)
  3137. {
  3138. if (objectPoints != null)
  3139. objectPoints.ThrowIfDisposed ();
  3140. if (rvec != null)
  3141. rvec.ThrowIfDisposed ();
  3142. if (tvec != null)
  3143. tvec.ThrowIfDisposed ();
  3144. if (cameraMatrix != null)
  3145. cameraMatrix.ThrowIfDisposed ();
  3146. if (distCoeffs != null)
  3147. distCoeffs.ThrowIfDisposed ();
  3148. if (imagePoints != null)
  3149. imagePoints.ThrowIfDisposed ();
  3150. if (jacobian != null)
  3151. jacobian.ThrowIfDisposed ();
  3152. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3153. Mat objectPoints_mat = objectPoints;
  3154. Mat distCoeffs_mat = distCoeffs;
  3155. Mat imagePoints_mat = imagePoints;
  3156. calib3d_Calib3d_projectPoints_10 (objectPoints_mat.nativeObj, rvec.nativeObj, tvec.nativeObj, cameraMatrix.nativeObj, distCoeffs_mat.nativeObj, imagePoints_mat.nativeObj, jacobian.nativeObj, aspectRatio);
  3157. return;
  3158. #else
  3159. return;
  3160. #endif
  3161. }
  3162. //javadoc: projectPoints(objectPoints, rvec, tvec, cameraMatrix, distCoeffs, imagePoints, jacobian)
  3163. public static void projectPoints (MatOfPoint3f objectPoints, Mat rvec, Mat tvec, Mat cameraMatrix, MatOfDouble distCoeffs, MatOfPoint2f imagePoints, Mat jacobian)
  3164. {
  3165. if (objectPoints != null)
  3166. objectPoints.ThrowIfDisposed ();
  3167. if (rvec != null)
  3168. rvec.ThrowIfDisposed ();
  3169. if (tvec != null)
  3170. tvec.ThrowIfDisposed ();
  3171. if (cameraMatrix != null)
  3172. cameraMatrix.ThrowIfDisposed ();
  3173. if (distCoeffs != null)
  3174. distCoeffs.ThrowIfDisposed ();
  3175. if (imagePoints != null)
  3176. imagePoints.ThrowIfDisposed ();
  3177. if (jacobian != null)
  3178. jacobian.ThrowIfDisposed ();
  3179. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3180. Mat objectPoints_mat = objectPoints;
  3181. Mat distCoeffs_mat = distCoeffs;
  3182. Mat imagePoints_mat = imagePoints;
  3183. calib3d_Calib3d_projectPoints_11 (objectPoints_mat.nativeObj, rvec.nativeObj, tvec.nativeObj, cameraMatrix.nativeObj, distCoeffs_mat.nativeObj, imagePoints_mat.nativeObj, jacobian.nativeObj);
  3184. return;
  3185. #else
  3186. return;
  3187. #endif
  3188. }
  3189. //javadoc: projectPoints(objectPoints, rvec, tvec, cameraMatrix, distCoeffs, imagePoints)
  3190. public static void projectPoints (MatOfPoint3f objectPoints, Mat rvec, Mat tvec, Mat cameraMatrix, MatOfDouble distCoeffs, MatOfPoint2f imagePoints)
  3191. {
  3192. if (objectPoints != null)
  3193. objectPoints.ThrowIfDisposed ();
  3194. if (rvec != null)
  3195. rvec.ThrowIfDisposed ();
  3196. if (tvec != null)
  3197. tvec.ThrowIfDisposed ();
  3198. if (cameraMatrix != null)
  3199. cameraMatrix.ThrowIfDisposed ();
  3200. if (distCoeffs != null)
  3201. distCoeffs.ThrowIfDisposed ();
  3202. if (imagePoints != null)
  3203. imagePoints.ThrowIfDisposed ();
  3204. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3205. Mat objectPoints_mat = objectPoints;
  3206. Mat distCoeffs_mat = distCoeffs;
  3207. Mat imagePoints_mat = imagePoints;
  3208. calib3d_Calib3d_projectPoints_12 (objectPoints_mat.nativeObj, rvec.nativeObj, tvec.nativeObj, cameraMatrix.nativeObj, distCoeffs_mat.nativeObj, imagePoints_mat.nativeObj);
  3209. return;
  3210. #else
  3211. return;
  3212. #endif
  3213. }
  3214. //
  3215. // C++: void cv::reprojectImageTo3D(Mat disparity, Mat& _3dImage, Mat Q, bool handleMissingValues = false, int ddepth = -1)
  3216. //
  3217. //javadoc: reprojectImageTo3D(disparity, _3dImage, Q, handleMissingValues, ddepth)
  3218. public static void reprojectImageTo3D (Mat disparity, Mat _3dImage, Mat Q, bool handleMissingValues, int ddepth)
  3219. {
  3220. if (disparity != null)
  3221. disparity.ThrowIfDisposed ();
  3222. if (_3dImage != null)
  3223. _3dImage.ThrowIfDisposed ();
  3224. if (Q != null)
  3225. Q.ThrowIfDisposed ();
  3226. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3227. calib3d_Calib3d_reprojectImageTo3D_10 (disparity.nativeObj, _3dImage.nativeObj, Q.nativeObj, handleMissingValues, ddepth);
  3228. return;
  3229. #else
  3230. return;
  3231. #endif
  3232. }
  3233. //javadoc: reprojectImageTo3D(disparity, _3dImage, Q, handleMissingValues)
  3234. public static void reprojectImageTo3D (Mat disparity, Mat _3dImage, Mat Q, bool handleMissingValues)
  3235. {
  3236. if (disparity != null)
  3237. disparity.ThrowIfDisposed ();
  3238. if (_3dImage != null)
  3239. _3dImage.ThrowIfDisposed ();
  3240. if (Q != null)
  3241. Q.ThrowIfDisposed ();
  3242. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3243. calib3d_Calib3d_reprojectImageTo3D_11 (disparity.nativeObj, _3dImage.nativeObj, Q.nativeObj, handleMissingValues);
  3244. return;
  3245. #else
  3246. return;
  3247. #endif
  3248. }
  3249. //javadoc: reprojectImageTo3D(disparity, _3dImage, Q)
  3250. public static void reprojectImageTo3D (Mat disparity, Mat _3dImage, Mat Q)
  3251. {
  3252. if (disparity != null)
  3253. disparity.ThrowIfDisposed ();
  3254. if (_3dImage != null)
  3255. _3dImage.ThrowIfDisposed ();
  3256. if (Q != null)
  3257. Q.ThrowIfDisposed ();
  3258. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3259. calib3d_Calib3d_reprojectImageTo3D_12 (disparity.nativeObj, _3dImage.nativeObj, Q.nativeObj);
  3260. return;
  3261. #else
  3262. return;
  3263. #endif
  3264. }
  3265. //
  3266. // C++: void cv::stereoRectify(Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Size imageSize, Mat R, Mat T, Mat& R1, Mat& R2, Mat& P1, Mat& P2, Mat& Q, int flags = CALIB_ZERO_DISPARITY, double alpha = -1, Size newImageSize = Size(), Rect* validPixROI1 = 0, Rect* validPixROI2 = 0)
  3267. //
  3268. //javadoc: stereoRectify(cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, imageSize, R, T, R1, R2, P1, P2, Q, flags, alpha, newImageSize, validPixROI1, validPixROI2)
  3269. public static void stereoRectify (Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Size imageSize, Mat R, Mat T, Mat R1, Mat R2, Mat P1, Mat P2, Mat Q, int flags, double alpha, Size newImageSize, Rect validPixROI1, Rect validPixROI2)
  3270. {
  3271. if (cameraMatrix1 != null)
  3272. cameraMatrix1.ThrowIfDisposed ();
  3273. if (distCoeffs1 != null)
  3274. distCoeffs1.ThrowIfDisposed ();
  3275. if (cameraMatrix2 != null)
  3276. cameraMatrix2.ThrowIfDisposed ();
  3277. if (distCoeffs2 != null)
  3278. distCoeffs2.ThrowIfDisposed ();
  3279. if (R != null)
  3280. R.ThrowIfDisposed ();
  3281. if (T != null)
  3282. T.ThrowIfDisposed ();
  3283. if (R1 != null)
  3284. R1.ThrowIfDisposed ();
  3285. if (R2 != null)
  3286. R2.ThrowIfDisposed ();
  3287. if (P1 != null)
  3288. P1.ThrowIfDisposed ();
  3289. if (P2 != null)
  3290. P2.ThrowIfDisposed ();
  3291. if (Q != null)
  3292. Q.ThrowIfDisposed ();
  3293. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3294. double[] validPixROI1_out = new double[4];
  3295. double[] validPixROI2_out = new double[4];
  3296. calib3d_Calib3d_stereoRectify_10 (cameraMatrix1.nativeObj, distCoeffs1.nativeObj, cameraMatrix2.nativeObj, distCoeffs2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, T.nativeObj, R1.nativeObj, R2.nativeObj, P1.nativeObj, P2.nativeObj, Q.nativeObj, flags, alpha, newImageSize.width, newImageSize.height, validPixROI1_out, validPixROI2_out);
  3297. if (validPixROI1 != null) {
  3298. validPixROI1.x = (int)validPixROI1_out [0];
  3299. validPixROI1.y = (int)validPixROI1_out [1];
  3300. validPixROI1.width = (int)validPixROI1_out [2];
  3301. validPixROI1.height = (int)validPixROI1_out [3];
  3302. }
  3303. if (validPixROI2 != null) {
  3304. validPixROI2.x = (int)validPixROI2_out [0];
  3305. validPixROI2.y = (int)validPixROI2_out [1];
  3306. validPixROI2.width = (int)validPixROI2_out [2];
  3307. validPixROI2.height = (int)validPixROI2_out [3];
  3308. }
  3309. return;
  3310. #else
  3311. return;
  3312. #endif
  3313. }
  3314. //javadoc: stereoRectify(cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, imageSize, R, T, R1, R2, P1, P2, Q, flags, alpha, newImageSize, validPixROI1)
  3315. public static void stereoRectify (Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Size imageSize, Mat R, Mat T, Mat R1, Mat R2, Mat P1, Mat P2, Mat Q, int flags, double alpha, Size newImageSize, Rect validPixROI1)
  3316. {
  3317. if (cameraMatrix1 != null)
  3318. cameraMatrix1.ThrowIfDisposed ();
  3319. if (distCoeffs1 != null)
  3320. distCoeffs1.ThrowIfDisposed ();
  3321. if (cameraMatrix2 != null)
  3322. cameraMatrix2.ThrowIfDisposed ();
  3323. if (distCoeffs2 != null)
  3324. distCoeffs2.ThrowIfDisposed ();
  3325. if (R != null)
  3326. R.ThrowIfDisposed ();
  3327. if (T != null)
  3328. T.ThrowIfDisposed ();
  3329. if (R1 != null)
  3330. R1.ThrowIfDisposed ();
  3331. if (R2 != null)
  3332. R2.ThrowIfDisposed ();
  3333. if (P1 != null)
  3334. P1.ThrowIfDisposed ();
  3335. if (P2 != null)
  3336. P2.ThrowIfDisposed ();
  3337. if (Q != null)
  3338. Q.ThrowIfDisposed ();
  3339. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3340. double[] validPixROI1_out = new double[4];
  3341. calib3d_Calib3d_stereoRectify_11 (cameraMatrix1.nativeObj, distCoeffs1.nativeObj, cameraMatrix2.nativeObj, distCoeffs2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, T.nativeObj, R1.nativeObj, R2.nativeObj, P1.nativeObj, P2.nativeObj, Q.nativeObj, flags, alpha, newImageSize.width, newImageSize.height, validPixROI1_out);
  3342. if (validPixROI1 != null) {
  3343. validPixROI1.x = (int)validPixROI1_out [0];
  3344. validPixROI1.y = (int)validPixROI1_out [1];
  3345. validPixROI1.width = (int)validPixROI1_out [2];
  3346. validPixROI1.height = (int)validPixROI1_out [3];
  3347. }
  3348. return;
  3349. #else
  3350. return;
  3351. #endif
  3352. }
  3353. //javadoc: stereoRectify(cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, imageSize, R, T, R1, R2, P1, P2, Q, flags, alpha, newImageSize)
  3354. public static void stereoRectify (Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Size imageSize, Mat R, Mat T, Mat R1, Mat R2, Mat P1, Mat P2, Mat Q, int flags, double alpha, Size newImageSize)
  3355. {
  3356. if (cameraMatrix1 != null)
  3357. cameraMatrix1.ThrowIfDisposed ();
  3358. if (distCoeffs1 != null)
  3359. distCoeffs1.ThrowIfDisposed ();
  3360. if (cameraMatrix2 != null)
  3361. cameraMatrix2.ThrowIfDisposed ();
  3362. if (distCoeffs2 != null)
  3363. distCoeffs2.ThrowIfDisposed ();
  3364. if (R != null)
  3365. R.ThrowIfDisposed ();
  3366. if (T != null)
  3367. T.ThrowIfDisposed ();
  3368. if (R1 != null)
  3369. R1.ThrowIfDisposed ();
  3370. if (R2 != null)
  3371. R2.ThrowIfDisposed ();
  3372. if (P1 != null)
  3373. P1.ThrowIfDisposed ();
  3374. if (P2 != null)
  3375. P2.ThrowIfDisposed ();
  3376. if (Q != null)
  3377. Q.ThrowIfDisposed ();
  3378. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3379. calib3d_Calib3d_stereoRectify_12 (cameraMatrix1.nativeObj, distCoeffs1.nativeObj, cameraMatrix2.nativeObj, distCoeffs2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, T.nativeObj, R1.nativeObj, R2.nativeObj, P1.nativeObj, P2.nativeObj, Q.nativeObj, flags, alpha, newImageSize.width, newImageSize.height);
  3380. return;
  3381. #else
  3382. return;
  3383. #endif
  3384. }
  3385. //javadoc: stereoRectify(cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, imageSize, R, T, R1, R2, P1, P2, Q, flags, alpha)
  3386. public static void stereoRectify (Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Size imageSize, Mat R, Mat T, Mat R1, Mat R2, Mat P1, Mat P2, Mat Q, int flags, double alpha)
  3387. {
  3388. if (cameraMatrix1 != null)
  3389. cameraMatrix1.ThrowIfDisposed ();
  3390. if (distCoeffs1 != null)
  3391. distCoeffs1.ThrowIfDisposed ();
  3392. if (cameraMatrix2 != null)
  3393. cameraMatrix2.ThrowIfDisposed ();
  3394. if (distCoeffs2 != null)
  3395. distCoeffs2.ThrowIfDisposed ();
  3396. if (R != null)
  3397. R.ThrowIfDisposed ();
  3398. if (T != null)
  3399. T.ThrowIfDisposed ();
  3400. if (R1 != null)
  3401. R1.ThrowIfDisposed ();
  3402. if (R2 != null)
  3403. R2.ThrowIfDisposed ();
  3404. if (P1 != null)
  3405. P1.ThrowIfDisposed ();
  3406. if (P2 != null)
  3407. P2.ThrowIfDisposed ();
  3408. if (Q != null)
  3409. Q.ThrowIfDisposed ();
  3410. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3411. calib3d_Calib3d_stereoRectify_13 (cameraMatrix1.nativeObj, distCoeffs1.nativeObj, cameraMatrix2.nativeObj, distCoeffs2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, T.nativeObj, R1.nativeObj, R2.nativeObj, P1.nativeObj, P2.nativeObj, Q.nativeObj, flags, alpha);
  3412. return;
  3413. #else
  3414. return;
  3415. #endif
  3416. }
  3417. //javadoc: stereoRectify(cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, imageSize, R, T, R1, R2, P1, P2, Q, flags)
  3418. public static void stereoRectify (Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Size imageSize, Mat R, Mat T, Mat R1, Mat R2, Mat P1, Mat P2, Mat Q, int flags)
  3419. {
  3420. if (cameraMatrix1 != null)
  3421. cameraMatrix1.ThrowIfDisposed ();
  3422. if (distCoeffs1 != null)
  3423. distCoeffs1.ThrowIfDisposed ();
  3424. if (cameraMatrix2 != null)
  3425. cameraMatrix2.ThrowIfDisposed ();
  3426. if (distCoeffs2 != null)
  3427. distCoeffs2.ThrowIfDisposed ();
  3428. if (R != null)
  3429. R.ThrowIfDisposed ();
  3430. if (T != null)
  3431. T.ThrowIfDisposed ();
  3432. if (R1 != null)
  3433. R1.ThrowIfDisposed ();
  3434. if (R2 != null)
  3435. R2.ThrowIfDisposed ();
  3436. if (P1 != null)
  3437. P1.ThrowIfDisposed ();
  3438. if (P2 != null)
  3439. P2.ThrowIfDisposed ();
  3440. if (Q != null)
  3441. Q.ThrowIfDisposed ();
  3442. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3443. calib3d_Calib3d_stereoRectify_14 (cameraMatrix1.nativeObj, distCoeffs1.nativeObj, cameraMatrix2.nativeObj, distCoeffs2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, T.nativeObj, R1.nativeObj, R2.nativeObj, P1.nativeObj, P2.nativeObj, Q.nativeObj, flags);
  3444. return;
  3445. #else
  3446. return;
  3447. #endif
  3448. }
  3449. //javadoc: stereoRectify(cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, imageSize, R, T, R1, R2, P1, P2, Q)
  3450. public static void stereoRectify (Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Size imageSize, Mat R, Mat T, Mat R1, Mat R2, Mat P1, Mat P2, Mat Q)
  3451. {
  3452. if (cameraMatrix1 != null)
  3453. cameraMatrix1.ThrowIfDisposed ();
  3454. if (distCoeffs1 != null)
  3455. distCoeffs1.ThrowIfDisposed ();
  3456. if (cameraMatrix2 != null)
  3457. cameraMatrix2.ThrowIfDisposed ();
  3458. if (distCoeffs2 != null)
  3459. distCoeffs2.ThrowIfDisposed ();
  3460. if (R != null)
  3461. R.ThrowIfDisposed ();
  3462. if (T != null)
  3463. T.ThrowIfDisposed ();
  3464. if (R1 != null)
  3465. R1.ThrowIfDisposed ();
  3466. if (R2 != null)
  3467. R2.ThrowIfDisposed ();
  3468. if (P1 != null)
  3469. P1.ThrowIfDisposed ();
  3470. if (P2 != null)
  3471. P2.ThrowIfDisposed ();
  3472. if (Q != null)
  3473. Q.ThrowIfDisposed ();
  3474. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3475. calib3d_Calib3d_stereoRectify_15 (cameraMatrix1.nativeObj, distCoeffs1.nativeObj, cameraMatrix2.nativeObj, distCoeffs2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, T.nativeObj, R1.nativeObj, R2.nativeObj, P1.nativeObj, P2.nativeObj, Q.nativeObj);
  3476. return;
  3477. #else
  3478. return;
  3479. #endif
  3480. }
  3481. //
  3482. // C++: void cv::triangulatePoints(Mat projMatr1, Mat projMatr2, Mat projPoints1, Mat projPoints2, Mat& points4D)
  3483. //
  3484. //javadoc: triangulatePoints(projMatr1, projMatr2, projPoints1, projPoints2, points4D)
  3485. public static void triangulatePoints (Mat projMatr1, Mat projMatr2, Mat projPoints1, Mat projPoints2, Mat points4D)
  3486. {
  3487. if (projMatr1 != null)
  3488. projMatr1.ThrowIfDisposed ();
  3489. if (projMatr2 != null)
  3490. projMatr2.ThrowIfDisposed ();
  3491. if (projPoints1 != null)
  3492. projPoints1.ThrowIfDisposed ();
  3493. if (projPoints2 != null)
  3494. projPoints2.ThrowIfDisposed ();
  3495. if (points4D != null)
  3496. points4D.ThrowIfDisposed ();
  3497. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3498. calib3d_Calib3d_triangulatePoints_10 (projMatr1.nativeObj, projMatr2.nativeObj, projPoints1.nativeObj, projPoints2.nativeObj, points4D.nativeObj);
  3499. return;
  3500. #else
  3501. return;
  3502. #endif
  3503. }
  3504. //
  3505. // C++: void cv::undistort(Mat src, Mat& dst, Mat cameraMatrix, Mat distCoeffs, Mat newCameraMatrix = Mat())
  3506. //
  3507. //javadoc: undistort(src, dst, cameraMatrix, distCoeffs, newCameraMatrix)
  3508. public static void undistort (Mat src, Mat dst, Mat cameraMatrix, Mat distCoeffs, Mat newCameraMatrix)
  3509. {
  3510. if (src != null)
  3511. src.ThrowIfDisposed ();
  3512. if (dst != null)
  3513. dst.ThrowIfDisposed ();
  3514. if (cameraMatrix != null)
  3515. cameraMatrix.ThrowIfDisposed ();
  3516. if (distCoeffs != null)
  3517. distCoeffs.ThrowIfDisposed ();
  3518. if (newCameraMatrix != null)
  3519. newCameraMatrix.ThrowIfDisposed ();
  3520. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3521. calib3d_Calib3d_undistort_10 (src.nativeObj, dst.nativeObj, cameraMatrix.nativeObj, distCoeffs.nativeObj, newCameraMatrix.nativeObj);
  3522. return;
  3523. #else
  3524. return;
  3525. #endif
  3526. }
  3527. //javadoc: undistort(src, dst, cameraMatrix, distCoeffs)
  3528. public static void undistort (Mat src, Mat dst, Mat cameraMatrix, Mat distCoeffs)
  3529. {
  3530. if (src != null)
  3531. src.ThrowIfDisposed ();
  3532. if (dst != null)
  3533. dst.ThrowIfDisposed ();
  3534. if (cameraMatrix != null)
  3535. cameraMatrix.ThrowIfDisposed ();
  3536. if (distCoeffs != null)
  3537. distCoeffs.ThrowIfDisposed ();
  3538. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3539. calib3d_Calib3d_undistort_11 (src.nativeObj, dst.nativeObj, cameraMatrix.nativeObj, distCoeffs.nativeObj);
  3540. return;
  3541. #else
  3542. return;
  3543. #endif
  3544. }
  3545. //
  3546. // C++: void cv::undistortPoints(Mat src, Mat& dst, Mat cameraMatrix, Mat distCoeffs, Mat R, Mat P, TermCriteria criteria)
  3547. //
  3548. //javadoc: undistortPointsIter(src, dst, cameraMatrix, distCoeffs, R, P, criteria)
  3549. public static void undistortPointsIter (Mat src, Mat dst, Mat cameraMatrix, Mat distCoeffs, Mat R, Mat P, TermCriteria criteria)
  3550. {
  3551. if (src != null)
  3552. src.ThrowIfDisposed ();
  3553. if (dst != null)
  3554. dst.ThrowIfDisposed ();
  3555. if (cameraMatrix != null)
  3556. cameraMatrix.ThrowIfDisposed ();
  3557. if (distCoeffs != null)
  3558. distCoeffs.ThrowIfDisposed ();
  3559. if (R != null)
  3560. R.ThrowIfDisposed ();
  3561. if (P != null)
  3562. P.ThrowIfDisposed ();
  3563. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3564. calib3d_Calib3d_undistortPointsIter_10 (src.nativeObj, dst.nativeObj, cameraMatrix.nativeObj, distCoeffs.nativeObj, R.nativeObj, P.nativeObj, criteria.type, criteria.maxCount, criteria.epsilon);
  3565. return;
  3566. #else
  3567. return;
  3568. #endif
  3569. }
  3570. //
  3571. // C++: void cv::undistortPoints(vector_Point2f src, vector_Point2f& dst, Mat cameraMatrix, Mat distCoeffs, Mat R = Mat(), Mat P = Mat())
  3572. //
  3573. //javadoc: undistortPoints(src, dst, cameraMatrix, distCoeffs, R, P)
  3574. public static void undistortPoints (MatOfPoint2f src, MatOfPoint2f dst, Mat cameraMatrix, Mat distCoeffs, Mat R, Mat P)
  3575. {
  3576. if (src != null)
  3577. src.ThrowIfDisposed ();
  3578. if (dst != null)
  3579. dst.ThrowIfDisposed ();
  3580. if (cameraMatrix != null)
  3581. cameraMatrix.ThrowIfDisposed ();
  3582. if (distCoeffs != null)
  3583. distCoeffs.ThrowIfDisposed ();
  3584. if (R != null)
  3585. R.ThrowIfDisposed ();
  3586. if (P != null)
  3587. P.ThrowIfDisposed ();
  3588. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3589. Mat src_mat = src;
  3590. Mat dst_mat = dst;
  3591. calib3d_Calib3d_undistortPoints_10 (src_mat.nativeObj, dst_mat.nativeObj, cameraMatrix.nativeObj, distCoeffs.nativeObj, R.nativeObj, P.nativeObj);
  3592. return;
  3593. #else
  3594. return;
  3595. #endif
  3596. }
  3597. //javadoc: undistortPoints(src, dst, cameraMatrix, distCoeffs, R)
  3598. public static void undistortPoints (MatOfPoint2f src, MatOfPoint2f dst, Mat cameraMatrix, Mat distCoeffs, Mat R)
  3599. {
  3600. if (src != null)
  3601. src.ThrowIfDisposed ();
  3602. if (dst != null)
  3603. dst.ThrowIfDisposed ();
  3604. if (cameraMatrix != null)
  3605. cameraMatrix.ThrowIfDisposed ();
  3606. if (distCoeffs != null)
  3607. distCoeffs.ThrowIfDisposed ();
  3608. if (R != null)
  3609. R.ThrowIfDisposed ();
  3610. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3611. Mat src_mat = src;
  3612. Mat dst_mat = dst;
  3613. calib3d_Calib3d_undistortPoints_11 (src_mat.nativeObj, dst_mat.nativeObj, cameraMatrix.nativeObj, distCoeffs.nativeObj, R.nativeObj);
  3614. return;
  3615. #else
  3616. return;
  3617. #endif
  3618. }
  3619. //javadoc: undistortPoints(src, dst, cameraMatrix, distCoeffs)
  3620. public static void undistortPoints (MatOfPoint2f src, MatOfPoint2f dst, Mat cameraMatrix, Mat distCoeffs)
  3621. {
  3622. if (src != null)
  3623. src.ThrowIfDisposed ();
  3624. if (dst != null)
  3625. dst.ThrowIfDisposed ();
  3626. if (cameraMatrix != null)
  3627. cameraMatrix.ThrowIfDisposed ();
  3628. if (distCoeffs != null)
  3629. distCoeffs.ThrowIfDisposed ();
  3630. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3631. Mat src_mat = src;
  3632. Mat dst_mat = dst;
  3633. calib3d_Calib3d_undistortPoints_12 (src_mat.nativeObj, dst_mat.nativeObj, cameraMatrix.nativeObj, distCoeffs.nativeObj);
  3634. return;
  3635. #else
  3636. return;
  3637. #endif
  3638. }
  3639. //
  3640. // C++: void cv::validateDisparity(Mat& disparity, Mat cost, int minDisparity, int numberOfDisparities, int disp12MaxDisp = 1)
  3641. //
  3642. //javadoc: validateDisparity(disparity, cost, minDisparity, numberOfDisparities, disp12MaxDisp)
  3643. public static void validateDisparity (Mat disparity, Mat cost, int minDisparity, int numberOfDisparities, int disp12MaxDisp)
  3644. {
  3645. if (disparity != null)
  3646. disparity.ThrowIfDisposed ();
  3647. if (cost != null)
  3648. cost.ThrowIfDisposed ();
  3649. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3650. calib3d_Calib3d_validateDisparity_10 (disparity.nativeObj, cost.nativeObj, minDisparity, numberOfDisparities, disp12MaxDisp);
  3651. return;
  3652. #else
  3653. return;
  3654. #endif
  3655. }
  3656. //javadoc: validateDisparity(disparity, cost, minDisparity, numberOfDisparities)
  3657. public static void validateDisparity (Mat disparity, Mat cost, int minDisparity, int numberOfDisparities)
  3658. {
  3659. if (disparity != null)
  3660. disparity.ThrowIfDisposed ();
  3661. if (cost != null)
  3662. cost.ThrowIfDisposed ();
  3663. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3664. calib3d_Calib3d_validateDisparity_11 (disparity.nativeObj, cost.nativeObj, minDisparity, numberOfDisparities);
  3665. return;
  3666. #else
  3667. return;
  3668. #endif
  3669. }
  3670. //
  3671. // C++: void cv::fisheye::distortPoints(Mat undistorted, Mat& distorted, Mat K, Mat D, double alpha = 0)
  3672. //
  3673. //javadoc: fisheye_distortPoints(undistorted, distorted, K, D, alpha)
  3674. public static void fisheye_distortPoints (Mat undistorted, Mat distorted, Mat K, Mat D, double alpha)
  3675. {
  3676. if (undistorted != null)
  3677. undistorted.ThrowIfDisposed ();
  3678. if (distorted != null)
  3679. distorted.ThrowIfDisposed ();
  3680. if (K != null)
  3681. K.ThrowIfDisposed ();
  3682. if (D != null)
  3683. D.ThrowIfDisposed ();
  3684. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3685. calib3d_Calib3d_fisheye_1distortPoints_10 (undistorted.nativeObj, distorted.nativeObj, K.nativeObj, D.nativeObj, alpha);
  3686. return;
  3687. #else
  3688. return;
  3689. #endif
  3690. }
  3691. //javadoc: fisheye_distortPoints(undistorted, distorted, K, D)
  3692. public static void fisheye_distortPoints (Mat undistorted, Mat distorted, Mat K, Mat D)
  3693. {
  3694. if (undistorted != null)
  3695. undistorted.ThrowIfDisposed ();
  3696. if (distorted != null)
  3697. distorted.ThrowIfDisposed ();
  3698. if (K != null)
  3699. K.ThrowIfDisposed ();
  3700. if (D != null)
  3701. D.ThrowIfDisposed ();
  3702. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3703. calib3d_Calib3d_fisheye_1distortPoints_11 (undistorted.nativeObj, distorted.nativeObj, K.nativeObj, D.nativeObj);
  3704. return;
  3705. #else
  3706. return;
  3707. #endif
  3708. }
  3709. //
  3710. // C++: void cv::fisheye::estimateNewCameraMatrixForUndistortRectify(Mat K, Mat D, Size image_size, Mat R, Mat& P, double balance = 0.0, Size new_size = Size(), double fov_scale = 1.0)
  3711. //
  3712. //javadoc: fisheye_estimateNewCameraMatrixForUndistortRectify(K, D, image_size, R, P, balance, new_size, fov_scale)
  3713. public static void fisheye_estimateNewCameraMatrixForUndistortRectify (Mat K, Mat D, Size image_size, Mat R, Mat P, double balance, Size new_size, double fov_scale)
  3714. {
  3715. if (K != null)
  3716. K.ThrowIfDisposed ();
  3717. if (D != null)
  3718. D.ThrowIfDisposed ();
  3719. if (R != null)
  3720. R.ThrowIfDisposed ();
  3721. if (P != null)
  3722. P.ThrowIfDisposed ();
  3723. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3724. calib3d_Calib3d_fisheye_1estimateNewCameraMatrixForUndistortRectify_10 (K.nativeObj, D.nativeObj, image_size.width, image_size.height, R.nativeObj, P.nativeObj, balance, new_size.width, new_size.height, fov_scale);
  3725. return;
  3726. #else
  3727. return;
  3728. #endif
  3729. }
  3730. //javadoc: fisheye_estimateNewCameraMatrixForUndistortRectify(K, D, image_size, R, P, balance, new_size)
  3731. public static void fisheye_estimateNewCameraMatrixForUndistortRectify (Mat K, Mat D, Size image_size, Mat R, Mat P, double balance, Size new_size)
  3732. {
  3733. if (K != null)
  3734. K.ThrowIfDisposed ();
  3735. if (D != null)
  3736. D.ThrowIfDisposed ();
  3737. if (R != null)
  3738. R.ThrowIfDisposed ();
  3739. if (P != null)
  3740. P.ThrowIfDisposed ();
  3741. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3742. calib3d_Calib3d_fisheye_1estimateNewCameraMatrixForUndistortRectify_11 (K.nativeObj, D.nativeObj, image_size.width, image_size.height, R.nativeObj, P.nativeObj, balance, new_size.width, new_size.height);
  3743. return;
  3744. #else
  3745. return;
  3746. #endif
  3747. }
  3748. //javadoc: fisheye_estimateNewCameraMatrixForUndistortRectify(K, D, image_size, R, P, balance)
  3749. public static void fisheye_estimateNewCameraMatrixForUndistortRectify (Mat K, Mat D, Size image_size, Mat R, Mat P, double balance)
  3750. {
  3751. if (K != null)
  3752. K.ThrowIfDisposed ();
  3753. if (D != null)
  3754. D.ThrowIfDisposed ();
  3755. if (R != null)
  3756. R.ThrowIfDisposed ();
  3757. if (P != null)
  3758. P.ThrowIfDisposed ();
  3759. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3760. calib3d_Calib3d_fisheye_1estimateNewCameraMatrixForUndistortRectify_12 (K.nativeObj, D.nativeObj, image_size.width, image_size.height, R.nativeObj, P.nativeObj, balance);
  3761. return;
  3762. #else
  3763. return;
  3764. #endif
  3765. }
  3766. //javadoc: fisheye_estimateNewCameraMatrixForUndistortRectify(K, D, image_size, R, P)
  3767. public static void fisheye_estimateNewCameraMatrixForUndistortRectify (Mat K, Mat D, Size image_size, Mat R, Mat P)
  3768. {
  3769. if (K != null)
  3770. K.ThrowIfDisposed ();
  3771. if (D != null)
  3772. D.ThrowIfDisposed ();
  3773. if (R != null)
  3774. R.ThrowIfDisposed ();
  3775. if (P != null)
  3776. P.ThrowIfDisposed ();
  3777. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3778. calib3d_Calib3d_fisheye_1estimateNewCameraMatrixForUndistortRectify_13 (K.nativeObj, D.nativeObj, image_size.width, image_size.height, R.nativeObj, P.nativeObj);
  3779. return;
  3780. #else
  3781. return;
  3782. #endif
  3783. }
  3784. //
  3785. // C++: void cv::fisheye::initUndistortRectifyMap(Mat K, Mat D, Mat R, Mat P, Size size, int m1type, Mat& map1, Mat& map2)
  3786. //
  3787. //javadoc: fisheye_initUndistortRectifyMap(K, D, R, P, size, m1type, map1, map2)
  3788. public static void fisheye_initUndistortRectifyMap (Mat K, Mat D, Mat R, Mat P, Size size, int m1type, Mat map1, Mat map2)
  3789. {
  3790. if (K != null)
  3791. K.ThrowIfDisposed ();
  3792. if (D != null)
  3793. D.ThrowIfDisposed ();
  3794. if (R != null)
  3795. R.ThrowIfDisposed ();
  3796. if (P != null)
  3797. P.ThrowIfDisposed ();
  3798. if (map1 != null)
  3799. map1.ThrowIfDisposed ();
  3800. if (map2 != null)
  3801. map2.ThrowIfDisposed ();
  3802. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3803. calib3d_Calib3d_fisheye_1initUndistortRectifyMap_10 (K.nativeObj, D.nativeObj, R.nativeObj, P.nativeObj, size.width, size.height, m1type, map1.nativeObj, map2.nativeObj);
  3804. return;
  3805. #else
  3806. return;
  3807. #endif
  3808. }
  3809. //
  3810. // C++: void cv::fisheye::projectPoints(Mat objectPoints, Mat& imagePoints, Mat rvec, Mat tvec, Mat K, Mat D, double alpha = 0, Mat& jacobian = Mat())
  3811. //
  3812. //javadoc: fisheye_projectPoints(objectPoints, imagePoints, rvec, tvec, K, D, alpha, jacobian)
  3813. public static void fisheye_projectPoints (Mat objectPoints, Mat imagePoints, Mat rvec, Mat tvec, Mat K, Mat D, double alpha, Mat jacobian)
  3814. {
  3815. if (objectPoints != null)
  3816. objectPoints.ThrowIfDisposed ();
  3817. if (imagePoints != null)
  3818. imagePoints.ThrowIfDisposed ();
  3819. if (rvec != null)
  3820. rvec.ThrowIfDisposed ();
  3821. if (tvec != null)
  3822. tvec.ThrowIfDisposed ();
  3823. if (K != null)
  3824. K.ThrowIfDisposed ();
  3825. if (D != null)
  3826. D.ThrowIfDisposed ();
  3827. if (jacobian != null)
  3828. jacobian.ThrowIfDisposed ();
  3829. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3830. calib3d_Calib3d_fisheye_1projectPoints_10 (objectPoints.nativeObj, imagePoints.nativeObj, rvec.nativeObj, tvec.nativeObj, K.nativeObj, D.nativeObj, alpha, jacobian.nativeObj);
  3831. return;
  3832. #else
  3833. return;
  3834. #endif
  3835. }
  3836. //javadoc: fisheye_projectPoints(objectPoints, imagePoints, rvec, tvec, K, D, alpha)
  3837. public static void fisheye_projectPoints (Mat objectPoints, Mat imagePoints, Mat rvec, Mat tvec, Mat K, Mat D, double alpha)
  3838. {
  3839. if (objectPoints != null)
  3840. objectPoints.ThrowIfDisposed ();
  3841. if (imagePoints != null)
  3842. imagePoints.ThrowIfDisposed ();
  3843. if (rvec != null)
  3844. rvec.ThrowIfDisposed ();
  3845. if (tvec != null)
  3846. tvec.ThrowIfDisposed ();
  3847. if (K != null)
  3848. K.ThrowIfDisposed ();
  3849. if (D != null)
  3850. D.ThrowIfDisposed ();
  3851. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3852. calib3d_Calib3d_fisheye_1projectPoints_11 (objectPoints.nativeObj, imagePoints.nativeObj, rvec.nativeObj, tvec.nativeObj, K.nativeObj, D.nativeObj, alpha);
  3853. return;
  3854. #else
  3855. return;
  3856. #endif
  3857. }
  3858. //javadoc: fisheye_projectPoints(objectPoints, imagePoints, rvec, tvec, K, D)
  3859. public static void fisheye_projectPoints (Mat objectPoints, Mat imagePoints, Mat rvec, Mat tvec, Mat K, Mat D)
  3860. {
  3861. if (objectPoints != null)
  3862. objectPoints.ThrowIfDisposed ();
  3863. if (imagePoints != null)
  3864. imagePoints.ThrowIfDisposed ();
  3865. if (rvec != null)
  3866. rvec.ThrowIfDisposed ();
  3867. if (tvec != null)
  3868. tvec.ThrowIfDisposed ();
  3869. if (K != null)
  3870. K.ThrowIfDisposed ();
  3871. if (D != null)
  3872. D.ThrowIfDisposed ();
  3873. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3874. calib3d_Calib3d_fisheye_1projectPoints_12 (objectPoints.nativeObj, imagePoints.nativeObj, rvec.nativeObj, tvec.nativeObj, K.nativeObj, D.nativeObj);
  3875. return;
  3876. #else
  3877. return;
  3878. #endif
  3879. }
  3880. //
  3881. // C++: void cv::fisheye::stereoRectify(Mat K1, Mat D1, Mat K2, Mat D2, Size imageSize, Mat R, Mat tvec, Mat& R1, Mat& R2, Mat& P1, Mat& P2, Mat& Q, int flags, Size newImageSize = Size(), double balance = 0.0, double fov_scale = 1.0)
  3882. //
  3883. //javadoc: fisheye_stereoRectify(K1, D1, K2, D2, imageSize, R, tvec, R1, R2, P1, P2, Q, flags, newImageSize, balance, fov_scale)
  3884. public static void fisheye_stereoRectify (Mat K1, Mat D1, Mat K2, Mat D2, Size imageSize, Mat R, Mat tvec, Mat R1, Mat R2, Mat P1, Mat P2, Mat Q, int flags, Size newImageSize, double balance, double fov_scale)
  3885. {
  3886. if (K1 != null)
  3887. K1.ThrowIfDisposed ();
  3888. if (D1 != null)
  3889. D1.ThrowIfDisposed ();
  3890. if (K2 != null)
  3891. K2.ThrowIfDisposed ();
  3892. if (D2 != null)
  3893. D2.ThrowIfDisposed ();
  3894. if (R != null)
  3895. R.ThrowIfDisposed ();
  3896. if (tvec != null)
  3897. tvec.ThrowIfDisposed ();
  3898. if (R1 != null)
  3899. R1.ThrowIfDisposed ();
  3900. if (R2 != null)
  3901. R2.ThrowIfDisposed ();
  3902. if (P1 != null)
  3903. P1.ThrowIfDisposed ();
  3904. if (P2 != null)
  3905. P2.ThrowIfDisposed ();
  3906. if (Q != null)
  3907. Q.ThrowIfDisposed ();
  3908. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3909. calib3d_Calib3d_fisheye_1stereoRectify_10 (K1.nativeObj, D1.nativeObj, K2.nativeObj, D2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, tvec.nativeObj, R1.nativeObj, R2.nativeObj, P1.nativeObj, P2.nativeObj, Q.nativeObj, flags, newImageSize.width, newImageSize.height, balance, fov_scale);
  3910. return;
  3911. #else
  3912. return;
  3913. #endif
  3914. }
  3915. //javadoc: fisheye_stereoRectify(K1, D1, K2, D2, imageSize, R, tvec, R1, R2, P1, P2, Q, flags, newImageSize, balance)
  3916. public static void fisheye_stereoRectify (Mat K1, Mat D1, Mat K2, Mat D2, Size imageSize, Mat R, Mat tvec, Mat R1, Mat R2, Mat P1, Mat P2, Mat Q, int flags, Size newImageSize, double balance)
  3917. {
  3918. if (K1 != null)
  3919. K1.ThrowIfDisposed ();
  3920. if (D1 != null)
  3921. D1.ThrowIfDisposed ();
  3922. if (K2 != null)
  3923. K2.ThrowIfDisposed ();
  3924. if (D2 != null)
  3925. D2.ThrowIfDisposed ();
  3926. if (R != null)
  3927. R.ThrowIfDisposed ();
  3928. if (tvec != null)
  3929. tvec.ThrowIfDisposed ();
  3930. if (R1 != null)
  3931. R1.ThrowIfDisposed ();
  3932. if (R2 != null)
  3933. R2.ThrowIfDisposed ();
  3934. if (P1 != null)
  3935. P1.ThrowIfDisposed ();
  3936. if (P2 != null)
  3937. P2.ThrowIfDisposed ();
  3938. if (Q != null)
  3939. Q.ThrowIfDisposed ();
  3940. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3941. calib3d_Calib3d_fisheye_1stereoRectify_11 (K1.nativeObj, D1.nativeObj, K2.nativeObj, D2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, tvec.nativeObj, R1.nativeObj, R2.nativeObj, P1.nativeObj, P2.nativeObj, Q.nativeObj, flags, newImageSize.width, newImageSize.height, balance);
  3942. return;
  3943. #else
  3944. return;
  3945. #endif
  3946. }
  3947. //javadoc: fisheye_stereoRectify(K1, D1, K2, D2, imageSize, R, tvec, R1, R2, P1, P2, Q, flags, newImageSize)
  3948. public static void fisheye_stereoRectify (Mat K1, Mat D1, Mat K2, Mat D2, Size imageSize, Mat R, Mat tvec, Mat R1, Mat R2, Mat P1, Mat P2, Mat Q, int flags, Size newImageSize)
  3949. {
  3950. if (K1 != null)
  3951. K1.ThrowIfDisposed ();
  3952. if (D1 != null)
  3953. D1.ThrowIfDisposed ();
  3954. if (K2 != null)
  3955. K2.ThrowIfDisposed ();
  3956. if (D2 != null)
  3957. D2.ThrowIfDisposed ();
  3958. if (R != null)
  3959. R.ThrowIfDisposed ();
  3960. if (tvec != null)
  3961. tvec.ThrowIfDisposed ();
  3962. if (R1 != null)
  3963. R1.ThrowIfDisposed ();
  3964. if (R2 != null)
  3965. R2.ThrowIfDisposed ();
  3966. if (P1 != null)
  3967. P1.ThrowIfDisposed ();
  3968. if (P2 != null)
  3969. P2.ThrowIfDisposed ();
  3970. if (Q != null)
  3971. Q.ThrowIfDisposed ();
  3972. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  3973. calib3d_Calib3d_fisheye_1stereoRectify_12 (K1.nativeObj, D1.nativeObj, K2.nativeObj, D2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, tvec.nativeObj, R1.nativeObj, R2.nativeObj, P1.nativeObj, P2.nativeObj, Q.nativeObj, flags, newImageSize.width, newImageSize.height);
  3974. return;
  3975. #else
  3976. return;
  3977. #endif
  3978. }
  3979. //javadoc: fisheye_stereoRectify(K1, D1, K2, D2, imageSize, R, tvec, R1, R2, P1, P2, Q, flags)
  3980. public static void fisheye_stereoRectify (Mat K1, Mat D1, Mat K2, Mat D2, Size imageSize, Mat R, Mat tvec, Mat R1, Mat R2, Mat P1, Mat P2, Mat Q, int flags)
  3981. {
  3982. if (K1 != null)
  3983. K1.ThrowIfDisposed ();
  3984. if (D1 != null)
  3985. D1.ThrowIfDisposed ();
  3986. if (K2 != null)
  3987. K2.ThrowIfDisposed ();
  3988. if (D2 != null)
  3989. D2.ThrowIfDisposed ();
  3990. if (R != null)
  3991. R.ThrowIfDisposed ();
  3992. if (tvec != null)
  3993. tvec.ThrowIfDisposed ();
  3994. if (R1 != null)
  3995. R1.ThrowIfDisposed ();
  3996. if (R2 != null)
  3997. R2.ThrowIfDisposed ();
  3998. if (P1 != null)
  3999. P1.ThrowIfDisposed ();
  4000. if (P2 != null)
  4001. P2.ThrowIfDisposed ();
  4002. if (Q != null)
  4003. Q.ThrowIfDisposed ();
  4004. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  4005. calib3d_Calib3d_fisheye_1stereoRectify_13 (K1.nativeObj, D1.nativeObj, K2.nativeObj, D2.nativeObj, imageSize.width, imageSize.height, R.nativeObj, tvec.nativeObj, R1.nativeObj, R2.nativeObj, P1.nativeObj, P2.nativeObj, Q.nativeObj, flags);
  4006. return;
  4007. #else
  4008. return;
  4009. #endif
  4010. }
  4011. //
  4012. // C++: void cv::fisheye::undistortImage(Mat distorted, Mat& undistorted, Mat K, Mat D, Mat Knew = cv::Mat(), Size new_size = Size())
  4013. //
  4014. //javadoc: fisheye_undistortImage(distorted, undistorted, K, D, Knew, new_size)
  4015. public static void fisheye_undistortImage (Mat distorted, Mat undistorted, Mat K, Mat D, Mat Knew, Size new_size)
  4016. {
  4017. if (distorted != null)
  4018. distorted.ThrowIfDisposed ();
  4019. if (undistorted != null)
  4020. undistorted.ThrowIfDisposed ();
  4021. if (K != null)
  4022. K.ThrowIfDisposed ();
  4023. if (D != null)
  4024. D.ThrowIfDisposed ();
  4025. if (Knew != null)
  4026. Knew.ThrowIfDisposed ();
  4027. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  4028. calib3d_Calib3d_fisheye_1undistortImage_10 (distorted.nativeObj, undistorted.nativeObj, K.nativeObj, D.nativeObj, Knew.nativeObj, new_size.width, new_size.height);
  4029. return;
  4030. #else
  4031. return;
  4032. #endif
  4033. }
  4034. //javadoc: fisheye_undistortImage(distorted, undistorted, K, D, Knew)
  4035. public static void fisheye_undistortImage (Mat distorted, Mat undistorted, Mat K, Mat D, Mat Knew)
  4036. {
  4037. if (distorted != null)
  4038. distorted.ThrowIfDisposed ();
  4039. if (undistorted != null)
  4040. undistorted.ThrowIfDisposed ();
  4041. if (K != null)
  4042. K.ThrowIfDisposed ();
  4043. if (D != null)
  4044. D.ThrowIfDisposed ();
  4045. if (Knew != null)
  4046. Knew.ThrowIfDisposed ();
  4047. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  4048. calib3d_Calib3d_fisheye_1undistortImage_11 (distorted.nativeObj, undistorted.nativeObj, K.nativeObj, D.nativeObj, Knew.nativeObj);
  4049. return;
  4050. #else
  4051. return;
  4052. #endif
  4053. }
  4054. //javadoc: fisheye_undistortImage(distorted, undistorted, K, D)
  4055. public static void fisheye_undistortImage (Mat distorted, Mat undistorted, Mat K, Mat D)
  4056. {
  4057. if (distorted != null)
  4058. distorted.ThrowIfDisposed ();
  4059. if (undistorted != null)
  4060. undistorted.ThrowIfDisposed ();
  4061. if (K != null)
  4062. K.ThrowIfDisposed ();
  4063. if (D != null)
  4064. D.ThrowIfDisposed ();
  4065. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  4066. calib3d_Calib3d_fisheye_1undistortImage_12 (distorted.nativeObj, undistorted.nativeObj, K.nativeObj, D.nativeObj);
  4067. return;
  4068. #else
  4069. return;
  4070. #endif
  4071. }
  4072. //
  4073. // C++: void cv::fisheye::undistortPoints(Mat distorted, Mat& undistorted, Mat K, Mat D, Mat R = Mat(), Mat P = Mat())
  4074. //
  4075. //javadoc: fisheye_undistortPoints(distorted, undistorted, K, D, R, P)
  4076. public static void fisheye_undistortPoints (Mat distorted, Mat undistorted, Mat K, Mat D, Mat R, Mat P)
  4077. {
  4078. if (distorted != null)
  4079. distorted.ThrowIfDisposed ();
  4080. if (undistorted != null)
  4081. undistorted.ThrowIfDisposed ();
  4082. if (K != null)
  4083. K.ThrowIfDisposed ();
  4084. if (D != null)
  4085. D.ThrowIfDisposed ();
  4086. if (R != null)
  4087. R.ThrowIfDisposed ();
  4088. if (P != null)
  4089. P.ThrowIfDisposed ();
  4090. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  4091. calib3d_Calib3d_fisheye_1undistortPoints_10 (distorted.nativeObj, undistorted.nativeObj, K.nativeObj, D.nativeObj, R.nativeObj, P.nativeObj);
  4092. return;
  4093. #else
  4094. return;
  4095. #endif
  4096. }
  4097. //javadoc: fisheye_undistortPoints(distorted, undistorted, K, D, R)
  4098. public static void fisheye_undistortPoints (Mat distorted, Mat undistorted, Mat K, Mat D, Mat R)
  4099. {
  4100. if (distorted != null)
  4101. distorted.ThrowIfDisposed ();
  4102. if (undistorted != null)
  4103. undistorted.ThrowIfDisposed ();
  4104. if (K != null)
  4105. K.ThrowIfDisposed ();
  4106. if (D != null)
  4107. D.ThrowIfDisposed ();
  4108. if (R != null)
  4109. R.ThrowIfDisposed ();
  4110. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  4111. calib3d_Calib3d_fisheye_1undistortPoints_11 (distorted.nativeObj, undistorted.nativeObj, K.nativeObj, D.nativeObj, R.nativeObj);
  4112. return;
  4113. #else
  4114. return;
  4115. #endif
  4116. }
  4117. //javadoc: fisheye_undistortPoints(distorted, undistorted, K, D)
  4118. public static void fisheye_undistortPoints (Mat distorted, Mat undistorted, Mat K, Mat D)
  4119. {
  4120. if (distorted != null)
  4121. distorted.ThrowIfDisposed ();
  4122. if (undistorted != null)
  4123. undistorted.ThrowIfDisposed ();
  4124. if (K != null)
  4125. K.ThrowIfDisposed ();
  4126. if (D != null)
  4127. D.ThrowIfDisposed ();
  4128. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  4129. calib3d_Calib3d_fisheye_1undistortPoints_12 (distorted.nativeObj, undistorted.nativeObj, K.nativeObj, D.nativeObj);
  4130. return;
  4131. #else
  4132. return;
  4133. #endif
  4134. }
  4135. #if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
  4136. const string LIBNAME = "__Internal";
  4137. #else
  4138. const string LIBNAME = "opencvforunity";
  4139. #endif
  4140. // C++: Mat cv::estimateAffine2D(Mat from, Mat to, Mat& inliers = Mat(), int method = RANSAC, double ransacReprojThreshold = 3, size_t maxIters = 2000, double confidence = 0.99, size_t refineIters = 10)
  4141. [DllImport (LIBNAME)]
  4142. private static extern IntPtr calib3d_Calib3d_estimateAffine2D_10 (IntPtr from_nativeObj, IntPtr to_nativeObj, IntPtr inliers_nativeObj, int method, double ransacReprojThreshold, long maxIters, double confidence, long refineIters);
  4143. [DllImport (LIBNAME)]
  4144. private static extern IntPtr calib3d_Calib3d_estimateAffine2D_11 (IntPtr from_nativeObj, IntPtr to_nativeObj, IntPtr inliers_nativeObj, int method, double ransacReprojThreshold, long maxIters, double confidence);
  4145. [DllImport (LIBNAME)]
  4146. private static extern IntPtr calib3d_Calib3d_estimateAffine2D_12 (IntPtr from_nativeObj, IntPtr to_nativeObj, IntPtr inliers_nativeObj, int method, double ransacReprojThreshold, long maxIters);
  4147. [DllImport (LIBNAME)]
  4148. private static extern IntPtr calib3d_Calib3d_estimateAffine2D_13 (IntPtr from_nativeObj, IntPtr to_nativeObj, IntPtr inliers_nativeObj, int method, double ransacReprojThreshold);
  4149. [DllImport (LIBNAME)]
  4150. private static extern IntPtr calib3d_Calib3d_estimateAffine2D_14 (IntPtr from_nativeObj, IntPtr to_nativeObj, IntPtr inliers_nativeObj, int method);
  4151. [DllImport (LIBNAME)]
  4152. private static extern IntPtr calib3d_Calib3d_estimateAffine2D_15 (IntPtr from_nativeObj, IntPtr to_nativeObj, IntPtr inliers_nativeObj);
  4153. [DllImport (LIBNAME)]
  4154. private static extern IntPtr calib3d_Calib3d_estimateAffine2D_16 (IntPtr from_nativeObj, IntPtr to_nativeObj);
  4155. // C++: Mat cv::estimateAffinePartial2D(Mat from, Mat to, Mat& inliers = Mat(), int method = RANSAC, double ransacReprojThreshold = 3, size_t maxIters = 2000, double confidence = 0.99, size_t refineIters = 10)
  4156. [DllImport (LIBNAME)]
  4157. private static extern IntPtr calib3d_Calib3d_estimateAffinePartial2D_10 (IntPtr from_nativeObj, IntPtr to_nativeObj, IntPtr inliers_nativeObj, int method, double ransacReprojThreshold, long maxIters, double confidence, long refineIters);
  4158. [DllImport (LIBNAME)]
  4159. private static extern IntPtr calib3d_Calib3d_estimateAffinePartial2D_11 (IntPtr from_nativeObj, IntPtr to_nativeObj, IntPtr inliers_nativeObj, int method, double ransacReprojThreshold, long maxIters, double confidence);
  4160. [DllImport (LIBNAME)]
  4161. private static extern IntPtr calib3d_Calib3d_estimateAffinePartial2D_12 (IntPtr from_nativeObj, IntPtr to_nativeObj, IntPtr inliers_nativeObj, int method, double ransacReprojThreshold, long maxIters);
  4162. [DllImport (LIBNAME)]
  4163. private static extern IntPtr calib3d_Calib3d_estimateAffinePartial2D_13 (IntPtr from_nativeObj, IntPtr to_nativeObj, IntPtr inliers_nativeObj, int method, double ransacReprojThreshold);
  4164. [DllImport (LIBNAME)]
  4165. private static extern IntPtr calib3d_Calib3d_estimateAffinePartial2D_14 (IntPtr from_nativeObj, IntPtr to_nativeObj, IntPtr inliers_nativeObj, int method);
  4166. [DllImport (LIBNAME)]
  4167. private static extern IntPtr calib3d_Calib3d_estimateAffinePartial2D_15 (IntPtr from_nativeObj, IntPtr to_nativeObj, IntPtr inliers_nativeObj);
  4168. [DllImport (LIBNAME)]
  4169. private static extern IntPtr calib3d_Calib3d_estimateAffinePartial2D_16 (IntPtr from_nativeObj, IntPtr to_nativeObj);
  4170. // C++: Mat cv::findEssentialMat(Mat points1, Mat points2, Mat cameraMatrix, int method = RANSAC, double prob = 0.999, double threshold = 1.0, Mat& mask = Mat())
  4171. [DllImport (LIBNAME)]
  4172. private static extern IntPtr calib3d_Calib3d_findEssentialMat_10 (IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr cameraMatrix_nativeObj, int method, double prob, double threshold, IntPtr mask_nativeObj);
  4173. [DllImport (LIBNAME)]
  4174. private static extern IntPtr calib3d_Calib3d_findEssentialMat_11 (IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr cameraMatrix_nativeObj, int method, double prob, double threshold);
  4175. [DllImport (LIBNAME)]
  4176. private static extern IntPtr calib3d_Calib3d_findEssentialMat_12 (IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr cameraMatrix_nativeObj, int method, double prob);
  4177. [DllImport (LIBNAME)]
  4178. private static extern IntPtr calib3d_Calib3d_findEssentialMat_13 (IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr cameraMatrix_nativeObj, int method);
  4179. [DllImport (LIBNAME)]
  4180. private static extern IntPtr calib3d_Calib3d_findEssentialMat_14 (IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr cameraMatrix_nativeObj);
  4181. // C++: Mat cv::findEssentialMat(Mat points1, Mat points2, double focal = 1.0, Point2d pp = Point2d(0, 0), int method = RANSAC, double prob = 0.999, double threshold = 1.0, Mat& mask = Mat())
  4182. [DllImport (LIBNAME)]
  4183. private static extern IntPtr calib3d_Calib3d_findEssentialMat_15 (IntPtr points1_nativeObj, IntPtr points2_nativeObj, double focal, double pp_x, double pp_y, int method, double prob, double threshold, IntPtr mask_nativeObj);
  4184. [DllImport (LIBNAME)]
  4185. private static extern IntPtr calib3d_Calib3d_findEssentialMat_16 (IntPtr points1_nativeObj, IntPtr points2_nativeObj, double focal, double pp_x, double pp_y, int method, double prob, double threshold);
  4186. [DllImport (LIBNAME)]
  4187. private static extern IntPtr calib3d_Calib3d_findEssentialMat_17 (IntPtr points1_nativeObj, IntPtr points2_nativeObj, double focal, double pp_x, double pp_y, int method, double prob);
  4188. [DllImport (LIBNAME)]
  4189. private static extern IntPtr calib3d_Calib3d_findEssentialMat_18 (IntPtr points1_nativeObj, IntPtr points2_nativeObj, double focal, double pp_x, double pp_y, int method);
  4190. [DllImport (LIBNAME)]
  4191. private static extern IntPtr calib3d_Calib3d_findEssentialMat_19 (IntPtr points1_nativeObj, IntPtr points2_nativeObj, double focal, double pp_x, double pp_y);
  4192. [DllImport (LIBNAME)]
  4193. private static extern IntPtr calib3d_Calib3d_findEssentialMat_110 (IntPtr points1_nativeObj, IntPtr points2_nativeObj, double focal);
  4194. [DllImport (LIBNAME)]
  4195. private static extern IntPtr calib3d_Calib3d_findEssentialMat_111 (IntPtr points1_nativeObj, IntPtr points2_nativeObj);
  4196. // C++: Mat cv::findFundamentalMat(vector_Point2f points1, vector_Point2f points2, int method = FM_RANSAC, double ransacReprojThreshold = 3., double confidence = 0.99, Mat& mask = Mat())
  4197. [DllImport (LIBNAME)]
  4198. private static extern IntPtr calib3d_Calib3d_findFundamentalMat_10 (IntPtr points1_mat_nativeObj, IntPtr points2_mat_nativeObj, int method, double ransacReprojThreshold, double confidence, IntPtr mask_nativeObj);
  4199. [DllImport (LIBNAME)]
  4200. private static extern IntPtr calib3d_Calib3d_findFundamentalMat_11 (IntPtr points1_mat_nativeObj, IntPtr points2_mat_nativeObj, int method, double ransacReprojThreshold, double confidence);
  4201. [DllImport (LIBNAME)]
  4202. private static extern IntPtr calib3d_Calib3d_findFundamentalMat_12 (IntPtr points1_mat_nativeObj, IntPtr points2_mat_nativeObj, int method, double ransacReprojThreshold);
  4203. [DllImport (LIBNAME)]
  4204. private static extern IntPtr calib3d_Calib3d_findFundamentalMat_13 (IntPtr points1_mat_nativeObj, IntPtr points2_mat_nativeObj, int method);
  4205. [DllImport (LIBNAME)]
  4206. private static extern IntPtr calib3d_Calib3d_findFundamentalMat_14 (IntPtr points1_mat_nativeObj, IntPtr points2_mat_nativeObj);
  4207. // C++: Mat cv::findHomography(vector_Point2f srcPoints, vector_Point2f dstPoints, int method = 0, double ransacReprojThreshold = 3, Mat& mask = Mat(), int maxIters = 2000, double confidence = 0.995)
  4208. [DllImport (LIBNAME)]
  4209. private static extern IntPtr calib3d_Calib3d_findHomography_10 (IntPtr srcPoints_mat_nativeObj, IntPtr dstPoints_mat_nativeObj, int method, double ransacReprojThreshold, IntPtr mask_nativeObj, int maxIters, double confidence);
  4210. [DllImport (LIBNAME)]
  4211. private static extern IntPtr calib3d_Calib3d_findHomography_11 (IntPtr srcPoints_mat_nativeObj, IntPtr dstPoints_mat_nativeObj, int method, double ransacReprojThreshold, IntPtr mask_nativeObj, int maxIters);
  4212. [DllImport (LIBNAME)]
  4213. private static extern IntPtr calib3d_Calib3d_findHomography_12 (IntPtr srcPoints_mat_nativeObj, IntPtr dstPoints_mat_nativeObj, int method, double ransacReprojThreshold, IntPtr mask_nativeObj);
  4214. [DllImport (LIBNAME)]
  4215. private static extern IntPtr calib3d_Calib3d_findHomography_13 (IntPtr srcPoints_mat_nativeObj, IntPtr dstPoints_mat_nativeObj, int method, double ransacReprojThreshold);
  4216. [DllImport (LIBNAME)]
  4217. private static extern IntPtr calib3d_Calib3d_findHomography_14 (IntPtr srcPoints_mat_nativeObj, IntPtr dstPoints_mat_nativeObj, int method);
  4218. [DllImport (LIBNAME)]
  4219. private static extern IntPtr calib3d_Calib3d_findHomography_15 (IntPtr srcPoints_mat_nativeObj, IntPtr dstPoints_mat_nativeObj);
  4220. // C++: Mat cv::getDefaultNewCameraMatrix(Mat cameraMatrix, Size imgsize = Size(), bool centerPrincipalPoint = false)
  4221. [DllImport (LIBNAME)]
  4222. private static extern IntPtr calib3d_Calib3d_getDefaultNewCameraMatrix_10 (IntPtr cameraMatrix_nativeObj, double imgsize_width, double imgsize_height, bool centerPrincipalPoint);
  4223. [DllImport (LIBNAME)]
  4224. private static extern IntPtr calib3d_Calib3d_getDefaultNewCameraMatrix_11 (IntPtr cameraMatrix_nativeObj, double imgsize_width, double imgsize_height);
  4225. [DllImport (LIBNAME)]
  4226. private static extern IntPtr calib3d_Calib3d_getDefaultNewCameraMatrix_12 (IntPtr cameraMatrix_nativeObj);
  4227. // C++: Mat cv::getOptimalNewCameraMatrix(Mat cameraMatrix, Mat distCoeffs, Size imageSize, double alpha, Size newImgSize = Size(), Rect* validPixROI = 0, bool centerPrincipalPoint = false)
  4228. [DllImport (LIBNAME)]
  4229. private static extern IntPtr calib3d_Calib3d_getOptimalNewCameraMatrix_10 (IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, double imageSize_width, double imageSize_height, double alpha, double newImgSize_width, double newImgSize_height, double[] validPixROI_out, bool centerPrincipalPoint);
  4230. [DllImport (LIBNAME)]
  4231. private static extern IntPtr calib3d_Calib3d_getOptimalNewCameraMatrix_11 (IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, double imageSize_width, double imageSize_height, double alpha, double newImgSize_width, double newImgSize_height, double[] validPixROI_out);
  4232. [DllImport (LIBNAME)]
  4233. private static extern IntPtr calib3d_Calib3d_getOptimalNewCameraMatrix_12 (IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, double imageSize_width, double imageSize_height, double alpha, double newImgSize_width, double newImgSize_height);
  4234. [DllImport (LIBNAME)]
  4235. private static extern IntPtr calib3d_Calib3d_getOptimalNewCameraMatrix_13 (IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, double imageSize_width, double imageSize_height, double alpha);
  4236. // C++: Mat cv::initCameraMatrix2D(vector_vector_Point3f objectPoints, vector_vector_Point2f imagePoints, Size imageSize, double aspectRatio = 1.0)
  4237. [DllImport (LIBNAME)]
  4238. private static extern IntPtr calib3d_Calib3d_initCameraMatrix2D_10 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double imageSize_width, double imageSize_height, double aspectRatio);
  4239. [DllImport (LIBNAME)]
  4240. private static extern IntPtr calib3d_Calib3d_initCameraMatrix2D_11 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double imageSize_width, double imageSize_height);
  4241. // C++: Rect cv::getValidDisparityROI(Rect roi1, Rect roi2, int minDisparity, int numberOfDisparities, int SADWindowSize)
  4242. [DllImport (LIBNAME)]
  4243. private static extern void calib3d_Calib3d_getValidDisparityROI_10 (int roi1_x, int roi1_y, int roi1_width, int roi1_height, int roi2_x, int roi2_y, int roi2_width, int roi2_height, int minDisparity, int numberOfDisparities, int SADWindowSize, double[] retVal);
  4244. // C++: Vec3d cv::RQDecomp3x3(Mat src, Mat& mtxR, Mat& mtxQ, Mat& Qx = Mat(), Mat& Qy = Mat(), Mat& Qz = Mat())
  4245. [DllImport (LIBNAME)]
  4246. private static extern void calib3d_Calib3d_RQDecomp3x3_10 (IntPtr src_nativeObj, IntPtr mtxR_nativeObj, IntPtr mtxQ_nativeObj, IntPtr Qx_nativeObj, IntPtr Qy_nativeObj, IntPtr Qz_nativeObj, double[] retVal);
  4247. [DllImport (LIBNAME)]
  4248. private static extern void calib3d_Calib3d_RQDecomp3x3_11 (IntPtr src_nativeObj, IntPtr mtxR_nativeObj, IntPtr mtxQ_nativeObj, IntPtr Qx_nativeObj, IntPtr Qy_nativeObj, double[] retVal);
  4249. [DllImport (LIBNAME)]
  4250. private static extern void calib3d_Calib3d_RQDecomp3x3_12 (IntPtr src_nativeObj, IntPtr mtxR_nativeObj, IntPtr mtxQ_nativeObj, IntPtr Qx_nativeObj, double[] retVal);
  4251. [DllImport (LIBNAME)]
  4252. private static extern void calib3d_Calib3d_RQDecomp3x3_13 (IntPtr src_nativeObj, IntPtr mtxR_nativeObj, IntPtr mtxQ_nativeObj, double[] retVal);
  4253. // C++: bool cv::checkChessboard(Mat img, Size size)
  4254. [DllImport (LIBNAME)]
  4255. private static extern bool calib3d_Calib3d_checkChessboard_10 (IntPtr img_nativeObj, double size_width, double size_height);
  4256. // C++: bool cv::findChessboardCorners(Mat image, Size patternSize, vector_Point2f& corners, int flags = CALIB_CB_ADAPTIVE_THRESH + CALIB_CB_NORMALIZE_IMAGE)
  4257. [DllImport (LIBNAME)]
  4258. private static extern bool calib3d_Calib3d_findChessboardCorners_10 (IntPtr image_nativeObj, double patternSize_width, double patternSize_height, IntPtr corners_mat_nativeObj, int flags);
  4259. [DllImport (LIBNAME)]
  4260. private static extern bool calib3d_Calib3d_findChessboardCorners_11 (IntPtr image_nativeObj, double patternSize_width, double patternSize_height, IntPtr corners_mat_nativeObj);
  4261. // C++: bool cv::findChessboardCornersSB(Mat image, Size patternSize, Mat& corners, int flags = 0)
  4262. [DllImport (LIBNAME)]
  4263. private static extern bool calib3d_Calib3d_findChessboardCornersSB_10 (IntPtr image_nativeObj, double patternSize_width, double patternSize_height, IntPtr corners_nativeObj, int flags);
  4264. [DllImport (LIBNAME)]
  4265. private static extern bool calib3d_Calib3d_findChessboardCornersSB_11 (IntPtr image_nativeObj, double patternSize_width, double patternSize_height, IntPtr corners_nativeObj);
  4266. // C++: bool cv::findCirclesGrid(Mat image, Size patternSize, Mat& centers, int flags = CALIB_CB_SYMMETRIC_GRID, Ptr_FeatureDetector blobDetector = SimpleBlobDetector::create())
  4267. [DllImport (LIBNAME)]
  4268. private static extern bool calib3d_Calib3d_findCirclesGrid_10 (IntPtr image_nativeObj, double patternSize_width, double patternSize_height, IntPtr centers_nativeObj, int flags);
  4269. [DllImport (LIBNAME)]
  4270. private static extern bool calib3d_Calib3d_findCirclesGrid_12 (IntPtr image_nativeObj, double patternSize_width, double patternSize_height, IntPtr centers_nativeObj);
  4271. // C++: bool cv::solvePnP(vector_Point3f objectPoints, vector_Point2f imagePoints, Mat cameraMatrix, vector_double distCoeffs, Mat& rvec, Mat& tvec, bool useExtrinsicGuess = false, int flags = SOLVEPNP_ITERATIVE)
  4272. [DllImport (LIBNAME)]
  4273. private static extern bool calib3d_Calib3d_solvePnP_10 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_mat_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, bool useExtrinsicGuess, int flags);
  4274. [DllImport (LIBNAME)]
  4275. private static extern bool calib3d_Calib3d_solvePnP_11 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_mat_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, bool useExtrinsicGuess);
  4276. [DllImport (LIBNAME)]
  4277. private static extern bool calib3d_Calib3d_solvePnP_12 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_mat_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj);
  4278. // C++: bool cv::solvePnPRansac(vector_Point3f objectPoints, vector_Point2f imagePoints, Mat cameraMatrix, vector_double distCoeffs, Mat& rvec, Mat& tvec, bool useExtrinsicGuess = false, int iterationsCount = 100, float reprojectionError = 8.0, double confidence = 0.99, Mat& inliers = Mat(), int flags = SOLVEPNP_ITERATIVE)
  4279. [DllImport (LIBNAME)]
  4280. private static extern bool calib3d_Calib3d_solvePnPRansac_10 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_mat_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, bool useExtrinsicGuess, int iterationsCount, float reprojectionError, double confidence, IntPtr inliers_nativeObj, int flags);
  4281. [DllImport (LIBNAME)]
  4282. private static extern bool calib3d_Calib3d_solvePnPRansac_11 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_mat_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, bool useExtrinsicGuess, int iterationsCount, float reprojectionError, double confidence, IntPtr inliers_nativeObj);
  4283. [DllImport (LIBNAME)]
  4284. private static extern bool calib3d_Calib3d_solvePnPRansac_12 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_mat_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, bool useExtrinsicGuess, int iterationsCount, float reprojectionError, double confidence);
  4285. [DllImport (LIBNAME)]
  4286. private static extern bool calib3d_Calib3d_solvePnPRansac_13 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_mat_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, bool useExtrinsicGuess, int iterationsCount, float reprojectionError);
  4287. [DllImport (LIBNAME)]
  4288. private static extern bool calib3d_Calib3d_solvePnPRansac_14 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_mat_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, bool useExtrinsicGuess, int iterationsCount);
  4289. [DllImport (LIBNAME)]
  4290. private static extern bool calib3d_Calib3d_solvePnPRansac_15 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_mat_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, bool useExtrinsicGuess);
  4291. [DllImport (LIBNAME)]
  4292. private static extern bool calib3d_Calib3d_solvePnPRansac_16 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_mat_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj);
  4293. // C++: bool cv::stereoRectifyUncalibrated(Mat points1, Mat points2, Mat F, Size imgSize, Mat& H1, Mat& H2, double threshold = 5)
  4294. [DllImport (LIBNAME)]
  4295. private static extern bool calib3d_Calib3d_stereoRectifyUncalibrated_10 (IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr F_nativeObj, double imgSize_width, double imgSize_height, IntPtr H1_nativeObj, IntPtr H2_nativeObj, double threshold);
  4296. [DllImport (LIBNAME)]
  4297. private static extern bool calib3d_Calib3d_stereoRectifyUncalibrated_11 (IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr F_nativeObj, double imgSize_width, double imgSize_height, IntPtr H1_nativeObj, IntPtr H2_nativeObj);
  4298. // C++: double cv::calibrateCamera(vector_Mat objectPoints, vector_Mat imagePoints, Size imageSize, Mat& cameraMatrix, Mat& distCoeffs, vector_Mat& rvecs, vector_Mat& tvecs, Mat& stdDeviationsIntrinsics, Mat& stdDeviationsExtrinsics, Mat& perViewErrors, int flags = 0, TermCriteria criteria = TermCriteria( TermCriteria::COUNT + TermCriteria::EPS, 30, DBL_EPSILON))
  4299. [DllImport (LIBNAME)]
  4300. private static extern double calib3d_Calib3d_calibrateCameraExtended_10 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double imageSize_width, double imageSize_height, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj, IntPtr stdDeviationsIntrinsics_nativeObj, IntPtr stdDeviationsExtrinsics_nativeObj, IntPtr perViewErrors_nativeObj, int flags, int criteria_type, int criteria_maxCount, double criteria_epsilon);
  4301. [DllImport (LIBNAME)]
  4302. private static extern double calib3d_Calib3d_calibrateCameraExtended_11 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double imageSize_width, double imageSize_height, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj, IntPtr stdDeviationsIntrinsics_nativeObj, IntPtr stdDeviationsExtrinsics_nativeObj, IntPtr perViewErrors_nativeObj, int flags);
  4303. [DllImport (LIBNAME)]
  4304. private static extern double calib3d_Calib3d_calibrateCameraExtended_12 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double imageSize_width, double imageSize_height, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj, IntPtr stdDeviationsIntrinsics_nativeObj, IntPtr stdDeviationsExtrinsics_nativeObj, IntPtr perViewErrors_nativeObj);
  4305. // C++: double cv::calibrateCamera(vector_Mat objectPoints, vector_Mat imagePoints, Size imageSize, Mat& cameraMatrix, Mat& distCoeffs, vector_Mat& rvecs, vector_Mat& tvecs, int flags = 0, TermCriteria criteria = TermCriteria( TermCriteria::COUNT + TermCriteria::EPS, 30, DBL_EPSILON))
  4306. [DllImport (LIBNAME)]
  4307. private static extern double calib3d_Calib3d_calibrateCamera_10 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double imageSize_width, double imageSize_height, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj, int flags, int criteria_type, int criteria_maxCount, double criteria_epsilon);
  4308. [DllImport (LIBNAME)]
  4309. private static extern double calib3d_Calib3d_calibrateCamera_11 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double imageSize_width, double imageSize_height, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj, int flags);
  4310. [DllImport (LIBNAME)]
  4311. private static extern double calib3d_Calib3d_calibrateCamera_12 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double imageSize_width, double imageSize_height, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj);
  4312. // C++: double cv::calibrateCameraRO(vector_Mat objectPoints, vector_Mat imagePoints, Size imageSize, int iFixedPoint, Mat& cameraMatrix, Mat& distCoeffs, vector_Mat& rvecs, vector_Mat& tvecs, Mat& newObjPoints, Mat& stdDeviationsIntrinsics, Mat& stdDeviationsExtrinsics, Mat& stdDeviationsObjPoints, Mat& perViewErrors, int flags = 0, TermCriteria criteria = TermCriteria( TermCriteria::COUNT + TermCriteria::EPS, 30, DBL_EPSILON))
  4313. [DllImport (LIBNAME)]
  4314. private static extern double calib3d_Calib3d_calibrateCameraROExtended_10 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double imageSize_width, double imageSize_height, int iFixedPoint, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj, IntPtr newObjPoints_nativeObj, IntPtr stdDeviationsIntrinsics_nativeObj, IntPtr stdDeviationsExtrinsics_nativeObj, IntPtr stdDeviationsObjPoints_nativeObj, IntPtr perViewErrors_nativeObj, int flags, int criteria_type, int criteria_maxCount, double criteria_epsilon);
  4315. [DllImport (LIBNAME)]
  4316. private static extern double calib3d_Calib3d_calibrateCameraROExtended_11 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double imageSize_width, double imageSize_height, int iFixedPoint, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj, IntPtr newObjPoints_nativeObj, IntPtr stdDeviationsIntrinsics_nativeObj, IntPtr stdDeviationsExtrinsics_nativeObj, IntPtr stdDeviationsObjPoints_nativeObj, IntPtr perViewErrors_nativeObj, int flags);
  4317. [DllImport (LIBNAME)]
  4318. private static extern double calib3d_Calib3d_calibrateCameraROExtended_12 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double imageSize_width, double imageSize_height, int iFixedPoint, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj, IntPtr newObjPoints_nativeObj, IntPtr stdDeviationsIntrinsics_nativeObj, IntPtr stdDeviationsExtrinsics_nativeObj, IntPtr stdDeviationsObjPoints_nativeObj, IntPtr perViewErrors_nativeObj);
  4319. // C++: double cv::calibrateCameraRO(vector_Mat objectPoints, vector_Mat imagePoints, Size imageSize, int iFixedPoint, Mat& cameraMatrix, Mat& distCoeffs, vector_Mat& rvecs, vector_Mat& tvecs, Mat& newObjPoints, int flags = 0, TermCriteria criteria = TermCriteria( TermCriteria::COUNT + TermCriteria::EPS, 30, DBL_EPSILON))
  4320. [DllImport (LIBNAME)]
  4321. private static extern double calib3d_Calib3d_calibrateCameraRO_10 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double imageSize_width, double imageSize_height, int iFixedPoint, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj, IntPtr newObjPoints_nativeObj, int flags, int criteria_type, int criteria_maxCount, double criteria_epsilon);
  4322. [DllImport (LIBNAME)]
  4323. private static extern double calib3d_Calib3d_calibrateCameraRO_11 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double imageSize_width, double imageSize_height, int iFixedPoint, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj, IntPtr newObjPoints_nativeObj, int flags);
  4324. [DllImport (LIBNAME)]
  4325. private static extern double calib3d_Calib3d_calibrateCameraRO_12 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double imageSize_width, double imageSize_height, int iFixedPoint, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj, IntPtr newObjPoints_nativeObj);
  4326. // C++: double cv::sampsonDistance(Mat pt1, Mat pt2, Mat F)
  4327. [DllImport (LIBNAME)]
  4328. private static extern double calib3d_Calib3d_sampsonDistance_10 (IntPtr pt1_nativeObj, IntPtr pt2_nativeObj, IntPtr F_nativeObj);
  4329. // C++: double cv::stereoCalibrate(vector_Mat objectPoints, vector_Mat imagePoints1, vector_Mat imagePoints2, Mat& cameraMatrix1, Mat& distCoeffs1, Mat& cameraMatrix2, Mat& distCoeffs2, Size imageSize, Mat& R, Mat& T, Mat& E, Mat& F, Mat& perViewErrors, int flags = CALIB_FIX_INTRINSIC, TermCriteria criteria = TermCriteria(TermCriteria::COUNT+TermCriteria::EPS, 30, 1e-6))
  4330. [DllImport (LIBNAME)]
  4331. private static extern double calib3d_Calib3d_stereoCalibrateExtended_10 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints1_mat_nativeObj, IntPtr imagePoints2_mat_nativeObj, IntPtr cameraMatrix1_nativeObj, IntPtr distCoeffs1_nativeObj, IntPtr cameraMatrix2_nativeObj, IntPtr distCoeffs2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr T_nativeObj, IntPtr E_nativeObj, IntPtr F_nativeObj, IntPtr perViewErrors_nativeObj, int flags, int criteria_type, int criteria_maxCount, double criteria_epsilon);
  4332. [DllImport (LIBNAME)]
  4333. private static extern double calib3d_Calib3d_stereoCalibrateExtended_11 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints1_mat_nativeObj, IntPtr imagePoints2_mat_nativeObj, IntPtr cameraMatrix1_nativeObj, IntPtr distCoeffs1_nativeObj, IntPtr cameraMatrix2_nativeObj, IntPtr distCoeffs2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr T_nativeObj, IntPtr E_nativeObj, IntPtr F_nativeObj, IntPtr perViewErrors_nativeObj, int flags);
  4334. [DllImport (LIBNAME)]
  4335. private static extern double calib3d_Calib3d_stereoCalibrateExtended_12 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints1_mat_nativeObj, IntPtr imagePoints2_mat_nativeObj, IntPtr cameraMatrix1_nativeObj, IntPtr distCoeffs1_nativeObj, IntPtr cameraMatrix2_nativeObj, IntPtr distCoeffs2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr T_nativeObj, IntPtr E_nativeObj, IntPtr F_nativeObj, IntPtr perViewErrors_nativeObj);
  4336. // C++: double cv::stereoCalibrate(vector_Mat objectPoints, vector_Mat imagePoints1, vector_Mat imagePoints2, Mat& cameraMatrix1, Mat& distCoeffs1, Mat& cameraMatrix2, Mat& distCoeffs2, Size imageSize, Mat& R, Mat& T, Mat& E, Mat& F, int flags = CALIB_FIX_INTRINSIC, TermCriteria criteria = TermCriteria(TermCriteria::COUNT+TermCriteria::EPS, 30, 1e-6))
  4337. [DllImport (LIBNAME)]
  4338. private static extern double calib3d_Calib3d_stereoCalibrate_10 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints1_mat_nativeObj, IntPtr imagePoints2_mat_nativeObj, IntPtr cameraMatrix1_nativeObj, IntPtr distCoeffs1_nativeObj, IntPtr cameraMatrix2_nativeObj, IntPtr distCoeffs2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr T_nativeObj, IntPtr E_nativeObj, IntPtr F_nativeObj, int flags, int criteria_type, int criteria_maxCount, double criteria_epsilon);
  4339. [DllImport (LIBNAME)]
  4340. private static extern double calib3d_Calib3d_stereoCalibrate_11 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints1_mat_nativeObj, IntPtr imagePoints2_mat_nativeObj, IntPtr cameraMatrix1_nativeObj, IntPtr distCoeffs1_nativeObj, IntPtr cameraMatrix2_nativeObj, IntPtr distCoeffs2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr T_nativeObj, IntPtr E_nativeObj, IntPtr F_nativeObj, int flags);
  4341. [DllImport (LIBNAME)]
  4342. private static extern double calib3d_Calib3d_stereoCalibrate_12 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints1_mat_nativeObj, IntPtr imagePoints2_mat_nativeObj, IntPtr cameraMatrix1_nativeObj, IntPtr distCoeffs1_nativeObj, IntPtr cameraMatrix2_nativeObj, IntPtr distCoeffs2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr T_nativeObj, IntPtr E_nativeObj, IntPtr F_nativeObj);
  4343. // C++: double cv::fisheye::calibrate(vector_Mat objectPoints, vector_Mat imagePoints, Size image_size, Mat& K, Mat& D, vector_Mat& rvecs, vector_Mat& tvecs, int flags = 0, TermCriteria criteria = TermCriteria(TermCriteria::COUNT + TermCriteria::EPS, 100, DBL_EPSILON))
  4344. [DllImport (LIBNAME)]
  4345. private static extern double calib3d_Calib3d_fisheye_1calibrate_10 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double image_size_width, double image_size_height, IntPtr K_nativeObj, IntPtr D_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj, int flags, int criteria_type, int criteria_maxCount, double criteria_epsilon);
  4346. [DllImport (LIBNAME)]
  4347. private static extern double calib3d_Calib3d_fisheye_1calibrate_11 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double image_size_width, double image_size_height, IntPtr K_nativeObj, IntPtr D_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj, int flags);
  4348. [DllImport (LIBNAME)]
  4349. private static extern double calib3d_Calib3d_fisheye_1calibrate_12 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, double image_size_width, double image_size_height, IntPtr K_nativeObj, IntPtr D_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj);
  4350. // C++: double cv::fisheye::stereoCalibrate(vector_Mat objectPoints, vector_Mat imagePoints1, vector_Mat imagePoints2, Mat& K1, Mat& D1, Mat& K2, Mat& D2, Size imageSize, Mat& R, Mat& T, int flags = fisheye::CALIB_FIX_INTRINSIC, TermCriteria criteria = TermCriteria(TermCriteria::COUNT + TermCriteria::EPS, 100, DBL_EPSILON))
  4351. [DllImport (LIBNAME)]
  4352. private static extern double calib3d_Calib3d_fisheye_1stereoCalibrate_10 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints1_mat_nativeObj, IntPtr imagePoints2_mat_nativeObj, IntPtr K1_nativeObj, IntPtr D1_nativeObj, IntPtr K2_nativeObj, IntPtr D2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr T_nativeObj, int flags, int criteria_type, int criteria_maxCount, double criteria_epsilon);
  4353. [DllImport (LIBNAME)]
  4354. private static extern double calib3d_Calib3d_fisheye_1stereoCalibrate_11 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints1_mat_nativeObj, IntPtr imagePoints2_mat_nativeObj, IntPtr K1_nativeObj, IntPtr D1_nativeObj, IntPtr K2_nativeObj, IntPtr D2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr T_nativeObj, int flags);
  4355. [DllImport (LIBNAME)]
  4356. private static extern double calib3d_Calib3d_fisheye_1stereoCalibrate_12 (IntPtr objectPoints_mat_nativeObj, IntPtr imagePoints1_mat_nativeObj, IntPtr imagePoints2_mat_nativeObj, IntPtr K1_nativeObj, IntPtr D1_nativeObj, IntPtr K2_nativeObj, IntPtr D2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr T_nativeObj);
  4357. // C++: float cv::rectify3Collinear(Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Mat cameraMatrix3, Mat distCoeffs3, vector_Mat imgpt1, vector_Mat imgpt3, Size imageSize, Mat R12, Mat T12, Mat R13, Mat T13, Mat& R1, Mat& R2, Mat& R3, Mat& P1, Mat& P2, Mat& P3, Mat& Q, double alpha, Size newImgSize, Rect* roi1, Rect* roi2, int flags)
  4358. [DllImport (LIBNAME)]
  4359. private static extern float calib3d_Calib3d_rectify3Collinear_10 (IntPtr cameraMatrix1_nativeObj, IntPtr distCoeffs1_nativeObj, IntPtr cameraMatrix2_nativeObj, IntPtr distCoeffs2_nativeObj, IntPtr cameraMatrix3_nativeObj, IntPtr distCoeffs3_nativeObj, IntPtr imgpt1_mat_nativeObj, IntPtr imgpt3_mat_nativeObj, double imageSize_width, double imageSize_height, IntPtr R12_nativeObj, IntPtr T12_nativeObj, IntPtr R13_nativeObj, IntPtr T13_nativeObj, IntPtr R1_nativeObj, IntPtr R2_nativeObj, IntPtr R3_nativeObj, IntPtr P1_nativeObj, IntPtr P2_nativeObj, IntPtr P3_nativeObj, IntPtr Q_nativeObj, double alpha, double newImgSize_width, double newImgSize_height, double[] roi1_out, double[] roi2_out, int flags);
  4360. // C++: int cv::decomposeHomographyMat(Mat H, Mat K, vector_Mat& rotations, vector_Mat& translations, vector_Mat& normals)
  4361. [DllImport (LIBNAME)]
  4362. private static extern int calib3d_Calib3d_decomposeHomographyMat_10 (IntPtr H_nativeObj, IntPtr K_nativeObj, IntPtr rotations_mat_nativeObj, IntPtr translations_mat_nativeObj, IntPtr normals_mat_nativeObj);
  4363. // C++: int cv::estimateAffine3D(Mat src, Mat dst, Mat& _out, Mat& inliers, double ransacThreshold = 3, double confidence = 0.99)
  4364. [DllImport (LIBNAME)]
  4365. private static extern int calib3d_Calib3d_estimateAffine3D_10 (IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr _out_nativeObj, IntPtr inliers_nativeObj, double ransacThreshold, double confidence);
  4366. [DllImport (LIBNAME)]
  4367. private static extern int calib3d_Calib3d_estimateAffine3D_11 (IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr _out_nativeObj, IntPtr inliers_nativeObj, double ransacThreshold);
  4368. [DllImport (LIBNAME)]
  4369. private static extern int calib3d_Calib3d_estimateAffine3D_12 (IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr _out_nativeObj, IntPtr inliers_nativeObj);
  4370. // C++: int cv::recoverPose(Mat E, Mat points1, Mat points2, Mat& R, Mat& t, double focal = 1.0, Point2d pp = Point2d(0, 0), Mat& mask = Mat())
  4371. [DllImport (LIBNAME)]
  4372. private static extern int calib3d_Calib3d_recoverPose_10 (IntPtr E_nativeObj, IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr R_nativeObj, IntPtr t_nativeObj, double focal, double pp_x, double pp_y, IntPtr mask_nativeObj);
  4373. [DllImport (LIBNAME)]
  4374. private static extern int calib3d_Calib3d_recoverPose_11 (IntPtr E_nativeObj, IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr R_nativeObj, IntPtr t_nativeObj, double focal, double pp_x, double pp_y);
  4375. [DllImport (LIBNAME)]
  4376. private static extern int calib3d_Calib3d_recoverPose_12 (IntPtr E_nativeObj, IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr R_nativeObj, IntPtr t_nativeObj, double focal);
  4377. [DllImport (LIBNAME)]
  4378. private static extern int calib3d_Calib3d_recoverPose_13 (IntPtr E_nativeObj, IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr R_nativeObj, IntPtr t_nativeObj);
  4379. // C++: int cv::recoverPose(Mat E, Mat points1, Mat points2, Mat cameraMatrix, Mat& R, Mat& t, Mat& mask = Mat())
  4380. [DllImport (LIBNAME)]
  4381. private static extern int calib3d_Calib3d_recoverPose_14 (IntPtr E_nativeObj, IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr R_nativeObj, IntPtr t_nativeObj, IntPtr mask_nativeObj);
  4382. [DllImport (LIBNAME)]
  4383. private static extern int calib3d_Calib3d_recoverPose_15 (IntPtr E_nativeObj, IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr R_nativeObj, IntPtr t_nativeObj);
  4384. // C++: int cv::recoverPose(Mat E, Mat points1, Mat points2, Mat cameraMatrix, Mat& R, Mat& t, double distanceThresh, Mat& mask = Mat(), Mat& triangulatedPoints = Mat())
  4385. [DllImport (LIBNAME)]
  4386. private static extern int calib3d_Calib3d_recoverPose_16 (IntPtr E_nativeObj, IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr R_nativeObj, IntPtr t_nativeObj, double distanceThresh, IntPtr mask_nativeObj, IntPtr triangulatedPoints_nativeObj);
  4387. [DllImport (LIBNAME)]
  4388. private static extern int calib3d_Calib3d_recoverPose_17 (IntPtr E_nativeObj, IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr R_nativeObj, IntPtr t_nativeObj, double distanceThresh, IntPtr mask_nativeObj);
  4389. [DllImport (LIBNAME)]
  4390. private static extern int calib3d_Calib3d_recoverPose_18 (IntPtr E_nativeObj, IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr R_nativeObj, IntPtr t_nativeObj, double distanceThresh);
  4391. // C++: int cv::solveP3P(Mat objectPoints, Mat imagePoints, Mat cameraMatrix, Mat distCoeffs, vector_Mat& rvecs, vector_Mat& tvecs, int flags)
  4392. [DllImport (LIBNAME)]
  4393. private static extern int calib3d_Calib3d_solveP3P_10 (IntPtr objectPoints_nativeObj, IntPtr imagePoints_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr rvecs_mat_nativeObj, IntPtr tvecs_mat_nativeObj, int flags);
  4394. // C++: void cv::Rodrigues(Mat src, Mat& dst, Mat& jacobian = Mat())
  4395. [DllImport (LIBNAME)]
  4396. private static extern void calib3d_Calib3d_Rodrigues_10 (IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr jacobian_nativeObj);
  4397. [DllImport (LIBNAME)]
  4398. private static extern void calib3d_Calib3d_Rodrigues_11 (IntPtr src_nativeObj, IntPtr dst_nativeObj);
  4399. // C++: void cv::calibrationMatrixValues(Mat cameraMatrix, Size imageSize, double apertureWidth, double apertureHeight, double& fovx, double& fovy, double& focalLength, Point2d& principalPoint, double& aspectRatio)
  4400. [DllImport (LIBNAME)]
  4401. private static extern void calib3d_Calib3d_calibrationMatrixValues_10 (IntPtr cameraMatrix_nativeObj, double imageSize_width, double imageSize_height, double apertureWidth, double apertureHeight, double[] fovx_out, double[] fovy_out, double[] focalLength_out, double[] principalPoint_out, double[] aspectRatio_out);
  4402. // C++: void cv::composeRT(Mat rvec1, Mat tvec1, Mat rvec2, Mat tvec2, Mat& rvec3, Mat& tvec3, Mat& dr3dr1 = Mat(), Mat& dr3dt1 = Mat(), Mat& dr3dr2 = Mat(), Mat& dr3dt2 = Mat(), Mat& dt3dr1 = Mat(), Mat& dt3dt1 = Mat(), Mat& dt3dr2 = Mat(), Mat& dt3dt2 = Mat())
  4403. [DllImport (LIBNAME)]
  4404. private static extern void calib3d_Calib3d_composeRT_10 (IntPtr rvec1_nativeObj, IntPtr tvec1_nativeObj, IntPtr rvec2_nativeObj, IntPtr tvec2_nativeObj, IntPtr rvec3_nativeObj, IntPtr tvec3_nativeObj, IntPtr dr3dr1_nativeObj, IntPtr dr3dt1_nativeObj, IntPtr dr3dr2_nativeObj, IntPtr dr3dt2_nativeObj, IntPtr dt3dr1_nativeObj, IntPtr dt3dt1_nativeObj, IntPtr dt3dr2_nativeObj, IntPtr dt3dt2_nativeObj);
  4405. [DllImport (LIBNAME)]
  4406. private static extern void calib3d_Calib3d_composeRT_11 (IntPtr rvec1_nativeObj, IntPtr tvec1_nativeObj, IntPtr rvec2_nativeObj, IntPtr tvec2_nativeObj, IntPtr rvec3_nativeObj, IntPtr tvec3_nativeObj, IntPtr dr3dr1_nativeObj, IntPtr dr3dt1_nativeObj, IntPtr dr3dr2_nativeObj, IntPtr dr3dt2_nativeObj, IntPtr dt3dr1_nativeObj, IntPtr dt3dt1_nativeObj, IntPtr dt3dr2_nativeObj);
  4407. [DllImport (LIBNAME)]
  4408. private static extern void calib3d_Calib3d_composeRT_12 (IntPtr rvec1_nativeObj, IntPtr tvec1_nativeObj, IntPtr rvec2_nativeObj, IntPtr tvec2_nativeObj, IntPtr rvec3_nativeObj, IntPtr tvec3_nativeObj, IntPtr dr3dr1_nativeObj, IntPtr dr3dt1_nativeObj, IntPtr dr3dr2_nativeObj, IntPtr dr3dt2_nativeObj, IntPtr dt3dr1_nativeObj, IntPtr dt3dt1_nativeObj);
  4409. [DllImport (LIBNAME)]
  4410. private static extern void calib3d_Calib3d_composeRT_13 (IntPtr rvec1_nativeObj, IntPtr tvec1_nativeObj, IntPtr rvec2_nativeObj, IntPtr tvec2_nativeObj, IntPtr rvec3_nativeObj, IntPtr tvec3_nativeObj, IntPtr dr3dr1_nativeObj, IntPtr dr3dt1_nativeObj, IntPtr dr3dr2_nativeObj, IntPtr dr3dt2_nativeObj, IntPtr dt3dr1_nativeObj);
  4411. [DllImport (LIBNAME)]
  4412. private static extern void calib3d_Calib3d_composeRT_14 (IntPtr rvec1_nativeObj, IntPtr tvec1_nativeObj, IntPtr rvec2_nativeObj, IntPtr tvec2_nativeObj, IntPtr rvec3_nativeObj, IntPtr tvec3_nativeObj, IntPtr dr3dr1_nativeObj, IntPtr dr3dt1_nativeObj, IntPtr dr3dr2_nativeObj, IntPtr dr3dt2_nativeObj);
  4413. [DllImport (LIBNAME)]
  4414. private static extern void calib3d_Calib3d_composeRT_15 (IntPtr rvec1_nativeObj, IntPtr tvec1_nativeObj, IntPtr rvec2_nativeObj, IntPtr tvec2_nativeObj, IntPtr rvec3_nativeObj, IntPtr tvec3_nativeObj, IntPtr dr3dr1_nativeObj, IntPtr dr3dt1_nativeObj, IntPtr dr3dr2_nativeObj);
  4415. [DllImport (LIBNAME)]
  4416. private static extern void calib3d_Calib3d_composeRT_16 (IntPtr rvec1_nativeObj, IntPtr tvec1_nativeObj, IntPtr rvec2_nativeObj, IntPtr tvec2_nativeObj, IntPtr rvec3_nativeObj, IntPtr tvec3_nativeObj, IntPtr dr3dr1_nativeObj, IntPtr dr3dt1_nativeObj);
  4417. [DllImport (LIBNAME)]
  4418. private static extern void calib3d_Calib3d_composeRT_17 (IntPtr rvec1_nativeObj, IntPtr tvec1_nativeObj, IntPtr rvec2_nativeObj, IntPtr tvec2_nativeObj, IntPtr rvec3_nativeObj, IntPtr tvec3_nativeObj, IntPtr dr3dr1_nativeObj);
  4419. [DllImport (LIBNAME)]
  4420. private static extern void calib3d_Calib3d_composeRT_18 (IntPtr rvec1_nativeObj, IntPtr tvec1_nativeObj, IntPtr rvec2_nativeObj, IntPtr tvec2_nativeObj, IntPtr rvec3_nativeObj, IntPtr tvec3_nativeObj);
  4421. // C++: void cv::computeCorrespondEpilines(Mat points, int whichImage, Mat F, Mat& lines)
  4422. [DllImport (LIBNAME)]
  4423. private static extern void calib3d_Calib3d_computeCorrespondEpilines_10 (IntPtr points_nativeObj, int whichImage, IntPtr F_nativeObj, IntPtr lines_nativeObj);
  4424. // C++: void cv::convertPointsFromHomogeneous(Mat src, Mat& dst)
  4425. [DllImport (LIBNAME)]
  4426. private static extern void calib3d_Calib3d_convertPointsFromHomogeneous_10 (IntPtr src_nativeObj, IntPtr dst_nativeObj);
  4427. // C++: void cv::convertPointsToHomogeneous(Mat src, Mat& dst)
  4428. [DllImport (LIBNAME)]
  4429. private static extern void calib3d_Calib3d_convertPointsToHomogeneous_10 (IntPtr src_nativeObj, IntPtr dst_nativeObj);
  4430. // C++: void cv::correctMatches(Mat F, Mat points1, Mat points2, Mat& newPoints1, Mat& newPoints2)
  4431. [DllImport (LIBNAME)]
  4432. private static extern void calib3d_Calib3d_correctMatches_10 (IntPtr F_nativeObj, IntPtr points1_nativeObj, IntPtr points2_nativeObj, IntPtr newPoints1_nativeObj, IntPtr newPoints2_nativeObj);
  4433. // C++: void cv::decomposeEssentialMat(Mat E, Mat& R1, Mat& R2, Mat& t)
  4434. [DllImport (LIBNAME)]
  4435. private static extern void calib3d_Calib3d_decomposeEssentialMat_10 (IntPtr E_nativeObj, IntPtr R1_nativeObj, IntPtr R2_nativeObj, IntPtr t_nativeObj);
  4436. // C++: void cv::decomposeProjectionMatrix(Mat projMatrix, Mat& cameraMatrix, Mat& rotMatrix, Mat& transVect, Mat& rotMatrixX = Mat(), Mat& rotMatrixY = Mat(), Mat& rotMatrixZ = Mat(), Mat& eulerAngles = Mat())
  4437. [DllImport (LIBNAME)]
  4438. private static extern void calib3d_Calib3d_decomposeProjectionMatrix_10 (IntPtr projMatrix_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr rotMatrix_nativeObj, IntPtr transVect_nativeObj, IntPtr rotMatrixX_nativeObj, IntPtr rotMatrixY_nativeObj, IntPtr rotMatrixZ_nativeObj, IntPtr eulerAngles_nativeObj);
  4439. [DllImport (LIBNAME)]
  4440. private static extern void calib3d_Calib3d_decomposeProjectionMatrix_11 (IntPtr projMatrix_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr rotMatrix_nativeObj, IntPtr transVect_nativeObj, IntPtr rotMatrixX_nativeObj, IntPtr rotMatrixY_nativeObj, IntPtr rotMatrixZ_nativeObj);
  4441. [DllImport (LIBNAME)]
  4442. private static extern void calib3d_Calib3d_decomposeProjectionMatrix_12 (IntPtr projMatrix_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr rotMatrix_nativeObj, IntPtr transVect_nativeObj, IntPtr rotMatrixX_nativeObj, IntPtr rotMatrixY_nativeObj);
  4443. [DllImport (LIBNAME)]
  4444. private static extern void calib3d_Calib3d_decomposeProjectionMatrix_13 (IntPtr projMatrix_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr rotMatrix_nativeObj, IntPtr transVect_nativeObj, IntPtr rotMatrixX_nativeObj);
  4445. [DllImport (LIBNAME)]
  4446. private static extern void calib3d_Calib3d_decomposeProjectionMatrix_14 (IntPtr projMatrix_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr rotMatrix_nativeObj, IntPtr transVect_nativeObj);
  4447. // C++: void cv::drawChessboardCorners(Mat& image, Size patternSize, vector_Point2f corners, bool patternWasFound)
  4448. [DllImport (LIBNAME)]
  4449. private static extern void calib3d_Calib3d_drawChessboardCorners_10 (IntPtr image_nativeObj, double patternSize_width, double patternSize_height, IntPtr corners_mat_nativeObj, bool patternWasFound);
  4450. // C++: void cv::drawFrameAxes(Mat& image, Mat cameraMatrix, Mat distCoeffs, Mat rvec, Mat tvec, float length, int thickness = 3)
  4451. [DllImport (LIBNAME)]
  4452. private static extern void calib3d_Calib3d_drawFrameAxes_10 (IntPtr image_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, float length, int thickness);
  4453. [DllImport (LIBNAME)]
  4454. private static extern void calib3d_Calib3d_drawFrameAxes_11 (IntPtr image_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, float length);
  4455. // C++: void cv::filterHomographyDecompByVisibleRefpoints(vector_Mat rotations, vector_Mat normals, Mat beforePoints, Mat afterPoints, Mat& possibleSolutions, Mat pointsMask = Mat())
  4456. [DllImport (LIBNAME)]
  4457. private static extern void calib3d_Calib3d_filterHomographyDecompByVisibleRefpoints_10 (IntPtr rotations_mat_nativeObj, IntPtr normals_mat_nativeObj, IntPtr beforePoints_nativeObj, IntPtr afterPoints_nativeObj, IntPtr possibleSolutions_nativeObj, IntPtr pointsMask_nativeObj);
  4458. [DllImport (LIBNAME)]
  4459. private static extern void calib3d_Calib3d_filterHomographyDecompByVisibleRefpoints_11 (IntPtr rotations_mat_nativeObj, IntPtr normals_mat_nativeObj, IntPtr beforePoints_nativeObj, IntPtr afterPoints_nativeObj, IntPtr possibleSolutions_nativeObj);
  4460. // C++: void cv::filterSpeckles(Mat& img, double newVal, int maxSpeckleSize, double maxDiff, Mat& buf = Mat())
  4461. [DllImport (LIBNAME)]
  4462. private static extern void calib3d_Calib3d_filterSpeckles_10 (IntPtr img_nativeObj, double newVal, int maxSpeckleSize, double maxDiff, IntPtr buf_nativeObj);
  4463. [DllImport (LIBNAME)]
  4464. private static extern void calib3d_Calib3d_filterSpeckles_11 (IntPtr img_nativeObj, double newVal, int maxSpeckleSize, double maxDiff);
  4465. // C++: void cv::initUndistortRectifyMap(Mat cameraMatrix, Mat distCoeffs, Mat R, Mat newCameraMatrix, Size size, int m1type, Mat& map1, Mat& map2)
  4466. [DllImport (LIBNAME)]
  4467. private static extern void calib3d_Calib3d_initUndistortRectifyMap_10 (IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr R_nativeObj, IntPtr newCameraMatrix_nativeObj, double size_width, double size_height, int m1type, IntPtr map1_nativeObj, IntPtr map2_nativeObj);
  4468. // C++: void cv::matMulDeriv(Mat A, Mat B, Mat& dABdA, Mat& dABdB)
  4469. [DllImport (LIBNAME)]
  4470. private static extern void calib3d_Calib3d_matMulDeriv_10 (IntPtr A_nativeObj, IntPtr B_nativeObj, IntPtr dABdA_nativeObj, IntPtr dABdB_nativeObj);
  4471. // C++: void cv::projectPoints(vector_Point3f objectPoints, Mat rvec, Mat tvec, Mat cameraMatrix, vector_double distCoeffs, vector_Point2f& imagePoints, Mat& jacobian = Mat(), double aspectRatio = 0)
  4472. [DllImport (LIBNAME)]
  4473. private static extern void calib3d_Calib3d_projectPoints_10 (IntPtr objectPoints_mat_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, IntPtr jacobian_nativeObj, double aspectRatio);
  4474. [DllImport (LIBNAME)]
  4475. private static extern void calib3d_Calib3d_projectPoints_11 (IntPtr objectPoints_mat_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_mat_nativeObj, IntPtr imagePoints_mat_nativeObj, IntPtr jacobian_nativeObj);
  4476. [DllImport (LIBNAME)]
  4477. private static extern void calib3d_Calib3d_projectPoints_12 (IntPtr objectPoints_mat_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_mat_nativeObj, IntPtr imagePoints_mat_nativeObj);
  4478. // C++: void cv::reprojectImageTo3D(Mat disparity, Mat& _3dImage, Mat Q, bool handleMissingValues = false, int ddepth = -1)
  4479. [DllImport (LIBNAME)]
  4480. private static extern void calib3d_Calib3d_reprojectImageTo3D_10 (IntPtr disparity_nativeObj, IntPtr _3dImage_nativeObj, IntPtr Q_nativeObj, bool handleMissingValues, int ddepth);
  4481. [DllImport (LIBNAME)]
  4482. private static extern void calib3d_Calib3d_reprojectImageTo3D_11 (IntPtr disparity_nativeObj, IntPtr _3dImage_nativeObj, IntPtr Q_nativeObj, bool handleMissingValues);
  4483. [DllImport (LIBNAME)]
  4484. private static extern void calib3d_Calib3d_reprojectImageTo3D_12 (IntPtr disparity_nativeObj, IntPtr _3dImage_nativeObj, IntPtr Q_nativeObj);
  4485. // C++: void cv::stereoRectify(Mat cameraMatrix1, Mat distCoeffs1, Mat cameraMatrix2, Mat distCoeffs2, Size imageSize, Mat R, Mat T, Mat& R1, Mat& R2, Mat& P1, Mat& P2, Mat& Q, int flags = CALIB_ZERO_DISPARITY, double alpha = -1, Size newImageSize = Size(), Rect* validPixROI1 = 0, Rect* validPixROI2 = 0)
  4486. [DllImport (LIBNAME)]
  4487. private static extern void calib3d_Calib3d_stereoRectify_10 (IntPtr cameraMatrix1_nativeObj, IntPtr distCoeffs1_nativeObj, IntPtr cameraMatrix2_nativeObj, IntPtr distCoeffs2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr T_nativeObj, IntPtr R1_nativeObj, IntPtr R2_nativeObj, IntPtr P1_nativeObj, IntPtr P2_nativeObj, IntPtr Q_nativeObj, int flags, double alpha, double newImageSize_width, double newImageSize_height, double[] validPixROI1_out, double[] validPixROI2_out);
  4488. [DllImport (LIBNAME)]
  4489. private static extern void calib3d_Calib3d_stereoRectify_11 (IntPtr cameraMatrix1_nativeObj, IntPtr distCoeffs1_nativeObj, IntPtr cameraMatrix2_nativeObj, IntPtr distCoeffs2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr T_nativeObj, IntPtr R1_nativeObj, IntPtr R2_nativeObj, IntPtr P1_nativeObj, IntPtr P2_nativeObj, IntPtr Q_nativeObj, int flags, double alpha, double newImageSize_width, double newImageSize_height, double[] validPixROI1_out);
  4490. [DllImport (LIBNAME)]
  4491. private static extern void calib3d_Calib3d_stereoRectify_12 (IntPtr cameraMatrix1_nativeObj, IntPtr distCoeffs1_nativeObj, IntPtr cameraMatrix2_nativeObj, IntPtr distCoeffs2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr T_nativeObj, IntPtr R1_nativeObj, IntPtr R2_nativeObj, IntPtr P1_nativeObj, IntPtr P2_nativeObj, IntPtr Q_nativeObj, int flags, double alpha, double newImageSize_width, double newImageSize_height);
  4492. [DllImport (LIBNAME)]
  4493. private static extern void calib3d_Calib3d_stereoRectify_13 (IntPtr cameraMatrix1_nativeObj, IntPtr distCoeffs1_nativeObj, IntPtr cameraMatrix2_nativeObj, IntPtr distCoeffs2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr T_nativeObj, IntPtr R1_nativeObj, IntPtr R2_nativeObj, IntPtr P1_nativeObj, IntPtr P2_nativeObj, IntPtr Q_nativeObj, int flags, double alpha);
  4494. [DllImport (LIBNAME)]
  4495. private static extern void calib3d_Calib3d_stereoRectify_14 (IntPtr cameraMatrix1_nativeObj, IntPtr distCoeffs1_nativeObj, IntPtr cameraMatrix2_nativeObj, IntPtr distCoeffs2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr T_nativeObj, IntPtr R1_nativeObj, IntPtr R2_nativeObj, IntPtr P1_nativeObj, IntPtr P2_nativeObj, IntPtr Q_nativeObj, int flags);
  4496. [DllImport (LIBNAME)]
  4497. private static extern void calib3d_Calib3d_stereoRectify_15 (IntPtr cameraMatrix1_nativeObj, IntPtr distCoeffs1_nativeObj, IntPtr cameraMatrix2_nativeObj, IntPtr distCoeffs2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr T_nativeObj, IntPtr R1_nativeObj, IntPtr R2_nativeObj, IntPtr P1_nativeObj, IntPtr P2_nativeObj, IntPtr Q_nativeObj);
  4498. // C++: void cv::triangulatePoints(Mat projMatr1, Mat projMatr2, Mat projPoints1, Mat projPoints2, Mat& points4D)
  4499. [DllImport (LIBNAME)]
  4500. private static extern void calib3d_Calib3d_triangulatePoints_10 (IntPtr projMatr1_nativeObj, IntPtr projMatr2_nativeObj, IntPtr projPoints1_nativeObj, IntPtr projPoints2_nativeObj, IntPtr points4D_nativeObj);
  4501. // C++: void cv::undistort(Mat src, Mat& dst, Mat cameraMatrix, Mat distCoeffs, Mat newCameraMatrix = Mat())
  4502. [DllImport (LIBNAME)]
  4503. private static extern void calib3d_Calib3d_undistort_10 (IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr newCameraMatrix_nativeObj);
  4504. [DllImport (LIBNAME)]
  4505. private static extern void calib3d_Calib3d_undistort_11 (IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj);
  4506. // C++: void cv::undistortPoints(Mat src, Mat& dst, Mat cameraMatrix, Mat distCoeffs, Mat R, Mat P, TermCriteria criteria)
  4507. [DllImport (LIBNAME)]
  4508. private static extern void calib3d_Calib3d_undistortPointsIter_10 (IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr R_nativeObj, IntPtr P_nativeObj, int criteria_type, int criteria_maxCount, double criteria_epsilon);
  4509. // C++: void cv::undistortPoints(vector_Point2f src, vector_Point2f& dst, Mat cameraMatrix, Mat distCoeffs, Mat R = Mat(), Mat P = Mat())
  4510. [DllImport (LIBNAME)]
  4511. private static extern void calib3d_Calib3d_undistortPoints_10 (IntPtr src_mat_nativeObj, IntPtr dst_mat_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr R_nativeObj, IntPtr P_nativeObj);
  4512. [DllImport (LIBNAME)]
  4513. private static extern void calib3d_Calib3d_undistortPoints_11 (IntPtr src_mat_nativeObj, IntPtr dst_mat_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr R_nativeObj);
  4514. [DllImport (LIBNAME)]
  4515. private static extern void calib3d_Calib3d_undistortPoints_12 (IntPtr src_mat_nativeObj, IntPtr dst_mat_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj);
  4516. // C++: void cv::validateDisparity(Mat& disparity, Mat cost, int minDisparity, int numberOfDisparities, int disp12MaxDisp = 1)
  4517. [DllImport (LIBNAME)]
  4518. private static extern void calib3d_Calib3d_validateDisparity_10 (IntPtr disparity_nativeObj, IntPtr cost_nativeObj, int minDisparity, int numberOfDisparities, int disp12MaxDisp);
  4519. [DllImport (LIBNAME)]
  4520. private static extern void calib3d_Calib3d_validateDisparity_11 (IntPtr disparity_nativeObj, IntPtr cost_nativeObj, int minDisparity, int numberOfDisparities);
  4521. // C++: void cv::fisheye::distortPoints(Mat undistorted, Mat& distorted, Mat K, Mat D, double alpha = 0)
  4522. [DllImport (LIBNAME)]
  4523. private static extern void calib3d_Calib3d_fisheye_1distortPoints_10 (IntPtr undistorted_nativeObj, IntPtr distorted_nativeObj, IntPtr K_nativeObj, IntPtr D_nativeObj, double alpha);
  4524. [DllImport (LIBNAME)]
  4525. private static extern void calib3d_Calib3d_fisheye_1distortPoints_11 (IntPtr undistorted_nativeObj, IntPtr distorted_nativeObj, IntPtr K_nativeObj, IntPtr D_nativeObj);
  4526. // C++: void cv::fisheye::estimateNewCameraMatrixForUndistortRectify(Mat K, Mat D, Size image_size, Mat R, Mat& P, double balance = 0.0, Size new_size = Size(), double fov_scale = 1.0)
  4527. [DllImport (LIBNAME)]
  4528. private static extern void calib3d_Calib3d_fisheye_1estimateNewCameraMatrixForUndistortRectify_10 (IntPtr K_nativeObj, IntPtr D_nativeObj, double image_size_width, double image_size_height, IntPtr R_nativeObj, IntPtr P_nativeObj, double balance, double new_size_width, double new_size_height, double fov_scale);
  4529. [DllImport (LIBNAME)]
  4530. private static extern void calib3d_Calib3d_fisheye_1estimateNewCameraMatrixForUndistortRectify_11 (IntPtr K_nativeObj, IntPtr D_nativeObj, double image_size_width, double image_size_height, IntPtr R_nativeObj, IntPtr P_nativeObj, double balance, double new_size_width, double new_size_height);
  4531. [DllImport (LIBNAME)]
  4532. private static extern void calib3d_Calib3d_fisheye_1estimateNewCameraMatrixForUndistortRectify_12 (IntPtr K_nativeObj, IntPtr D_nativeObj, double image_size_width, double image_size_height, IntPtr R_nativeObj, IntPtr P_nativeObj, double balance);
  4533. [DllImport (LIBNAME)]
  4534. private static extern void calib3d_Calib3d_fisheye_1estimateNewCameraMatrixForUndistortRectify_13 (IntPtr K_nativeObj, IntPtr D_nativeObj, double image_size_width, double image_size_height, IntPtr R_nativeObj, IntPtr P_nativeObj);
  4535. // C++: void cv::fisheye::initUndistortRectifyMap(Mat K, Mat D, Mat R, Mat P, Size size, int m1type, Mat& map1, Mat& map2)
  4536. [DllImport (LIBNAME)]
  4537. private static extern void calib3d_Calib3d_fisheye_1initUndistortRectifyMap_10 (IntPtr K_nativeObj, IntPtr D_nativeObj, IntPtr R_nativeObj, IntPtr P_nativeObj, double size_width, double size_height, int m1type, IntPtr map1_nativeObj, IntPtr map2_nativeObj);
  4538. // C++: void cv::fisheye::projectPoints(Mat objectPoints, Mat& imagePoints, Mat rvec, Mat tvec, Mat K, Mat D, double alpha = 0, Mat& jacobian = Mat())
  4539. [DllImport (LIBNAME)]
  4540. private static extern void calib3d_Calib3d_fisheye_1projectPoints_10 (IntPtr objectPoints_nativeObj, IntPtr imagePoints_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, IntPtr K_nativeObj, IntPtr D_nativeObj, double alpha, IntPtr jacobian_nativeObj);
  4541. [DllImport (LIBNAME)]
  4542. private static extern void calib3d_Calib3d_fisheye_1projectPoints_11 (IntPtr objectPoints_nativeObj, IntPtr imagePoints_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, IntPtr K_nativeObj, IntPtr D_nativeObj, double alpha);
  4543. [DllImport (LIBNAME)]
  4544. private static extern void calib3d_Calib3d_fisheye_1projectPoints_12 (IntPtr objectPoints_nativeObj, IntPtr imagePoints_nativeObj, IntPtr rvec_nativeObj, IntPtr tvec_nativeObj, IntPtr K_nativeObj, IntPtr D_nativeObj);
  4545. // C++: void cv::fisheye::stereoRectify(Mat K1, Mat D1, Mat K2, Mat D2, Size imageSize, Mat R, Mat tvec, Mat& R1, Mat& R2, Mat& P1, Mat& P2, Mat& Q, int flags, Size newImageSize = Size(), double balance = 0.0, double fov_scale = 1.0)
  4546. [DllImport (LIBNAME)]
  4547. private static extern void calib3d_Calib3d_fisheye_1stereoRectify_10 (IntPtr K1_nativeObj, IntPtr D1_nativeObj, IntPtr K2_nativeObj, IntPtr D2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr tvec_nativeObj, IntPtr R1_nativeObj, IntPtr R2_nativeObj, IntPtr P1_nativeObj, IntPtr P2_nativeObj, IntPtr Q_nativeObj, int flags, double newImageSize_width, double newImageSize_height, double balance, double fov_scale);
  4548. [DllImport (LIBNAME)]
  4549. private static extern void calib3d_Calib3d_fisheye_1stereoRectify_11 (IntPtr K1_nativeObj, IntPtr D1_nativeObj, IntPtr K2_nativeObj, IntPtr D2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr tvec_nativeObj, IntPtr R1_nativeObj, IntPtr R2_nativeObj, IntPtr P1_nativeObj, IntPtr P2_nativeObj, IntPtr Q_nativeObj, int flags, double newImageSize_width, double newImageSize_height, double balance);
  4550. [DllImport (LIBNAME)]
  4551. private static extern void calib3d_Calib3d_fisheye_1stereoRectify_12 (IntPtr K1_nativeObj, IntPtr D1_nativeObj, IntPtr K2_nativeObj, IntPtr D2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr tvec_nativeObj, IntPtr R1_nativeObj, IntPtr R2_nativeObj, IntPtr P1_nativeObj, IntPtr P2_nativeObj, IntPtr Q_nativeObj, int flags, double newImageSize_width, double newImageSize_height);
  4552. [DllImport (LIBNAME)]
  4553. private static extern void calib3d_Calib3d_fisheye_1stereoRectify_13 (IntPtr K1_nativeObj, IntPtr D1_nativeObj, IntPtr K2_nativeObj, IntPtr D2_nativeObj, double imageSize_width, double imageSize_height, IntPtr R_nativeObj, IntPtr tvec_nativeObj, IntPtr R1_nativeObj, IntPtr R2_nativeObj, IntPtr P1_nativeObj, IntPtr P2_nativeObj, IntPtr Q_nativeObj, int flags);
  4554. // C++: void cv::fisheye::undistortImage(Mat distorted, Mat& undistorted, Mat K, Mat D, Mat Knew = cv::Mat(), Size new_size = Size())
  4555. [DllImport (LIBNAME)]
  4556. private static extern void calib3d_Calib3d_fisheye_1undistortImage_10 (IntPtr distorted_nativeObj, IntPtr undistorted_nativeObj, IntPtr K_nativeObj, IntPtr D_nativeObj, IntPtr Knew_nativeObj, double new_size_width, double new_size_height);
  4557. [DllImport (LIBNAME)]
  4558. private static extern void calib3d_Calib3d_fisheye_1undistortImage_11 (IntPtr distorted_nativeObj, IntPtr undistorted_nativeObj, IntPtr K_nativeObj, IntPtr D_nativeObj, IntPtr Knew_nativeObj);
  4559. [DllImport (LIBNAME)]
  4560. private static extern void calib3d_Calib3d_fisheye_1undistortImage_12 (IntPtr distorted_nativeObj, IntPtr undistorted_nativeObj, IntPtr K_nativeObj, IntPtr D_nativeObj);
  4561. // C++: void cv::fisheye::undistortPoints(Mat distorted, Mat& undistorted, Mat K, Mat D, Mat R = Mat(), Mat P = Mat())
  4562. [DllImport (LIBNAME)]
  4563. private static extern void calib3d_Calib3d_fisheye_1undistortPoints_10 (IntPtr distorted_nativeObj, IntPtr undistorted_nativeObj, IntPtr K_nativeObj, IntPtr D_nativeObj, IntPtr R_nativeObj, IntPtr P_nativeObj);
  4564. [DllImport (LIBNAME)]
  4565. private static extern void calib3d_Calib3d_fisheye_1undistortPoints_11 (IntPtr distorted_nativeObj, IntPtr undistorted_nativeObj, IntPtr K_nativeObj, IntPtr D_nativeObj, IntPtr R_nativeObj);
  4566. [DllImport (LIBNAME)]
  4567. private static extern void calib3d_Calib3d_fisheye_1undistortPoints_12 (IntPtr distorted_nativeObj, IntPtr undistorted_nativeObj, IntPtr K_nativeObj, IntPtr D_nativeObj);
  4568. }
  4569. }