Imgproc.cs 273 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120
  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.ImgprocModule {
  8. // C++: class Imgproc
  9. //javadoc: Imgproc
  10. public class Imgproc {
  11. private const int IPL_BORDER_CONSTANT = 0;
  12. private const int IPL_BORDER_REPLICATE = 1;
  13. private const int IPL_BORDER_REFLECT = 2;
  14. private const int IPL_BORDER_WRAP = 3;
  15. private const int IPL_BORDER_REFLECT_101 = 4;
  16. private const int IPL_BORDER_TRANSPARENT = 5;
  17. private const int CV_INTER_NN = 0;
  18. private const int CV_INTER_LINEAR = 1;
  19. private const int CV_INTER_CUBIC = 2;
  20. private const int CV_INTER_AREA = 3;
  21. private const int CV_INTER_LANCZOS4 = 4;
  22. private const int CV_MOP_ERODE = 0;
  23. private const int CV_MOP_DILATE = 1;
  24. private const int CV_MOP_OPEN = 2;
  25. private const int CV_MOP_CLOSE = 3;
  26. private const int CV_MOP_GRADIENT = 4;
  27. private const int CV_MOP_TOPHAT = 5;
  28. private const int CV_MOP_BLACKHAT = 6;
  29. private const int CV_RETR_EXTERNAL = 0;
  30. private const int CV_RETR_LIST = 1;
  31. private const int CV_RETR_CCOMP = 2;
  32. private const int CV_RETR_TREE = 3;
  33. private const int CV_RETR_FLOODFILL = 4;
  34. private const int CV_CHAIN_APPROX_NONE = 1;
  35. private const int CV_CHAIN_APPROX_SIMPLE = 2;
  36. private const int CV_CHAIN_APPROX_TC89_L1 = 3;
  37. private const int CV_CHAIN_APPROX_TC89_KCOS = 4;
  38. private const int CV_THRESH_BINARY = 0;
  39. private const int CV_THRESH_BINARY_INV = 1;
  40. private const int CV_THRESH_TRUNC = 2;
  41. private const int CV_THRESH_TOZERO = 3;
  42. private const int CV_THRESH_TOZERO_INV = 4;
  43. private const int CV_THRESH_MASK = 7;
  44. private const int CV_THRESH_OTSU = 8;
  45. private const int CV_THRESH_TRIANGLE = 16;
  46. // C++: enum GrabCutClasses
  47. public const int GC_BGD = 0;
  48. public const int GC_FGD = 1;
  49. public const int GC_PR_BGD = 2;
  50. public const int GC_PR_FGD = 3;
  51. // C++: enum RectanglesIntersectTypes
  52. public const int INTERSECT_NONE = 0;
  53. public const int INTERSECT_PARTIAL = 1;
  54. public const int INTERSECT_FULL = 2;
  55. // C++: enum ThresholdTypes
  56. public const int THRESH_BINARY = 0;
  57. public const int THRESH_BINARY_INV = 1;
  58. public const int THRESH_TRUNC = 2;
  59. public const int THRESH_TOZERO = 3;
  60. public const int THRESH_TOZERO_INV = 4;
  61. public const int THRESH_MASK = 7;
  62. public const int THRESH_OTSU = 8;
  63. public const int THRESH_TRIANGLE = 16;
  64. // C++: enum MarkerTypes
  65. public const int MARKER_CROSS = 0;
  66. public const int MARKER_TILTED_CROSS = 1;
  67. public const int MARKER_STAR = 2;
  68. public const int MARKER_DIAMOND = 3;
  69. public const int MARKER_SQUARE = 4;
  70. public const int MARKER_TRIANGLE_UP = 5;
  71. public const int MARKER_TRIANGLE_DOWN = 6;
  72. // C++: enum SmoothMethod_c
  73. public const int CV_BLUR_NO_SCALE = 0;
  74. public const int CV_BLUR = 1;
  75. public const int CV_GAUSSIAN = 2;
  76. public const int CV_MEDIAN = 3;
  77. public const int CV_BILATERAL = 4;
  78. // C++: enum LineTypes
  79. public const int FILLED = -1;
  80. public const int LINE_4 = 4;
  81. public const int LINE_8 = 8;
  82. public const int LINE_AA = 16;
  83. // C++: enum MorphShapes
  84. public const int MORPH_RECT = 0;
  85. public const int MORPH_CROSS = 1;
  86. public const int MORPH_ELLIPSE = 2;
  87. // C++: enum FloodFillFlags
  88. public const int FLOODFILL_FIXED_RANGE = 1 << 16;
  89. public const int FLOODFILL_MASK_ONLY = 1 << 17;
  90. // C++: enum InterpolationMasks
  91. public const int INTER_BITS = 5;
  92. public const int INTER_BITS2 = INTER_BITS * 2;
  93. public const int INTER_TAB_SIZE = 1 << INTER_BITS;
  94. public const int INTER_TAB_SIZE2 = INTER_TAB_SIZE * INTER_TAB_SIZE;
  95. // C++: enum ShapeMatchModes
  96. public const int CONTOURS_MATCH_I1 = 1;
  97. public const int CONTOURS_MATCH_I2 = 2;
  98. public const int CONTOURS_MATCH_I3 = 3;
  99. // C++: enum MorphTypes
  100. public const int MORPH_ERODE = 0;
  101. public const int MORPH_DILATE = 1;
  102. public const int MORPH_OPEN = 2;
  103. public const int MORPH_CLOSE = 3;
  104. public const int MORPH_GRADIENT = 4;
  105. public const int MORPH_TOPHAT = 5;
  106. public const int MORPH_BLACKHAT = 6;
  107. public const int MORPH_HITMISS = 7;
  108. // C++: enum InterpolationFlags
  109. public const int INTER_NEAREST = 0;
  110. public const int INTER_LINEAR = 1;
  111. public const int INTER_CUBIC = 2;
  112. public const int INTER_AREA = 3;
  113. public const int INTER_LANCZOS4 = 4;
  114. public const int INTER_LINEAR_EXACT = 5;
  115. public const int INTER_MAX = 7;
  116. public const int WARP_FILL_OUTLIERS = 8;
  117. public const int WARP_INVERSE_MAP = 16;
  118. // C++: enum HoughModes
  119. public const int HOUGH_STANDARD = 0;
  120. public const int HOUGH_PROBABILISTIC = 1;
  121. public const int HOUGH_MULTI_SCALE = 2;
  122. public const int HOUGH_GRADIENT = 3;
  123. // C++: enum DistanceTypes
  124. public const int DIST_USER = -1;
  125. public const int DIST_L1 = 1;
  126. public const int DIST_L2 = 2;
  127. public const int DIST_C = 3;
  128. public const int DIST_L12 = 4;
  129. public const int DIST_FAIR = 5;
  130. public const int DIST_WELSCH = 6;
  131. public const int DIST_HUBER = 7;
  132. // C++: enum ConnectedComponentsTypes
  133. public const int CC_STAT_LEFT = 0;
  134. public const int CC_STAT_TOP = 1;
  135. public const int CC_STAT_WIDTH = 2;
  136. public const int CC_STAT_HEIGHT = 3;
  137. public const int CC_STAT_AREA = 4;
  138. public const int CC_STAT_MAX = 5;
  139. // C++: enum HersheyFonts
  140. public const int FONT_HERSHEY_SIMPLEX = 0;
  141. public const int FONT_HERSHEY_PLAIN = 1;
  142. public const int FONT_HERSHEY_DUPLEX = 2;
  143. public const int FONT_HERSHEY_COMPLEX = 3;
  144. public const int FONT_HERSHEY_TRIPLEX = 4;
  145. public const int FONT_HERSHEY_COMPLEX_SMALL = 5;
  146. public const int FONT_HERSHEY_SCRIPT_SIMPLEX = 6;
  147. public const int FONT_HERSHEY_SCRIPT_COMPLEX = 7;
  148. public const int FONT_ITALIC = 16;
  149. // C++: enum ConnectedComponentsAlgorithmsTypes
  150. public const int CCL_WU = 0;
  151. public const int CCL_DEFAULT = -1;
  152. public const int CCL_GRANA = 1;
  153. // C++: enum AdaptiveThresholdTypes
  154. public const int ADAPTIVE_THRESH_MEAN_C = 0;
  155. public const int ADAPTIVE_THRESH_GAUSSIAN_C = 1;
  156. // C++: enum TemplateMatchModes
  157. public const int TM_SQDIFF = 0;
  158. public const int TM_SQDIFF_NORMED = 1;
  159. public const int TM_CCORR = 2;
  160. public const int TM_CCORR_NORMED = 3;
  161. public const int TM_CCOEFF = 4;
  162. public const int TM_CCOEFF_NORMED = 5;
  163. // C++: enum GrabCutModes
  164. public const int GC_INIT_WITH_RECT = 0;
  165. public const int GC_INIT_WITH_MASK = 1;
  166. public const int GC_EVAL = 2;
  167. public const int GC_EVAL_FREEZE_MODEL = 3;
  168. // C++: enum DistanceTransformLabelTypes
  169. public const int DIST_LABEL_CCOMP = 0;
  170. public const int DIST_LABEL_PIXEL = 1;
  171. // C++: enum WarpPolarMode
  172. public const int WARP_POLAR_LINEAR = 0;
  173. public const int WARP_POLAR_LOG = 256;
  174. // C++: enum ContourApproximationModes
  175. public const int CHAIN_APPROX_NONE = 1;
  176. public const int CHAIN_APPROX_SIMPLE = 2;
  177. public const int CHAIN_APPROX_TC89_L1 = 3;
  178. public const int CHAIN_APPROX_TC89_KCOS = 4;
  179. // C++: enum ColorConversionCodes
  180. public const int COLOR_BGR2BGRA = 0;
  181. public const int COLOR_RGB2RGBA = COLOR_BGR2BGRA;
  182. public const int COLOR_BGRA2BGR = 1;
  183. public const int COLOR_RGBA2RGB = COLOR_BGRA2BGR;
  184. public const int COLOR_BGR2RGBA = 2;
  185. public const int COLOR_RGB2BGRA = COLOR_BGR2RGBA;
  186. public const int COLOR_RGBA2BGR = 3;
  187. public const int COLOR_BGRA2RGB = COLOR_RGBA2BGR;
  188. public const int COLOR_BGR2RGB = 4;
  189. public const int COLOR_RGB2BGR = COLOR_BGR2RGB;
  190. public const int COLOR_BGRA2RGBA = 5;
  191. public const int COLOR_RGBA2BGRA = COLOR_BGRA2RGBA;
  192. public const int COLOR_BGR2GRAY = 6;
  193. public const int COLOR_RGB2GRAY = 7;
  194. public const int COLOR_GRAY2BGR = 8;
  195. public const int COLOR_GRAY2RGB = COLOR_GRAY2BGR;
  196. public const int COLOR_GRAY2BGRA = 9;
  197. public const int COLOR_GRAY2RGBA = COLOR_GRAY2BGRA;
  198. public const int COLOR_BGRA2GRAY = 10;
  199. public const int COLOR_RGBA2GRAY = 11;
  200. public const int COLOR_BGR2BGR565 = 12;
  201. public const int COLOR_RGB2BGR565 = 13;
  202. public const int COLOR_BGR5652BGR = 14;
  203. public const int COLOR_BGR5652RGB = 15;
  204. public const int COLOR_BGRA2BGR565 = 16;
  205. public const int COLOR_RGBA2BGR565 = 17;
  206. public const int COLOR_BGR5652BGRA = 18;
  207. public const int COLOR_BGR5652RGBA = 19;
  208. public const int COLOR_GRAY2BGR565 = 20;
  209. public const int COLOR_BGR5652GRAY = 21;
  210. public const int COLOR_BGR2BGR555 = 22;
  211. public const int COLOR_RGB2BGR555 = 23;
  212. public const int COLOR_BGR5552BGR = 24;
  213. public const int COLOR_BGR5552RGB = 25;
  214. public const int COLOR_BGRA2BGR555 = 26;
  215. public const int COLOR_RGBA2BGR555 = 27;
  216. public const int COLOR_BGR5552BGRA = 28;
  217. public const int COLOR_BGR5552RGBA = 29;
  218. public const int COLOR_GRAY2BGR555 = 30;
  219. public const int COLOR_BGR5552GRAY = 31;
  220. public const int COLOR_BGR2XYZ = 32;
  221. public const int COLOR_RGB2XYZ = 33;
  222. public const int COLOR_XYZ2BGR = 34;
  223. public const int COLOR_XYZ2RGB = 35;
  224. public const int COLOR_BGR2YCrCb = 36;
  225. public const int COLOR_RGB2YCrCb = 37;
  226. public const int COLOR_YCrCb2BGR = 38;
  227. public const int COLOR_YCrCb2RGB = 39;
  228. public const int COLOR_BGR2HSV = 40;
  229. public const int COLOR_RGB2HSV = 41;
  230. public const int COLOR_BGR2Lab = 44;
  231. public const int COLOR_RGB2Lab = 45;
  232. public const int COLOR_BGR2Luv = 50;
  233. public const int COLOR_RGB2Luv = 51;
  234. public const int COLOR_BGR2HLS = 52;
  235. public const int COLOR_RGB2HLS = 53;
  236. public const int COLOR_HSV2BGR = 54;
  237. public const int COLOR_HSV2RGB = 55;
  238. public const int COLOR_Lab2BGR = 56;
  239. public const int COLOR_Lab2RGB = 57;
  240. public const int COLOR_Luv2BGR = 58;
  241. public const int COLOR_Luv2RGB = 59;
  242. public const int COLOR_HLS2BGR = 60;
  243. public const int COLOR_HLS2RGB = 61;
  244. public const int COLOR_BGR2HSV_FULL = 66;
  245. public const int COLOR_RGB2HSV_FULL = 67;
  246. public const int COLOR_BGR2HLS_FULL = 68;
  247. public const int COLOR_RGB2HLS_FULL = 69;
  248. public const int COLOR_HSV2BGR_FULL = 70;
  249. public const int COLOR_HSV2RGB_FULL = 71;
  250. public const int COLOR_HLS2BGR_FULL = 72;
  251. public const int COLOR_HLS2RGB_FULL = 73;
  252. public const int COLOR_LBGR2Lab = 74;
  253. public const int COLOR_LRGB2Lab = 75;
  254. public const int COLOR_LBGR2Luv = 76;
  255. public const int COLOR_LRGB2Luv = 77;
  256. public const int COLOR_Lab2LBGR = 78;
  257. public const int COLOR_Lab2LRGB = 79;
  258. public const int COLOR_Luv2LBGR = 80;
  259. public const int COLOR_Luv2LRGB = 81;
  260. public const int COLOR_BGR2YUV = 82;
  261. public const int COLOR_RGB2YUV = 83;
  262. public const int COLOR_YUV2BGR = 84;
  263. public const int COLOR_YUV2RGB = 85;
  264. public const int COLOR_YUV2RGB_NV12 = 90;
  265. public const int COLOR_YUV2BGR_NV12 = 91;
  266. public const int COLOR_YUV2RGB_NV21 = 92;
  267. public const int COLOR_YUV2BGR_NV21 = 93;
  268. public const int COLOR_YUV420sp2RGB = COLOR_YUV2RGB_NV21;
  269. public const int COLOR_YUV420sp2BGR = COLOR_YUV2BGR_NV21;
  270. public const int COLOR_YUV2RGBA_NV12 = 94;
  271. public const int COLOR_YUV2BGRA_NV12 = 95;
  272. public const int COLOR_YUV2RGBA_NV21 = 96;
  273. public const int COLOR_YUV2BGRA_NV21 = 97;
  274. public const int COLOR_YUV420sp2RGBA = COLOR_YUV2RGBA_NV21;
  275. public const int COLOR_YUV420sp2BGRA = COLOR_YUV2BGRA_NV21;
  276. public const int COLOR_YUV2RGB_YV12 = 98;
  277. public const int COLOR_YUV2BGR_YV12 = 99;
  278. public const int COLOR_YUV2RGB_IYUV = 100;
  279. public const int COLOR_YUV2BGR_IYUV = 101;
  280. public const int COLOR_YUV2RGB_I420 = COLOR_YUV2RGB_IYUV;
  281. public const int COLOR_YUV2BGR_I420 = COLOR_YUV2BGR_IYUV;
  282. public const int COLOR_YUV420p2RGB = COLOR_YUV2RGB_YV12;
  283. public const int COLOR_YUV420p2BGR = COLOR_YUV2BGR_YV12;
  284. public const int COLOR_YUV2RGBA_YV12 = 102;
  285. public const int COLOR_YUV2BGRA_YV12 = 103;
  286. public const int COLOR_YUV2RGBA_IYUV = 104;
  287. public const int COLOR_YUV2BGRA_IYUV = 105;
  288. public const int COLOR_YUV2RGBA_I420 = COLOR_YUV2RGBA_IYUV;
  289. public const int COLOR_YUV2BGRA_I420 = COLOR_YUV2BGRA_IYUV;
  290. public const int COLOR_YUV420p2RGBA = COLOR_YUV2RGBA_YV12;
  291. public const int COLOR_YUV420p2BGRA = COLOR_YUV2BGRA_YV12;
  292. public const int COLOR_YUV2GRAY_420 = 106;
  293. public const int COLOR_YUV2GRAY_NV21 = COLOR_YUV2GRAY_420;
  294. public const int COLOR_YUV2GRAY_NV12 = COLOR_YUV2GRAY_420;
  295. public const int COLOR_YUV2GRAY_YV12 = COLOR_YUV2GRAY_420;
  296. public const int COLOR_YUV2GRAY_IYUV = COLOR_YUV2GRAY_420;
  297. public const int COLOR_YUV2GRAY_I420 = COLOR_YUV2GRAY_420;
  298. public const int COLOR_YUV420sp2GRAY = COLOR_YUV2GRAY_420;
  299. public const int COLOR_YUV420p2GRAY = COLOR_YUV2GRAY_420;
  300. public const int COLOR_YUV2RGB_UYVY = 107;
  301. public const int COLOR_YUV2BGR_UYVY = 108;
  302. public const int COLOR_YUV2RGB_Y422 = COLOR_YUV2RGB_UYVY;
  303. public const int COLOR_YUV2BGR_Y422 = COLOR_YUV2BGR_UYVY;
  304. public const int COLOR_YUV2RGB_UYNV = COLOR_YUV2RGB_UYVY;
  305. public const int COLOR_YUV2BGR_UYNV = COLOR_YUV2BGR_UYVY;
  306. public const int COLOR_YUV2RGBA_UYVY = 111;
  307. public const int COLOR_YUV2BGRA_UYVY = 112;
  308. public const int COLOR_YUV2RGBA_Y422 = COLOR_YUV2RGBA_UYVY;
  309. public const int COLOR_YUV2BGRA_Y422 = COLOR_YUV2BGRA_UYVY;
  310. public const int COLOR_YUV2RGBA_UYNV = COLOR_YUV2RGBA_UYVY;
  311. public const int COLOR_YUV2BGRA_UYNV = COLOR_YUV2BGRA_UYVY;
  312. public const int COLOR_YUV2RGB_YUY2 = 115;
  313. public const int COLOR_YUV2BGR_YUY2 = 116;
  314. public const int COLOR_YUV2RGB_YVYU = 117;
  315. public const int COLOR_YUV2BGR_YVYU = 118;
  316. public const int COLOR_YUV2RGB_YUYV = COLOR_YUV2RGB_YUY2;
  317. public const int COLOR_YUV2BGR_YUYV = COLOR_YUV2BGR_YUY2;
  318. public const int COLOR_YUV2RGB_YUNV = COLOR_YUV2RGB_YUY2;
  319. public const int COLOR_YUV2BGR_YUNV = COLOR_YUV2BGR_YUY2;
  320. public const int COLOR_YUV2RGBA_YUY2 = 119;
  321. public const int COLOR_YUV2BGRA_YUY2 = 120;
  322. public const int COLOR_YUV2RGBA_YVYU = 121;
  323. public const int COLOR_YUV2BGRA_YVYU = 122;
  324. public const int COLOR_YUV2RGBA_YUYV = COLOR_YUV2RGBA_YUY2;
  325. public const int COLOR_YUV2BGRA_YUYV = COLOR_YUV2BGRA_YUY2;
  326. public const int COLOR_YUV2RGBA_YUNV = COLOR_YUV2RGBA_YUY2;
  327. public const int COLOR_YUV2BGRA_YUNV = COLOR_YUV2BGRA_YUY2;
  328. public const int COLOR_YUV2GRAY_UYVY = 123;
  329. public const int COLOR_YUV2GRAY_YUY2 = 124;
  330. public const int COLOR_YUV2GRAY_Y422 = COLOR_YUV2GRAY_UYVY;
  331. public const int COLOR_YUV2GRAY_UYNV = COLOR_YUV2GRAY_UYVY;
  332. public const int COLOR_YUV2GRAY_YVYU = COLOR_YUV2GRAY_YUY2;
  333. public const int COLOR_YUV2GRAY_YUYV = COLOR_YUV2GRAY_YUY2;
  334. public const int COLOR_YUV2GRAY_YUNV = COLOR_YUV2GRAY_YUY2;
  335. public const int COLOR_RGBA2mRGBA = 125;
  336. public const int COLOR_mRGBA2RGBA = 126;
  337. public const int COLOR_RGB2YUV_I420 = 127;
  338. public const int COLOR_BGR2YUV_I420 = 128;
  339. public const int COLOR_RGB2YUV_IYUV = COLOR_RGB2YUV_I420;
  340. public const int COLOR_BGR2YUV_IYUV = COLOR_BGR2YUV_I420;
  341. public const int COLOR_RGBA2YUV_I420 = 129;
  342. public const int COLOR_BGRA2YUV_I420 = 130;
  343. public const int COLOR_RGBA2YUV_IYUV = COLOR_RGBA2YUV_I420;
  344. public const int COLOR_BGRA2YUV_IYUV = COLOR_BGRA2YUV_I420;
  345. public const int COLOR_RGB2YUV_YV12 = 131;
  346. public const int COLOR_BGR2YUV_YV12 = 132;
  347. public const int COLOR_RGBA2YUV_YV12 = 133;
  348. public const int COLOR_BGRA2YUV_YV12 = 134;
  349. public const int COLOR_BayerBG2BGR = 46;
  350. public const int COLOR_BayerGB2BGR = 47;
  351. public const int COLOR_BayerRG2BGR = 48;
  352. public const int COLOR_BayerGR2BGR = 49;
  353. public const int COLOR_BayerBG2RGB = COLOR_BayerRG2BGR;
  354. public const int COLOR_BayerGB2RGB = COLOR_BayerGR2BGR;
  355. public const int COLOR_BayerRG2RGB = COLOR_BayerBG2BGR;
  356. public const int COLOR_BayerGR2RGB = COLOR_BayerGB2BGR;
  357. public const int COLOR_BayerBG2GRAY = 86;
  358. public const int COLOR_BayerGB2GRAY = 87;
  359. public const int COLOR_BayerRG2GRAY = 88;
  360. public const int COLOR_BayerGR2GRAY = 89;
  361. public const int COLOR_BayerBG2BGR_VNG = 62;
  362. public const int COLOR_BayerGB2BGR_VNG = 63;
  363. public const int COLOR_BayerRG2BGR_VNG = 64;
  364. public const int COLOR_BayerGR2BGR_VNG = 65;
  365. public const int COLOR_BayerBG2RGB_VNG = COLOR_BayerRG2BGR_VNG;
  366. public const int COLOR_BayerGB2RGB_VNG = COLOR_BayerGR2BGR_VNG;
  367. public const int COLOR_BayerRG2RGB_VNG = COLOR_BayerBG2BGR_VNG;
  368. public const int COLOR_BayerGR2RGB_VNG = COLOR_BayerGB2BGR_VNG;
  369. public const int COLOR_BayerBG2BGR_EA = 135;
  370. public const int COLOR_BayerGB2BGR_EA = 136;
  371. public const int COLOR_BayerRG2BGR_EA = 137;
  372. public const int COLOR_BayerGR2BGR_EA = 138;
  373. public const int COLOR_BayerBG2RGB_EA = COLOR_BayerRG2BGR_EA;
  374. public const int COLOR_BayerGB2RGB_EA = COLOR_BayerGR2BGR_EA;
  375. public const int COLOR_BayerRG2RGB_EA = COLOR_BayerBG2BGR_EA;
  376. public const int COLOR_BayerGR2RGB_EA = COLOR_BayerGB2BGR_EA;
  377. public const int COLOR_BayerBG2BGRA = 139;
  378. public const int COLOR_BayerGB2BGRA = 140;
  379. public const int COLOR_BayerRG2BGRA = 141;
  380. public const int COLOR_BayerGR2BGRA = 142;
  381. public const int COLOR_BayerBG2RGBA = COLOR_BayerRG2BGRA;
  382. public const int COLOR_BayerGB2RGBA = COLOR_BayerGR2BGRA;
  383. public const int COLOR_BayerRG2RGBA = COLOR_BayerBG2BGRA;
  384. public const int COLOR_BayerGR2RGBA = COLOR_BayerGB2BGRA;
  385. public const int COLOR_COLORCVT_MAX = 143;
  386. // C++: enum DistanceTransformMasks
  387. public const int DIST_MASK_3 = 3;
  388. public const int DIST_MASK_5 = 5;
  389. public const int DIST_MASK_PRECISE = 0;
  390. // C++: enum ColormapTypes
  391. public const int COLORMAP_AUTUMN = 0;
  392. public const int COLORMAP_BONE = 1;
  393. public const int COLORMAP_JET = 2;
  394. public const int COLORMAP_WINTER = 3;
  395. public const int COLORMAP_RAINBOW = 4;
  396. public const int COLORMAP_OCEAN = 5;
  397. public const int COLORMAP_SUMMER = 6;
  398. public const int COLORMAP_SPRING = 7;
  399. public const int COLORMAP_COOL = 8;
  400. public const int COLORMAP_HSV = 9;
  401. public const int COLORMAP_PINK = 10;
  402. public const int COLORMAP_HOT = 11;
  403. public const int COLORMAP_PARULA = 12;
  404. // C++: enum LineSegmentDetectorModes
  405. public const int LSD_REFINE_NONE = 0;
  406. public const int LSD_REFINE_STD = 1;
  407. public const int LSD_REFINE_ADV = 2;
  408. // C++: enum <unnamed>
  409. public const int CV_GAUSSIAN_5x5 = 7;
  410. public const int CV_SCHARR = -1;
  411. public const int CV_MAX_SOBEL_KSIZE = 7;
  412. public const int CV_RGBA2mRGBA = 125;
  413. public const int CV_mRGBA2RGBA = 126;
  414. public const int CV_WARP_FILL_OUTLIERS = 8;
  415. public const int CV_WARP_INVERSE_MAP = 16;
  416. public const int CV_CHAIN_CODE = 0;
  417. public const int CV_LINK_RUNS = 5;
  418. public const int CV_POLY_APPROX_DP = 0;
  419. public const int CV_CONTOURS_MATCH_I1 = 1;
  420. public const int CV_CONTOURS_MATCH_I2 = 2;
  421. public const int CV_CONTOURS_MATCH_I3 = 3;
  422. public const int CV_CLOCKWISE = 1;
  423. public const int CV_COUNTER_CLOCKWISE = 2;
  424. public const int CV_COMP_CORREL = 0;
  425. public const int CV_COMP_CHISQR = 1;
  426. public const int CV_COMP_INTERSECT = 2;
  427. public const int CV_COMP_BHATTACHARYYA = 3;
  428. public const int CV_COMP_HELLINGER = CV_COMP_BHATTACHARYYA;
  429. public const int CV_COMP_CHISQR_ALT = 4;
  430. public const int CV_COMP_KL_DIV = 5;
  431. public const int CV_DIST_MASK_3 = 3;
  432. public const int CV_DIST_MASK_5 = 5;
  433. public const int CV_DIST_MASK_PRECISE = 0;
  434. public const int CV_DIST_LABEL_CCOMP = 0;
  435. public const int CV_DIST_LABEL_PIXEL = 1;
  436. public const int CV_DIST_USER = -1;
  437. public const int CV_DIST_L1 = 1;
  438. public const int CV_DIST_L2 = 2;
  439. public const int CV_DIST_C = 3;
  440. public const int CV_DIST_L12 = 4;
  441. public const int CV_DIST_FAIR = 5;
  442. public const int CV_DIST_WELSCH = 6;
  443. public const int CV_DIST_HUBER = 7;
  444. public const int CV_CANNY_L2_GRADIENT = (1 << 31);
  445. public const int CV_HOUGH_STANDARD = 0;
  446. public const int CV_HOUGH_PROBABILISTIC = 1;
  447. public const int CV_HOUGH_MULTI_SCALE = 2;
  448. public const int CV_HOUGH_GRADIENT = 3;
  449. // C++: enum SpecialFilter
  450. public const int FILTER_SCHARR = -1;
  451. // C++: enum RetrievalModes
  452. public const int RETR_EXTERNAL = 0;
  453. public const int RETR_LIST = 1;
  454. public const int RETR_CCOMP = 2;
  455. public const int RETR_TREE = 3;
  456. public const int RETR_FLOODFILL = 4;
  457. // C++: enum MorphShapes_c
  458. public const int CV_SHAPE_RECT = 0;
  459. public const int CV_SHAPE_CROSS = 1;
  460. public const int CV_SHAPE_ELLIPSE = 2;
  461. public const int CV_SHAPE_CUSTOM = 100;
  462. // C++: enum HistCompMethods
  463. public const int HISTCMP_CORREL = 0;
  464. public const int HISTCMP_CHISQR = 1;
  465. public const int HISTCMP_INTERSECT = 2;
  466. public const int HISTCMP_BHATTACHARYYA = 3;
  467. public const int HISTCMP_HELLINGER = HISTCMP_BHATTACHARYYA;
  468. public const int HISTCMP_CHISQR_ALT = 4;
  469. public const int HISTCMP_KL_DIV = 5;
  470. //
  471. // C++: Mat cv::getAffineTransform(vector_Point2f src, vector_Point2f dst)
  472. //
  473. //javadoc: getAffineTransform(src, dst)
  474. public static Mat getAffineTransform(MatOfPoint2f src, MatOfPoint2f dst) {
  475. if (src != null) src.ThrowIfDisposed();
  476. if (dst != null) dst.ThrowIfDisposed();
  477. #if (UNITY_ANDROID && !UNITY_EDITOR)
  478. Mat src_mat = src;
  479. Mat dst_mat = dst;
  480. Mat retVal = new Mat(imgproc_Imgproc_getAffineTransform_10(src_mat.nativeObj, dst_mat.nativeObj));
  481. return retVal;
  482. #else
  483. return null;
  484. #endif
  485. }
  486. //
  487. // C++: Mat cv::getGaborKernel(Size ksize, double sigma, double theta, double lambd, double gamma, double psi = CV_PI*0.5, int ktype = CV_64F)
  488. //
  489. //javadoc: getGaborKernel(ksize, sigma, theta, lambd, gamma, psi, ktype)
  490. public static Mat getGaborKernel(Size ksize, double sigma, double theta, double lambd, double gamma, double psi, int ktype) {
  491. #if (UNITY_ANDROID && !UNITY_EDITOR)
  492. Mat retVal = new Mat(imgproc_Imgproc_getGaborKernel_10(ksize.width, ksize.height, sigma, theta, lambd, gamma, psi, ktype));
  493. return retVal;
  494. #else
  495. return null;
  496. #endif
  497. }
  498. //javadoc: getGaborKernel(ksize, sigma, theta, lambd, gamma, psi)
  499. public static Mat getGaborKernel(Size ksize, double sigma, double theta, double lambd, double gamma, double psi) {
  500. #if (UNITY_ANDROID && !UNITY_EDITOR)
  501. Mat retVal = new Mat(imgproc_Imgproc_getGaborKernel_11(ksize.width, ksize.height, sigma, theta, lambd, gamma, psi));
  502. return retVal;
  503. #else
  504. return null;
  505. #endif
  506. }
  507. //javadoc: getGaborKernel(ksize, sigma, theta, lambd, gamma)
  508. public static Mat getGaborKernel(Size ksize, double sigma, double theta, double lambd, double gamma) {
  509. #if (UNITY_ANDROID && !UNITY_EDITOR)
  510. Mat retVal = new Mat(imgproc_Imgproc_getGaborKernel_12(ksize.width, ksize.height, sigma, theta, lambd, gamma));
  511. return retVal;
  512. #else
  513. return null;
  514. #endif
  515. }
  516. //
  517. // C++: Mat cv::getGaussianKernel(int ksize, double sigma, int ktype = CV_64F)
  518. //
  519. //javadoc: getGaussianKernel(ksize, sigma, ktype)
  520. public static Mat getGaussianKernel(int ksize, double sigma, int ktype) {
  521. #if (UNITY_ANDROID && !UNITY_EDITOR)
  522. Mat retVal = new Mat(imgproc_Imgproc_getGaussianKernel_10(ksize, sigma, ktype));
  523. return retVal;
  524. #else
  525. return null;
  526. #endif
  527. }
  528. //javadoc: getGaussianKernel(ksize, sigma)
  529. public static Mat getGaussianKernel(int ksize, double sigma) {
  530. #if (UNITY_ANDROID && !UNITY_EDITOR)
  531. Mat retVal = new Mat(imgproc_Imgproc_getGaussianKernel_11(ksize, sigma));
  532. return retVal;
  533. #else
  534. return null;
  535. #endif
  536. }
  537. //
  538. // C++: Mat cv::getPerspectiveTransform(Mat src, Mat dst, int solveMethod = DECOMP_LU)
  539. //
  540. //javadoc: getPerspectiveTransform(src, dst, solveMethod)
  541. public static Mat getPerspectiveTransform(Mat src, Mat dst, int solveMethod) {
  542. if (src != null) src.ThrowIfDisposed();
  543. if (dst != null) dst.ThrowIfDisposed();
  544. #if (UNITY_ANDROID && !UNITY_EDITOR)
  545. Mat retVal = new Mat(imgproc_Imgproc_getPerspectiveTransform_10(src.nativeObj, dst.nativeObj, solveMethod));
  546. return retVal;
  547. #else
  548. return null;
  549. #endif
  550. }
  551. //javadoc: getPerspectiveTransform(src, dst)
  552. public static Mat getPerspectiveTransform(Mat src, Mat dst) {
  553. if (src != null) src.ThrowIfDisposed();
  554. if (dst != null) dst.ThrowIfDisposed();
  555. #if (UNITY_ANDROID && !UNITY_EDITOR)
  556. Mat retVal = new Mat(imgproc_Imgproc_getPerspectiveTransform_11(src.nativeObj, dst.nativeObj));
  557. return retVal;
  558. #else
  559. return null;
  560. #endif
  561. }
  562. //
  563. // C++: Mat cv::getRotationMatrix2D(Point2f center, double angle, double scale)
  564. //
  565. //javadoc: getRotationMatrix2D(center, angle, scale)
  566. public static Mat getRotationMatrix2D(Point center, double angle, double scale) {
  567. #if (UNITY_ANDROID && !UNITY_EDITOR)
  568. Mat retVal = new Mat(imgproc_Imgproc_getRotationMatrix2D_10(center.x, center.y, angle, scale));
  569. return retVal;
  570. #else
  571. return null;
  572. #endif
  573. }
  574. //
  575. // C++: Mat cv::getStructuringElement(int shape, Size ksize, Point anchor = Point(-1,-1))
  576. //
  577. //javadoc: getStructuringElement(shape, ksize, anchor)
  578. public static Mat getStructuringElement(int shape, Size ksize, Point anchor) {
  579. #if (UNITY_ANDROID && !UNITY_EDITOR)
  580. Mat retVal = new Mat(imgproc_Imgproc_getStructuringElement_10(shape, ksize.width, ksize.height, anchor.x, anchor.y));
  581. return retVal;
  582. #else
  583. return null;
  584. #endif
  585. }
  586. //javadoc: getStructuringElement(shape, ksize)
  587. public static Mat getStructuringElement(int shape, Size ksize) {
  588. #if (UNITY_ANDROID && !UNITY_EDITOR)
  589. Mat retVal = new Mat(imgproc_Imgproc_getStructuringElement_11(shape, ksize.width, ksize.height));
  590. return retVal;
  591. #else
  592. return null;
  593. #endif
  594. }
  595. //
  596. // C++: Moments cv::moments(Mat array, bool binaryImage = false)
  597. //
  598. //javadoc: moments(array, binaryImage)
  599. public static Moments moments(Mat array, bool binaryImage) {
  600. if (array != null) array.ThrowIfDisposed();
  601. #if (UNITY_ANDROID && !UNITY_EDITOR)
  602. double[] tmpArray = new double[10];
  603. imgproc_Imgproc_moments_10(array.nativeObj, binaryImage, tmpArray);
  604. Moments retVal = new Moments(tmpArray);
  605. return retVal;
  606. #else
  607. return null;
  608. #endif
  609. }
  610. //javadoc: moments(array)
  611. public static Moments moments(Mat array) {
  612. if (array != null) array.ThrowIfDisposed();
  613. #if (UNITY_ANDROID && !UNITY_EDITOR)
  614. double[] tmpArray = new double[10];
  615. imgproc_Imgproc_moments_11(array.nativeObj, tmpArray);
  616. Moments retVal = new Moments(tmpArray);
  617. return retVal;
  618. #else
  619. return null;
  620. #endif
  621. }
  622. //
  623. // C++: Point2d cv::phaseCorrelate(Mat src1, Mat src2, Mat window = Mat(), double* response = 0)
  624. //
  625. //javadoc: phaseCorrelate(src1, src2, window, response)
  626. public static Point phaseCorrelate(Mat src1, Mat src2, Mat window, double[] response) {
  627. if (src1 != null) src1.ThrowIfDisposed();
  628. if (src2 != null) src2.ThrowIfDisposed();
  629. if (window != null) window.ThrowIfDisposed();
  630. #if (UNITY_ANDROID && !UNITY_EDITOR)
  631. double[] response_out = new double[1];
  632. double[] tmpArray = new double[2];
  633. imgproc_Imgproc_phaseCorrelate_10(src1.nativeObj, src2.nativeObj, window.nativeObj, response_out, tmpArray);
  634. Point retVal = new Point(tmpArray);
  635. if (response != null) response[0] = (double)response_out[0];
  636. return retVal;
  637. #else
  638. return null;
  639. #endif
  640. }
  641. //javadoc: phaseCorrelate(src1, src2, window)
  642. public static Point phaseCorrelate(Mat src1, Mat src2, Mat window) {
  643. if (src1 != null) src1.ThrowIfDisposed();
  644. if (src2 != null) src2.ThrowIfDisposed();
  645. if (window != null) window.ThrowIfDisposed();
  646. #if (UNITY_ANDROID && !UNITY_EDITOR)
  647. double[] tmpArray = new double[2];
  648. imgproc_Imgproc_phaseCorrelate_11(src1.nativeObj, src2.nativeObj, window.nativeObj, tmpArray);
  649. Point retVal = new Point(tmpArray);
  650. return retVal;
  651. #else
  652. return null;
  653. #endif
  654. }
  655. //javadoc: phaseCorrelate(src1, src2)
  656. public static Point phaseCorrelate(Mat src1, Mat src2) {
  657. if (src1 != null) src1.ThrowIfDisposed();
  658. if (src2 != null) src2.ThrowIfDisposed();
  659. #if (UNITY_ANDROID && !UNITY_EDITOR)
  660. double[] tmpArray = new double[2];
  661. imgproc_Imgproc_phaseCorrelate_12(src1.nativeObj, src2.nativeObj, tmpArray);
  662. Point retVal = new Point(tmpArray);
  663. return retVal;
  664. #else
  665. return null;
  666. #endif
  667. }
  668. //
  669. // C++: Ptr_CLAHE cv::createCLAHE(double clipLimit = 40.0, Size tileGridSize = Size(8, 8))
  670. //
  671. //javadoc: createCLAHE(clipLimit, tileGridSize)
  672. public static CLAHE createCLAHE(double clipLimit, Size tileGridSize) {
  673. #if (UNITY_ANDROID && !UNITY_EDITOR)
  674. CLAHE retVal = CLAHE.__fromPtr__(imgproc_Imgproc_createCLAHE_10(clipLimit, tileGridSize.width, tileGridSize.height));
  675. return retVal;
  676. #else
  677. return null;
  678. #endif
  679. }
  680. //javadoc: createCLAHE(clipLimit)
  681. public static CLAHE createCLAHE(double clipLimit) {
  682. #if (UNITY_ANDROID && !UNITY_EDITOR)
  683. CLAHE retVal = CLAHE.__fromPtr__(imgproc_Imgproc_createCLAHE_11(clipLimit));
  684. return retVal;
  685. #else
  686. return null;
  687. #endif
  688. }
  689. //javadoc: createCLAHE()
  690. public static CLAHE createCLAHE() {
  691. #if (UNITY_ANDROID && !UNITY_EDITOR)
  692. CLAHE retVal = CLAHE.__fromPtr__(imgproc_Imgproc_createCLAHE_12());
  693. return retVal;
  694. #else
  695. return null;
  696. #endif
  697. }
  698. //
  699. // C++: Ptr_LineSegmentDetector cv::createLineSegmentDetector(int _refine = LSD_REFINE_STD, double _scale = 0.8, double _sigma_scale = 0.6, double _quant = 2.0, double _ang_th = 22.5, double _log_eps = 0, double _density_th = 0.7, int _n_bins = 1024)
  700. //
  701. //javadoc: createLineSegmentDetector(_refine, _scale, _sigma_scale, _quant, _ang_th, _log_eps, _density_th, _n_bins)
  702. public static LineSegmentDetector createLineSegmentDetector(int _refine, double _scale, double _sigma_scale, double _quant, double _ang_th, double _log_eps, double _density_th, int _n_bins) {
  703. #if (UNITY_ANDROID && !UNITY_EDITOR)
  704. LineSegmentDetector retVal = LineSegmentDetector.__fromPtr__(imgproc_Imgproc_createLineSegmentDetector_10(_refine, _scale, _sigma_scale, _quant, _ang_th, _log_eps, _density_th, _n_bins));
  705. return retVal;
  706. #else
  707. return null;
  708. #endif
  709. }
  710. //javadoc: createLineSegmentDetector(_refine, _scale, _sigma_scale, _quant, _ang_th, _log_eps, _density_th)
  711. public static LineSegmentDetector createLineSegmentDetector(int _refine, double _scale, double _sigma_scale, double _quant, double _ang_th, double _log_eps, double _density_th) {
  712. #if (UNITY_ANDROID && !UNITY_EDITOR)
  713. LineSegmentDetector retVal = LineSegmentDetector.__fromPtr__(imgproc_Imgproc_createLineSegmentDetector_11(_refine, _scale, _sigma_scale, _quant, _ang_th, _log_eps, _density_th));
  714. return retVal;
  715. #else
  716. return null;
  717. #endif
  718. }
  719. //javadoc: createLineSegmentDetector(_refine, _scale, _sigma_scale, _quant, _ang_th, _log_eps)
  720. public static LineSegmentDetector createLineSegmentDetector(int _refine, double _scale, double _sigma_scale, double _quant, double _ang_th, double _log_eps) {
  721. #if (UNITY_ANDROID && !UNITY_EDITOR)
  722. LineSegmentDetector retVal = LineSegmentDetector.__fromPtr__(imgproc_Imgproc_createLineSegmentDetector_12(_refine, _scale, _sigma_scale, _quant, _ang_th, _log_eps));
  723. return retVal;
  724. #else
  725. return null;
  726. #endif
  727. }
  728. //javadoc: createLineSegmentDetector(_refine, _scale, _sigma_scale, _quant, _ang_th)
  729. public static LineSegmentDetector createLineSegmentDetector(int _refine, double _scale, double _sigma_scale, double _quant, double _ang_th) {
  730. #if (UNITY_ANDROID && !UNITY_EDITOR)
  731. LineSegmentDetector retVal = LineSegmentDetector.__fromPtr__(imgproc_Imgproc_createLineSegmentDetector_13(_refine, _scale, _sigma_scale, _quant, _ang_th));
  732. return retVal;
  733. #else
  734. return null;
  735. #endif
  736. }
  737. //javadoc: createLineSegmentDetector(_refine, _scale, _sigma_scale, _quant)
  738. public static LineSegmentDetector createLineSegmentDetector(int _refine, double _scale, double _sigma_scale, double _quant) {
  739. #if (UNITY_ANDROID && !UNITY_EDITOR)
  740. LineSegmentDetector retVal = LineSegmentDetector.__fromPtr__(imgproc_Imgproc_createLineSegmentDetector_14(_refine, _scale, _sigma_scale, _quant));
  741. return retVal;
  742. #else
  743. return null;
  744. #endif
  745. }
  746. //javadoc: createLineSegmentDetector(_refine, _scale, _sigma_scale)
  747. public static LineSegmentDetector createLineSegmentDetector(int _refine, double _scale, double _sigma_scale) {
  748. #if (UNITY_ANDROID && !UNITY_EDITOR)
  749. LineSegmentDetector retVal = LineSegmentDetector.__fromPtr__(imgproc_Imgproc_createLineSegmentDetector_15(_refine, _scale, _sigma_scale));
  750. return retVal;
  751. #else
  752. return null;
  753. #endif
  754. }
  755. //javadoc: createLineSegmentDetector(_refine, _scale)
  756. public static LineSegmentDetector createLineSegmentDetector(int _refine, double _scale) {
  757. #if (UNITY_ANDROID && !UNITY_EDITOR)
  758. LineSegmentDetector retVal = LineSegmentDetector.__fromPtr__(imgproc_Imgproc_createLineSegmentDetector_16(_refine, _scale));
  759. return retVal;
  760. #else
  761. return null;
  762. #endif
  763. }
  764. //javadoc: createLineSegmentDetector(_refine)
  765. public static LineSegmentDetector createLineSegmentDetector(int _refine) {
  766. #if (UNITY_ANDROID && !UNITY_EDITOR)
  767. LineSegmentDetector retVal = LineSegmentDetector.__fromPtr__(imgproc_Imgproc_createLineSegmentDetector_17(_refine));
  768. return retVal;
  769. #else
  770. return null;
  771. #endif
  772. }
  773. //javadoc: createLineSegmentDetector()
  774. public static LineSegmentDetector createLineSegmentDetector() {
  775. #if (UNITY_ANDROID && !UNITY_EDITOR)
  776. LineSegmentDetector retVal = LineSegmentDetector.__fromPtr__(imgproc_Imgproc_createLineSegmentDetector_18());
  777. return retVal;
  778. #else
  779. return null;
  780. #endif
  781. }
  782. //
  783. // C++: Rect cv::boundingRect(Mat array)
  784. //
  785. //javadoc: boundingRect(array)
  786. public static Rect boundingRect(Mat array) {
  787. if (array != null) array.ThrowIfDisposed();
  788. #if (UNITY_ANDROID && !UNITY_EDITOR)
  789. double[] tmpArray = new double[4];
  790. imgproc_Imgproc_boundingRect_10(array.nativeObj, tmpArray);
  791. Rect retVal = new Rect(tmpArray);
  792. return retVal;
  793. #else
  794. return null;
  795. #endif
  796. }
  797. //
  798. // C++: RotatedRect cv::fitEllipse(vector_Point2f points)
  799. //
  800. //javadoc: fitEllipse(points)
  801. public static RotatedRect fitEllipse(MatOfPoint2f points) {
  802. if (points != null) points.ThrowIfDisposed();
  803. #if (UNITY_ANDROID && !UNITY_EDITOR)
  804. Mat points_mat = points;
  805. double[] tmpArray = new double[5];
  806. imgproc_Imgproc_fitEllipse_10(points_mat.nativeObj, tmpArray);
  807. RotatedRect retVal = new RotatedRect(tmpArray);
  808. return retVal;
  809. #else
  810. return null;
  811. #endif
  812. }
  813. //
  814. // C++: RotatedRect cv::fitEllipseAMS(Mat points)
  815. //
  816. //javadoc: fitEllipseAMS(points)
  817. public static RotatedRect fitEllipseAMS(Mat points) {
  818. if (points != null) points.ThrowIfDisposed();
  819. #if (UNITY_ANDROID && !UNITY_EDITOR)
  820. double[] tmpArray = new double[5];
  821. imgproc_Imgproc_fitEllipseAMS_10(points.nativeObj, tmpArray);
  822. RotatedRect retVal = new RotatedRect(tmpArray);
  823. return retVal;
  824. #else
  825. return null;
  826. #endif
  827. }
  828. //
  829. // C++: RotatedRect cv::fitEllipseDirect(Mat points)
  830. //
  831. //javadoc: fitEllipseDirect(points)
  832. public static RotatedRect fitEllipseDirect(Mat points) {
  833. if (points != null) points.ThrowIfDisposed();
  834. #if (UNITY_ANDROID && !UNITY_EDITOR)
  835. double[] tmpArray = new double[5];
  836. imgproc_Imgproc_fitEllipseDirect_10(points.nativeObj, tmpArray);
  837. RotatedRect retVal = new RotatedRect(tmpArray);
  838. return retVal;
  839. #else
  840. return null;
  841. #endif
  842. }
  843. //
  844. // C++: RotatedRect cv::minAreaRect(vector_Point2f points)
  845. //
  846. //javadoc: minAreaRect(points)
  847. public static RotatedRect minAreaRect(MatOfPoint2f points) {
  848. if (points != null) points.ThrowIfDisposed();
  849. #if (UNITY_ANDROID && !UNITY_EDITOR)
  850. Mat points_mat = points;
  851. double[] tmpArray = new double[5];
  852. imgproc_Imgproc_minAreaRect_10(points_mat.nativeObj, tmpArray);
  853. RotatedRect retVal = new RotatedRect(tmpArray);
  854. return retVal;
  855. #else
  856. return null;
  857. #endif
  858. }
  859. //
  860. // C++: bool cv::clipLine(Rect imgRect, Point& pt1, Point& pt2)
  861. //
  862. //javadoc: clipLine(imgRect, pt1, pt2)
  863. public static bool clipLine(Rect imgRect, Point pt1, Point pt2) {
  864. #if (UNITY_ANDROID && !UNITY_EDITOR)
  865. double[] pt1_out = new double[2];
  866. double[] pt2_out = new double[2];
  867. bool retVal = imgproc_Imgproc_clipLine_10(imgRect.x, imgRect.y, imgRect.width, imgRect.height, pt1.x, pt1.y, pt1_out, pt2.x, pt2.y, pt2_out);
  868. if (pt1 != null) { pt1.x = pt1_out[0]; pt1.y = pt1_out[1]; }
  869. if (pt2 != null) { pt2.x = pt2_out[0]; pt2.y = pt2_out[1]; }
  870. return retVal;
  871. #else
  872. return false;
  873. #endif
  874. }
  875. //
  876. // C++: bool cv::isContourConvex(vector_Point contour)
  877. //
  878. //javadoc: isContourConvex(contour)
  879. public static bool isContourConvex(MatOfPoint contour) {
  880. if (contour != null) contour.ThrowIfDisposed();
  881. #if (UNITY_ANDROID && !UNITY_EDITOR)
  882. Mat contour_mat = contour;
  883. bool retVal = imgproc_Imgproc_isContourConvex_10(contour_mat.nativeObj);
  884. return retVal;
  885. #else
  886. return false;
  887. #endif
  888. }
  889. //
  890. // C++: double cv::arcLength(vector_Point2f curve, bool closed)
  891. //
  892. //javadoc: arcLength(curve, closed)
  893. public static double arcLength(MatOfPoint2f curve, bool closed) {
  894. if (curve != null) curve.ThrowIfDisposed();
  895. #if (UNITY_ANDROID && !UNITY_EDITOR)
  896. Mat curve_mat = curve;
  897. double retVal = imgproc_Imgproc_arcLength_10(curve_mat.nativeObj, closed);
  898. return retVal;
  899. #else
  900. return -1;
  901. #endif
  902. }
  903. //
  904. // C++: double cv::compareHist(Mat H1, Mat H2, int method)
  905. //
  906. //javadoc: compareHist(H1, H2, method)
  907. public static double compareHist(Mat H1, Mat H2, int method) {
  908. if (H1 != null) H1.ThrowIfDisposed();
  909. if (H2 != null) H2.ThrowIfDisposed();
  910. #if (UNITY_ANDROID && !UNITY_EDITOR)
  911. double retVal = imgproc_Imgproc_compareHist_10(H1.nativeObj, H2.nativeObj, method);
  912. return retVal;
  913. #else
  914. return -1;
  915. #endif
  916. }
  917. //
  918. // C++: double cv::contourArea(Mat contour, bool oriented = false)
  919. //
  920. //javadoc: contourArea(contour, oriented)
  921. public static double contourArea(Mat contour, bool oriented) {
  922. if (contour != null) contour.ThrowIfDisposed();
  923. #if (UNITY_ANDROID && !UNITY_EDITOR)
  924. double retVal = imgproc_Imgproc_contourArea_10(contour.nativeObj, oriented);
  925. return retVal;
  926. #else
  927. return -1;
  928. #endif
  929. }
  930. //javadoc: contourArea(contour)
  931. public static double contourArea(Mat contour) {
  932. if (contour != null) contour.ThrowIfDisposed();
  933. #if (UNITY_ANDROID && !UNITY_EDITOR)
  934. double retVal = imgproc_Imgproc_contourArea_11(contour.nativeObj);
  935. return retVal;
  936. #else
  937. return -1;
  938. #endif
  939. }
  940. //
  941. // C++: double cv::getFontScaleFromHeight(int fontFace, int pixelHeight, int thickness = 1)
  942. //
  943. //javadoc: getFontScaleFromHeight(fontFace, pixelHeight, thickness)
  944. public static double getFontScaleFromHeight(int fontFace, int pixelHeight, int thickness) {
  945. #if (UNITY_ANDROID && !UNITY_EDITOR)
  946. double retVal = imgproc_Imgproc_getFontScaleFromHeight_10(fontFace, pixelHeight, thickness);
  947. return retVal;
  948. #else
  949. return -1;
  950. #endif
  951. }
  952. //javadoc: getFontScaleFromHeight(fontFace, pixelHeight)
  953. public static double getFontScaleFromHeight(int fontFace, int pixelHeight) {
  954. #if (UNITY_ANDROID && !UNITY_EDITOR)
  955. double retVal = imgproc_Imgproc_getFontScaleFromHeight_11(fontFace, pixelHeight);
  956. return retVal;
  957. #else
  958. return -1;
  959. #endif
  960. }
  961. //
  962. // C++: double cv::matchShapes(Mat contour1, Mat contour2, int method, double parameter)
  963. //
  964. //javadoc: matchShapes(contour1, contour2, method, parameter)
  965. public static double matchShapes(Mat contour1, Mat contour2, int method, double parameter) {
  966. if (contour1 != null) contour1.ThrowIfDisposed();
  967. if (contour2 != null) contour2.ThrowIfDisposed();
  968. #if (UNITY_ANDROID && !UNITY_EDITOR)
  969. double retVal = imgproc_Imgproc_matchShapes_10(contour1.nativeObj, contour2.nativeObj, method, parameter);
  970. return retVal;
  971. #else
  972. return -1;
  973. #endif
  974. }
  975. //
  976. // C++: double cv::minEnclosingTriangle(Mat points, Mat& triangle)
  977. //
  978. //javadoc: minEnclosingTriangle(points, triangle)
  979. public static double minEnclosingTriangle(Mat points, Mat triangle) {
  980. if (points != null) points.ThrowIfDisposed();
  981. if (triangle != null) triangle.ThrowIfDisposed();
  982. #if (UNITY_ANDROID && !UNITY_EDITOR)
  983. double retVal = imgproc_Imgproc_minEnclosingTriangle_10(points.nativeObj, triangle.nativeObj);
  984. return retVal;
  985. #else
  986. return -1;
  987. #endif
  988. }
  989. //
  990. // C++: double cv::pointPolygonTest(vector_Point2f contour, Point2f pt, bool measureDist)
  991. //
  992. //javadoc: pointPolygonTest(contour, pt, measureDist)
  993. public static double pointPolygonTest(MatOfPoint2f contour, Point pt, bool measureDist) {
  994. if (contour != null) contour.ThrowIfDisposed();
  995. #if (UNITY_ANDROID && !UNITY_EDITOR)
  996. Mat contour_mat = contour;
  997. double retVal = imgproc_Imgproc_pointPolygonTest_10(contour_mat.nativeObj, pt.x, pt.y, measureDist);
  998. return retVal;
  999. #else
  1000. return -1;
  1001. #endif
  1002. }
  1003. //
  1004. // C++: double cv::threshold(Mat src, Mat& dst, double thresh, double maxval, int type)
  1005. //
  1006. //javadoc: threshold(src, dst, thresh, maxval, type)
  1007. public static double threshold(Mat src, Mat dst, double thresh, double maxval, int type) {
  1008. if (src != null) src.ThrowIfDisposed();
  1009. if (dst != null) dst.ThrowIfDisposed();
  1010. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1011. double retVal = imgproc_Imgproc_threshold_10(src.nativeObj, dst.nativeObj, thresh, maxval, type);
  1012. return retVal;
  1013. #else
  1014. return -1;
  1015. #endif
  1016. }
  1017. //
  1018. // C++: float cv::intersectConvexConvex(Mat _p1, Mat _p2, Mat& _p12, bool handleNested = true)
  1019. //
  1020. //javadoc: intersectConvexConvex(_p1, _p2, _p12, handleNested)
  1021. public static float intersectConvexConvex(Mat _p1, Mat _p2, Mat _p12, bool handleNested) {
  1022. if (_p1 != null) _p1.ThrowIfDisposed();
  1023. if (_p2 != null) _p2.ThrowIfDisposed();
  1024. if (_p12 != null) _p12.ThrowIfDisposed();
  1025. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1026. float retVal = imgproc_Imgproc_intersectConvexConvex_10(_p1.nativeObj, _p2.nativeObj, _p12.nativeObj, handleNested);
  1027. return retVal;
  1028. #else
  1029. return -1;
  1030. #endif
  1031. }
  1032. //javadoc: intersectConvexConvex(_p1, _p2, _p12)
  1033. public static float intersectConvexConvex(Mat _p1, Mat _p2, Mat _p12) {
  1034. if (_p1 != null) _p1.ThrowIfDisposed();
  1035. if (_p2 != null) _p2.ThrowIfDisposed();
  1036. if (_p12 != null) _p12.ThrowIfDisposed();
  1037. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1038. float retVal = imgproc_Imgproc_intersectConvexConvex_11(_p1.nativeObj, _p2.nativeObj, _p12.nativeObj);
  1039. return retVal;
  1040. #else
  1041. return -1;
  1042. #endif
  1043. }
  1044. //
  1045. // C++: float cv::wrapperEMD(Mat signature1, Mat signature2, int distType, Mat cost = Mat(), Ptr_float& lowerBound = Ptr<float>(), Mat& flow = Mat())
  1046. //
  1047. //javadoc: EMD(signature1, signature2, distType, cost, flow)
  1048. public static float EMD(Mat signature1, Mat signature2, int distType, Mat cost, Mat flow) {
  1049. if (signature1 != null) signature1.ThrowIfDisposed();
  1050. if (signature2 != null) signature2.ThrowIfDisposed();
  1051. if (cost != null) cost.ThrowIfDisposed();
  1052. if (flow != null) flow.ThrowIfDisposed();
  1053. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1054. float retVal = imgproc_Imgproc_EMD_10(signature1.nativeObj, signature2.nativeObj, distType, cost.nativeObj, flow.nativeObj);
  1055. return retVal;
  1056. #else
  1057. return -1;
  1058. #endif
  1059. }
  1060. //javadoc: EMD(signature1, signature2, distType, cost)
  1061. public static float EMD(Mat signature1, Mat signature2, int distType, Mat cost) {
  1062. if (signature1 != null) signature1.ThrowIfDisposed();
  1063. if (signature2 != null) signature2.ThrowIfDisposed();
  1064. if (cost != null) cost.ThrowIfDisposed();
  1065. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1066. float retVal = imgproc_Imgproc_EMD_11(signature1.nativeObj, signature2.nativeObj, distType, cost.nativeObj);
  1067. return retVal;
  1068. #else
  1069. return -1;
  1070. #endif
  1071. }
  1072. //javadoc: EMD(signature1, signature2, distType)
  1073. public static float EMD(Mat signature1, Mat signature2, int distType) {
  1074. if (signature1 != null) signature1.ThrowIfDisposed();
  1075. if (signature2 != null) signature2.ThrowIfDisposed();
  1076. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1077. float retVal = imgproc_Imgproc_EMD_13(signature1.nativeObj, signature2.nativeObj, distType);
  1078. return retVal;
  1079. #else
  1080. return -1;
  1081. #endif
  1082. }
  1083. //
  1084. // C++: int cv::connectedComponents(Mat image, Mat& labels, int connectivity, int ltype, int ccltype)
  1085. //
  1086. //javadoc: connectedComponentsWithAlgorithm(image, labels, connectivity, ltype, ccltype)
  1087. public static int connectedComponentsWithAlgorithm(Mat image, Mat labels, int connectivity, int ltype, int ccltype) {
  1088. if (image != null) image.ThrowIfDisposed();
  1089. if (labels != null) labels.ThrowIfDisposed();
  1090. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1091. int retVal = imgproc_Imgproc_connectedComponentsWithAlgorithm_10(image.nativeObj, labels.nativeObj, connectivity, ltype, ccltype);
  1092. return retVal;
  1093. #else
  1094. return -1;
  1095. #endif
  1096. }
  1097. //
  1098. // C++: int cv::connectedComponents(Mat image, Mat& labels, int connectivity = 8, int ltype = CV_32S)
  1099. //
  1100. //javadoc: connectedComponents(image, labels, connectivity, ltype)
  1101. public static int connectedComponents(Mat image, Mat labels, int connectivity, int ltype) {
  1102. if (image != null) image.ThrowIfDisposed();
  1103. if (labels != null) labels.ThrowIfDisposed();
  1104. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1105. int retVal = imgproc_Imgproc_connectedComponents_10(image.nativeObj, labels.nativeObj, connectivity, ltype);
  1106. return retVal;
  1107. #else
  1108. return -1;
  1109. #endif
  1110. }
  1111. //javadoc: connectedComponents(image, labels, connectivity)
  1112. public static int connectedComponents(Mat image, Mat labels, int connectivity) {
  1113. if (image != null) image.ThrowIfDisposed();
  1114. if (labels != null) labels.ThrowIfDisposed();
  1115. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1116. int retVal = imgproc_Imgproc_connectedComponents_11(image.nativeObj, labels.nativeObj, connectivity);
  1117. return retVal;
  1118. #else
  1119. return -1;
  1120. #endif
  1121. }
  1122. //javadoc: connectedComponents(image, labels)
  1123. public static int connectedComponents(Mat image, Mat labels) {
  1124. if (image != null) image.ThrowIfDisposed();
  1125. if (labels != null) labels.ThrowIfDisposed();
  1126. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1127. int retVal = imgproc_Imgproc_connectedComponents_12(image.nativeObj, labels.nativeObj);
  1128. return retVal;
  1129. #else
  1130. return -1;
  1131. #endif
  1132. }
  1133. //
  1134. // C++: int cv::connectedComponentsWithStats(Mat image, Mat& labels, Mat& stats, Mat& centroids, int connectivity, int ltype, int ccltype)
  1135. //
  1136. //javadoc: connectedComponentsWithStatsWithAlgorithm(image, labels, stats, centroids, connectivity, ltype, ccltype)
  1137. public static int connectedComponentsWithStatsWithAlgorithm(Mat image, Mat labels, Mat stats, Mat centroids, int connectivity, int ltype, int ccltype) {
  1138. if (image != null) image.ThrowIfDisposed();
  1139. if (labels != null) labels.ThrowIfDisposed();
  1140. if (stats != null) stats.ThrowIfDisposed();
  1141. if (centroids != null) centroids.ThrowIfDisposed();
  1142. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1143. int retVal = imgproc_Imgproc_connectedComponentsWithStatsWithAlgorithm_10(image.nativeObj, labels.nativeObj, stats.nativeObj, centroids.nativeObj, connectivity, ltype, ccltype);
  1144. return retVal;
  1145. #else
  1146. return -1;
  1147. #endif
  1148. }
  1149. //
  1150. // C++: int cv::connectedComponentsWithStats(Mat image, Mat& labels, Mat& stats, Mat& centroids, int connectivity = 8, int ltype = CV_32S)
  1151. //
  1152. //javadoc: connectedComponentsWithStats(image, labels, stats, centroids, connectivity, ltype)
  1153. public static int connectedComponentsWithStats(Mat image, Mat labels, Mat stats, Mat centroids, int connectivity, int ltype) {
  1154. if (image != null) image.ThrowIfDisposed();
  1155. if (labels != null) labels.ThrowIfDisposed();
  1156. if (stats != null) stats.ThrowIfDisposed();
  1157. if (centroids != null) centroids.ThrowIfDisposed();
  1158. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1159. int retVal = imgproc_Imgproc_connectedComponentsWithStats_10(image.nativeObj, labels.nativeObj, stats.nativeObj, centroids.nativeObj, connectivity, ltype);
  1160. return retVal;
  1161. #else
  1162. return -1;
  1163. #endif
  1164. }
  1165. //javadoc: connectedComponentsWithStats(image, labels, stats, centroids, connectivity)
  1166. public static int connectedComponentsWithStats(Mat image, Mat labels, Mat stats, Mat centroids, int connectivity) {
  1167. if (image != null) image.ThrowIfDisposed();
  1168. if (labels != null) labels.ThrowIfDisposed();
  1169. if (stats != null) stats.ThrowIfDisposed();
  1170. if (centroids != null) centroids.ThrowIfDisposed();
  1171. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1172. int retVal = imgproc_Imgproc_connectedComponentsWithStats_11(image.nativeObj, labels.nativeObj, stats.nativeObj, centroids.nativeObj, connectivity);
  1173. return retVal;
  1174. #else
  1175. return -1;
  1176. #endif
  1177. }
  1178. //javadoc: connectedComponentsWithStats(image, labels, stats, centroids)
  1179. public static int connectedComponentsWithStats(Mat image, Mat labels, Mat stats, Mat centroids) {
  1180. if (image != null) image.ThrowIfDisposed();
  1181. if (labels != null) labels.ThrowIfDisposed();
  1182. if (stats != null) stats.ThrowIfDisposed();
  1183. if (centroids != null) centroids.ThrowIfDisposed();
  1184. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1185. int retVal = imgproc_Imgproc_connectedComponentsWithStats_12(image.nativeObj, labels.nativeObj, stats.nativeObj, centroids.nativeObj);
  1186. return retVal;
  1187. #else
  1188. return -1;
  1189. #endif
  1190. }
  1191. //
  1192. // C++: int cv::floodFill(Mat& image, Mat& mask, Point seedPoint, Scalar newVal, Rect* rect = 0, Scalar loDiff = Scalar(), Scalar upDiff = Scalar(), int flags = 4)
  1193. //
  1194. //javadoc: floodFill(image, mask, seedPoint, newVal, rect, loDiff, upDiff, flags)
  1195. public static int floodFill(Mat image, Mat mask, Point seedPoint, Scalar newVal, Rect rect, Scalar loDiff, Scalar upDiff, int flags) {
  1196. if (image != null) image.ThrowIfDisposed();
  1197. if (mask != null) mask.ThrowIfDisposed();
  1198. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1199. double[] rect_out = new double[4];
  1200. int retVal = imgproc_Imgproc_floodFill_10(image.nativeObj, mask.nativeObj, seedPoint.x, seedPoint.y, newVal.val[0], newVal.val[1], newVal.val[2], newVal.val[3], rect_out, loDiff.val[0], loDiff.val[1], loDiff.val[2], loDiff.val[3], upDiff.val[0], upDiff.val[1], upDiff.val[2], upDiff.val[3], flags);
  1201. if (rect != null) { rect.x = (int)rect_out[0]; rect.y = (int)rect_out[1]; rect.width = (int)rect_out[2]; rect.height = (int)rect_out[3]; }
  1202. return retVal;
  1203. #else
  1204. return -1;
  1205. #endif
  1206. }
  1207. //javadoc: floodFill(image, mask, seedPoint, newVal, rect, loDiff, upDiff)
  1208. public static int floodFill(Mat image, Mat mask, Point seedPoint, Scalar newVal, Rect rect, Scalar loDiff, Scalar upDiff) {
  1209. if (image != null) image.ThrowIfDisposed();
  1210. if (mask != null) mask.ThrowIfDisposed();
  1211. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1212. double[] rect_out = new double[4];
  1213. int retVal = imgproc_Imgproc_floodFill_11(image.nativeObj, mask.nativeObj, seedPoint.x, seedPoint.y, newVal.val[0], newVal.val[1], newVal.val[2], newVal.val[3], rect_out, loDiff.val[0], loDiff.val[1], loDiff.val[2], loDiff.val[3], upDiff.val[0], upDiff.val[1], upDiff.val[2], upDiff.val[3]);
  1214. if (rect != null) { rect.x = (int)rect_out[0]; rect.y = (int)rect_out[1]; rect.width = (int)rect_out[2]; rect.height = (int)rect_out[3]; }
  1215. return retVal;
  1216. #else
  1217. return -1;
  1218. #endif
  1219. }
  1220. //javadoc: floodFill(image, mask, seedPoint, newVal, rect, loDiff)
  1221. public static int floodFill(Mat image, Mat mask, Point seedPoint, Scalar newVal, Rect rect, Scalar loDiff) {
  1222. if (image != null) image.ThrowIfDisposed();
  1223. if (mask != null) mask.ThrowIfDisposed();
  1224. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1225. double[] rect_out = new double[4];
  1226. int retVal = imgproc_Imgproc_floodFill_12(image.nativeObj, mask.nativeObj, seedPoint.x, seedPoint.y, newVal.val[0], newVal.val[1], newVal.val[2], newVal.val[3], rect_out, loDiff.val[0], loDiff.val[1], loDiff.val[2], loDiff.val[3]);
  1227. if (rect != null) { rect.x = (int)rect_out[0]; rect.y = (int)rect_out[1]; rect.width = (int)rect_out[2]; rect.height = (int)rect_out[3]; }
  1228. return retVal;
  1229. #else
  1230. return -1;
  1231. #endif
  1232. }
  1233. //javadoc: floodFill(image, mask, seedPoint, newVal, rect)
  1234. public static int floodFill(Mat image, Mat mask, Point seedPoint, Scalar newVal, Rect rect) {
  1235. if (image != null) image.ThrowIfDisposed();
  1236. if (mask != null) mask.ThrowIfDisposed();
  1237. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1238. double[] rect_out = new double[4];
  1239. int retVal = imgproc_Imgproc_floodFill_13(image.nativeObj, mask.nativeObj, seedPoint.x, seedPoint.y, newVal.val[0], newVal.val[1], newVal.val[2], newVal.val[3], rect_out);
  1240. if (rect != null) { rect.x = (int)rect_out[0]; rect.y = (int)rect_out[1]; rect.width = (int)rect_out[2]; rect.height = (int)rect_out[3]; }
  1241. return retVal;
  1242. #else
  1243. return -1;
  1244. #endif
  1245. }
  1246. //javadoc: floodFill(image, mask, seedPoint, newVal)
  1247. public static int floodFill(Mat image, Mat mask, Point seedPoint, Scalar newVal) {
  1248. if (image != null) image.ThrowIfDisposed();
  1249. if (mask != null) mask.ThrowIfDisposed();
  1250. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1251. int retVal = imgproc_Imgproc_floodFill_14(image.nativeObj, mask.nativeObj, seedPoint.x, seedPoint.y, newVal.val[0], newVal.val[1], newVal.val[2], newVal.val[3]);
  1252. return retVal;
  1253. #else
  1254. return -1;
  1255. #endif
  1256. }
  1257. //
  1258. // C++: int cv::rotatedRectangleIntersection(RotatedRect rect1, RotatedRect rect2, Mat& intersectingRegion)
  1259. //
  1260. //javadoc: rotatedRectangleIntersection(rect1, rect2, intersectingRegion)
  1261. public static int rotatedRectangleIntersection(RotatedRect rect1, RotatedRect rect2, Mat intersectingRegion) {
  1262. if (intersectingRegion != null) intersectingRegion.ThrowIfDisposed();
  1263. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1264. int retVal = imgproc_Imgproc_rotatedRectangleIntersection_10(rect1.center.x, rect1.center.y, rect1.size.width, rect1.size.height, rect1.angle, rect2.center.x, rect2.center.y, rect2.size.width, rect2.size.height, rect2.angle, intersectingRegion.nativeObj);
  1265. return retVal;
  1266. #else
  1267. return -1;
  1268. #endif
  1269. }
  1270. //
  1271. // C++: void cv::Canny(Mat dx, Mat dy, Mat& edges, double threshold1, double threshold2, bool L2gradient = false)
  1272. //
  1273. //javadoc: Canny(dx, dy, edges, threshold1, threshold2, L2gradient)
  1274. public static void Canny(Mat dx, Mat dy, Mat edges, double threshold1, double threshold2, bool L2gradient) {
  1275. if (dx != null) dx.ThrowIfDisposed();
  1276. if (dy != null) dy.ThrowIfDisposed();
  1277. if (edges != null) edges.ThrowIfDisposed();
  1278. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1279. imgproc_Imgproc_Canny_10(dx.nativeObj, dy.nativeObj, edges.nativeObj, threshold1, threshold2, L2gradient);
  1280. return;
  1281. #else
  1282. return;
  1283. #endif
  1284. }
  1285. //javadoc: Canny(dx, dy, edges, threshold1, threshold2)
  1286. public static void Canny(Mat dx, Mat dy, Mat edges, double threshold1, double threshold2) {
  1287. if (dx != null) dx.ThrowIfDisposed();
  1288. if (dy != null) dy.ThrowIfDisposed();
  1289. if (edges != null) edges.ThrowIfDisposed();
  1290. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1291. imgproc_Imgproc_Canny_11(dx.nativeObj, dy.nativeObj, edges.nativeObj, threshold1, threshold2);
  1292. return;
  1293. #else
  1294. return;
  1295. #endif
  1296. }
  1297. //
  1298. // C++: void cv::Canny(Mat image, Mat& edges, double threshold1, double threshold2, int apertureSize = 3, bool L2gradient = false)
  1299. //
  1300. //javadoc: Canny(image, edges, threshold1, threshold2, apertureSize, L2gradient)
  1301. public static void Canny(Mat image, Mat edges, double threshold1, double threshold2, int apertureSize, bool L2gradient) {
  1302. if (image != null) image.ThrowIfDisposed();
  1303. if (edges != null) edges.ThrowIfDisposed();
  1304. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1305. imgproc_Imgproc_Canny_12(image.nativeObj, edges.nativeObj, threshold1, threshold2, apertureSize, L2gradient);
  1306. return;
  1307. #else
  1308. return;
  1309. #endif
  1310. }
  1311. //javadoc: Canny(image, edges, threshold1, threshold2, apertureSize)
  1312. public static void Canny(Mat image, Mat edges, double threshold1, double threshold2, int apertureSize) {
  1313. if (image != null) image.ThrowIfDisposed();
  1314. if (edges != null) edges.ThrowIfDisposed();
  1315. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1316. imgproc_Imgproc_Canny_13(image.nativeObj, edges.nativeObj, threshold1, threshold2, apertureSize);
  1317. return;
  1318. #else
  1319. return;
  1320. #endif
  1321. }
  1322. //javadoc: Canny(image, edges, threshold1, threshold2)
  1323. public static void Canny(Mat image, Mat edges, double threshold1, double threshold2) {
  1324. if (image != null) image.ThrowIfDisposed();
  1325. if (edges != null) edges.ThrowIfDisposed();
  1326. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1327. imgproc_Imgproc_Canny_14(image.nativeObj, edges.nativeObj, threshold1, threshold2);
  1328. return;
  1329. #else
  1330. return;
  1331. #endif
  1332. }
  1333. //
  1334. // C++: void cv::GaussianBlur(Mat src, Mat& dst, Size ksize, double sigmaX, double sigmaY = 0, int borderType = BORDER_DEFAULT)
  1335. //
  1336. //javadoc: GaussianBlur(src, dst, ksize, sigmaX, sigmaY, borderType)
  1337. public static void GaussianBlur(Mat src, Mat dst, Size ksize, double sigmaX, double sigmaY, int borderType) {
  1338. if (src != null) src.ThrowIfDisposed();
  1339. if (dst != null) dst.ThrowIfDisposed();
  1340. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1341. imgproc_Imgproc_GaussianBlur_10(src.nativeObj, dst.nativeObj, ksize.width, ksize.height, sigmaX, sigmaY, borderType);
  1342. return;
  1343. #else
  1344. return;
  1345. #endif
  1346. }
  1347. //javadoc: GaussianBlur(src, dst, ksize, sigmaX, sigmaY)
  1348. public static void GaussianBlur(Mat src, Mat dst, Size ksize, double sigmaX, double sigmaY) {
  1349. if (src != null) src.ThrowIfDisposed();
  1350. if (dst != null) dst.ThrowIfDisposed();
  1351. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1352. imgproc_Imgproc_GaussianBlur_11(src.nativeObj, dst.nativeObj, ksize.width, ksize.height, sigmaX, sigmaY);
  1353. return;
  1354. #else
  1355. return;
  1356. #endif
  1357. }
  1358. //javadoc: GaussianBlur(src, dst, ksize, sigmaX)
  1359. public static void GaussianBlur(Mat src, Mat dst, Size ksize, double sigmaX) {
  1360. if (src != null) src.ThrowIfDisposed();
  1361. if (dst != null) dst.ThrowIfDisposed();
  1362. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1363. imgproc_Imgproc_GaussianBlur_12(src.nativeObj, dst.nativeObj, ksize.width, ksize.height, sigmaX);
  1364. return;
  1365. #else
  1366. return;
  1367. #endif
  1368. }
  1369. //
  1370. // C++: void cv::HoughCircles(Mat image, Mat& circles, int method, double dp, double minDist, double param1 = 100, double param2 = 100, int minRadius = 0, int maxRadius = 0)
  1371. //
  1372. //javadoc: HoughCircles(image, circles, method, dp, minDist, param1, param2, minRadius, maxRadius)
  1373. public static void HoughCircles(Mat image, Mat circles, int method, double dp, double minDist, double param1, double param2, int minRadius, int maxRadius) {
  1374. if (image != null) image.ThrowIfDisposed();
  1375. if (circles != null) circles.ThrowIfDisposed();
  1376. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1377. imgproc_Imgproc_HoughCircles_10(image.nativeObj, circles.nativeObj, method, dp, minDist, param1, param2, minRadius, maxRadius);
  1378. return;
  1379. #else
  1380. return;
  1381. #endif
  1382. }
  1383. //javadoc: HoughCircles(image, circles, method, dp, minDist, param1, param2, minRadius)
  1384. public static void HoughCircles(Mat image, Mat circles, int method, double dp, double minDist, double param1, double param2, int minRadius) {
  1385. if (image != null) image.ThrowIfDisposed();
  1386. if (circles != null) circles.ThrowIfDisposed();
  1387. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1388. imgproc_Imgproc_HoughCircles_11(image.nativeObj, circles.nativeObj, method, dp, minDist, param1, param2, minRadius);
  1389. return;
  1390. #else
  1391. return;
  1392. #endif
  1393. }
  1394. //javadoc: HoughCircles(image, circles, method, dp, minDist, param1, param2)
  1395. public static void HoughCircles(Mat image, Mat circles, int method, double dp, double minDist, double param1, double param2) {
  1396. if (image != null) image.ThrowIfDisposed();
  1397. if (circles != null) circles.ThrowIfDisposed();
  1398. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1399. imgproc_Imgproc_HoughCircles_12(image.nativeObj, circles.nativeObj, method, dp, minDist, param1, param2);
  1400. return;
  1401. #else
  1402. return;
  1403. #endif
  1404. }
  1405. //javadoc: HoughCircles(image, circles, method, dp, minDist, param1)
  1406. public static void HoughCircles(Mat image, Mat circles, int method, double dp, double minDist, double param1) {
  1407. if (image != null) image.ThrowIfDisposed();
  1408. if (circles != null) circles.ThrowIfDisposed();
  1409. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1410. imgproc_Imgproc_HoughCircles_13(image.nativeObj, circles.nativeObj, method, dp, minDist, param1);
  1411. return;
  1412. #else
  1413. return;
  1414. #endif
  1415. }
  1416. //javadoc: HoughCircles(image, circles, method, dp, minDist)
  1417. public static void HoughCircles(Mat image, Mat circles, int method, double dp, double minDist) {
  1418. if (image != null) image.ThrowIfDisposed();
  1419. if (circles != null) circles.ThrowIfDisposed();
  1420. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1421. imgproc_Imgproc_HoughCircles_14(image.nativeObj, circles.nativeObj, method, dp, minDist);
  1422. return;
  1423. #else
  1424. return;
  1425. #endif
  1426. }
  1427. //
  1428. // C++: void cv::HoughLines(Mat image, Mat& lines, double rho, double theta, int threshold, double srn = 0, double stn = 0, double min_theta = 0, double max_theta = CV_PI)
  1429. //
  1430. //javadoc: HoughLines(image, lines, rho, theta, threshold, srn, stn, min_theta, max_theta)
  1431. public static void HoughLines(Mat image, Mat lines, double rho, double theta, int threshold, double srn, double stn, double min_theta, double max_theta) {
  1432. if (image != null) image.ThrowIfDisposed();
  1433. if (lines != null) lines.ThrowIfDisposed();
  1434. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1435. imgproc_Imgproc_HoughLines_10(image.nativeObj, lines.nativeObj, rho, theta, threshold, srn, stn, min_theta, max_theta);
  1436. return;
  1437. #else
  1438. return;
  1439. #endif
  1440. }
  1441. //javadoc: HoughLines(image, lines, rho, theta, threshold, srn, stn, min_theta)
  1442. public static void HoughLines(Mat image, Mat lines, double rho, double theta, int threshold, double srn, double stn, double min_theta) {
  1443. if (image != null) image.ThrowIfDisposed();
  1444. if (lines != null) lines.ThrowIfDisposed();
  1445. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1446. imgproc_Imgproc_HoughLines_11(image.nativeObj, lines.nativeObj, rho, theta, threshold, srn, stn, min_theta);
  1447. return;
  1448. #else
  1449. return;
  1450. #endif
  1451. }
  1452. //javadoc: HoughLines(image, lines, rho, theta, threshold, srn, stn)
  1453. public static void HoughLines(Mat image, Mat lines, double rho, double theta, int threshold, double srn, double stn) {
  1454. if (image != null) image.ThrowIfDisposed();
  1455. if (lines != null) lines.ThrowIfDisposed();
  1456. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1457. imgproc_Imgproc_HoughLines_12(image.nativeObj, lines.nativeObj, rho, theta, threshold, srn, stn);
  1458. return;
  1459. #else
  1460. return;
  1461. #endif
  1462. }
  1463. //javadoc: HoughLines(image, lines, rho, theta, threshold, srn)
  1464. public static void HoughLines(Mat image, Mat lines, double rho, double theta, int threshold, double srn) {
  1465. if (image != null) image.ThrowIfDisposed();
  1466. if (lines != null) lines.ThrowIfDisposed();
  1467. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1468. imgproc_Imgproc_HoughLines_13(image.nativeObj, lines.nativeObj, rho, theta, threshold, srn);
  1469. return;
  1470. #else
  1471. return;
  1472. #endif
  1473. }
  1474. //javadoc: HoughLines(image, lines, rho, theta, threshold)
  1475. public static void HoughLines(Mat image, Mat lines, double rho, double theta, int threshold) {
  1476. if (image != null) image.ThrowIfDisposed();
  1477. if (lines != null) lines.ThrowIfDisposed();
  1478. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1479. imgproc_Imgproc_HoughLines_14(image.nativeObj, lines.nativeObj, rho, theta, threshold);
  1480. return;
  1481. #else
  1482. return;
  1483. #endif
  1484. }
  1485. //
  1486. // C++: void cv::HoughLinesP(Mat image, Mat& lines, double rho, double theta, int threshold, double minLineLength = 0, double maxLineGap = 0)
  1487. //
  1488. //javadoc: HoughLinesP(image, lines, rho, theta, threshold, minLineLength, maxLineGap)
  1489. public static void HoughLinesP(Mat image, Mat lines, double rho, double theta, int threshold, double minLineLength, double maxLineGap) {
  1490. if (image != null) image.ThrowIfDisposed();
  1491. if (lines != null) lines.ThrowIfDisposed();
  1492. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1493. imgproc_Imgproc_HoughLinesP_10(image.nativeObj, lines.nativeObj, rho, theta, threshold, minLineLength, maxLineGap);
  1494. return;
  1495. #else
  1496. return;
  1497. #endif
  1498. }
  1499. //javadoc: HoughLinesP(image, lines, rho, theta, threshold, minLineLength)
  1500. public static void HoughLinesP(Mat image, Mat lines, double rho, double theta, int threshold, double minLineLength) {
  1501. if (image != null) image.ThrowIfDisposed();
  1502. if (lines != null) lines.ThrowIfDisposed();
  1503. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1504. imgproc_Imgproc_HoughLinesP_11(image.nativeObj, lines.nativeObj, rho, theta, threshold, minLineLength);
  1505. return;
  1506. #else
  1507. return;
  1508. #endif
  1509. }
  1510. //javadoc: HoughLinesP(image, lines, rho, theta, threshold)
  1511. public static void HoughLinesP(Mat image, Mat lines, double rho, double theta, int threshold) {
  1512. if (image != null) image.ThrowIfDisposed();
  1513. if (lines != null) lines.ThrowIfDisposed();
  1514. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1515. imgproc_Imgproc_HoughLinesP_12(image.nativeObj, lines.nativeObj, rho, theta, threshold);
  1516. return;
  1517. #else
  1518. return;
  1519. #endif
  1520. }
  1521. //
  1522. // C++: void cv::HoughLinesPointSet(Mat _point, Mat& _lines, int lines_max, int threshold, double min_rho, double max_rho, double rho_step, double min_theta, double max_theta, double theta_step)
  1523. //
  1524. //javadoc: HoughLinesPointSet(_point, _lines, lines_max, threshold, min_rho, max_rho, rho_step, min_theta, max_theta, theta_step)
  1525. public static void HoughLinesPointSet(Mat _point, Mat _lines, int lines_max, int threshold, double min_rho, double max_rho, double rho_step, double min_theta, double max_theta, double theta_step) {
  1526. if (_point != null) _point.ThrowIfDisposed();
  1527. if (_lines != null) _lines.ThrowIfDisposed();
  1528. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1529. imgproc_Imgproc_HoughLinesPointSet_10(_point.nativeObj, _lines.nativeObj, lines_max, threshold, min_rho, max_rho, rho_step, min_theta, max_theta, theta_step);
  1530. return;
  1531. #else
  1532. return;
  1533. #endif
  1534. }
  1535. //
  1536. // C++: void cv::HuMoments(Moments m, Mat& hu)
  1537. //
  1538. //javadoc: HuMoments(m, hu)
  1539. public static void HuMoments(Moments m, Mat hu) {
  1540. if (hu != null) hu.ThrowIfDisposed();
  1541. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1542. imgproc_Imgproc_HuMoments_10(m.m00, m.m10, m.m01, m.m20, m.m11, m.m02, m.m30, m.m21, m.m12, m.m03, hu.nativeObj);
  1543. return;
  1544. #else
  1545. return;
  1546. #endif
  1547. }
  1548. //
  1549. // C++: void cv::Laplacian(Mat src, Mat& dst, int ddepth, int ksize = 1, double scale = 1, double delta = 0, int borderType = BORDER_DEFAULT)
  1550. //
  1551. //javadoc: Laplacian(src, dst, ddepth, ksize, scale, delta, borderType)
  1552. public static void Laplacian(Mat src, Mat dst, int ddepth, int ksize, double scale, double delta, int borderType) {
  1553. if (src != null) src.ThrowIfDisposed();
  1554. if (dst != null) dst.ThrowIfDisposed();
  1555. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1556. imgproc_Imgproc_Laplacian_10(src.nativeObj, dst.nativeObj, ddepth, ksize, scale, delta, borderType);
  1557. return;
  1558. #else
  1559. return;
  1560. #endif
  1561. }
  1562. //javadoc: Laplacian(src, dst, ddepth, ksize, scale, delta)
  1563. public static void Laplacian(Mat src, Mat dst, int ddepth, int ksize, double scale, double delta) {
  1564. if (src != null) src.ThrowIfDisposed();
  1565. if (dst != null) dst.ThrowIfDisposed();
  1566. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1567. imgproc_Imgproc_Laplacian_11(src.nativeObj, dst.nativeObj, ddepth, ksize, scale, delta);
  1568. return;
  1569. #else
  1570. return;
  1571. #endif
  1572. }
  1573. //javadoc: Laplacian(src, dst, ddepth, ksize, scale)
  1574. public static void Laplacian(Mat src, Mat dst, int ddepth, int ksize, double scale) {
  1575. if (src != null) src.ThrowIfDisposed();
  1576. if (dst != null) dst.ThrowIfDisposed();
  1577. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1578. imgproc_Imgproc_Laplacian_12(src.nativeObj, dst.nativeObj, ddepth, ksize, scale);
  1579. return;
  1580. #else
  1581. return;
  1582. #endif
  1583. }
  1584. //javadoc: Laplacian(src, dst, ddepth, ksize)
  1585. public static void Laplacian(Mat src, Mat dst, int ddepth, int ksize) {
  1586. if (src != null) src.ThrowIfDisposed();
  1587. if (dst != null) dst.ThrowIfDisposed();
  1588. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1589. imgproc_Imgproc_Laplacian_13(src.nativeObj, dst.nativeObj, ddepth, ksize);
  1590. return;
  1591. #else
  1592. return;
  1593. #endif
  1594. }
  1595. //javadoc: Laplacian(src, dst, ddepth)
  1596. public static void Laplacian(Mat src, Mat dst, int ddepth) {
  1597. if (src != null) src.ThrowIfDisposed();
  1598. if (dst != null) dst.ThrowIfDisposed();
  1599. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1600. imgproc_Imgproc_Laplacian_14(src.nativeObj, dst.nativeObj, ddepth);
  1601. return;
  1602. #else
  1603. return;
  1604. #endif
  1605. }
  1606. //
  1607. // C++: void cv::Scharr(Mat src, Mat& dst, int ddepth, int dx, int dy, double scale = 1, double delta = 0, int borderType = BORDER_DEFAULT)
  1608. //
  1609. //javadoc: Scharr(src, dst, ddepth, dx, dy, scale, delta, borderType)
  1610. public static void Scharr(Mat src, Mat dst, int ddepth, int dx, int dy, double scale, double delta, int borderType) {
  1611. if (src != null) src.ThrowIfDisposed();
  1612. if (dst != null) dst.ThrowIfDisposed();
  1613. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1614. imgproc_Imgproc_Scharr_10(src.nativeObj, dst.nativeObj, ddepth, dx, dy, scale, delta, borderType);
  1615. return;
  1616. #else
  1617. return;
  1618. #endif
  1619. }
  1620. //javadoc: Scharr(src, dst, ddepth, dx, dy, scale, delta)
  1621. public static void Scharr(Mat src, Mat dst, int ddepth, int dx, int dy, double scale, double delta) {
  1622. if (src != null) src.ThrowIfDisposed();
  1623. if (dst != null) dst.ThrowIfDisposed();
  1624. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1625. imgproc_Imgproc_Scharr_11(src.nativeObj, dst.nativeObj, ddepth, dx, dy, scale, delta);
  1626. return;
  1627. #else
  1628. return;
  1629. #endif
  1630. }
  1631. //javadoc: Scharr(src, dst, ddepth, dx, dy, scale)
  1632. public static void Scharr(Mat src, Mat dst, int ddepth, int dx, int dy, double scale) {
  1633. if (src != null) src.ThrowIfDisposed();
  1634. if (dst != null) dst.ThrowIfDisposed();
  1635. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1636. imgproc_Imgproc_Scharr_12(src.nativeObj, dst.nativeObj, ddepth, dx, dy, scale);
  1637. return;
  1638. #else
  1639. return;
  1640. #endif
  1641. }
  1642. //javadoc: Scharr(src, dst, ddepth, dx, dy)
  1643. public static void Scharr(Mat src, Mat dst, int ddepth, int dx, int dy) {
  1644. if (src != null) src.ThrowIfDisposed();
  1645. if (dst != null) dst.ThrowIfDisposed();
  1646. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1647. imgproc_Imgproc_Scharr_13(src.nativeObj, dst.nativeObj, ddepth, dx, dy);
  1648. return;
  1649. #else
  1650. return;
  1651. #endif
  1652. }
  1653. //
  1654. // C++: void cv::Sobel(Mat src, Mat& dst, int ddepth, int dx, int dy, int ksize = 3, double scale = 1, double delta = 0, int borderType = BORDER_DEFAULT)
  1655. //
  1656. //javadoc: Sobel(src, dst, ddepth, dx, dy, ksize, scale, delta, borderType)
  1657. public static void Sobel(Mat src, Mat dst, int ddepth, int dx, int dy, int ksize, double scale, double delta, int borderType) {
  1658. if (src != null) src.ThrowIfDisposed();
  1659. if (dst != null) dst.ThrowIfDisposed();
  1660. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1661. imgproc_Imgproc_Sobel_10(src.nativeObj, dst.nativeObj, ddepth, dx, dy, ksize, scale, delta, borderType);
  1662. return;
  1663. #else
  1664. return;
  1665. #endif
  1666. }
  1667. //javadoc: Sobel(src, dst, ddepth, dx, dy, ksize, scale, delta)
  1668. public static void Sobel(Mat src, Mat dst, int ddepth, int dx, int dy, int ksize, double scale, double delta) {
  1669. if (src != null) src.ThrowIfDisposed();
  1670. if (dst != null) dst.ThrowIfDisposed();
  1671. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1672. imgproc_Imgproc_Sobel_11(src.nativeObj, dst.nativeObj, ddepth, dx, dy, ksize, scale, delta);
  1673. return;
  1674. #else
  1675. return;
  1676. #endif
  1677. }
  1678. //javadoc: Sobel(src, dst, ddepth, dx, dy, ksize, scale)
  1679. public static void Sobel(Mat src, Mat dst, int ddepth, int dx, int dy, int ksize, double scale) {
  1680. if (src != null) src.ThrowIfDisposed();
  1681. if (dst != null) dst.ThrowIfDisposed();
  1682. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1683. imgproc_Imgproc_Sobel_12(src.nativeObj, dst.nativeObj, ddepth, dx, dy, ksize, scale);
  1684. return;
  1685. #else
  1686. return;
  1687. #endif
  1688. }
  1689. //javadoc: Sobel(src, dst, ddepth, dx, dy, ksize)
  1690. public static void Sobel(Mat src, Mat dst, int ddepth, int dx, int dy, int ksize) {
  1691. if (src != null) src.ThrowIfDisposed();
  1692. if (dst != null) dst.ThrowIfDisposed();
  1693. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1694. imgproc_Imgproc_Sobel_13(src.nativeObj, dst.nativeObj, ddepth, dx, dy, ksize);
  1695. return;
  1696. #else
  1697. return;
  1698. #endif
  1699. }
  1700. //javadoc: Sobel(src, dst, ddepth, dx, dy)
  1701. public static void Sobel(Mat src, Mat dst, int ddepth, int dx, int dy) {
  1702. if (src != null) src.ThrowIfDisposed();
  1703. if (dst != null) dst.ThrowIfDisposed();
  1704. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1705. imgproc_Imgproc_Sobel_14(src.nativeObj, dst.nativeObj, ddepth, dx, dy);
  1706. return;
  1707. #else
  1708. return;
  1709. #endif
  1710. }
  1711. //
  1712. // C++: void cv::accumulate(Mat src, Mat& dst, Mat mask = Mat())
  1713. //
  1714. //javadoc: accumulate(src, dst, mask)
  1715. public static void accumulate(Mat src, Mat dst, Mat mask) {
  1716. if (src != null) src.ThrowIfDisposed();
  1717. if (dst != null) dst.ThrowIfDisposed();
  1718. if (mask != null) mask.ThrowIfDisposed();
  1719. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1720. imgproc_Imgproc_accumulate_10(src.nativeObj, dst.nativeObj, mask.nativeObj);
  1721. return;
  1722. #else
  1723. return;
  1724. #endif
  1725. }
  1726. //javadoc: accumulate(src, dst)
  1727. public static void accumulate(Mat src, Mat dst) {
  1728. if (src != null) src.ThrowIfDisposed();
  1729. if (dst != null) dst.ThrowIfDisposed();
  1730. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1731. imgproc_Imgproc_accumulate_11(src.nativeObj, dst.nativeObj);
  1732. return;
  1733. #else
  1734. return;
  1735. #endif
  1736. }
  1737. //
  1738. // C++: void cv::accumulateProduct(Mat src1, Mat src2, Mat& dst, Mat mask = Mat())
  1739. //
  1740. //javadoc: accumulateProduct(src1, src2, dst, mask)
  1741. public static void accumulateProduct(Mat src1, Mat src2, Mat dst, Mat mask) {
  1742. if (src1 != null) src1.ThrowIfDisposed();
  1743. if (src2 != null) src2.ThrowIfDisposed();
  1744. if (dst != null) dst.ThrowIfDisposed();
  1745. if (mask != null) mask.ThrowIfDisposed();
  1746. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1747. imgproc_Imgproc_accumulateProduct_10(src1.nativeObj, src2.nativeObj, dst.nativeObj, mask.nativeObj);
  1748. return;
  1749. #else
  1750. return;
  1751. #endif
  1752. }
  1753. //javadoc: accumulateProduct(src1, src2, dst)
  1754. public static void accumulateProduct(Mat src1, Mat src2, Mat dst) {
  1755. if (src1 != null) src1.ThrowIfDisposed();
  1756. if (src2 != null) src2.ThrowIfDisposed();
  1757. if (dst != null) dst.ThrowIfDisposed();
  1758. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1759. imgproc_Imgproc_accumulateProduct_11(src1.nativeObj, src2.nativeObj, dst.nativeObj);
  1760. return;
  1761. #else
  1762. return;
  1763. #endif
  1764. }
  1765. //
  1766. // C++: void cv::accumulateSquare(Mat src, Mat& dst, Mat mask = Mat())
  1767. //
  1768. //javadoc: accumulateSquare(src, dst, mask)
  1769. public static void accumulateSquare(Mat src, Mat dst, Mat mask) {
  1770. if (src != null) src.ThrowIfDisposed();
  1771. if (dst != null) dst.ThrowIfDisposed();
  1772. if (mask != null) mask.ThrowIfDisposed();
  1773. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1774. imgproc_Imgproc_accumulateSquare_10(src.nativeObj, dst.nativeObj, mask.nativeObj);
  1775. return;
  1776. #else
  1777. return;
  1778. #endif
  1779. }
  1780. //javadoc: accumulateSquare(src, dst)
  1781. public static void accumulateSquare(Mat src, Mat dst) {
  1782. if (src != null) src.ThrowIfDisposed();
  1783. if (dst != null) dst.ThrowIfDisposed();
  1784. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1785. imgproc_Imgproc_accumulateSquare_11(src.nativeObj, dst.nativeObj);
  1786. return;
  1787. #else
  1788. return;
  1789. #endif
  1790. }
  1791. //
  1792. // C++: void cv::accumulateWeighted(Mat src, Mat& dst, double alpha, Mat mask = Mat())
  1793. //
  1794. //javadoc: accumulateWeighted(src, dst, alpha, mask)
  1795. public static void accumulateWeighted(Mat src, Mat dst, double alpha, Mat mask) {
  1796. if (src != null) src.ThrowIfDisposed();
  1797. if (dst != null) dst.ThrowIfDisposed();
  1798. if (mask != null) mask.ThrowIfDisposed();
  1799. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1800. imgproc_Imgproc_accumulateWeighted_10(src.nativeObj, dst.nativeObj, alpha, mask.nativeObj);
  1801. return;
  1802. #else
  1803. return;
  1804. #endif
  1805. }
  1806. //javadoc: accumulateWeighted(src, dst, alpha)
  1807. public static void accumulateWeighted(Mat src, Mat dst, double alpha) {
  1808. if (src != null) src.ThrowIfDisposed();
  1809. if (dst != null) dst.ThrowIfDisposed();
  1810. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1811. imgproc_Imgproc_accumulateWeighted_11(src.nativeObj, dst.nativeObj, alpha);
  1812. return;
  1813. #else
  1814. return;
  1815. #endif
  1816. }
  1817. //
  1818. // C++: void cv::adaptiveThreshold(Mat src, Mat& dst, double maxValue, int adaptiveMethod, int thresholdType, int blockSize, double C)
  1819. //
  1820. //javadoc: adaptiveThreshold(src, dst, maxValue, adaptiveMethod, thresholdType, blockSize, C)
  1821. public static void adaptiveThreshold(Mat src, Mat dst, double maxValue, int adaptiveMethod, int thresholdType, int blockSize, double C) {
  1822. if (src != null) src.ThrowIfDisposed();
  1823. if (dst != null) dst.ThrowIfDisposed();
  1824. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1825. imgproc_Imgproc_adaptiveThreshold_10(src.nativeObj, dst.nativeObj, maxValue, adaptiveMethod, thresholdType, blockSize, C);
  1826. return;
  1827. #else
  1828. return;
  1829. #endif
  1830. }
  1831. //
  1832. // C++: void cv::applyColorMap(Mat src, Mat& dst, Mat userColor)
  1833. //
  1834. //javadoc: applyColorMap(src, dst, userColor)
  1835. public static void applyColorMap(Mat src, Mat dst, Mat userColor) {
  1836. if (src != null) src.ThrowIfDisposed();
  1837. if (dst != null) dst.ThrowIfDisposed();
  1838. if (userColor != null) userColor.ThrowIfDisposed();
  1839. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1840. imgproc_Imgproc_applyColorMap_10(src.nativeObj, dst.nativeObj, userColor.nativeObj);
  1841. return;
  1842. #else
  1843. return;
  1844. #endif
  1845. }
  1846. //
  1847. // C++: void cv::applyColorMap(Mat src, Mat& dst, int colormap)
  1848. //
  1849. //javadoc: applyColorMap(src, dst, colormap)
  1850. public static void applyColorMap(Mat src, Mat dst, int colormap) {
  1851. if (src != null) src.ThrowIfDisposed();
  1852. if (dst != null) dst.ThrowIfDisposed();
  1853. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1854. imgproc_Imgproc_applyColorMap_11(src.nativeObj, dst.nativeObj, colormap);
  1855. return;
  1856. #else
  1857. return;
  1858. #endif
  1859. }
  1860. //
  1861. // C++: void cv::approxPolyDP(vector_Point2f curve, vector_Point2f& approxCurve, double epsilon, bool closed)
  1862. //
  1863. //javadoc: approxPolyDP(curve, approxCurve, epsilon, closed)
  1864. public static void approxPolyDP(MatOfPoint2f curve, MatOfPoint2f approxCurve, double epsilon, bool closed) {
  1865. if (curve != null) curve.ThrowIfDisposed();
  1866. if (approxCurve != null) approxCurve.ThrowIfDisposed();
  1867. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1868. Mat curve_mat = curve;
  1869. Mat approxCurve_mat = approxCurve;
  1870. imgproc_Imgproc_approxPolyDP_10(curve_mat.nativeObj, approxCurve_mat.nativeObj, epsilon, closed);
  1871. return;
  1872. #else
  1873. return;
  1874. #endif
  1875. }
  1876. //
  1877. // C++: void cv::arrowedLine(Mat& img, Point pt1, Point pt2, Scalar color, int thickness = 1, int line_type = 8, int shift = 0, double tipLength = 0.1)
  1878. //
  1879. //javadoc: arrowedLine(img, pt1, pt2, color, thickness, line_type, shift, tipLength)
  1880. public static void arrowedLine(Mat img, Point pt1, Point pt2, Scalar color, int thickness, int line_type, int shift, double tipLength) {
  1881. if (img != null) img.ThrowIfDisposed();
  1882. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1883. imgproc_Imgproc_arrowedLine_10(img.nativeObj, pt1.x, pt1.y, pt2.x, pt2.y, color.val[0], color.val[1], color.val[2], color.val[3], thickness, line_type, shift, tipLength);
  1884. return;
  1885. #else
  1886. return;
  1887. #endif
  1888. }
  1889. //javadoc: arrowedLine(img, pt1, pt2, color, thickness, line_type, shift)
  1890. public static void arrowedLine(Mat img, Point pt1, Point pt2, Scalar color, int thickness, int line_type, int shift) {
  1891. if (img != null) img.ThrowIfDisposed();
  1892. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1893. imgproc_Imgproc_arrowedLine_11(img.nativeObj, pt1.x, pt1.y, pt2.x, pt2.y, color.val[0], color.val[1], color.val[2], color.val[3], thickness, line_type, shift);
  1894. return;
  1895. #else
  1896. return;
  1897. #endif
  1898. }
  1899. //javadoc: arrowedLine(img, pt1, pt2, color, thickness, line_type)
  1900. public static void arrowedLine(Mat img, Point pt1, Point pt2, Scalar color, int thickness, int line_type) {
  1901. if (img != null) img.ThrowIfDisposed();
  1902. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1903. imgproc_Imgproc_arrowedLine_12(img.nativeObj, pt1.x, pt1.y, pt2.x, pt2.y, color.val[0], color.val[1], color.val[2], color.val[3], thickness, line_type);
  1904. return;
  1905. #else
  1906. return;
  1907. #endif
  1908. }
  1909. //javadoc: arrowedLine(img, pt1, pt2, color, thickness)
  1910. public static void arrowedLine(Mat img, Point pt1, Point pt2, Scalar color, int thickness) {
  1911. if (img != null) img.ThrowIfDisposed();
  1912. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1913. imgproc_Imgproc_arrowedLine_13(img.nativeObj, pt1.x, pt1.y, pt2.x, pt2.y, color.val[0], color.val[1], color.val[2], color.val[3], thickness);
  1914. return;
  1915. #else
  1916. return;
  1917. #endif
  1918. }
  1919. //javadoc: arrowedLine(img, pt1, pt2, color)
  1920. public static void arrowedLine(Mat img, Point pt1, Point pt2, Scalar color) {
  1921. if (img != null) img.ThrowIfDisposed();
  1922. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1923. imgproc_Imgproc_arrowedLine_14(img.nativeObj, pt1.x, pt1.y, pt2.x, pt2.y, color.val[0], color.val[1], color.val[2], color.val[3]);
  1924. return;
  1925. #else
  1926. return;
  1927. #endif
  1928. }
  1929. //
  1930. // C++: void cv::bilateralFilter(Mat src, Mat& dst, int d, double sigmaColor, double sigmaSpace, int borderType = BORDER_DEFAULT)
  1931. //
  1932. //javadoc: bilateralFilter(src, dst, d, sigmaColor, sigmaSpace, borderType)
  1933. public static void bilateralFilter(Mat src, Mat dst, int d, double sigmaColor, double sigmaSpace, int borderType) {
  1934. if (src != null) src.ThrowIfDisposed();
  1935. if (dst != null) dst.ThrowIfDisposed();
  1936. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1937. imgproc_Imgproc_bilateralFilter_10(src.nativeObj, dst.nativeObj, d, sigmaColor, sigmaSpace, borderType);
  1938. return;
  1939. #else
  1940. return;
  1941. #endif
  1942. }
  1943. //javadoc: bilateralFilter(src, dst, d, sigmaColor, sigmaSpace)
  1944. public static void bilateralFilter(Mat src, Mat dst, int d, double sigmaColor, double sigmaSpace) {
  1945. if (src != null) src.ThrowIfDisposed();
  1946. if (dst != null) dst.ThrowIfDisposed();
  1947. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1948. imgproc_Imgproc_bilateralFilter_11(src.nativeObj, dst.nativeObj, d, sigmaColor, sigmaSpace);
  1949. return;
  1950. #else
  1951. return;
  1952. #endif
  1953. }
  1954. //
  1955. // C++: void cv::blur(Mat src, Mat& dst, Size ksize, Point anchor = Point(-1,-1), int borderType = BORDER_DEFAULT)
  1956. //
  1957. //javadoc: blur(src, dst, ksize, anchor, borderType)
  1958. public static void blur(Mat src, Mat dst, Size ksize, Point anchor, int borderType) {
  1959. if (src != null) src.ThrowIfDisposed();
  1960. if (dst != null) dst.ThrowIfDisposed();
  1961. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1962. imgproc_Imgproc_blur_10(src.nativeObj, dst.nativeObj, ksize.width, ksize.height, anchor.x, anchor.y, borderType);
  1963. return;
  1964. #else
  1965. return;
  1966. #endif
  1967. }
  1968. //javadoc: blur(src, dst, ksize, anchor)
  1969. public static void blur(Mat src, Mat dst, Size ksize, Point anchor) {
  1970. if (src != null) src.ThrowIfDisposed();
  1971. if (dst != null) dst.ThrowIfDisposed();
  1972. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1973. imgproc_Imgproc_blur_11(src.nativeObj, dst.nativeObj, ksize.width, ksize.height, anchor.x, anchor.y);
  1974. return;
  1975. #else
  1976. return;
  1977. #endif
  1978. }
  1979. //javadoc: blur(src, dst, ksize)
  1980. public static void blur(Mat src, Mat dst, Size ksize) {
  1981. if (src != null) src.ThrowIfDisposed();
  1982. if (dst != null) dst.ThrowIfDisposed();
  1983. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1984. imgproc_Imgproc_blur_12(src.nativeObj, dst.nativeObj, ksize.width, ksize.height);
  1985. return;
  1986. #else
  1987. return;
  1988. #endif
  1989. }
  1990. //
  1991. // C++: void cv::boxFilter(Mat src, Mat& dst, int ddepth, Size ksize, Point anchor = Point(-1,-1), bool normalize = true, int borderType = BORDER_DEFAULT)
  1992. //
  1993. //javadoc: boxFilter(src, dst, ddepth, ksize, anchor, normalize, borderType)
  1994. public static void boxFilter(Mat src, Mat dst, int ddepth, Size ksize, Point anchor, bool normalize, int borderType) {
  1995. if (src != null) src.ThrowIfDisposed();
  1996. if (dst != null) dst.ThrowIfDisposed();
  1997. #if (UNITY_ANDROID && !UNITY_EDITOR)
  1998. imgproc_Imgproc_boxFilter_10(src.nativeObj, dst.nativeObj, ddepth, ksize.width, ksize.height, anchor.x, anchor.y, normalize, borderType);
  1999. return;
  2000. #else
  2001. return;
  2002. #endif
  2003. }
  2004. //javadoc: boxFilter(src, dst, ddepth, ksize, anchor, normalize)
  2005. public static void boxFilter(Mat src, Mat dst, int ddepth, Size ksize, Point anchor, bool normalize) {
  2006. if (src != null) src.ThrowIfDisposed();
  2007. if (dst != null) dst.ThrowIfDisposed();
  2008. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2009. imgproc_Imgproc_boxFilter_11(src.nativeObj, dst.nativeObj, ddepth, ksize.width, ksize.height, anchor.x, anchor.y, normalize);
  2010. return;
  2011. #else
  2012. return;
  2013. #endif
  2014. }
  2015. //javadoc: boxFilter(src, dst, ddepth, ksize, anchor)
  2016. public static void boxFilter(Mat src, Mat dst, int ddepth, Size ksize, Point anchor) {
  2017. if (src != null) src.ThrowIfDisposed();
  2018. if (dst != null) dst.ThrowIfDisposed();
  2019. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2020. imgproc_Imgproc_boxFilter_12(src.nativeObj, dst.nativeObj, ddepth, ksize.width, ksize.height, anchor.x, anchor.y);
  2021. return;
  2022. #else
  2023. return;
  2024. #endif
  2025. }
  2026. //javadoc: boxFilter(src, dst, ddepth, ksize)
  2027. public static void boxFilter(Mat src, Mat dst, int ddepth, Size ksize) {
  2028. if (src != null) src.ThrowIfDisposed();
  2029. if (dst != null) dst.ThrowIfDisposed();
  2030. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2031. imgproc_Imgproc_boxFilter_13(src.nativeObj, dst.nativeObj, ddepth, ksize.width, ksize.height);
  2032. return;
  2033. #else
  2034. return;
  2035. #endif
  2036. }
  2037. //
  2038. // C++: void cv::boxPoints(RotatedRect box, Mat& points)
  2039. //
  2040. //javadoc: boxPoints(box, points)
  2041. public static void boxPoints(RotatedRect box, Mat points) {
  2042. if (points != null) points.ThrowIfDisposed();
  2043. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2044. imgproc_Imgproc_boxPoints_10(box.center.x, box.center.y, box.size.width, box.size.height, box.angle, points.nativeObj);
  2045. return;
  2046. #else
  2047. return;
  2048. #endif
  2049. }
  2050. //
  2051. // C++: void cv::calcBackProject(vector_Mat images, vector_int channels, Mat hist, Mat& dst, vector_float ranges, double scale)
  2052. //
  2053. //javadoc: calcBackProject(images, channels, hist, dst, ranges, scale)
  2054. public static void calcBackProject(List<Mat> images, MatOfInt channels, Mat hist, Mat dst, MatOfFloat ranges, double scale) {
  2055. if (channels != null) channels.ThrowIfDisposed();
  2056. if (hist != null) hist.ThrowIfDisposed();
  2057. if (dst != null) dst.ThrowIfDisposed();
  2058. if (ranges != null) ranges.ThrowIfDisposed();
  2059. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2060. Mat images_mat = Converters.vector_Mat_to_Mat(images);
  2061. Mat channels_mat = channels;
  2062. Mat ranges_mat = ranges;
  2063. imgproc_Imgproc_calcBackProject_10(images_mat.nativeObj, channels_mat.nativeObj, hist.nativeObj, dst.nativeObj, ranges_mat.nativeObj, scale);
  2064. return;
  2065. #else
  2066. return;
  2067. #endif
  2068. }
  2069. //
  2070. // C++: void cv::calcHist(vector_Mat images, vector_int channels, Mat mask, Mat& hist, vector_int histSize, vector_float ranges, bool accumulate = false)
  2071. //
  2072. //javadoc: calcHist(images, channels, mask, hist, histSize, ranges, accumulate)
  2073. public static void calcHist(List<Mat> images, MatOfInt channels, Mat mask, Mat hist, MatOfInt histSize, MatOfFloat ranges, bool accumulate) {
  2074. if (channels != null) channels.ThrowIfDisposed();
  2075. if (mask != null) mask.ThrowIfDisposed();
  2076. if (hist != null) hist.ThrowIfDisposed();
  2077. if (histSize != null) histSize.ThrowIfDisposed();
  2078. if (ranges != null) ranges.ThrowIfDisposed();
  2079. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2080. Mat images_mat = Converters.vector_Mat_to_Mat(images);
  2081. Mat channels_mat = channels;
  2082. Mat histSize_mat = histSize;
  2083. Mat ranges_mat = ranges;
  2084. imgproc_Imgproc_calcHist_10(images_mat.nativeObj, channels_mat.nativeObj, mask.nativeObj, hist.nativeObj, histSize_mat.nativeObj, ranges_mat.nativeObj, accumulate);
  2085. return;
  2086. #else
  2087. return;
  2088. #endif
  2089. }
  2090. //javadoc: calcHist(images, channels, mask, hist, histSize, ranges)
  2091. public static void calcHist(List<Mat> images, MatOfInt channels, Mat mask, Mat hist, MatOfInt histSize, MatOfFloat ranges) {
  2092. if (channels != null) channels.ThrowIfDisposed();
  2093. if (mask != null) mask.ThrowIfDisposed();
  2094. if (hist != null) hist.ThrowIfDisposed();
  2095. if (histSize != null) histSize.ThrowIfDisposed();
  2096. if (ranges != null) ranges.ThrowIfDisposed();
  2097. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2098. Mat images_mat = Converters.vector_Mat_to_Mat(images);
  2099. Mat channels_mat = channels;
  2100. Mat histSize_mat = histSize;
  2101. Mat ranges_mat = ranges;
  2102. imgproc_Imgproc_calcHist_11(images_mat.nativeObj, channels_mat.nativeObj, mask.nativeObj, hist.nativeObj, histSize_mat.nativeObj, ranges_mat.nativeObj);
  2103. return;
  2104. #else
  2105. return;
  2106. #endif
  2107. }
  2108. //
  2109. // C++: void cv::circle(Mat& img, Point center, int radius, Scalar color, int thickness = 1, int lineType = LINE_8, int shift = 0)
  2110. //
  2111. //javadoc: circle(img, center, radius, color, thickness, lineType, shift)
  2112. public static void circle(Mat img, Point center, int radius, Scalar color, int thickness, int lineType, int shift) {
  2113. if (img != null) img.ThrowIfDisposed();
  2114. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2115. imgproc_Imgproc_circle_10(img.nativeObj, center.x, center.y, radius, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType, shift);
  2116. return;
  2117. #else
  2118. return;
  2119. #endif
  2120. }
  2121. //javadoc: circle(img, center, radius, color, thickness, lineType)
  2122. public static void circle(Mat img, Point center, int radius, Scalar color, int thickness, int lineType) {
  2123. if (img != null) img.ThrowIfDisposed();
  2124. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2125. imgproc_Imgproc_circle_11(img.nativeObj, center.x, center.y, radius, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType);
  2126. return;
  2127. #else
  2128. return;
  2129. #endif
  2130. }
  2131. //javadoc: circle(img, center, radius, color, thickness)
  2132. public static void circle(Mat img, Point center, int radius, Scalar color, int thickness) {
  2133. if (img != null) img.ThrowIfDisposed();
  2134. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2135. imgproc_Imgproc_circle_12(img.nativeObj, center.x, center.y, radius, color.val[0], color.val[1], color.val[2], color.val[3], thickness);
  2136. return;
  2137. #else
  2138. return;
  2139. #endif
  2140. }
  2141. //javadoc: circle(img, center, radius, color)
  2142. public static void circle(Mat img, Point center, int radius, Scalar color) {
  2143. if (img != null) img.ThrowIfDisposed();
  2144. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2145. imgproc_Imgproc_circle_13(img.nativeObj, center.x, center.y, radius, color.val[0], color.val[1], color.val[2], color.val[3]);
  2146. return;
  2147. #else
  2148. return;
  2149. #endif
  2150. }
  2151. //
  2152. // C++: void cv::convertMaps(Mat map1, Mat map2, Mat& dstmap1, Mat& dstmap2, int dstmap1type, bool nninterpolation = false)
  2153. //
  2154. //javadoc: convertMaps(map1, map2, dstmap1, dstmap2, dstmap1type, nninterpolation)
  2155. public static void convertMaps(Mat map1, Mat map2, Mat dstmap1, Mat dstmap2, int dstmap1type, bool nninterpolation) {
  2156. if (map1 != null) map1.ThrowIfDisposed();
  2157. if (map2 != null) map2.ThrowIfDisposed();
  2158. if (dstmap1 != null) dstmap1.ThrowIfDisposed();
  2159. if (dstmap2 != null) dstmap2.ThrowIfDisposed();
  2160. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2161. imgproc_Imgproc_convertMaps_10(map1.nativeObj, map2.nativeObj, dstmap1.nativeObj, dstmap2.nativeObj, dstmap1type, nninterpolation);
  2162. return;
  2163. #else
  2164. return;
  2165. #endif
  2166. }
  2167. //javadoc: convertMaps(map1, map2, dstmap1, dstmap2, dstmap1type)
  2168. public static void convertMaps(Mat map1, Mat map2, Mat dstmap1, Mat dstmap2, int dstmap1type) {
  2169. if (map1 != null) map1.ThrowIfDisposed();
  2170. if (map2 != null) map2.ThrowIfDisposed();
  2171. if (dstmap1 != null) dstmap1.ThrowIfDisposed();
  2172. if (dstmap2 != null) dstmap2.ThrowIfDisposed();
  2173. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2174. imgproc_Imgproc_convertMaps_11(map1.nativeObj, map2.nativeObj, dstmap1.nativeObj, dstmap2.nativeObj, dstmap1type);
  2175. return;
  2176. #else
  2177. return;
  2178. #endif
  2179. }
  2180. //
  2181. // C++: void cv::convexHull(vector_Point points, vector_int& hull, bool clockwise = false, _hidden_ returnPoints = true)
  2182. //
  2183. //javadoc: convexHull(points, hull, clockwise)
  2184. public static void convexHull(MatOfPoint points, MatOfInt hull, bool clockwise) {
  2185. if (points != null) points.ThrowIfDisposed();
  2186. if (hull != null) hull.ThrowIfDisposed();
  2187. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2188. Mat points_mat = points;
  2189. Mat hull_mat = hull;
  2190. imgproc_Imgproc_convexHull_10(points_mat.nativeObj, hull_mat.nativeObj, clockwise);
  2191. return;
  2192. #else
  2193. return;
  2194. #endif
  2195. }
  2196. //javadoc: convexHull(points, hull)
  2197. public static void convexHull(MatOfPoint points, MatOfInt hull) {
  2198. if (points != null) points.ThrowIfDisposed();
  2199. if (hull != null) hull.ThrowIfDisposed();
  2200. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2201. Mat points_mat = points;
  2202. Mat hull_mat = hull;
  2203. imgproc_Imgproc_convexHull_12(points_mat.nativeObj, hull_mat.nativeObj);
  2204. return;
  2205. #else
  2206. return;
  2207. #endif
  2208. }
  2209. //
  2210. // C++: void cv::convexityDefects(vector_Point contour, vector_int convexhull, vector_Vec4i& convexityDefects)
  2211. //
  2212. //javadoc: convexityDefects(contour, convexhull, convexityDefects)
  2213. public static void convexityDefects(MatOfPoint contour, MatOfInt convexhull, MatOfInt4 convexityDefects) {
  2214. if (contour != null) contour.ThrowIfDisposed();
  2215. if (convexhull != null) convexhull.ThrowIfDisposed();
  2216. if (convexityDefects != null) convexityDefects.ThrowIfDisposed();
  2217. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2218. Mat contour_mat = contour;
  2219. Mat convexhull_mat = convexhull;
  2220. Mat convexityDefects_mat = convexityDefects;
  2221. imgproc_Imgproc_convexityDefects_10(contour_mat.nativeObj, convexhull_mat.nativeObj, convexityDefects_mat.nativeObj);
  2222. return;
  2223. #else
  2224. return;
  2225. #endif
  2226. }
  2227. //
  2228. // C++: void cv::cornerEigenValsAndVecs(Mat src, Mat& dst, int blockSize, int ksize, int borderType = BORDER_DEFAULT)
  2229. //
  2230. //javadoc: cornerEigenValsAndVecs(src, dst, blockSize, ksize, borderType)
  2231. public static void cornerEigenValsAndVecs(Mat src, Mat dst, int blockSize, int ksize, int borderType) {
  2232. if (src != null) src.ThrowIfDisposed();
  2233. if (dst != null) dst.ThrowIfDisposed();
  2234. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2235. imgproc_Imgproc_cornerEigenValsAndVecs_10(src.nativeObj, dst.nativeObj, blockSize, ksize, borderType);
  2236. return;
  2237. #else
  2238. return;
  2239. #endif
  2240. }
  2241. //javadoc: cornerEigenValsAndVecs(src, dst, blockSize, ksize)
  2242. public static void cornerEigenValsAndVecs(Mat src, Mat dst, int blockSize, int ksize) {
  2243. if (src != null) src.ThrowIfDisposed();
  2244. if (dst != null) dst.ThrowIfDisposed();
  2245. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2246. imgproc_Imgproc_cornerEigenValsAndVecs_11(src.nativeObj, dst.nativeObj, blockSize, ksize);
  2247. return;
  2248. #else
  2249. return;
  2250. #endif
  2251. }
  2252. //
  2253. // C++: void cv::cornerHarris(Mat src, Mat& dst, int blockSize, int ksize, double k, int borderType = BORDER_DEFAULT)
  2254. //
  2255. //javadoc: cornerHarris(src, dst, blockSize, ksize, k, borderType)
  2256. public static void cornerHarris(Mat src, Mat dst, int blockSize, int ksize, double k, int borderType) {
  2257. if (src != null) src.ThrowIfDisposed();
  2258. if (dst != null) dst.ThrowIfDisposed();
  2259. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2260. imgproc_Imgproc_cornerHarris_10(src.nativeObj, dst.nativeObj, blockSize, ksize, k, borderType);
  2261. return;
  2262. #else
  2263. return;
  2264. #endif
  2265. }
  2266. //javadoc: cornerHarris(src, dst, blockSize, ksize, k)
  2267. public static void cornerHarris(Mat src, Mat dst, int blockSize, int ksize, double k) {
  2268. if (src != null) src.ThrowIfDisposed();
  2269. if (dst != null) dst.ThrowIfDisposed();
  2270. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2271. imgproc_Imgproc_cornerHarris_11(src.nativeObj, dst.nativeObj, blockSize, ksize, k);
  2272. return;
  2273. #else
  2274. return;
  2275. #endif
  2276. }
  2277. //
  2278. // C++: void cv::cornerMinEigenVal(Mat src, Mat& dst, int blockSize, int ksize = 3, int borderType = BORDER_DEFAULT)
  2279. //
  2280. //javadoc: cornerMinEigenVal(src, dst, blockSize, ksize, borderType)
  2281. public static void cornerMinEigenVal(Mat src, Mat dst, int blockSize, int ksize, int borderType) {
  2282. if (src != null) src.ThrowIfDisposed();
  2283. if (dst != null) dst.ThrowIfDisposed();
  2284. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2285. imgproc_Imgproc_cornerMinEigenVal_10(src.nativeObj, dst.nativeObj, blockSize, ksize, borderType);
  2286. return;
  2287. #else
  2288. return;
  2289. #endif
  2290. }
  2291. //javadoc: cornerMinEigenVal(src, dst, blockSize, ksize)
  2292. public static void cornerMinEigenVal(Mat src, Mat dst, int blockSize, int ksize) {
  2293. if (src != null) src.ThrowIfDisposed();
  2294. if (dst != null) dst.ThrowIfDisposed();
  2295. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2296. imgproc_Imgproc_cornerMinEigenVal_11(src.nativeObj, dst.nativeObj, blockSize, ksize);
  2297. return;
  2298. #else
  2299. return;
  2300. #endif
  2301. }
  2302. //javadoc: cornerMinEigenVal(src, dst, blockSize)
  2303. public static void cornerMinEigenVal(Mat src, Mat dst, int blockSize) {
  2304. if (src != null) src.ThrowIfDisposed();
  2305. if (dst != null) dst.ThrowIfDisposed();
  2306. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2307. imgproc_Imgproc_cornerMinEigenVal_12(src.nativeObj, dst.nativeObj, blockSize);
  2308. return;
  2309. #else
  2310. return;
  2311. #endif
  2312. }
  2313. //
  2314. // C++: void cv::cornerSubPix(Mat image, Mat& corners, Size winSize, Size zeroZone, TermCriteria criteria)
  2315. //
  2316. //javadoc: cornerSubPix(image, corners, winSize, zeroZone, criteria)
  2317. public static void cornerSubPix(Mat image, Mat corners, Size winSize, Size zeroZone, TermCriteria criteria) {
  2318. if (image != null) image.ThrowIfDisposed();
  2319. if (corners != null) corners.ThrowIfDisposed();
  2320. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2321. imgproc_Imgproc_cornerSubPix_10(image.nativeObj, corners.nativeObj, winSize.width, winSize.height, zeroZone.width, zeroZone.height, criteria.type, criteria.maxCount, criteria.epsilon);
  2322. return;
  2323. #else
  2324. return;
  2325. #endif
  2326. }
  2327. //
  2328. // C++: void cv::createHanningWindow(Mat& dst, Size winSize, int type)
  2329. //
  2330. //javadoc: createHanningWindow(dst, winSize, type)
  2331. public static void createHanningWindow(Mat dst, Size winSize, int type) {
  2332. if (dst != null) dst.ThrowIfDisposed();
  2333. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2334. imgproc_Imgproc_createHanningWindow_10(dst.nativeObj, winSize.width, winSize.height, type);
  2335. return;
  2336. #else
  2337. return;
  2338. #endif
  2339. }
  2340. //
  2341. // C++: void cv::cvtColor(Mat src, Mat& dst, int code, int dstCn = 0)
  2342. //
  2343. //javadoc: cvtColor(src, dst, code, dstCn)
  2344. public static void cvtColor(Mat src, Mat dst, int code, int dstCn) {
  2345. if (src != null) src.ThrowIfDisposed();
  2346. if (dst != null) dst.ThrowIfDisposed();
  2347. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2348. imgproc_Imgproc_cvtColor_10(src.nativeObj, dst.nativeObj, code, dstCn);
  2349. return;
  2350. #else
  2351. return;
  2352. #endif
  2353. }
  2354. //javadoc: cvtColor(src, dst, code)
  2355. public static void cvtColor(Mat src, Mat dst, int code) {
  2356. if (src != null) src.ThrowIfDisposed();
  2357. if (dst != null) dst.ThrowIfDisposed();
  2358. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2359. imgproc_Imgproc_cvtColor_11(src.nativeObj, dst.nativeObj, code);
  2360. return;
  2361. #else
  2362. return;
  2363. #endif
  2364. }
  2365. //
  2366. // C++: void cv::cvtColorTwoPlane(Mat src1, Mat src2, Mat& dst, int code)
  2367. //
  2368. //javadoc: cvtColorTwoPlane(src1, src2, dst, code)
  2369. public static void cvtColorTwoPlane(Mat src1, Mat src2, Mat dst, int code) {
  2370. if (src1 != null) src1.ThrowIfDisposed();
  2371. if (src2 != null) src2.ThrowIfDisposed();
  2372. if (dst != null) dst.ThrowIfDisposed();
  2373. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2374. imgproc_Imgproc_cvtColorTwoPlane_10(src1.nativeObj, src2.nativeObj, dst.nativeObj, code);
  2375. return;
  2376. #else
  2377. return;
  2378. #endif
  2379. }
  2380. //
  2381. // C++: void cv::demosaicing(Mat src, Mat& dst, int code, int dstCn = 0)
  2382. //
  2383. //javadoc: demosaicing(src, dst, code, dstCn)
  2384. public static void demosaicing(Mat src, Mat dst, int code, int dstCn) {
  2385. if (src != null) src.ThrowIfDisposed();
  2386. if (dst != null) dst.ThrowIfDisposed();
  2387. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2388. imgproc_Imgproc_demosaicing_10(src.nativeObj, dst.nativeObj, code, dstCn);
  2389. return;
  2390. #else
  2391. return;
  2392. #endif
  2393. }
  2394. //javadoc: demosaicing(src, dst, code)
  2395. public static void demosaicing(Mat src, Mat dst, int code) {
  2396. if (src != null) src.ThrowIfDisposed();
  2397. if (dst != null) dst.ThrowIfDisposed();
  2398. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2399. imgproc_Imgproc_demosaicing_11(src.nativeObj, dst.nativeObj, code);
  2400. return;
  2401. #else
  2402. return;
  2403. #endif
  2404. }
  2405. //
  2406. // C++: void cv::dilate(Mat src, Mat& dst, Mat kernel, Point anchor = Point(-1,-1), int iterations = 1, int borderType = BORDER_CONSTANT, Scalar borderValue = morphologyDefaultBorderValue())
  2407. //
  2408. //javadoc: dilate(src, dst, kernel, anchor, iterations, borderType, borderValue)
  2409. public static void dilate(Mat src, Mat dst, Mat kernel, Point anchor, int iterations, int borderType, Scalar borderValue) {
  2410. if (src != null) src.ThrowIfDisposed();
  2411. if (dst != null) dst.ThrowIfDisposed();
  2412. if (kernel != null) kernel.ThrowIfDisposed();
  2413. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2414. imgproc_Imgproc_dilate_10(src.nativeObj, dst.nativeObj, kernel.nativeObj, anchor.x, anchor.y, iterations, borderType, borderValue.val[0], borderValue.val[1], borderValue.val[2], borderValue.val[3]);
  2415. return;
  2416. #else
  2417. return;
  2418. #endif
  2419. }
  2420. //javadoc: dilate(src, dst, kernel, anchor, iterations, borderType)
  2421. public static void dilate(Mat src, Mat dst, Mat kernel, Point anchor, int iterations, int borderType) {
  2422. if (src != null) src.ThrowIfDisposed();
  2423. if (dst != null) dst.ThrowIfDisposed();
  2424. if (kernel != null) kernel.ThrowIfDisposed();
  2425. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2426. imgproc_Imgproc_dilate_11(src.nativeObj, dst.nativeObj, kernel.nativeObj, anchor.x, anchor.y, iterations, borderType);
  2427. return;
  2428. #else
  2429. return;
  2430. #endif
  2431. }
  2432. //javadoc: dilate(src, dst, kernel, anchor, iterations)
  2433. public static void dilate(Mat src, Mat dst, Mat kernel, Point anchor, int iterations) {
  2434. if (src != null) src.ThrowIfDisposed();
  2435. if (dst != null) dst.ThrowIfDisposed();
  2436. if (kernel != null) kernel.ThrowIfDisposed();
  2437. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2438. imgproc_Imgproc_dilate_12(src.nativeObj, dst.nativeObj, kernel.nativeObj, anchor.x, anchor.y, iterations);
  2439. return;
  2440. #else
  2441. return;
  2442. #endif
  2443. }
  2444. //javadoc: dilate(src, dst, kernel, anchor)
  2445. public static void dilate(Mat src, Mat dst, Mat kernel, Point anchor) {
  2446. if (src != null) src.ThrowIfDisposed();
  2447. if (dst != null) dst.ThrowIfDisposed();
  2448. if (kernel != null) kernel.ThrowIfDisposed();
  2449. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2450. imgproc_Imgproc_dilate_13(src.nativeObj, dst.nativeObj, kernel.nativeObj, anchor.x, anchor.y);
  2451. return;
  2452. #else
  2453. return;
  2454. #endif
  2455. }
  2456. //javadoc: dilate(src, dst, kernel)
  2457. public static void dilate(Mat src, Mat dst, Mat kernel) {
  2458. if (src != null) src.ThrowIfDisposed();
  2459. if (dst != null) dst.ThrowIfDisposed();
  2460. if (kernel != null) kernel.ThrowIfDisposed();
  2461. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2462. imgproc_Imgproc_dilate_14(src.nativeObj, dst.nativeObj, kernel.nativeObj);
  2463. return;
  2464. #else
  2465. return;
  2466. #endif
  2467. }
  2468. //
  2469. // C++: void cv::distanceTransform(Mat src, Mat& dst, Mat& labels, int distanceType, int maskSize, int labelType = DIST_LABEL_CCOMP)
  2470. //
  2471. //javadoc: distanceTransformWithLabels(src, dst, labels, distanceType, maskSize, labelType)
  2472. public static void distanceTransformWithLabels(Mat src, Mat dst, Mat labels, int distanceType, int maskSize, int labelType) {
  2473. if (src != null) src.ThrowIfDisposed();
  2474. if (dst != null) dst.ThrowIfDisposed();
  2475. if (labels != null) labels.ThrowIfDisposed();
  2476. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2477. imgproc_Imgproc_distanceTransformWithLabels_10(src.nativeObj, dst.nativeObj, labels.nativeObj, distanceType, maskSize, labelType);
  2478. return;
  2479. #else
  2480. return;
  2481. #endif
  2482. }
  2483. //javadoc: distanceTransformWithLabels(src, dst, labels, distanceType, maskSize)
  2484. public static void distanceTransformWithLabels(Mat src, Mat dst, Mat labels, int distanceType, int maskSize) {
  2485. if (src != null) src.ThrowIfDisposed();
  2486. if (dst != null) dst.ThrowIfDisposed();
  2487. if (labels != null) labels.ThrowIfDisposed();
  2488. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2489. imgproc_Imgproc_distanceTransformWithLabels_11(src.nativeObj, dst.nativeObj, labels.nativeObj, distanceType, maskSize);
  2490. return;
  2491. #else
  2492. return;
  2493. #endif
  2494. }
  2495. //
  2496. // C++: void cv::distanceTransform(Mat src, Mat& dst, int distanceType, int maskSize, int dstType = CV_32F)
  2497. //
  2498. //javadoc: distanceTransform(src, dst, distanceType, maskSize, dstType)
  2499. public static void distanceTransform(Mat src, Mat dst, int distanceType, int maskSize, int dstType) {
  2500. if (src != null) src.ThrowIfDisposed();
  2501. if (dst != null) dst.ThrowIfDisposed();
  2502. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2503. imgproc_Imgproc_distanceTransform_10(src.nativeObj, dst.nativeObj, distanceType, maskSize, dstType);
  2504. return;
  2505. #else
  2506. return;
  2507. #endif
  2508. }
  2509. //javadoc: distanceTransform(src, dst, distanceType, maskSize)
  2510. public static void distanceTransform(Mat src, Mat dst, int distanceType, int maskSize) {
  2511. if (src != null) src.ThrowIfDisposed();
  2512. if (dst != null) dst.ThrowIfDisposed();
  2513. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2514. imgproc_Imgproc_distanceTransform_11(src.nativeObj, dst.nativeObj, distanceType, maskSize);
  2515. return;
  2516. #else
  2517. return;
  2518. #endif
  2519. }
  2520. //
  2521. // C++: void cv::drawContours(Mat& image, vector_vector_Point contours, int contourIdx, Scalar color, int thickness = 1, int lineType = LINE_8, Mat hierarchy = Mat(), int maxLevel = INT_MAX, Point offset = Point())
  2522. //
  2523. //javadoc: drawContours(image, contours, contourIdx, color, thickness, lineType, hierarchy, maxLevel, offset)
  2524. public static void drawContours(Mat image, List<MatOfPoint> contours, int contourIdx, Scalar color, int thickness, int lineType, Mat hierarchy, int maxLevel, Point offset) {
  2525. if (image != null) image.ThrowIfDisposed();
  2526. if (hierarchy != null) hierarchy.ThrowIfDisposed();
  2527. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2528. List<Mat> contours_tmplm = new List<Mat>((contours != null) ? contours.Count : 0);
  2529. Mat contours_mat = Converters.vector_vector_Point_to_Mat(contours, contours_tmplm);
  2530. imgproc_Imgproc_drawContours_10(image.nativeObj, contours_mat.nativeObj, contourIdx, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType, hierarchy.nativeObj, maxLevel, offset.x, offset.y);
  2531. return;
  2532. #else
  2533. return;
  2534. #endif
  2535. }
  2536. //javadoc: drawContours(image, contours, contourIdx, color, thickness, lineType, hierarchy, maxLevel)
  2537. public static void drawContours(Mat image, List<MatOfPoint> contours, int contourIdx, Scalar color, int thickness, int lineType, Mat hierarchy, int maxLevel) {
  2538. if (image != null) image.ThrowIfDisposed();
  2539. if (hierarchy != null) hierarchy.ThrowIfDisposed();
  2540. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2541. List<Mat> contours_tmplm = new List<Mat>((contours != null) ? contours.Count : 0);
  2542. Mat contours_mat = Converters.vector_vector_Point_to_Mat(contours, contours_tmplm);
  2543. imgproc_Imgproc_drawContours_11(image.nativeObj, contours_mat.nativeObj, contourIdx, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType, hierarchy.nativeObj, maxLevel);
  2544. return;
  2545. #else
  2546. return;
  2547. #endif
  2548. }
  2549. //javadoc: drawContours(image, contours, contourIdx, color, thickness, lineType, hierarchy)
  2550. public static void drawContours(Mat image, List<MatOfPoint> contours, int contourIdx, Scalar color, int thickness, int lineType, Mat hierarchy) {
  2551. if (image != null) image.ThrowIfDisposed();
  2552. if (hierarchy != null) hierarchy.ThrowIfDisposed();
  2553. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2554. List<Mat> contours_tmplm = new List<Mat>((contours != null) ? contours.Count : 0);
  2555. Mat contours_mat = Converters.vector_vector_Point_to_Mat(contours, contours_tmplm);
  2556. imgproc_Imgproc_drawContours_12(image.nativeObj, contours_mat.nativeObj, contourIdx, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType, hierarchy.nativeObj);
  2557. return;
  2558. #else
  2559. return;
  2560. #endif
  2561. }
  2562. //javadoc: drawContours(image, contours, contourIdx, color, thickness, lineType)
  2563. public static void drawContours(Mat image, List<MatOfPoint> contours, int contourIdx, Scalar color, int thickness, int lineType) {
  2564. if (image != null) image.ThrowIfDisposed();
  2565. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2566. List<Mat> contours_tmplm = new List<Mat>((contours != null) ? contours.Count : 0);
  2567. Mat contours_mat = Converters.vector_vector_Point_to_Mat(contours, contours_tmplm);
  2568. imgproc_Imgproc_drawContours_13(image.nativeObj, contours_mat.nativeObj, contourIdx, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType);
  2569. return;
  2570. #else
  2571. return;
  2572. #endif
  2573. }
  2574. //javadoc: drawContours(image, contours, contourIdx, color, thickness)
  2575. public static void drawContours(Mat image, List<MatOfPoint> contours, int contourIdx, Scalar color, int thickness) {
  2576. if (image != null) image.ThrowIfDisposed();
  2577. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2578. List<Mat> contours_tmplm = new List<Mat>((contours != null) ? contours.Count : 0);
  2579. Mat contours_mat = Converters.vector_vector_Point_to_Mat(contours, contours_tmplm);
  2580. imgproc_Imgproc_drawContours_14(image.nativeObj, contours_mat.nativeObj, contourIdx, color.val[0], color.val[1], color.val[2], color.val[3], thickness);
  2581. return;
  2582. #else
  2583. return;
  2584. #endif
  2585. }
  2586. //javadoc: drawContours(image, contours, contourIdx, color)
  2587. public static void drawContours(Mat image, List<MatOfPoint> contours, int contourIdx, Scalar color) {
  2588. if (image != null) image.ThrowIfDisposed();
  2589. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2590. List<Mat> contours_tmplm = new List<Mat>((contours != null) ? contours.Count : 0);
  2591. Mat contours_mat = Converters.vector_vector_Point_to_Mat(contours, contours_tmplm);
  2592. imgproc_Imgproc_drawContours_15(image.nativeObj, contours_mat.nativeObj, contourIdx, color.val[0], color.val[1], color.val[2], color.val[3]);
  2593. return;
  2594. #else
  2595. return;
  2596. #endif
  2597. }
  2598. //
  2599. // C++: void cv::drawMarker(Mat& img, Point position, Scalar color, int markerType = MARKER_CROSS, int markerSize = 20, int thickness = 1, int line_type = 8)
  2600. //
  2601. //javadoc: drawMarker(img, position, color, markerType, markerSize, thickness, line_type)
  2602. public static void drawMarker(Mat img, Point position, Scalar color, int markerType, int markerSize, int thickness, int line_type) {
  2603. if (img != null) img.ThrowIfDisposed();
  2604. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2605. imgproc_Imgproc_drawMarker_10(img.nativeObj, position.x, position.y, color.val[0], color.val[1], color.val[2], color.val[3], markerType, markerSize, thickness, line_type);
  2606. return;
  2607. #else
  2608. return;
  2609. #endif
  2610. }
  2611. //javadoc: drawMarker(img, position, color, markerType, markerSize, thickness)
  2612. public static void drawMarker(Mat img, Point position, Scalar color, int markerType, int markerSize, int thickness) {
  2613. if (img != null) img.ThrowIfDisposed();
  2614. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2615. imgproc_Imgproc_drawMarker_11(img.nativeObj, position.x, position.y, color.val[0], color.val[1], color.val[2], color.val[3], markerType, markerSize, thickness);
  2616. return;
  2617. #else
  2618. return;
  2619. #endif
  2620. }
  2621. //javadoc: drawMarker(img, position, color, markerType, markerSize)
  2622. public static void drawMarker(Mat img, Point position, Scalar color, int markerType, int markerSize) {
  2623. if (img != null) img.ThrowIfDisposed();
  2624. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2625. imgproc_Imgproc_drawMarker_12(img.nativeObj, position.x, position.y, color.val[0], color.val[1], color.val[2], color.val[3], markerType, markerSize);
  2626. return;
  2627. #else
  2628. return;
  2629. #endif
  2630. }
  2631. //javadoc: drawMarker(img, position, color, markerType)
  2632. public static void drawMarker(Mat img, Point position, Scalar color, int markerType) {
  2633. if (img != null) img.ThrowIfDisposed();
  2634. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2635. imgproc_Imgproc_drawMarker_13(img.nativeObj, position.x, position.y, color.val[0], color.val[1], color.val[2], color.val[3], markerType);
  2636. return;
  2637. #else
  2638. return;
  2639. #endif
  2640. }
  2641. //javadoc: drawMarker(img, position, color)
  2642. public static void drawMarker(Mat img, Point position, Scalar color) {
  2643. if (img != null) img.ThrowIfDisposed();
  2644. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2645. imgproc_Imgproc_drawMarker_14(img.nativeObj, position.x, position.y, color.val[0], color.val[1], color.val[2], color.val[3]);
  2646. return;
  2647. #else
  2648. return;
  2649. #endif
  2650. }
  2651. //
  2652. // C++: void cv::ellipse(Mat& img, Point center, Size axes, double angle, double startAngle, double endAngle, Scalar color, int thickness = 1, int lineType = LINE_8, int shift = 0)
  2653. //
  2654. //javadoc: ellipse(img, center, axes, angle, startAngle, endAngle, color, thickness, lineType, shift)
  2655. public static void ellipse(Mat img, Point center, Size axes, double angle, double startAngle, double endAngle, Scalar color, int thickness, int lineType, int shift) {
  2656. if (img != null) img.ThrowIfDisposed();
  2657. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2658. imgproc_Imgproc_ellipse_10(img.nativeObj, center.x, center.y, axes.width, axes.height, angle, startAngle, endAngle, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType, shift);
  2659. return;
  2660. #else
  2661. return;
  2662. #endif
  2663. }
  2664. //javadoc: ellipse(img, center, axes, angle, startAngle, endAngle, color, thickness, lineType)
  2665. public static void ellipse(Mat img, Point center, Size axes, double angle, double startAngle, double endAngle, Scalar color, int thickness, int lineType) {
  2666. if (img != null) img.ThrowIfDisposed();
  2667. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2668. imgproc_Imgproc_ellipse_11(img.nativeObj, center.x, center.y, axes.width, axes.height, angle, startAngle, endAngle, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType);
  2669. return;
  2670. #else
  2671. return;
  2672. #endif
  2673. }
  2674. //javadoc: ellipse(img, center, axes, angle, startAngle, endAngle, color, thickness)
  2675. public static void ellipse(Mat img, Point center, Size axes, double angle, double startAngle, double endAngle, Scalar color, int thickness) {
  2676. if (img != null) img.ThrowIfDisposed();
  2677. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2678. imgproc_Imgproc_ellipse_12(img.nativeObj, center.x, center.y, axes.width, axes.height, angle, startAngle, endAngle, color.val[0], color.val[1], color.val[2], color.val[3], thickness);
  2679. return;
  2680. #else
  2681. return;
  2682. #endif
  2683. }
  2684. //javadoc: ellipse(img, center, axes, angle, startAngle, endAngle, color)
  2685. public static void ellipse(Mat img, Point center, Size axes, double angle, double startAngle, double endAngle, Scalar color) {
  2686. if (img != null) img.ThrowIfDisposed();
  2687. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2688. imgproc_Imgproc_ellipse_13(img.nativeObj, center.x, center.y, axes.width, axes.height, angle, startAngle, endAngle, color.val[0], color.val[1], color.val[2], color.val[3]);
  2689. return;
  2690. #else
  2691. return;
  2692. #endif
  2693. }
  2694. //
  2695. // C++: void cv::ellipse(Mat& img, RotatedRect box, Scalar color, int thickness = 1, int lineType = LINE_8)
  2696. //
  2697. //javadoc: ellipse(img, box, color, thickness, lineType)
  2698. public static void ellipse(Mat img, RotatedRect box, Scalar color, int thickness, int lineType) {
  2699. if (img != null) img.ThrowIfDisposed();
  2700. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2701. imgproc_Imgproc_ellipse_14(img.nativeObj, box.center.x, box.center.y, box.size.width, box.size.height, box.angle, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType);
  2702. return;
  2703. #else
  2704. return;
  2705. #endif
  2706. }
  2707. //javadoc: ellipse(img, box, color, thickness)
  2708. public static void ellipse(Mat img, RotatedRect box, Scalar color, int thickness) {
  2709. if (img != null) img.ThrowIfDisposed();
  2710. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2711. imgproc_Imgproc_ellipse_15(img.nativeObj, box.center.x, box.center.y, box.size.width, box.size.height, box.angle, color.val[0], color.val[1], color.val[2], color.val[3], thickness);
  2712. return;
  2713. #else
  2714. return;
  2715. #endif
  2716. }
  2717. //javadoc: ellipse(img, box, color)
  2718. public static void ellipse(Mat img, RotatedRect box, Scalar color) {
  2719. if (img != null) img.ThrowIfDisposed();
  2720. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2721. imgproc_Imgproc_ellipse_16(img.nativeObj, box.center.x, box.center.y, box.size.width, box.size.height, box.angle, color.val[0], color.val[1], color.val[2], color.val[3]);
  2722. return;
  2723. #else
  2724. return;
  2725. #endif
  2726. }
  2727. //
  2728. // C++: void cv::ellipse2Poly(Point center, Size axes, int angle, int arcStart, int arcEnd, int delta, vector_Point& pts)
  2729. //
  2730. //javadoc: ellipse2Poly(center, axes, angle, arcStart, arcEnd, delta, pts)
  2731. public static void ellipse2Poly(Point center, Size axes, int angle, int arcStart, int arcEnd, int delta, MatOfPoint pts) {
  2732. if (pts != null) pts.ThrowIfDisposed();
  2733. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2734. Mat pts_mat = pts;
  2735. imgproc_Imgproc_ellipse2Poly_10(center.x, center.y, axes.width, axes.height, angle, arcStart, arcEnd, delta, pts_mat.nativeObj);
  2736. return;
  2737. #else
  2738. return;
  2739. #endif
  2740. }
  2741. //
  2742. // C++: void cv::equalizeHist(Mat src, Mat& dst)
  2743. //
  2744. //javadoc: equalizeHist(src, dst)
  2745. public static void equalizeHist(Mat src, Mat dst) {
  2746. if (src != null) src.ThrowIfDisposed();
  2747. if (dst != null) dst.ThrowIfDisposed();
  2748. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2749. imgproc_Imgproc_equalizeHist_10(src.nativeObj, dst.nativeObj);
  2750. return;
  2751. #else
  2752. return;
  2753. #endif
  2754. }
  2755. //
  2756. // C++: void cv::erode(Mat src, Mat& dst, Mat kernel, Point anchor = Point(-1,-1), int iterations = 1, int borderType = BORDER_CONSTANT, Scalar borderValue = morphologyDefaultBorderValue())
  2757. //
  2758. //javadoc: erode(src, dst, kernel, anchor, iterations, borderType, borderValue)
  2759. public static void erode(Mat src, Mat dst, Mat kernel, Point anchor, int iterations, int borderType, Scalar borderValue) {
  2760. if (src != null) src.ThrowIfDisposed();
  2761. if (dst != null) dst.ThrowIfDisposed();
  2762. if (kernel != null) kernel.ThrowIfDisposed();
  2763. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2764. imgproc_Imgproc_erode_10(src.nativeObj, dst.nativeObj, kernel.nativeObj, anchor.x, anchor.y, iterations, borderType, borderValue.val[0], borderValue.val[1], borderValue.val[2], borderValue.val[3]);
  2765. return;
  2766. #else
  2767. return;
  2768. #endif
  2769. }
  2770. //javadoc: erode(src, dst, kernel, anchor, iterations, borderType)
  2771. public static void erode(Mat src, Mat dst, Mat kernel, Point anchor, int iterations, int borderType) {
  2772. if (src != null) src.ThrowIfDisposed();
  2773. if (dst != null) dst.ThrowIfDisposed();
  2774. if (kernel != null) kernel.ThrowIfDisposed();
  2775. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2776. imgproc_Imgproc_erode_11(src.nativeObj, dst.nativeObj, kernel.nativeObj, anchor.x, anchor.y, iterations, borderType);
  2777. return;
  2778. #else
  2779. return;
  2780. #endif
  2781. }
  2782. //javadoc: erode(src, dst, kernel, anchor, iterations)
  2783. public static void erode(Mat src, Mat dst, Mat kernel, Point anchor, int iterations) {
  2784. if (src != null) src.ThrowIfDisposed();
  2785. if (dst != null) dst.ThrowIfDisposed();
  2786. if (kernel != null) kernel.ThrowIfDisposed();
  2787. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2788. imgproc_Imgproc_erode_12(src.nativeObj, dst.nativeObj, kernel.nativeObj, anchor.x, anchor.y, iterations);
  2789. return;
  2790. #else
  2791. return;
  2792. #endif
  2793. }
  2794. //javadoc: erode(src, dst, kernel, anchor)
  2795. public static void erode(Mat src, Mat dst, Mat kernel, Point anchor) {
  2796. if (src != null) src.ThrowIfDisposed();
  2797. if (dst != null) dst.ThrowIfDisposed();
  2798. if (kernel != null) kernel.ThrowIfDisposed();
  2799. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2800. imgproc_Imgproc_erode_13(src.nativeObj, dst.nativeObj, kernel.nativeObj, anchor.x, anchor.y);
  2801. return;
  2802. #else
  2803. return;
  2804. #endif
  2805. }
  2806. //javadoc: erode(src, dst, kernel)
  2807. public static void erode(Mat src, Mat dst, Mat kernel) {
  2808. if (src != null) src.ThrowIfDisposed();
  2809. if (dst != null) dst.ThrowIfDisposed();
  2810. if (kernel != null) kernel.ThrowIfDisposed();
  2811. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2812. imgproc_Imgproc_erode_14(src.nativeObj, dst.nativeObj, kernel.nativeObj);
  2813. return;
  2814. #else
  2815. return;
  2816. #endif
  2817. }
  2818. //
  2819. // C++: void cv::fillConvexPoly(Mat& img, vector_Point points, Scalar color, int lineType = LINE_8, int shift = 0)
  2820. //
  2821. //javadoc: fillConvexPoly(img, points, color, lineType, shift)
  2822. public static void fillConvexPoly(Mat img, MatOfPoint points, Scalar color, int lineType, int shift) {
  2823. if (img != null) img.ThrowIfDisposed();
  2824. if (points != null) points.ThrowIfDisposed();
  2825. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2826. Mat points_mat = points;
  2827. imgproc_Imgproc_fillConvexPoly_10(img.nativeObj, points_mat.nativeObj, color.val[0], color.val[1], color.val[2], color.val[3], lineType, shift);
  2828. return;
  2829. #else
  2830. return;
  2831. #endif
  2832. }
  2833. //javadoc: fillConvexPoly(img, points, color, lineType)
  2834. public static void fillConvexPoly(Mat img, MatOfPoint points, Scalar color, int lineType) {
  2835. if (img != null) img.ThrowIfDisposed();
  2836. if (points != null) points.ThrowIfDisposed();
  2837. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2838. Mat points_mat = points;
  2839. imgproc_Imgproc_fillConvexPoly_11(img.nativeObj, points_mat.nativeObj, color.val[0], color.val[1], color.val[2], color.val[3], lineType);
  2840. return;
  2841. #else
  2842. return;
  2843. #endif
  2844. }
  2845. //javadoc: fillConvexPoly(img, points, color)
  2846. public static void fillConvexPoly(Mat img, MatOfPoint points, Scalar color) {
  2847. if (img != null) img.ThrowIfDisposed();
  2848. if (points != null) points.ThrowIfDisposed();
  2849. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2850. Mat points_mat = points;
  2851. imgproc_Imgproc_fillConvexPoly_12(img.nativeObj, points_mat.nativeObj, color.val[0], color.val[1], color.val[2], color.val[3]);
  2852. return;
  2853. #else
  2854. return;
  2855. #endif
  2856. }
  2857. //
  2858. // C++: void cv::fillPoly(Mat& img, vector_vector_Point pts, Scalar color, int lineType = LINE_8, int shift = 0, Point offset = Point())
  2859. //
  2860. //javadoc: fillPoly(img, pts, color, lineType, shift, offset)
  2861. public static void fillPoly(Mat img, List<MatOfPoint> pts, Scalar color, int lineType, int shift, Point offset) {
  2862. if (img != null) img.ThrowIfDisposed();
  2863. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2864. List<Mat> pts_tmplm = new List<Mat>((pts != null) ? pts.Count : 0);
  2865. Mat pts_mat = Converters.vector_vector_Point_to_Mat(pts, pts_tmplm);
  2866. imgproc_Imgproc_fillPoly_10(img.nativeObj, pts_mat.nativeObj, color.val[0], color.val[1], color.val[2], color.val[3], lineType, shift, offset.x, offset.y);
  2867. return;
  2868. #else
  2869. return;
  2870. #endif
  2871. }
  2872. //javadoc: fillPoly(img, pts, color, lineType, shift)
  2873. public static void fillPoly(Mat img, List<MatOfPoint> pts, Scalar color, int lineType, int shift) {
  2874. if (img != null) img.ThrowIfDisposed();
  2875. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2876. List<Mat> pts_tmplm = new List<Mat>((pts != null) ? pts.Count : 0);
  2877. Mat pts_mat = Converters.vector_vector_Point_to_Mat(pts, pts_tmplm);
  2878. imgproc_Imgproc_fillPoly_11(img.nativeObj, pts_mat.nativeObj, color.val[0], color.val[1], color.val[2], color.val[3], lineType, shift);
  2879. return;
  2880. #else
  2881. return;
  2882. #endif
  2883. }
  2884. //javadoc: fillPoly(img, pts, color, lineType)
  2885. public static void fillPoly(Mat img, List<MatOfPoint> pts, Scalar color, int lineType) {
  2886. if (img != null) img.ThrowIfDisposed();
  2887. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2888. List<Mat> pts_tmplm = new List<Mat>((pts != null) ? pts.Count : 0);
  2889. Mat pts_mat = Converters.vector_vector_Point_to_Mat(pts, pts_tmplm);
  2890. imgproc_Imgproc_fillPoly_12(img.nativeObj, pts_mat.nativeObj, color.val[0], color.val[1], color.val[2], color.val[3], lineType);
  2891. return;
  2892. #else
  2893. return;
  2894. #endif
  2895. }
  2896. //javadoc: fillPoly(img, pts, color)
  2897. public static void fillPoly(Mat img, List<MatOfPoint> pts, Scalar color) {
  2898. if (img != null) img.ThrowIfDisposed();
  2899. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2900. List<Mat> pts_tmplm = new List<Mat>((pts != null) ? pts.Count : 0);
  2901. Mat pts_mat = Converters.vector_vector_Point_to_Mat(pts, pts_tmplm);
  2902. imgproc_Imgproc_fillPoly_13(img.nativeObj, pts_mat.nativeObj, color.val[0], color.val[1], color.val[2], color.val[3]);
  2903. return;
  2904. #else
  2905. return;
  2906. #endif
  2907. }
  2908. //
  2909. // C++: void cv::filter2D(Mat src, Mat& dst, int ddepth, Mat kernel, Point anchor = Point(-1,-1), double delta = 0, int borderType = BORDER_DEFAULT)
  2910. //
  2911. //javadoc: filter2D(src, dst, ddepth, kernel, anchor, delta, borderType)
  2912. public static void filter2D(Mat src, Mat dst, int ddepth, Mat kernel, Point anchor, double delta, int borderType) {
  2913. if (src != null) src.ThrowIfDisposed();
  2914. if (dst != null) dst.ThrowIfDisposed();
  2915. if (kernel != null) kernel.ThrowIfDisposed();
  2916. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2917. imgproc_Imgproc_filter2D_10(src.nativeObj, dst.nativeObj, ddepth, kernel.nativeObj, anchor.x, anchor.y, delta, borderType);
  2918. return;
  2919. #else
  2920. return;
  2921. #endif
  2922. }
  2923. //javadoc: filter2D(src, dst, ddepth, kernel, anchor, delta)
  2924. public static void filter2D(Mat src, Mat dst, int ddepth, Mat kernel, Point anchor, double delta) {
  2925. if (src != null) src.ThrowIfDisposed();
  2926. if (dst != null) dst.ThrowIfDisposed();
  2927. if (kernel != null) kernel.ThrowIfDisposed();
  2928. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2929. imgproc_Imgproc_filter2D_11(src.nativeObj, dst.nativeObj, ddepth, kernel.nativeObj, anchor.x, anchor.y, delta);
  2930. return;
  2931. #else
  2932. return;
  2933. #endif
  2934. }
  2935. //javadoc: filter2D(src, dst, ddepth, kernel, anchor)
  2936. public static void filter2D(Mat src, Mat dst, int ddepth, Mat kernel, Point anchor) {
  2937. if (src != null) src.ThrowIfDisposed();
  2938. if (dst != null) dst.ThrowIfDisposed();
  2939. if (kernel != null) kernel.ThrowIfDisposed();
  2940. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2941. imgproc_Imgproc_filter2D_12(src.nativeObj, dst.nativeObj, ddepth, kernel.nativeObj, anchor.x, anchor.y);
  2942. return;
  2943. #else
  2944. return;
  2945. #endif
  2946. }
  2947. //javadoc: filter2D(src, dst, ddepth, kernel)
  2948. public static void filter2D(Mat src, Mat dst, int ddepth, Mat kernel) {
  2949. if (src != null) src.ThrowIfDisposed();
  2950. if (dst != null) dst.ThrowIfDisposed();
  2951. if (kernel != null) kernel.ThrowIfDisposed();
  2952. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2953. imgproc_Imgproc_filter2D_13(src.nativeObj, dst.nativeObj, ddepth, kernel.nativeObj);
  2954. return;
  2955. #else
  2956. return;
  2957. #endif
  2958. }
  2959. //
  2960. // C++: void cv::findContours(Mat image, vector_vector_Point& contours, Mat& hierarchy, int mode, int method, Point offset = Point())
  2961. //
  2962. //javadoc: findContours(image, contours, hierarchy, mode, method, offset)
  2963. public static void findContours(Mat image, List<MatOfPoint> contours, Mat hierarchy, int mode, int method, Point offset) {
  2964. if (image != null) image.ThrowIfDisposed();
  2965. if (hierarchy != null) hierarchy.ThrowIfDisposed();
  2966. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2967. Mat contours_mat = new Mat();
  2968. imgproc_Imgproc_findContours_10(image.nativeObj, contours_mat.nativeObj, hierarchy.nativeObj, mode, method, offset.x, offset.y);
  2969. Converters.Mat_to_vector_vector_Point(contours_mat, contours);
  2970. contours_mat.release();
  2971. return;
  2972. #else
  2973. return;
  2974. #endif
  2975. }
  2976. //javadoc: findContours(image, contours, hierarchy, mode, method)
  2977. public static void findContours(Mat image, List<MatOfPoint> contours, Mat hierarchy, int mode, int method) {
  2978. if (image != null) image.ThrowIfDisposed();
  2979. if (hierarchy != null) hierarchy.ThrowIfDisposed();
  2980. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2981. Mat contours_mat = new Mat();
  2982. imgproc_Imgproc_findContours_11(image.nativeObj, contours_mat.nativeObj, hierarchy.nativeObj, mode, method);
  2983. Converters.Mat_to_vector_vector_Point(contours_mat, contours);
  2984. contours_mat.release();
  2985. return;
  2986. #else
  2987. return;
  2988. #endif
  2989. }
  2990. //
  2991. // C++: void cv::fitLine(Mat points, Mat& line, int distType, double param, double reps, double aeps)
  2992. //
  2993. //javadoc: fitLine(points, line, distType, param, reps, aeps)
  2994. public static void fitLine(Mat points, Mat line, int distType, double param, double reps, double aeps) {
  2995. if (points != null) points.ThrowIfDisposed();
  2996. if (line != null) line.ThrowIfDisposed();
  2997. #if (UNITY_ANDROID && !UNITY_EDITOR)
  2998. imgproc_Imgproc_fitLine_10(points.nativeObj, line.nativeObj, distType, param, reps, aeps);
  2999. return;
  3000. #else
  3001. return;
  3002. #endif
  3003. }
  3004. //
  3005. // C++: void cv::getDerivKernels(Mat& kx, Mat& ky, int dx, int dy, int ksize, bool normalize = false, int ktype = CV_32F)
  3006. //
  3007. //javadoc: getDerivKernels(kx, ky, dx, dy, ksize, normalize, ktype)
  3008. public static void getDerivKernels(Mat kx, Mat ky, int dx, int dy, int ksize, bool normalize, int ktype) {
  3009. if (kx != null) kx.ThrowIfDisposed();
  3010. if (ky != null) ky.ThrowIfDisposed();
  3011. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3012. imgproc_Imgproc_getDerivKernels_10(kx.nativeObj, ky.nativeObj, dx, dy, ksize, normalize, ktype);
  3013. return;
  3014. #else
  3015. return;
  3016. #endif
  3017. }
  3018. //javadoc: getDerivKernels(kx, ky, dx, dy, ksize, normalize)
  3019. public static void getDerivKernels(Mat kx, Mat ky, int dx, int dy, int ksize, bool normalize) {
  3020. if (kx != null) kx.ThrowIfDisposed();
  3021. if (ky != null) ky.ThrowIfDisposed();
  3022. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3023. imgproc_Imgproc_getDerivKernels_11(kx.nativeObj, ky.nativeObj, dx, dy, ksize, normalize);
  3024. return;
  3025. #else
  3026. return;
  3027. #endif
  3028. }
  3029. //javadoc: getDerivKernels(kx, ky, dx, dy, ksize)
  3030. public static void getDerivKernels(Mat kx, Mat ky, int dx, int dy, int ksize) {
  3031. if (kx != null) kx.ThrowIfDisposed();
  3032. if (ky != null) ky.ThrowIfDisposed();
  3033. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3034. imgproc_Imgproc_getDerivKernels_12(kx.nativeObj, ky.nativeObj, dx, dy, ksize);
  3035. return;
  3036. #else
  3037. return;
  3038. #endif
  3039. }
  3040. //
  3041. // C++: void cv::getRectSubPix(Mat image, Size patchSize, Point2f center, Mat& patch, int patchType = -1)
  3042. //
  3043. //javadoc: getRectSubPix(image, patchSize, center, patch, patchType)
  3044. public static void getRectSubPix(Mat image, Size patchSize, Point center, Mat patch, int patchType) {
  3045. if (image != null) image.ThrowIfDisposed();
  3046. if (patch != null) patch.ThrowIfDisposed();
  3047. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3048. imgproc_Imgproc_getRectSubPix_10(image.nativeObj, patchSize.width, patchSize.height, center.x, center.y, patch.nativeObj, patchType);
  3049. return;
  3050. #else
  3051. return;
  3052. #endif
  3053. }
  3054. //javadoc: getRectSubPix(image, patchSize, center, patch)
  3055. public static void getRectSubPix(Mat image, Size patchSize, Point center, Mat patch) {
  3056. if (image != null) image.ThrowIfDisposed();
  3057. if (patch != null) patch.ThrowIfDisposed();
  3058. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3059. imgproc_Imgproc_getRectSubPix_11(image.nativeObj, patchSize.width, patchSize.height, center.x, center.y, patch.nativeObj);
  3060. return;
  3061. #else
  3062. return;
  3063. #endif
  3064. }
  3065. //
  3066. // C++: void cv::goodFeaturesToTrack(Mat image, vector_Point& corners, int maxCorners, double qualityLevel, double minDistance, Mat mask, int blockSize, int gradientSize, bool useHarrisDetector = false, double k = 0.04)
  3067. //
  3068. //javadoc: goodFeaturesToTrack(image, corners, maxCorners, qualityLevel, minDistance, mask, blockSize, gradientSize, useHarrisDetector, k)
  3069. public static void goodFeaturesToTrack(Mat image, MatOfPoint corners, int maxCorners, double qualityLevel, double minDistance, Mat mask, int blockSize, int gradientSize, bool useHarrisDetector, double k) {
  3070. if (image != null) image.ThrowIfDisposed();
  3071. if (corners != null) corners.ThrowIfDisposed();
  3072. if (mask != null) mask.ThrowIfDisposed();
  3073. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3074. Mat corners_mat = corners;
  3075. imgproc_Imgproc_goodFeaturesToTrack_10(image.nativeObj, corners_mat.nativeObj, maxCorners, qualityLevel, minDistance, mask.nativeObj, blockSize, gradientSize, useHarrisDetector, k);
  3076. return;
  3077. #else
  3078. return;
  3079. #endif
  3080. }
  3081. //javadoc: goodFeaturesToTrack(image, corners, maxCorners, qualityLevel, minDistance, mask, blockSize, gradientSize, useHarrisDetector)
  3082. public static void goodFeaturesToTrack(Mat image, MatOfPoint corners, int maxCorners, double qualityLevel, double minDistance, Mat mask, int blockSize, int gradientSize, bool useHarrisDetector) {
  3083. if (image != null) image.ThrowIfDisposed();
  3084. if (corners != null) corners.ThrowIfDisposed();
  3085. if (mask != null) mask.ThrowIfDisposed();
  3086. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3087. Mat corners_mat = corners;
  3088. imgproc_Imgproc_goodFeaturesToTrack_11(image.nativeObj, corners_mat.nativeObj, maxCorners, qualityLevel, minDistance, mask.nativeObj, blockSize, gradientSize, useHarrisDetector);
  3089. return;
  3090. #else
  3091. return;
  3092. #endif
  3093. }
  3094. //javadoc: goodFeaturesToTrack(image, corners, maxCorners, qualityLevel, minDistance, mask, blockSize, gradientSize)
  3095. public static void goodFeaturesToTrack(Mat image, MatOfPoint corners, int maxCorners, double qualityLevel, double minDistance, Mat mask, int blockSize, int gradientSize) {
  3096. if (image != null) image.ThrowIfDisposed();
  3097. if (corners != null) corners.ThrowIfDisposed();
  3098. if (mask != null) mask.ThrowIfDisposed();
  3099. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3100. Mat corners_mat = corners;
  3101. imgproc_Imgproc_goodFeaturesToTrack_12(image.nativeObj, corners_mat.nativeObj, maxCorners, qualityLevel, minDistance, mask.nativeObj, blockSize, gradientSize);
  3102. return;
  3103. #else
  3104. return;
  3105. #endif
  3106. }
  3107. //
  3108. // C++: void cv::goodFeaturesToTrack(Mat image, vector_Point& corners, int maxCorners, double qualityLevel, double minDistance, Mat mask = Mat(), int blockSize = 3, bool useHarrisDetector = false, double k = 0.04)
  3109. //
  3110. //javadoc: goodFeaturesToTrack(image, corners, maxCorners, qualityLevel, minDistance, mask, blockSize, useHarrisDetector, k)
  3111. public static void goodFeaturesToTrack(Mat image, MatOfPoint corners, int maxCorners, double qualityLevel, double minDistance, Mat mask, int blockSize, bool useHarrisDetector, double k) {
  3112. if (image != null) image.ThrowIfDisposed();
  3113. if (corners != null) corners.ThrowIfDisposed();
  3114. if (mask != null) mask.ThrowIfDisposed();
  3115. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3116. Mat corners_mat = corners;
  3117. imgproc_Imgproc_goodFeaturesToTrack_13(image.nativeObj, corners_mat.nativeObj, maxCorners, qualityLevel, minDistance, mask.nativeObj, blockSize, useHarrisDetector, k);
  3118. return;
  3119. #else
  3120. return;
  3121. #endif
  3122. }
  3123. //javadoc: goodFeaturesToTrack(image, corners, maxCorners, qualityLevel, minDistance, mask, blockSize, useHarrisDetector)
  3124. public static void goodFeaturesToTrack(Mat image, MatOfPoint corners, int maxCorners, double qualityLevel, double minDistance, Mat mask, int blockSize, bool useHarrisDetector) {
  3125. if (image != null) image.ThrowIfDisposed();
  3126. if (corners != null) corners.ThrowIfDisposed();
  3127. if (mask != null) mask.ThrowIfDisposed();
  3128. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3129. Mat corners_mat = corners;
  3130. imgproc_Imgproc_goodFeaturesToTrack_14(image.nativeObj, corners_mat.nativeObj, maxCorners, qualityLevel, minDistance, mask.nativeObj, blockSize, useHarrisDetector);
  3131. return;
  3132. #else
  3133. return;
  3134. #endif
  3135. }
  3136. //javadoc: goodFeaturesToTrack(image, corners, maxCorners, qualityLevel, minDistance, mask, blockSize)
  3137. public static void goodFeaturesToTrack(Mat image, MatOfPoint corners, int maxCorners, double qualityLevel, double minDistance, Mat mask, int blockSize) {
  3138. if (image != null) image.ThrowIfDisposed();
  3139. if (corners != null) corners.ThrowIfDisposed();
  3140. if (mask != null) mask.ThrowIfDisposed();
  3141. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3142. Mat corners_mat = corners;
  3143. imgproc_Imgproc_goodFeaturesToTrack_15(image.nativeObj, corners_mat.nativeObj, maxCorners, qualityLevel, minDistance, mask.nativeObj, blockSize);
  3144. return;
  3145. #else
  3146. return;
  3147. #endif
  3148. }
  3149. //javadoc: goodFeaturesToTrack(image, corners, maxCorners, qualityLevel, minDistance, mask)
  3150. public static void goodFeaturesToTrack(Mat image, MatOfPoint corners, int maxCorners, double qualityLevel, double minDistance, Mat mask) {
  3151. if (image != null) image.ThrowIfDisposed();
  3152. if (corners != null) corners.ThrowIfDisposed();
  3153. if (mask != null) mask.ThrowIfDisposed();
  3154. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3155. Mat corners_mat = corners;
  3156. imgproc_Imgproc_goodFeaturesToTrack_16(image.nativeObj, corners_mat.nativeObj, maxCorners, qualityLevel, minDistance, mask.nativeObj);
  3157. return;
  3158. #else
  3159. return;
  3160. #endif
  3161. }
  3162. //javadoc: goodFeaturesToTrack(image, corners, maxCorners, qualityLevel, minDistance)
  3163. public static void goodFeaturesToTrack(Mat image, MatOfPoint corners, int maxCorners, double qualityLevel, double minDistance) {
  3164. if (image != null) image.ThrowIfDisposed();
  3165. if (corners != null) corners.ThrowIfDisposed();
  3166. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3167. Mat corners_mat = corners;
  3168. imgproc_Imgproc_goodFeaturesToTrack_17(image.nativeObj, corners_mat.nativeObj, maxCorners, qualityLevel, minDistance);
  3169. return;
  3170. #else
  3171. return;
  3172. #endif
  3173. }
  3174. //
  3175. // C++: void cv::grabCut(Mat img, Mat& mask, Rect rect, Mat& bgdModel, Mat& fgdModel, int iterCount, int mode = GC_EVAL)
  3176. //
  3177. //javadoc: grabCut(img, mask, rect, bgdModel, fgdModel, iterCount, mode)
  3178. public static void grabCut(Mat img, Mat mask, Rect rect, Mat bgdModel, Mat fgdModel, int iterCount, int mode) {
  3179. if (img != null) img.ThrowIfDisposed();
  3180. if (mask != null) mask.ThrowIfDisposed();
  3181. if (bgdModel != null) bgdModel.ThrowIfDisposed();
  3182. if (fgdModel != null) fgdModel.ThrowIfDisposed();
  3183. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3184. imgproc_Imgproc_grabCut_10(img.nativeObj, mask.nativeObj, rect.x, rect.y, rect.width, rect.height, bgdModel.nativeObj, fgdModel.nativeObj, iterCount, mode);
  3185. return;
  3186. #else
  3187. return;
  3188. #endif
  3189. }
  3190. //javadoc: grabCut(img, mask, rect, bgdModel, fgdModel, iterCount)
  3191. public static void grabCut(Mat img, Mat mask, Rect rect, Mat bgdModel, Mat fgdModel, int iterCount) {
  3192. if (img != null) img.ThrowIfDisposed();
  3193. if (mask != null) mask.ThrowIfDisposed();
  3194. if (bgdModel != null) bgdModel.ThrowIfDisposed();
  3195. if (fgdModel != null) fgdModel.ThrowIfDisposed();
  3196. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3197. imgproc_Imgproc_grabCut_11(img.nativeObj, mask.nativeObj, rect.x, rect.y, rect.width, rect.height, bgdModel.nativeObj, fgdModel.nativeObj, iterCount);
  3198. return;
  3199. #else
  3200. return;
  3201. #endif
  3202. }
  3203. //
  3204. // C++: void cv::integral(Mat src, Mat& sum, Mat& sqsum, Mat& tilted, int sdepth = -1, int sqdepth = -1)
  3205. //
  3206. //javadoc: integral3(src, sum, sqsum, tilted, sdepth, sqdepth)
  3207. public static void integral3(Mat src, Mat sum, Mat sqsum, Mat tilted, int sdepth, int sqdepth) {
  3208. if (src != null) src.ThrowIfDisposed();
  3209. if (sum != null) sum.ThrowIfDisposed();
  3210. if (sqsum != null) sqsum.ThrowIfDisposed();
  3211. if (tilted != null) tilted.ThrowIfDisposed();
  3212. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3213. imgproc_Imgproc_integral3_10(src.nativeObj, sum.nativeObj, sqsum.nativeObj, tilted.nativeObj, sdepth, sqdepth);
  3214. return;
  3215. #else
  3216. return;
  3217. #endif
  3218. }
  3219. //javadoc: integral3(src, sum, sqsum, tilted, sdepth)
  3220. public static void integral3(Mat src, Mat sum, Mat sqsum, Mat tilted, int sdepth) {
  3221. if (src != null) src.ThrowIfDisposed();
  3222. if (sum != null) sum.ThrowIfDisposed();
  3223. if (sqsum != null) sqsum.ThrowIfDisposed();
  3224. if (tilted != null) tilted.ThrowIfDisposed();
  3225. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3226. imgproc_Imgproc_integral3_11(src.nativeObj, sum.nativeObj, sqsum.nativeObj, tilted.nativeObj, sdepth);
  3227. return;
  3228. #else
  3229. return;
  3230. #endif
  3231. }
  3232. //javadoc: integral3(src, sum, sqsum, tilted)
  3233. public static void integral3(Mat src, Mat sum, Mat sqsum, Mat tilted) {
  3234. if (src != null) src.ThrowIfDisposed();
  3235. if (sum != null) sum.ThrowIfDisposed();
  3236. if (sqsum != null) sqsum.ThrowIfDisposed();
  3237. if (tilted != null) tilted.ThrowIfDisposed();
  3238. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3239. imgproc_Imgproc_integral3_12(src.nativeObj, sum.nativeObj, sqsum.nativeObj, tilted.nativeObj);
  3240. return;
  3241. #else
  3242. return;
  3243. #endif
  3244. }
  3245. //
  3246. // C++: void cv::integral(Mat src, Mat& sum, Mat& sqsum, int sdepth = -1, int sqdepth = -1)
  3247. //
  3248. //javadoc: integral2(src, sum, sqsum, sdepth, sqdepth)
  3249. public static void integral2(Mat src, Mat sum, Mat sqsum, int sdepth, int sqdepth) {
  3250. if (src != null) src.ThrowIfDisposed();
  3251. if (sum != null) sum.ThrowIfDisposed();
  3252. if (sqsum != null) sqsum.ThrowIfDisposed();
  3253. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3254. imgproc_Imgproc_integral2_10(src.nativeObj, sum.nativeObj, sqsum.nativeObj, sdepth, sqdepth);
  3255. return;
  3256. #else
  3257. return;
  3258. #endif
  3259. }
  3260. //javadoc: integral2(src, sum, sqsum, sdepth)
  3261. public static void integral2(Mat src, Mat sum, Mat sqsum, int sdepth) {
  3262. if (src != null) src.ThrowIfDisposed();
  3263. if (sum != null) sum.ThrowIfDisposed();
  3264. if (sqsum != null) sqsum.ThrowIfDisposed();
  3265. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3266. imgproc_Imgproc_integral2_11(src.nativeObj, sum.nativeObj, sqsum.nativeObj, sdepth);
  3267. return;
  3268. #else
  3269. return;
  3270. #endif
  3271. }
  3272. //javadoc: integral2(src, sum, sqsum)
  3273. public static void integral2(Mat src, Mat sum, Mat sqsum) {
  3274. if (src != null) src.ThrowIfDisposed();
  3275. if (sum != null) sum.ThrowIfDisposed();
  3276. if (sqsum != null) sqsum.ThrowIfDisposed();
  3277. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3278. imgproc_Imgproc_integral2_12(src.nativeObj, sum.nativeObj, sqsum.nativeObj);
  3279. return;
  3280. #else
  3281. return;
  3282. #endif
  3283. }
  3284. //
  3285. // C++: void cv::integral(Mat src, Mat& sum, int sdepth = -1)
  3286. //
  3287. //javadoc: integral(src, sum, sdepth)
  3288. public static void integral(Mat src, Mat sum, int sdepth) {
  3289. if (src != null) src.ThrowIfDisposed();
  3290. if (sum != null) sum.ThrowIfDisposed();
  3291. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3292. imgproc_Imgproc_integral_10(src.nativeObj, sum.nativeObj, sdepth);
  3293. return;
  3294. #else
  3295. return;
  3296. #endif
  3297. }
  3298. //javadoc: integral(src, sum)
  3299. public static void integral(Mat src, Mat sum) {
  3300. if (src != null) src.ThrowIfDisposed();
  3301. if (sum != null) sum.ThrowIfDisposed();
  3302. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3303. imgproc_Imgproc_integral_11(src.nativeObj, sum.nativeObj);
  3304. return;
  3305. #else
  3306. return;
  3307. #endif
  3308. }
  3309. //
  3310. // C++: void cv::invertAffineTransform(Mat M, Mat& iM)
  3311. //
  3312. //javadoc: invertAffineTransform(M, iM)
  3313. public static void invertAffineTransform(Mat M, Mat iM) {
  3314. if (M != null) M.ThrowIfDisposed();
  3315. if (iM != null) iM.ThrowIfDisposed();
  3316. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3317. imgproc_Imgproc_invertAffineTransform_10(M.nativeObj, iM.nativeObj);
  3318. return;
  3319. #else
  3320. return;
  3321. #endif
  3322. }
  3323. //
  3324. // C++: void cv::line(Mat& img, Point pt1, Point pt2, Scalar color, int thickness = 1, int lineType = LINE_8, int shift = 0)
  3325. //
  3326. //javadoc: line(img, pt1, pt2, color, thickness, lineType, shift)
  3327. public static void line(Mat img, Point pt1, Point pt2, Scalar color, int thickness, int lineType, int shift) {
  3328. if (img != null) img.ThrowIfDisposed();
  3329. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3330. imgproc_Imgproc_line_10(img.nativeObj, pt1.x, pt1.y, pt2.x, pt2.y, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType, shift);
  3331. return;
  3332. #else
  3333. return;
  3334. #endif
  3335. }
  3336. //javadoc: line(img, pt1, pt2, color, thickness, lineType)
  3337. public static void line(Mat img, Point pt1, Point pt2, Scalar color, int thickness, int lineType) {
  3338. if (img != null) img.ThrowIfDisposed();
  3339. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3340. imgproc_Imgproc_line_11(img.nativeObj, pt1.x, pt1.y, pt2.x, pt2.y, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType);
  3341. return;
  3342. #else
  3343. return;
  3344. #endif
  3345. }
  3346. //javadoc: line(img, pt1, pt2, color, thickness)
  3347. public static void line(Mat img, Point pt1, Point pt2, Scalar color, int thickness) {
  3348. if (img != null) img.ThrowIfDisposed();
  3349. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3350. imgproc_Imgproc_line_12(img.nativeObj, pt1.x, pt1.y, pt2.x, pt2.y, color.val[0], color.val[1], color.val[2], color.val[3], thickness);
  3351. return;
  3352. #else
  3353. return;
  3354. #endif
  3355. }
  3356. //javadoc: line(img, pt1, pt2, color)
  3357. public static void line(Mat img, Point pt1, Point pt2, Scalar color) {
  3358. if (img != null) img.ThrowIfDisposed();
  3359. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3360. imgproc_Imgproc_line_13(img.nativeObj, pt1.x, pt1.y, pt2.x, pt2.y, color.val[0], color.val[1], color.val[2], color.val[3]);
  3361. return;
  3362. #else
  3363. return;
  3364. #endif
  3365. }
  3366. //
  3367. // C++: void cv::linearPolar(Mat src, Mat& dst, Point2f center, double maxRadius, int flags)
  3368. //
  3369. //javadoc: linearPolar(src, dst, center, maxRadius, flags)
  3370. [Obsolete("This method is deprecated.")]
  3371. public static void linearPolar(Mat src, Mat dst, Point center, double maxRadius, int flags) {
  3372. if (src != null) src.ThrowIfDisposed();
  3373. if (dst != null) dst.ThrowIfDisposed();
  3374. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3375. imgproc_Imgproc_linearPolar_10(src.nativeObj, dst.nativeObj, center.x, center.y, maxRadius, flags);
  3376. return;
  3377. #else
  3378. return;
  3379. #endif
  3380. }
  3381. //
  3382. // C++: void cv::logPolar(Mat src, Mat& dst, Point2f center, double M, int flags)
  3383. //
  3384. //javadoc: logPolar(src, dst, center, M, flags)
  3385. [Obsolete("This method is deprecated.")]
  3386. public static void logPolar(Mat src, Mat dst, Point center, double M, int flags) {
  3387. if (src != null) src.ThrowIfDisposed();
  3388. if (dst != null) dst.ThrowIfDisposed();
  3389. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3390. imgproc_Imgproc_logPolar_10(src.nativeObj, dst.nativeObj, center.x, center.y, M, flags);
  3391. return;
  3392. #else
  3393. return;
  3394. #endif
  3395. }
  3396. //
  3397. // C++: void cv::matchTemplate(Mat image, Mat templ, Mat& result, int method, Mat mask = Mat())
  3398. //
  3399. //javadoc: matchTemplate(image, templ, result, method, mask)
  3400. public static void matchTemplate(Mat image, Mat templ, Mat result, int method, Mat mask) {
  3401. if (image != null) image.ThrowIfDisposed();
  3402. if (templ != null) templ.ThrowIfDisposed();
  3403. if (result != null) result.ThrowIfDisposed();
  3404. if (mask != null) mask.ThrowIfDisposed();
  3405. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3406. imgproc_Imgproc_matchTemplate_10(image.nativeObj, templ.nativeObj, result.nativeObj, method, mask.nativeObj);
  3407. return;
  3408. #else
  3409. return;
  3410. #endif
  3411. }
  3412. //javadoc: matchTemplate(image, templ, result, method)
  3413. public static void matchTemplate(Mat image, Mat templ, Mat result, int method) {
  3414. if (image != null) image.ThrowIfDisposed();
  3415. if (templ != null) templ.ThrowIfDisposed();
  3416. if (result != null) result.ThrowIfDisposed();
  3417. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3418. imgproc_Imgproc_matchTemplate_11(image.nativeObj, templ.nativeObj, result.nativeObj, method);
  3419. return;
  3420. #else
  3421. return;
  3422. #endif
  3423. }
  3424. //
  3425. // C++: void cv::medianBlur(Mat src, Mat& dst, int ksize)
  3426. //
  3427. //javadoc: medianBlur(src, dst, ksize)
  3428. public static void medianBlur(Mat src, Mat dst, int ksize) {
  3429. if (src != null) src.ThrowIfDisposed();
  3430. if (dst != null) dst.ThrowIfDisposed();
  3431. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3432. imgproc_Imgproc_medianBlur_10(src.nativeObj, dst.nativeObj, ksize);
  3433. return;
  3434. #else
  3435. return;
  3436. #endif
  3437. }
  3438. //
  3439. // C++: void cv::minEnclosingCircle(vector_Point2f points, Point2f& center, float& radius)
  3440. //
  3441. //javadoc: minEnclosingCircle(points, center, radius)
  3442. public static void minEnclosingCircle(MatOfPoint2f points, Point center, float[] radius) {
  3443. if (points != null) points.ThrowIfDisposed();
  3444. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3445. Mat points_mat = points;
  3446. double[] center_out = new double[2];
  3447. double[] radius_out = new double[1];
  3448. imgproc_Imgproc_minEnclosingCircle_10(points_mat.nativeObj, center_out, radius_out);
  3449. if (center != null) { center.x = center_out[0]; center.y = center_out[1]; }
  3450. if (radius != null) radius[0] = (float)radius_out[0];
  3451. return;
  3452. #else
  3453. return;
  3454. #endif
  3455. }
  3456. //
  3457. // C++: void cv::morphologyEx(Mat src, Mat& dst, int op, Mat kernel, Point anchor = Point(-1,-1), int iterations = 1, int borderType = BORDER_CONSTANT, Scalar borderValue = morphologyDefaultBorderValue())
  3458. //
  3459. //javadoc: morphologyEx(src, dst, op, kernel, anchor, iterations, borderType, borderValue)
  3460. public static void morphologyEx(Mat src, Mat dst, int op, Mat kernel, Point anchor, int iterations, int borderType, Scalar borderValue) {
  3461. if (src != null) src.ThrowIfDisposed();
  3462. if (dst != null) dst.ThrowIfDisposed();
  3463. if (kernel != null) kernel.ThrowIfDisposed();
  3464. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3465. imgproc_Imgproc_morphologyEx_10(src.nativeObj, dst.nativeObj, op, kernel.nativeObj, anchor.x, anchor.y, iterations, borderType, borderValue.val[0], borderValue.val[1], borderValue.val[2], borderValue.val[3]);
  3466. return;
  3467. #else
  3468. return;
  3469. #endif
  3470. }
  3471. //javadoc: morphologyEx(src, dst, op, kernel, anchor, iterations, borderType)
  3472. public static void morphologyEx(Mat src, Mat dst, int op, Mat kernel, Point anchor, int iterations, int borderType) {
  3473. if (src != null) src.ThrowIfDisposed();
  3474. if (dst != null) dst.ThrowIfDisposed();
  3475. if (kernel != null) kernel.ThrowIfDisposed();
  3476. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3477. imgproc_Imgproc_morphologyEx_11(src.nativeObj, dst.nativeObj, op, kernel.nativeObj, anchor.x, anchor.y, iterations, borderType);
  3478. return;
  3479. #else
  3480. return;
  3481. #endif
  3482. }
  3483. //javadoc: morphologyEx(src, dst, op, kernel, anchor, iterations)
  3484. public static void morphologyEx(Mat src, Mat dst, int op, Mat kernel, Point anchor, int iterations) {
  3485. if (src != null) src.ThrowIfDisposed();
  3486. if (dst != null) dst.ThrowIfDisposed();
  3487. if (kernel != null) kernel.ThrowIfDisposed();
  3488. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3489. imgproc_Imgproc_morphologyEx_12(src.nativeObj, dst.nativeObj, op, kernel.nativeObj, anchor.x, anchor.y, iterations);
  3490. return;
  3491. #else
  3492. return;
  3493. #endif
  3494. }
  3495. //javadoc: morphologyEx(src, dst, op, kernel, anchor)
  3496. public static void morphologyEx(Mat src, Mat dst, int op, Mat kernel, Point anchor) {
  3497. if (src != null) src.ThrowIfDisposed();
  3498. if (dst != null) dst.ThrowIfDisposed();
  3499. if (kernel != null) kernel.ThrowIfDisposed();
  3500. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3501. imgproc_Imgproc_morphologyEx_13(src.nativeObj, dst.nativeObj, op, kernel.nativeObj, anchor.x, anchor.y);
  3502. return;
  3503. #else
  3504. return;
  3505. #endif
  3506. }
  3507. //javadoc: morphologyEx(src, dst, op, kernel)
  3508. public static void morphologyEx(Mat src, Mat dst, int op, Mat kernel) {
  3509. if (src != null) src.ThrowIfDisposed();
  3510. if (dst != null) dst.ThrowIfDisposed();
  3511. if (kernel != null) kernel.ThrowIfDisposed();
  3512. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3513. imgproc_Imgproc_morphologyEx_14(src.nativeObj, dst.nativeObj, op, kernel.nativeObj);
  3514. return;
  3515. #else
  3516. return;
  3517. #endif
  3518. }
  3519. //
  3520. // C++: void cv::polylines(Mat& img, vector_vector_Point pts, bool isClosed, Scalar color, int thickness = 1, int lineType = LINE_8, int shift = 0)
  3521. //
  3522. //javadoc: polylines(img, pts, isClosed, color, thickness, lineType, shift)
  3523. public static void polylines(Mat img, List<MatOfPoint> pts, bool isClosed, Scalar color, int thickness, int lineType, int shift) {
  3524. if (img != null) img.ThrowIfDisposed();
  3525. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3526. List<Mat> pts_tmplm = new List<Mat>((pts != null) ? pts.Count : 0);
  3527. Mat pts_mat = Converters.vector_vector_Point_to_Mat(pts, pts_tmplm);
  3528. imgproc_Imgproc_polylines_10(img.nativeObj, pts_mat.nativeObj, isClosed, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType, shift);
  3529. return;
  3530. #else
  3531. return;
  3532. #endif
  3533. }
  3534. //javadoc: polylines(img, pts, isClosed, color, thickness, lineType)
  3535. public static void polylines(Mat img, List<MatOfPoint> pts, bool isClosed, Scalar color, int thickness, int lineType) {
  3536. if (img != null) img.ThrowIfDisposed();
  3537. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3538. List<Mat> pts_tmplm = new List<Mat>((pts != null) ? pts.Count : 0);
  3539. Mat pts_mat = Converters.vector_vector_Point_to_Mat(pts, pts_tmplm);
  3540. imgproc_Imgproc_polylines_11(img.nativeObj, pts_mat.nativeObj, isClosed, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType);
  3541. return;
  3542. #else
  3543. return;
  3544. #endif
  3545. }
  3546. //javadoc: polylines(img, pts, isClosed, color, thickness)
  3547. public static void polylines(Mat img, List<MatOfPoint> pts, bool isClosed, Scalar color, int thickness) {
  3548. if (img != null) img.ThrowIfDisposed();
  3549. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3550. List<Mat> pts_tmplm = new List<Mat>((pts != null) ? pts.Count : 0);
  3551. Mat pts_mat = Converters.vector_vector_Point_to_Mat(pts, pts_tmplm);
  3552. imgproc_Imgproc_polylines_12(img.nativeObj, pts_mat.nativeObj, isClosed, color.val[0], color.val[1], color.val[2], color.val[3], thickness);
  3553. return;
  3554. #else
  3555. return;
  3556. #endif
  3557. }
  3558. //javadoc: polylines(img, pts, isClosed, color)
  3559. public static void polylines(Mat img, List<MatOfPoint> pts, bool isClosed, Scalar color) {
  3560. if (img != null) img.ThrowIfDisposed();
  3561. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3562. List<Mat> pts_tmplm = new List<Mat>((pts != null) ? pts.Count : 0);
  3563. Mat pts_mat = Converters.vector_vector_Point_to_Mat(pts, pts_tmplm);
  3564. imgproc_Imgproc_polylines_13(img.nativeObj, pts_mat.nativeObj, isClosed, color.val[0], color.val[1], color.val[2], color.val[3]);
  3565. return;
  3566. #else
  3567. return;
  3568. #endif
  3569. }
  3570. //
  3571. // C++: void cv::preCornerDetect(Mat src, Mat& dst, int ksize, int borderType = BORDER_DEFAULT)
  3572. //
  3573. //javadoc: preCornerDetect(src, dst, ksize, borderType)
  3574. public static void preCornerDetect(Mat src, Mat dst, int ksize, int borderType) {
  3575. if (src != null) src.ThrowIfDisposed();
  3576. if (dst != null) dst.ThrowIfDisposed();
  3577. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3578. imgproc_Imgproc_preCornerDetect_10(src.nativeObj, dst.nativeObj, ksize, borderType);
  3579. return;
  3580. #else
  3581. return;
  3582. #endif
  3583. }
  3584. //javadoc: preCornerDetect(src, dst, ksize)
  3585. public static void preCornerDetect(Mat src, Mat dst, int ksize) {
  3586. if (src != null) src.ThrowIfDisposed();
  3587. if (dst != null) dst.ThrowIfDisposed();
  3588. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3589. imgproc_Imgproc_preCornerDetect_11(src.nativeObj, dst.nativeObj, ksize);
  3590. return;
  3591. #else
  3592. return;
  3593. #endif
  3594. }
  3595. //
  3596. // C++: void cv::putText(Mat& img, String text, Point org, int fontFace, double fontScale, Scalar color, int thickness = 1, int lineType = LINE_8, bool bottomLeftOrigin = false)
  3597. //
  3598. //javadoc: putText(img, text, org, fontFace, fontScale, color, thickness, lineType, bottomLeftOrigin)
  3599. public static void putText(Mat img, string text, Point org, int fontFace, double fontScale, Scalar color, int thickness, int lineType, bool bottomLeftOrigin) {
  3600. if (img != null) img.ThrowIfDisposed();
  3601. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3602. imgproc_Imgproc_putText_10(img.nativeObj, text, org.x, org.y, fontFace, fontScale, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType, bottomLeftOrigin);
  3603. return;
  3604. #else
  3605. return;
  3606. #endif
  3607. }
  3608. //javadoc: putText(img, text, org, fontFace, fontScale, color, thickness, lineType)
  3609. public static void putText(Mat img, string text, Point org, int fontFace, double fontScale, Scalar color, int thickness, int lineType) {
  3610. if (img != null) img.ThrowIfDisposed();
  3611. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3612. imgproc_Imgproc_putText_11(img.nativeObj, text, org.x, org.y, fontFace, fontScale, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType);
  3613. return;
  3614. #else
  3615. return;
  3616. #endif
  3617. }
  3618. //javadoc: putText(img, text, org, fontFace, fontScale, color, thickness)
  3619. public static void putText(Mat img, string text, Point org, int fontFace, double fontScale, Scalar color, int thickness) {
  3620. if (img != null) img.ThrowIfDisposed();
  3621. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3622. imgproc_Imgproc_putText_12(img.nativeObj, text, org.x, org.y, fontFace, fontScale, color.val[0], color.val[1], color.val[2], color.val[3], thickness);
  3623. return;
  3624. #else
  3625. return;
  3626. #endif
  3627. }
  3628. //javadoc: putText(img, text, org, fontFace, fontScale, color)
  3629. public static void putText(Mat img, string text, Point org, int fontFace, double fontScale, Scalar color) {
  3630. if (img != null) img.ThrowIfDisposed();
  3631. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3632. imgproc_Imgproc_putText_13(img.nativeObj, text, org.x, org.y, fontFace, fontScale, color.val[0], color.val[1], color.val[2], color.val[3]);
  3633. return;
  3634. #else
  3635. return;
  3636. #endif
  3637. }
  3638. //
  3639. // C++: void cv::pyrDown(Mat src, Mat& dst, Size dstsize = Size(), int borderType = BORDER_DEFAULT)
  3640. //
  3641. //javadoc: pyrDown(src, dst, dstsize, borderType)
  3642. public static void pyrDown(Mat src, Mat dst, Size dstsize, int borderType) {
  3643. if (src != null) src.ThrowIfDisposed();
  3644. if (dst != null) dst.ThrowIfDisposed();
  3645. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3646. imgproc_Imgproc_pyrDown_10(src.nativeObj, dst.nativeObj, dstsize.width, dstsize.height, borderType);
  3647. return;
  3648. #else
  3649. return;
  3650. #endif
  3651. }
  3652. //javadoc: pyrDown(src, dst, dstsize)
  3653. public static void pyrDown(Mat src, Mat dst, Size dstsize) {
  3654. if (src != null) src.ThrowIfDisposed();
  3655. if (dst != null) dst.ThrowIfDisposed();
  3656. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3657. imgproc_Imgproc_pyrDown_11(src.nativeObj, dst.nativeObj, dstsize.width, dstsize.height);
  3658. return;
  3659. #else
  3660. return;
  3661. #endif
  3662. }
  3663. //javadoc: pyrDown(src, dst)
  3664. public static void pyrDown(Mat src, Mat dst) {
  3665. if (src != null) src.ThrowIfDisposed();
  3666. if (dst != null) dst.ThrowIfDisposed();
  3667. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3668. imgproc_Imgproc_pyrDown_12(src.nativeObj, dst.nativeObj);
  3669. return;
  3670. #else
  3671. return;
  3672. #endif
  3673. }
  3674. //
  3675. // C++: void cv::pyrMeanShiftFiltering(Mat src, Mat& dst, double sp, double sr, int maxLevel = 1, TermCriteria termcrit = TermCriteria(TermCriteria::MAX_ITER+TermCriteria::EPS,5,1))
  3676. //
  3677. //javadoc: pyrMeanShiftFiltering(src, dst, sp, sr, maxLevel, termcrit)
  3678. public static void pyrMeanShiftFiltering(Mat src, Mat dst, double sp, double sr, int maxLevel, TermCriteria termcrit) {
  3679. if (src != null) src.ThrowIfDisposed();
  3680. if (dst != null) dst.ThrowIfDisposed();
  3681. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3682. imgproc_Imgproc_pyrMeanShiftFiltering_10(src.nativeObj, dst.nativeObj, sp, sr, maxLevel, termcrit.type, termcrit.maxCount, termcrit.epsilon);
  3683. return;
  3684. #else
  3685. return;
  3686. #endif
  3687. }
  3688. //javadoc: pyrMeanShiftFiltering(src, dst, sp, sr, maxLevel)
  3689. public static void pyrMeanShiftFiltering(Mat src, Mat dst, double sp, double sr, int maxLevel) {
  3690. if (src != null) src.ThrowIfDisposed();
  3691. if (dst != null) dst.ThrowIfDisposed();
  3692. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3693. imgproc_Imgproc_pyrMeanShiftFiltering_11(src.nativeObj, dst.nativeObj, sp, sr, maxLevel);
  3694. return;
  3695. #else
  3696. return;
  3697. #endif
  3698. }
  3699. //javadoc: pyrMeanShiftFiltering(src, dst, sp, sr)
  3700. public static void pyrMeanShiftFiltering(Mat src, Mat dst, double sp, double sr) {
  3701. if (src != null) src.ThrowIfDisposed();
  3702. if (dst != null) dst.ThrowIfDisposed();
  3703. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3704. imgproc_Imgproc_pyrMeanShiftFiltering_12(src.nativeObj, dst.nativeObj, sp, sr);
  3705. return;
  3706. #else
  3707. return;
  3708. #endif
  3709. }
  3710. //
  3711. // C++: void cv::pyrUp(Mat src, Mat& dst, Size dstsize = Size(), int borderType = BORDER_DEFAULT)
  3712. //
  3713. //javadoc: pyrUp(src, dst, dstsize, borderType)
  3714. public static void pyrUp(Mat src, Mat dst, Size dstsize, int borderType) {
  3715. if (src != null) src.ThrowIfDisposed();
  3716. if (dst != null) dst.ThrowIfDisposed();
  3717. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3718. imgproc_Imgproc_pyrUp_10(src.nativeObj, dst.nativeObj, dstsize.width, dstsize.height, borderType);
  3719. return;
  3720. #else
  3721. return;
  3722. #endif
  3723. }
  3724. //javadoc: pyrUp(src, dst, dstsize)
  3725. public static void pyrUp(Mat src, Mat dst, Size dstsize) {
  3726. if (src != null) src.ThrowIfDisposed();
  3727. if (dst != null) dst.ThrowIfDisposed();
  3728. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3729. imgproc_Imgproc_pyrUp_11(src.nativeObj, dst.nativeObj, dstsize.width, dstsize.height);
  3730. return;
  3731. #else
  3732. return;
  3733. #endif
  3734. }
  3735. //javadoc: pyrUp(src, dst)
  3736. public static void pyrUp(Mat src, Mat dst) {
  3737. if (src != null) src.ThrowIfDisposed();
  3738. if (dst != null) dst.ThrowIfDisposed();
  3739. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3740. imgproc_Imgproc_pyrUp_12(src.nativeObj, dst.nativeObj);
  3741. return;
  3742. #else
  3743. return;
  3744. #endif
  3745. }
  3746. //
  3747. // C++: void cv::rectangle(Mat& img, Point pt1, Point pt2, Scalar color, int thickness = 1, int lineType = LINE_8, int shift = 0)
  3748. //
  3749. //javadoc: rectangle(img, pt1, pt2, color, thickness, lineType, shift)
  3750. public static void rectangle(Mat img, Point pt1, Point pt2, Scalar color, int thickness, int lineType, int shift) {
  3751. if (img != null) img.ThrowIfDisposed();
  3752. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3753. imgproc_Imgproc_rectangle_10(img.nativeObj, pt1.x, pt1.y, pt2.x, pt2.y, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType, shift);
  3754. return;
  3755. #else
  3756. return;
  3757. #endif
  3758. }
  3759. //javadoc: rectangle(img, pt1, pt2, color, thickness, lineType)
  3760. public static void rectangle(Mat img, Point pt1, Point pt2, Scalar color, int thickness, int lineType) {
  3761. if (img != null) img.ThrowIfDisposed();
  3762. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3763. imgproc_Imgproc_rectangle_11(img.nativeObj, pt1.x, pt1.y, pt2.x, pt2.y, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType);
  3764. return;
  3765. #else
  3766. return;
  3767. #endif
  3768. }
  3769. //javadoc: rectangle(img, pt1, pt2, color, thickness)
  3770. public static void rectangle(Mat img, Point pt1, Point pt2, Scalar color, int thickness) {
  3771. if (img != null) img.ThrowIfDisposed();
  3772. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3773. imgproc_Imgproc_rectangle_12(img.nativeObj, pt1.x, pt1.y, pt2.x, pt2.y, color.val[0], color.val[1], color.val[2], color.val[3], thickness);
  3774. return;
  3775. #else
  3776. return;
  3777. #endif
  3778. }
  3779. //javadoc: rectangle(img, pt1, pt2, color)
  3780. public static void rectangle(Mat img, Point pt1, Point pt2, Scalar color) {
  3781. if (img != null) img.ThrowIfDisposed();
  3782. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3783. imgproc_Imgproc_rectangle_13(img.nativeObj, pt1.x, pt1.y, pt2.x, pt2.y, color.val[0], color.val[1], color.val[2], color.val[3]);
  3784. return;
  3785. #else
  3786. return;
  3787. #endif
  3788. }
  3789. //
  3790. // C++: void cv::rectangle(Mat& img, Rect rec, Scalar color, int thickness = 1, int lineType = LINE_8, int shift = 0)
  3791. //
  3792. //javadoc: rectangle(img, rec, color, thickness, lineType, shift)
  3793. public static void rectangle(Mat img, Rect rec, Scalar color, int thickness, int lineType, int shift) {
  3794. if (img != null) img.ThrowIfDisposed();
  3795. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3796. imgproc_Imgproc_rectangle_14(img.nativeObj, rec.x, rec.y, rec.width, rec.height, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType, shift);
  3797. return;
  3798. #else
  3799. return;
  3800. #endif
  3801. }
  3802. //javadoc: rectangle(img, rec, color, thickness, lineType)
  3803. public static void rectangle(Mat img, Rect rec, Scalar color, int thickness, int lineType) {
  3804. if (img != null) img.ThrowIfDisposed();
  3805. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3806. imgproc_Imgproc_rectangle_15(img.nativeObj, rec.x, rec.y, rec.width, rec.height, color.val[0], color.val[1], color.val[2], color.val[3], thickness, lineType);
  3807. return;
  3808. #else
  3809. return;
  3810. #endif
  3811. }
  3812. //javadoc: rectangle(img, rec, color, thickness)
  3813. public static void rectangle(Mat img, Rect rec, Scalar color, int thickness) {
  3814. if (img != null) img.ThrowIfDisposed();
  3815. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3816. imgproc_Imgproc_rectangle_16(img.nativeObj, rec.x, rec.y, rec.width, rec.height, color.val[0], color.val[1], color.val[2], color.val[3], thickness);
  3817. return;
  3818. #else
  3819. return;
  3820. #endif
  3821. }
  3822. //javadoc: rectangle(img, rec, color)
  3823. public static void rectangle(Mat img, Rect rec, Scalar color) {
  3824. if (img != null) img.ThrowIfDisposed();
  3825. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3826. imgproc_Imgproc_rectangle_17(img.nativeObj, rec.x, rec.y, rec.width, rec.height, color.val[0], color.val[1], color.val[2], color.val[3]);
  3827. return;
  3828. #else
  3829. return;
  3830. #endif
  3831. }
  3832. //
  3833. // C++: void cv::remap(Mat src, Mat& dst, Mat map1, Mat map2, int interpolation, int borderMode = BORDER_CONSTANT, Scalar borderValue = Scalar())
  3834. //
  3835. //javadoc: remap(src, dst, map1, map2, interpolation, borderMode, borderValue)
  3836. public static void remap(Mat src, Mat dst, Mat map1, Mat map2, int interpolation, int borderMode, Scalar borderValue) {
  3837. if (src != null) src.ThrowIfDisposed();
  3838. if (dst != null) dst.ThrowIfDisposed();
  3839. if (map1 != null) map1.ThrowIfDisposed();
  3840. if (map2 != null) map2.ThrowIfDisposed();
  3841. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3842. imgproc_Imgproc_remap_10(src.nativeObj, dst.nativeObj, map1.nativeObj, map2.nativeObj, interpolation, borderMode, borderValue.val[0], borderValue.val[1], borderValue.val[2], borderValue.val[3]);
  3843. return;
  3844. #else
  3845. return;
  3846. #endif
  3847. }
  3848. //javadoc: remap(src, dst, map1, map2, interpolation, borderMode)
  3849. public static void remap(Mat src, Mat dst, Mat map1, Mat map2, int interpolation, int borderMode) {
  3850. if (src != null) src.ThrowIfDisposed();
  3851. if (dst != null) dst.ThrowIfDisposed();
  3852. if (map1 != null) map1.ThrowIfDisposed();
  3853. if (map2 != null) map2.ThrowIfDisposed();
  3854. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3855. imgproc_Imgproc_remap_11(src.nativeObj, dst.nativeObj, map1.nativeObj, map2.nativeObj, interpolation, borderMode);
  3856. return;
  3857. #else
  3858. return;
  3859. #endif
  3860. }
  3861. //javadoc: remap(src, dst, map1, map2, interpolation)
  3862. public static void remap(Mat src, Mat dst, Mat map1, Mat map2, int interpolation) {
  3863. if (src != null) src.ThrowIfDisposed();
  3864. if (dst != null) dst.ThrowIfDisposed();
  3865. if (map1 != null) map1.ThrowIfDisposed();
  3866. if (map2 != null) map2.ThrowIfDisposed();
  3867. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3868. imgproc_Imgproc_remap_12(src.nativeObj, dst.nativeObj, map1.nativeObj, map2.nativeObj, interpolation);
  3869. return;
  3870. #else
  3871. return;
  3872. #endif
  3873. }
  3874. //
  3875. // C++: void cv::resize(Mat src, Mat& dst, Size dsize, double fx = 0, double fy = 0, int interpolation = INTER_LINEAR)
  3876. //
  3877. //javadoc: resize(src, dst, dsize, fx, fy, interpolation)
  3878. public static void resize(Mat src, Mat dst, Size dsize, double fx, double fy, int interpolation) {
  3879. if (src != null) src.ThrowIfDisposed();
  3880. if (dst != null) dst.ThrowIfDisposed();
  3881. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3882. imgproc_Imgproc_resize_10(src.nativeObj, dst.nativeObj, dsize.width, dsize.height, fx, fy, interpolation);
  3883. return;
  3884. #else
  3885. return;
  3886. #endif
  3887. }
  3888. //javadoc: resize(src, dst, dsize, fx, fy)
  3889. public static void resize(Mat src, Mat dst, Size dsize, double fx, double fy) {
  3890. if (src != null) src.ThrowIfDisposed();
  3891. if (dst != null) dst.ThrowIfDisposed();
  3892. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3893. imgproc_Imgproc_resize_11(src.nativeObj, dst.nativeObj, dsize.width, dsize.height, fx, fy);
  3894. return;
  3895. #else
  3896. return;
  3897. #endif
  3898. }
  3899. //javadoc: resize(src, dst, dsize, fx)
  3900. public static void resize(Mat src, Mat dst, Size dsize, double fx) {
  3901. if (src != null) src.ThrowIfDisposed();
  3902. if (dst != null) dst.ThrowIfDisposed();
  3903. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3904. imgproc_Imgproc_resize_12(src.nativeObj, dst.nativeObj, dsize.width, dsize.height, fx);
  3905. return;
  3906. #else
  3907. return;
  3908. #endif
  3909. }
  3910. //javadoc: resize(src, dst, dsize)
  3911. public static void resize(Mat src, Mat dst, Size dsize) {
  3912. if (src != null) src.ThrowIfDisposed();
  3913. if (dst != null) dst.ThrowIfDisposed();
  3914. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3915. imgproc_Imgproc_resize_13(src.nativeObj, dst.nativeObj, dsize.width, dsize.height);
  3916. return;
  3917. #else
  3918. return;
  3919. #endif
  3920. }
  3921. //
  3922. // C++: void cv::sepFilter2D(Mat src, Mat& dst, int ddepth, Mat kernelX, Mat kernelY, Point anchor = Point(-1,-1), double delta = 0, int borderType = BORDER_DEFAULT)
  3923. //
  3924. //javadoc: sepFilter2D(src, dst, ddepth, kernelX, kernelY, anchor, delta, borderType)
  3925. public static void sepFilter2D(Mat src, Mat dst, int ddepth, Mat kernelX, Mat kernelY, Point anchor, double delta, int borderType) {
  3926. if (src != null) src.ThrowIfDisposed();
  3927. if (dst != null) dst.ThrowIfDisposed();
  3928. if (kernelX != null) kernelX.ThrowIfDisposed();
  3929. if (kernelY != null) kernelY.ThrowIfDisposed();
  3930. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3931. imgproc_Imgproc_sepFilter2D_10(src.nativeObj, dst.nativeObj, ddepth, kernelX.nativeObj, kernelY.nativeObj, anchor.x, anchor.y, delta, borderType);
  3932. return;
  3933. #else
  3934. return;
  3935. #endif
  3936. }
  3937. //javadoc: sepFilter2D(src, dst, ddepth, kernelX, kernelY, anchor, delta)
  3938. public static void sepFilter2D(Mat src, Mat dst, int ddepth, Mat kernelX, Mat kernelY, Point anchor, double delta) {
  3939. if (src != null) src.ThrowIfDisposed();
  3940. if (dst != null) dst.ThrowIfDisposed();
  3941. if (kernelX != null) kernelX.ThrowIfDisposed();
  3942. if (kernelY != null) kernelY.ThrowIfDisposed();
  3943. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3944. imgproc_Imgproc_sepFilter2D_11(src.nativeObj, dst.nativeObj, ddepth, kernelX.nativeObj, kernelY.nativeObj, anchor.x, anchor.y, delta);
  3945. return;
  3946. #else
  3947. return;
  3948. #endif
  3949. }
  3950. //javadoc: sepFilter2D(src, dst, ddepth, kernelX, kernelY, anchor)
  3951. public static void sepFilter2D(Mat src, Mat dst, int ddepth, Mat kernelX, Mat kernelY, Point anchor) {
  3952. if (src != null) src.ThrowIfDisposed();
  3953. if (dst != null) dst.ThrowIfDisposed();
  3954. if (kernelX != null) kernelX.ThrowIfDisposed();
  3955. if (kernelY != null) kernelY.ThrowIfDisposed();
  3956. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3957. imgproc_Imgproc_sepFilter2D_12(src.nativeObj, dst.nativeObj, ddepth, kernelX.nativeObj, kernelY.nativeObj, anchor.x, anchor.y);
  3958. return;
  3959. #else
  3960. return;
  3961. #endif
  3962. }
  3963. //javadoc: sepFilter2D(src, dst, ddepth, kernelX, kernelY)
  3964. public static void sepFilter2D(Mat src, Mat dst, int ddepth, Mat kernelX, Mat kernelY) {
  3965. if (src != null) src.ThrowIfDisposed();
  3966. if (dst != null) dst.ThrowIfDisposed();
  3967. if (kernelX != null) kernelX.ThrowIfDisposed();
  3968. if (kernelY != null) kernelY.ThrowIfDisposed();
  3969. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3970. imgproc_Imgproc_sepFilter2D_13(src.nativeObj, dst.nativeObj, ddepth, kernelX.nativeObj, kernelY.nativeObj);
  3971. return;
  3972. #else
  3973. return;
  3974. #endif
  3975. }
  3976. //
  3977. // C++: void cv::spatialGradient(Mat src, Mat& dx, Mat& dy, int ksize = 3, int borderType = BORDER_DEFAULT)
  3978. //
  3979. //javadoc: spatialGradient(src, dx, dy, ksize, borderType)
  3980. public static void spatialGradient(Mat src, Mat dx, Mat dy, int ksize, int borderType) {
  3981. if (src != null) src.ThrowIfDisposed();
  3982. if (dx != null) dx.ThrowIfDisposed();
  3983. if (dy != null) dy.ThrowIfDisposed();
  3984. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3985. imgproc_Imgproc_spatialGradient_10(src.nativeObj, dx.nativeObj, dy.nativeObj, ksize, borderType);
  3986. return;
  3987. #else
  3988. return;
  3989. #endif
  3990. }
  3991. //javadoc: spatialGradient(src, dx, dy, ksize)
  3992. public static void spatialGradient(Mat src, Mat dx, Mat dy, int ksize) {
  3993. if (src != null) src.ThrowIfDisposed();
  3994. if (dx != null) dx.ThrowIfDisposed();
  3995. if (dy != null) dy.ThrowIfDisposed();
  3996. #if (UNITY_ANDROID && !UNITY_EDITOR)
  3997. imgproc_Imgproc_spatialGradient_11(src.nativeObj, dx.nativeObj, dy.nativeObj, ksize);
  3998. return;
  3999. #else
  4000. return;
  4001. #endif
  4002. }
  4003. //javadoc: spatialGradient(src, dx, dy)
  4004. public static void spatialGradient(Mat src, Mat dx, Mat dy) {
  4005. if (src != null) src.ThrowIfDisposed();
  4006. if (dx != null) dx.ThrowIfDisposed();
  4007. if (dy != null) dy.ThrowIfDisposed();
  4008. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4009. imgproc_Imgproc_spatialGradient_12(src.nativeObj, dx.nativeObj, dy.nativeObj);
  4010. return;
  4011. #else
  4012. return;
  4013. #endif
  4014. }
  4015. //
  4016. // C++: void cv::sqrBoxFilter(Mat src, Mat& dst, int ddepth, Size ksize, Point anchor = Point(-1, -1), bool normalize = true, int borderType = BORDER_DEFAULT)
  4017. //
  4018. //javadoc: sqrBoxFilter(src, dst, ddepth, ksize, anchor, normalize, borderType)
  4019. public static void sqrBoxFilter(Mat src, Mat dst, int ddepth, Size ksize, Point anchor, bool normalize, int borderType) {
  4020. if (src != null) src.ThrowIfDisposed();
  4021. if (dst != null) dst.ThrowIfDisposed();
  4022. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4023. imgproc_Imgproc_sqrBoxFilter_10(src.nativeObj, dst.nativeObj, ddepth, ksize.width, ksize.height, anchor.x, anchor.y, normalize, borderType);
  4024. return;
  4025. #else
  4026. return;
  4027. #endif
  4028. }
  4029. //javadoc: sqrBoxFilter(src, dst, ddepth, ksize, anchor, normalize)
  4030. public static void sqrBoxFilter(Mat src, Mat dst, int ddepth, Size ksize, Point anchor, bool normalize) {
  4031. if (src != null) src.ThrowIfDisposed();
  4032. if (dst != null) dst.ThrowIfDisposed();
  4033. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4034. imgproc_Imgproc_sqrBoxFilter_11(src.nativeObj, dst.nativeObj, ddepth, ksize.width, ksize.height, anchor.x, anchor.y, normalize);
  4035. return;
  4036. #else
  4037. return;
  4038. #endif
  4039. }
  4040. //javadoc: sqrBoxFilter(src, dst, ddepth, ksize, anchor)
  4041. public static void sqrBoxFilter(Mat src, Mat dst, int ddepth, Size ksize, Point anchor) {
  4042. if (src != null) src.ThrowIfDisposed();
  4043. if (dst != null) dst.ThrowIfDisposed();
  4044. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4045. imgproc_Imgproc_sqrBoxFilter_12(src.nativeObj, dst.nativeObj, ddepth, ksize.width, ksize.height, anchor.x, anchor.y);
  4046. return;
  4047. #else
  4048. return;
  4049. #endif
  4050. }
  4051. //javadoc: sqrBoxFilter(src, dst, ddepth, ksize)
  4052. public static void sqrBoxFilter(Mat src, Mat dst, int ddepth, Size ksize) {
  4053. if (src != null) src.ThrowIfDisposed();
  4054. if (dst != null) dst.ThrowIfDisposed();
  4055. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4056. imgproc_Imgproc_sqrBoxFilter_13(src.nativeObj, dst.nativeObj, ddepth, ksize.width, ksize.height);
  4057. return;
  4058. #else
  4059. return;
  4060. #endif
  4061. }
  4062. //
  4063. // C++: void cv::warpAffine(Mat src, Mat& dst, Mat M, Size dsize, int flags = INTER_LINEAR, int borderMode = BORDER_CONSTANT, Scalar borderValue = Scalar())
  4064. //
  4065. //javadoc: warpAffine(src, dst, M, dsize, flags, borderMode, borderValue)
  4066. public static void warpAffine(Mat src, Mat dst, Mat M, Size dsize, int flags, int borderMode, Scalar borderValue) {
  4067. if (src != null) src.ThrowIfDisposed();
  4068. if (dst != null) dst.ThrowIfDisposed();
  4069. if (M != null) M.ThrowIfDisposed();
  4070. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4071. imgproc_Imgproc_warpAffine_10(src.nativeObj, dst.nativeObj, M.nativeObj, dsize.width, dsize.height, flags, borderMode, borderValue.val[0], borderValue.val[1], borderValue.val[2], borderValue.val[3]);
  4072. return;
  4073. #else
  4074. return;
  4075. #endif
  4076. }
  4077. //javadoc: warpAffine(src, dst, M, dsize, flags, borderMode)
  4078. public static void warpAffine(Mat src, Mat dst, Mat M, Size dsize, int flags, int borderMode) {
  4079. if (src != null) src.ThrowIfDisposed();
  4080. if (dst != null) dst.ThrowIfDisposed();
  4081. if (M != null) M.ThrowIfDisposed();
  4082. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4083. imgproc_Imgproc_warpAffine_11(src.nativeObj, dst.nativeObj, M.nativeObj, dsize.width, dsize.height, flags, borderMode);
  4084. return;
  4085. #else
  4086. return;
  4087. #endif
  4088. }
  4089. //javadoc: warpAffine(src, dst, M, dsize, flags)
  4090. public static void warpAffine(Mat src, Mat dst, Mat M, Size dsize, int flags) {
  4091. if (src != null) src.ThrowIfDisposed();
  4092. if (dst != null) dst.ThrowIfDisposed();
  4093. if (M != null) M.ThrowIfDisposed();
  4094. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4095. imgproc_Imgproc_warpAffine_12(src.nativeObj, dst.nativeObj, M.nativeObj, dsize.width, dsize.height, flags);
  4096. return;
  4097. #else
  4098. return;
  4099. #endif
  4100. }
  4101. //javadoc: warpAffine(src, dst, M, dsize)
  4102. public static void warpAffine(Mat src, Mat dst, Mat M, Size dsize) {
  4103. if (src != null) src.ThrowIfDisposed();
  4104. if (dst != null) dst.ThrowIfDisposed();
  4105. if (M != null) M.ThrowIfDisposed();
  4106. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4107. imgproc_Imgproc_warpAffine_13(src.nativeObj, dst.nativeObj, M.nativeObj, dsize.width, dsize.height);
  4108. return;
  4109. #else
  4110. return;
  4111. #endif
  4112. }
  4113. //
  4114. // C++: void cv::warpPerspective(Mat src, Mat& dst, Mat M, Size dsize, int flags = INTER_LINEAR, int borderMode = BORDER_CONSTANT, Scalar borderValue = Scalar())
  4115. //
  4116. //javadoc: warpPerspective(src, dst, M, dsize, flags, borderMode, borderValue)
  4117. public static void warpPerspective(Mat src, Mat dst, Mat M, Size dsize, int flags, int borderMode, Scalar borderValue) {
  4118. if (src != null) src.ThrowIfDisposed();
  4119. if (dst != null) dst.ThrowIfDisposed();
  4120. if (M != null) M.ThrowIfDisposed();
  4121. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4122. imgproc_Imgproc_warpPerspective_10(src.nativeObj, dst.nativeObj, M.nativeObj, dsize.width, dsize.height, flags, borderMode, borderValue.val[0], borderValue.val[1], borderValue.val[2], borderValue.val[3]);
  4123. return;
  4124. #else
  4125. return;
  4126. #endif
  4127. }
  4128. //javadoc: warpPerspective(src, dst, M, dsize, flags, borderMode)
  4129. public static void warpPerspective(Mat src, Mat dst, Mat M, Size dsize, int flags, int borderMode) {
  4130. if (src != null) src.ThrowIfDisposed();
  4131. if (dst != null) dst.ThrowIfDisposed();
  4132. if (M != null) M.ThrowIfDisposed();
  4133. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4134. imgproc_Imgproc_warpPerspective_11(src.nativeObj, dst.nativeObj, M.nativeObj, dsize.width, dsize.height, flags, borderMode);
  4135. return;
  4136. #else
  4137. return;
  4138. #endif
  4139. }
  4140. //javadoc: warpPerspective(src, dst, M, dsize, flags)
  4141. public static void warpPerspective(Mat src, Mat dst, Mat M, Size dsize, int flags) {
  4142. if (src != null) src.ThrowIfDisposed();
  4143. if (dst != null) dst.ThrowIfDisposed();
  4144. if (M != null) M.ThrowIfDisposed();
  4145. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4146. imgproc_Imgproc_warpPerspective_12(src.nativeObj, dst.nativeObj, M.nativeObj, dsize.width, dsize.height, flags);
  4147. return;
  4148. #else
  4149. return;
  4150. #endif
  4151. }
  4152. //javadoc: warpPerspective(src, dst, M, dsize)
  4153. public static void warpPerspective(Mat src, Mat dst, Mat M, Size dsize) {
  4154. if (src != null) src.ThrowIfDisposed();
  4155. if (dst != null) dst.ThrowIfDisposed();
  4156. if (M != null) M.ThrowIfDisposed();
  4157. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4158. imgproc_Imgproc_warpPerspective_13(src.nativeObj, dst.nativeObj, M.nativeObj, dsize.width, dsize.height);
  4159. return;
  4160. #else
  4161. return;
  4162. #endif
  4163. }
  4164. //
  4165. // C++: void cv::warpPolar(Mat src, Mat& dst, Size dsize, Point2f center, double maxRadius, int flags)
  4166. //
  4167. //javadoc: warpPolar(src, dst, dsize, center, maxRadius, flags)
  4168. public static void warpPolar(Mat src, Mat dst, Size dsize, Point center, double maxRadius, int flags) {
  4169. if (src != null) src.ThrowIfDisposed();
  4170. if (dst != null) dst.ThrowIfDisposed();
  4171. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4172. imgproc_Imgproc_warpPolar_10(src.nativeObj, dst.nativeObj, dsize.width, dsize.height, center.x, center.y, maxRadius, flags);
  4173. return;
  4174. #else
  4175. return;
  4176. #endif
  4177. }
  4178. //
  4179. // C++: void cv::watershed(Mat image, Mat& markers)
  4180. //
  4181. //javadoc: watershed(image, markers)
  4182. public static void watershed(Mat image, Mat markers) {
  4183. if (image != null) image.ThrowIfDisposed();
  4184. if (markers != null) markers.ThrowIfDisposed();
  4185. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4186. imgproc_Imgproc_watershed_10(image.nativeObj, markers.nativeObj);
  4187. return;
  4188. #else
  4189. return;
  4190. #endif
  4191. }
  4192. // C++: Size getTextSize(const String& text, int fontFace, double fontScale, int thickness, int* baseLine);
  4193. //javadoc:getTextSize(text, fontFace, fontScale, thickness, baseLine)
  4194. public static Size getTextSize(string text, int fontFace, double fontScale, int thickness, int[] baseLine) {
  4195. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4196. if (baseLine != null && baseLine.Length != 1)
  4197. throw new CvException("'baseLine' must be 'int[1]' or 'null'.");
  4198. double[] tmpArray = new double[2];
  4199. imgproc_Imgproc_n_1getTextSize(text, fontFace, fontScale, thickness, baseLine, tmpArray);
  4200. Size retVal = new Size(tmpArray);
  4201. return retVal;
  4202. #else
  4203. return null;
  4204. #endif
  4205. }
  4206. #if (UNITY_ANDROID && !UNITY_EDITOR)
  4207. const string LIBNAME = "opencvforunity";
  4208. // C++: Mat cv::getAffineTransform(vector_Point2f src, vector_Point2f dst)
  4209. [DllImport(LIBNAME)]
  4210. private static extern IntPtr imgproc_Imgproc_getAffineTransform_10(IntPtr src_mat_nativeObj, IntPtr dst_mat_nativeObj);
  4211. // C++: Mat cv::getGaborKernel(Size ksize, double sigma, double theta, double lambd, double gamma, double psi = CV_PI*0.5, int ktype = CV_64F)
  4212. [DllImport(LIBNAME)]
  4213. private static extern IntPtr imgproc_Imgproc_getGaborKernel_10(double ksize_width, double ksize_height, double sigma, double theta, double lambd, double gamma, double psi, int ktype);
  4214. [DllImport(LIBNAME)]
  4215. private static extern IntPtr imgproc_Imgproc_getGaborKernel_11(double ksize_width, double ksize_height, double sigma, double theta, double lambd, double gamma, double psi);
  4216. [DllImport(LIBNAME)]
  4217. private static extern IntPtr imgproc_Imgproc_getGaborKernel_12(double ksize_width, double ksize_height, double sigma, double theta, double lambd, double gamma);
  4218. // C++: Mat cv::getGaussianKernel(int ksize, double sigma, int ktype = CV_64F)
  4219. [DllImport(LIBNAME)]
  4220. private static extern IntPtr imgproc_Imgproc_getGaussianKernel_10(int ksize, double sigma, int ktype);
  4221. [DllImport(LIBNAME)]
  4222. private static extern IntPtr imgproc_Imgproc_getGaussianKernel_11(int ksize, double sigma);
  4223. // C++: Mat cv::getPerspectiveTransform(Mat src, Mat dst, int solveMethod = DECOMP_LU)
  4224. [DllImport(LIBNAME)]
  4225. private static extern IntPtr imgproc_Imgproc_getPerspectiveTransform_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int solveMethod);
  4226. [DllImport(LIBNAME)]
  4227. private static extern IntPtr imgproc_Imgproc_getPerspectiveTransform_11(IntPtr src_nativeObj, IntPtr dst_nativeObj);
  4228. // C++: Mat cv::getRotationMatrix2D(Point2f center, double angle, double scale)
  4229. [DllImport(LIBNAME)]
  4230. private static extern IntPtr imgproc_Imgproc_getRotationMatrix2D_10(double center_x, double center_y, double angle, double scale);
  4231. // C++: Mat cv::getStructuringElement(int shape, Size ksize, Point anchor = Point(-1,-1))
  4232. [DllImport(LIBNAME)]
  4233. private static extern IntPtr imgproc_Imgproc_getStructuringElement_10(int shape, double ksize_width, double ksize_height, double anchor_x, double anchor_y);
  4234. [DllImport(LIBNAME)]
  4235. private static extern IntPtr imgproc_Imgproc_getStructuringElement_11(int shape, double ksize_width, double ksize_height);
  4236. // C++: Moments cv::moments(Mat array, bool binaryImage = false)
  4237. [DllImport(LIBNAME)]
  4238. private static extern void imgproc_Imgproc_moments_10(IntPtr array_nativeObj, bool binaryImage, double[] retVal);
  4239. [DllImport(LIBNAME)]
  4240. private static extern void imgproc_Imgproc_moments_11(IntPtr array_nativeObj, double[] retVal);
  4241. // C++: Point2d cv::phaseCorrelate(Mat src1, Mat src2, Mat window = Mat(), double* response = 0)
  4242. [DllImport(LIBNAME)]
  4243. private static extern void imgproc_Imgproc_phaseCorrelate_10(IntPtr src1_nativeObj, IntPtr src2_nativeObj, IntPtr window_nativeObj, double[] response_out, double[] retVal);
  4244. [DllImport(LIBNAME)]
  4245. private static extern void imgproc_Imgproc_phaseCorrelate_11(IntPtr src1_nativeObj, IntPtr src2_nativeObj, IntPtr window_nativeObj, double[] retVal);
  4246. [DllImport(LIBNAME)]
  4247. private static extern void imgproc_Imgproc_phaseCorrelate_12(IntPtr src1_nativeObj, IntPtr src2_nativeObj, double[] retVal);
  4248. // C++: Ptr_CLAHE cv::createCLAHE(double clipLimit = 40.0, Size tileGridSize = Size(8, 8))
  4249. [DllImport(LIBNAME)]
  4250. private static extern IntPtr imgproc_Imgproc_createCLAHE_10(double clipLimit, double tileGridSize_width, double tileGridSize_height);
  4251. [DllImport(LIBNAME)]
  4252. private static extern IntPtr imgproc_Imgproc_createCLAHE_11(double clipLimit);
  4253. [DllImport(LIBNAME)]
  4254. private static extern IntPtr imgproc_Imgproc_createCLAHE_12();
  4255. // C++: Ptr_LineSegmentDetector cv::createLineSegmentDetector(int _refine = LSD_REFINE_STD, double _scale = 0.8, double _sigma_scale = 0.6, double _quant = 2.0, double _ang_th = 22.5, double _log_eps = 0, double _density_th = 0.7, int _n_bins = 1024)
  4256. [DllImport(LIBNAME)]
  4257. private static extern IntPtr imgproc_Imgproc_createLineSegmentDetector_10(int _refine, double _scale, double _sigma_scale, double _quant, double _ang_th, double _log_eps, double _density_th, int _n_bins);
  4258. [DllImport(LIBNAME)]
  4259. private static extern IntPtr imgproc_Imgproc_createLineSegmentDetector_11(int _refine, double _scale, double _sigma_scale, double _quant, double _ang_th, double _log_eps, double _density_th);
  4260. [DllImport(LIBNAME)]
  4261. private static extern IntPtr imgproc_Imgproc_createLineSegmentDetector_12(int _refine, double _scale, double _sigma_scale, double _quant, double _ang_th, double _log_eps);
  4262. [DllImport(LIBNAME)]
  4263. private static extern IntPtr imgproc_Imgproc_createLineSegmentDetector_13(int _refine, double _scale, double _sigma_scale, double _quant, double _ang_th);
  4264. [DllImport(LIBNAME)]
  4265. private static extern IntPtr imgproc_Imgproc_createLineSegmentDetector_14(int _refine, double _scale, double _sigma_scale, double _quant);
  4266. [DllImport(LIBNAME)]
  4267. private static extern IntPtr imgproc_Imgproc_createLineSegmentDetector_15(int _refine, double _scale, double _sigma_scale);
  4268. [DllImport(LIBNAME)]
  4269. private static extern IntPtr imgproc_Imgproc_createLineSegmentDetector_16(int _refine, double _scale);
  4270. [DllImport(LIBNAME)]
  4271. private static extern IntPtr imgproc_Imgproc_createLineSegmentDetector_17(int _refine);
  4272. [DllImport(LIBNAME)]
  4273. private static extern IntPtr imgproc_Imgproc_createLineSegmentDetector_18();
  4274. // C++: Rect cv::boundingRect(Mat array)
  4275. [DllImport(LIBNAME)]
  4276. private static extern void imgproc_Imgproc_boundingRect_10(IntPtr array_nativeObj, double[] retVal);
  4277. // C++: RotatedRect cv::fitEllipse(vector_Point2f points)
  4278. [DllImport(LIBNAME)]
  4279. private static extern void imgproc_Imgproc_fitEllipse_10(IntPtr points_mat_nativeObj, double[] retVal);
  4280. // C++: RotatedRect cv::fitEllipseAMS(Mat points)
  4281. [DllImport(LIBNAME)]
  4282. private static extern void imgproc_Imgproc_fitEllipseAMS_10(IntPtr points_nativeObj, double[] retVal);
  4283. // C++: RotatedRect cv::fitEllipseDirect(Mat points)
  4284. [DllImport(LIBNAME)]
  4285. private static extern void imgproc_Imgproc_fitEllipseDirect_10(IntPtr points_nativeObj, double[] retVal);
  4286. // C++: RotatedRect cv::minAreaRect(vector_Point2f points)
  4287. [DllImport(LIBNAME)]
  4288. private static extern void imgproc_Imgproc_minAreaRect_10(IntPtr points_mat_nativeObj, double[] retVal);
  4289. // C++: bool cv::clipLine(Rect imgRect, Point& pt1, Point& pt2)
  4290. [DllImport(LIBNAME)]
  4291. private static extern bool imgproc_Imgproc_clipLine_10(int imgRect_x, int imgRect_y, int imgRect_width, int imgRect_height, double pt1_x, double pt1_y, double[] pt1_out, double pt2_x, double pt2_y, double[] pt2_out);
  4292. // C++: bool cv::isContourConvex(vector_Point contour)
  4293. [DllImport(LIBNAME)]
  4294. private static extern bool imgproc_Imgproc_isContourConvex_10(IntPtr contour_mat_nativeObj);
  4295. // C++: double cv::arcLength(vector_Point2f curve, bool closed)
  4296. [DllImport(LIBNAME)]
  4297. private static extern double imgproc_Imgproc_arcLength_10(IntPtr curve_mat_nativeObj, bool closed);
  4298. // C++: double cv::compareHist(Mat H1, Mat H2, int method)
  4299. [DllImport(LIBNAME)]
  4300. private static extern double imgproc_Imgproc_compareHist_10(IntPtr H1_nativeObj, IntPtr H2_nativeObj, int method);
  4301. // C++: double cv::contourArea(Mat contour, bool oriented = false)
  4302. [DllImport(LIBNAME)]
  4303. private static extern double imgproc_Imgproc_contourArea_10(IntPtr contour_nativeObj, bool oriented);
  4304. [DllImport(LIBNAME)]
  4305. private static extern double imgproc_Imgproc_contourArea_11(IntPtr contour_nativeObj);
  4306. // C++: double cv::getFontScaleFromHeight(int fontFace, int pixelHeight, int thickness = 1)
  4307. [DllImport(LIBNAME)]
  4308. private static extern double imgproc_Imgproc_getFontScaleFromHeight_10(int fontFace, int pixelHeight, int thickness);
  4309. [DllImport(LIBNAME)]
  4310. private static extern double imgproc_Imgproc_getFontScaleFromHeight_11(int fontFace, int pixelHeight);
  4311. // C++: double cv::matchShapes(Mat contour1, Mat contour2, int method, double parameter)
  4312. [DllImport(LIBNAME)]
  4313. private static extern double imgproc_Imgproc_matchShapes_10(IntPtr contour1_nativeObj, IntPtr contour2_nativeObj, int method, double parameter);
  4314. // C++: double cv::minEnclosingTriangle(Mat points, Mat& triangle)
  4315. [DllImport(LIBNAME)]
  4316. private static extern double imgproc_Imgproc_minEnclosingTriangle_10(IntPtr points_nativeObj, IntPtr triangle_nativeObj);
  4317. // C++: double cv::pointPolygonTest(vector_Point2f contour, Point2f pt, bool measureDist)
  4318. [DllImport(LIBNAME)]
  4319. private static extern double imgproc_Imgproc_pointPolygonTest_10(IntPtr contour_mat_nativeObj, double pt_x, double pt_y, bool measureDist);
  4320. // C++: double cv::threshold(Mat src, Mat& dst, double thresh, double maxval, int type)
  4321. [DllImport(LIBNAME)]
  4322. private static extern double imgproc_Imgproc_threshold_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, double thresh, double maxval, int type);
  4323. // C++: float cv::intersectConvexConvex(Mat _p1, Mat _p2, Mat& _p12, bool handleNested = true)
  4324. [DllImport(LIBNAME)]
  4325. private static extern float imgproc_Imgproc_intersectConvexConvex_10(IntPtr _p1_nativeObj, IntPtr _p2_nativeObj, IntPtr _p12_nativeObj, bool handleNested);
  4326. [DllImport(LIBNAME)]
  4327. private static extern float imgproc_Imgproc_intersectConvexConvex_11(IntPtr _p1_nativeObj, IntPtr _p2_nativeObj, IntPtr _p12_nativeObj);
  4328. // C++: float cv::wrapperEMD(Mat signature1, Mat signature2, int distType, Mat cost = Mat(), Ptr_float& lowerBound = Ptr<float>(), Mat& flow = Mat())
  4329. [DllImport(LIBNAME)]
  4330. private static extern float imgproc_Imgproc_EMD_10(IntPtr signature1_nativeObj, IntPtr signature2_nativeObj, int distType, IntPtr cost_nativeObj, IntPtr flow_nativeObj);
  4331. [DllImport(LIBNAME)]
  4332. private static extern float imgproc_Imgproc_EMD_11(IntPtr signature1_nativeObj, IntPtr signature2_nativeObj, int distType, IntPtr cost_nativeObj);
  4333. [DllImport(LIBNAME)]
  4334. private static extern float imgproc_Imgproc_EMD_13(IntPtr signature1_nativeObj, IntPtr signature2_nativeObj, int distType);
  4335. // C++: int cv::connectedComponents(Mat image, Mat& labels, int connectivity, int ltype, int ccltype)
  4336. [DllImport(LIBNAME)]
  4337. private static extern int imgproc_Imgproc_connectedComponentsWithAlgorithm_10(IntPtr image_nativeObj, IntPtr labels_nativeObj, int connectivity, int ltype, int ccltype);
  4338. // C++: int cv::connectedComponents(Mat image, Mat& labels, int connectivity = 8, int ltype = CV_32S)
  4339. [DllImport(LIBNAME)]
  4340. private static extern int imgproc_Imgproc_connectedComponents_10(IntPtr image_nativeObj, IntPtr labels_nativeObj, int connectivity, int ltype);
  4341. [DllImport(LIBNAME)]
  4342. private static extern int imgproc_Imgproc_connectedComponents_11(IntPtr image_nativeObj, IntPtr labels_nativeObj, int connectivity);
  4343. [DllImport(LIBNAME)]
  4344. private static extern int imgproc_Imgproc_connectedComponents_12(IntPtr image_nativeObj, IntPtr labels_nativeObj);
  4345. // C++: int cv::connectedComponentsWithStats(Mat image, Mat& labels, Mat& stats, Mat& centroids, int connectivity, int ltype, int ccltype)
  4346. [DllImport(LIBNAME)]
  4347. private static extern int imgproc_Imgproc_connectedComponentsWithStatsWithAlgorithm_10(IntPtr image_nativeObj, IntPtr labels_nativeObj, IntPtr stats_nativeObj, IntPtr centroids_nativeObj, int connectivity, int ltype, int ccltype);
  4348. // C++: int cv::connectedComponentsWithStats(Mat image, Mat& labels, Mat& stats, Mat& centroids, int connectivity = 8, int ltype = CV_32S)
  4349. [DllImport(LIBNAME)]
  4350. private static extern int imgproc_Imgproc_connectedComponentsWithStats_10(IntPtr image_nativeObj, IntPtr labels_nativeObj, IntPtr stats_nativeObj, IntPtr centroids_nativeObj, int connectivity, int ltype);
  4351. [DllImport(LIBNAME)]
  4352. private static extern int imgproc_Imgproc_connectedComponentsWithStats_11(IntPtr image_nativeObj, IntPtr labels_nativeObj, IntPtr stats_nativeObj, IntPtr centroids_nativeObj, int connectivity);
  4353. [DllImport(LIBNAME)]
  4354. private static extern int imgproc_Imgproc_connectedComponentsWithStats_12(IntPtr image_nativeObj, IntPtr labels_nativeObj, IntPtr stats_nativeObj, IntPtr centroids_nativeObj);
  4355. // C++: int cv::floodFill(Mat& image, Mat& mask, Point seedPoint, Scalar newVal, Rect* rect = 0, Scalar loDiff = Scalar(), Scalar upDiff = Scalar(), int flags = 4)
  4356. [DllImport(LIBNAME)]
  4357. private static extern int imgproc_Imgproc_floodFill_10(IntPtr image_nativeObj, IntPtr mask_nativeObj, double seedPoint_x, double seedPoint_y, double newVal_val0, double newVal_val1, double newVal_val2, double newVal_val3, double[] rect_out, double loDiff_val0, double loDiff_val1, double loDiff_val2, double loDiff_val3, double upDiff_val0, double upDiff_val1, double upDiff_val2, double upDiff_val3, int flags);
  4358. [DllImport(LIBNAME)]
  4359. private static extern int imgproc_Imgproc_floodFill_11(IntPtr image_nativeObj, IntPtr mask_nativeObj, double seedPoint_x, double seedPoint_y, double newVal_val0, double newVal_val1, double newVal_val2, double newVal_val3, double[] rect_out, double loDiff_val0, double loDiff_val1, double loDiff_val2, double loDiff_val3, double upDiff_val0, double upDiff_val1, double upDiff_val2, double upDiff_val3);
  4360. [DllImport(LIBNAME)]
  4361. private static extern int imgproc_Imgproc_floodFill_12(IntPtr image_nativeObj, IntPtr mask_nativeObj, double seedPoint_x, double seedPoint_y, double newVal_val0, double newVal_val1, double newVal_val2, double newVal_val3, double[] rect_out, double loDiff_val0, double loDiff_val1, double loDiff_val2, double loDiff_val3);
  4362. [DllImport(LIBNAME)]
  4363. private static extern int imgproc_Imgproc_floodFill_13(IntPtr image_nativeObj, IntPtr mask_nativeObj, double seedPoint_x, double seedPoint_y, double newVal_val0, double newVal_val1, double newVal_val2, double newVal_val3, double[] rect_out);
  4364. [DllImport(LIBNAME)]
  4365. private static extern int imgproc_Imgproc_floodFill_14(IntPtr image_nativeObj, IntPtr mask_nativeObj, double seedPoint_x, double seedPoint_y, double newVal_val0, double newVal_val1, double newVal_val2, double newVal_val3);
  4366. // C++: int cv::rotatedRectangleIntersection(RotatedRect rect1, RotatedRect rect2, Mat& intersectingRegion)
  4367. [DllImport(LIBNAME)]
  4368. private static extern int imgproc_Imgproc_rotatedRectangleIntersection_10(double rect1_center_x, double rect1_center_y, double rect1_size_width, double rect1_size_height, double rect1_angle, double rect2_center_x, double rect2_center_y, double rect2_size_width, double rect2_size_height, double rect2_angle, IntPtr intersectingRegion_nativeObj);
  4369. // C++: void cv::Canny(Mat dx, Mat dy, Mat& edges, double threshold1, double threshold2, bool L2gradient = false)
  4370. [DllImport(LIBNAME)]
  4371. private static extern void imgproc_Imgproc_Canny_10(IntPtr dx_nativeObj, IntPtr dy_nativeObj, IntPtr edges_nativeObj, double threshold1, double threshold2, bool L2gradient);
  4372. [DllImport(LIBNAME)]
  4373. private static extern void imgproc_Imgproc_Canny_11(IntPtr dx_nativeObj, IntPtr dy_nativeObj, IntPtr edges_nativeObj, double threshold1, double threshold2);
  4374. // C++: void cv::Canny(Mat image, Mat& edges, double threshold1, double threshold2, int apertureSize = 3, bool L2gradient = false)
  4375. [DllImport(LIBNAME)]
  4376. private static extern void imgproc_Imgproc_Canny_12(IntPtr image_nativeObj, IntPtr edges_nativeObj, double threshold1, double threshold2, int apertureSize, bool L2gradient);
  4377. [DllImport(LIBNAME)]
  4378. private static extern void imgproc_Imgproc_Canny_13(IntPtr image_nativeObj, IntPtr edges_nativeObj, double threshold1, double threshold2, int apertureSize);
  4379. [DllImport(LIBNAME)]
  4380. private static extern void imgproc_Imgproc_Canny_14(IntPtr image_nativeObj, IntPtr edges_nativeObj, double threshold1, double threshold2);
  4381. // C++: void cv::GaussianBlur(Mat src, Mat& dst, Size ksize, double sigmaX, double sigmaY = 0, int borderType = BORDER_DEFAULT)
  4382. [DllImport(LIBNAME)]
  4383. private static extern void imgproc_Imgproc_GaussianBlur_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, double ksize_width, double ksize_height, double sigmaX, double sigmaY, int borderType);
  4384. [DllImport(LIBNAME)]
  4385. private static extern void imgproc_Imgproc_GaussianBlur_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, double ksize_width, double ksize_height, double sigmaX, double sigmaY);
  4386. [DllImport(LIBNAME)]
  4387. private static extern void imgproc_Imgproc_GaussianBlur_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, double ksize_width, double ksize_height, double sigmaX);
  4388. // C++: void cv::HoughCircles(Mat image, Mat& circles, int method, double dp, double minDist, double param1 = 100, double param2 = 100, int minRadius = 0, int maxRadius = 0)
  4389. [DllImport(LIBNAME)]
  4390. private static extern void imgproc_Imgproc_HoughCircles_10(IntPtr image_nativeObj, IntPtr circles_nativeObj, int method, double dp, double minDist, double param1, double param2, int minRadius, int maxRadius);
  4391. [DllImport(LIBNAME)]
  4392. private static extern void imgproc_Imgproc_HoughCircles_11(IntPtr image_nativeObj, IntPtr circles_nativeObj, int method, double dp, double minDist, double param1, double param2, int minRadius);
  4393. [DllImport(LIBNAME)]
  4394. private static extern void imgproc_Imgproc_HoughCircles_12(IntPtr image_nativeObj, IntPtr circles_nativeObj, int method, double dp, double minDist, double param1, double param2);
  4395. [DllImport(LIBNAME)]
  4396. private static extern void imgproc_Imgproc_HoughCircles_13(IntPtr image_nativeObj, IntPtr circles_nativeObj, int method, double dp, double minDist, double param1);
  4397. [DllImport(LIBNAME)]
  4398. private static extern void imgproc_Imgproc_HoughCircles_14(IntPtr image_nativeObj, IntPtr circles_nativeObj, int method, double dp, double minDist);
  4399. // C++: void cv::HoughLines(Mat image, Mat& lines, double rho, double theta, int threshold, double srn = 0, double stn = 0, double min_theta = 0, double max_theta = CV_PI)
  4400. [DllImport(LIBNAME)]
  4401. private static extern void imgproc_Imgproc_HoughLines_10(IntPtr image_nativeObj, IntPtr lines_nativeObj, double rho, double theta, int threshold, double srn, double stn, double min_theta, double max_theta);
  4402. [DllImport(LIBNAME)]
  4403. private static extern void imgproc_Imgproc_HoughLines_11(IntPtr image_nativeObj, IntPtr lines_nativeObj, double rho, double theta, int threshold, double srn, double stn, double min_theta);
  4404. [DllImport(LIBNAME)]
  4405. private static extern void imgproc_Imgproc_HoughLines_12(IntPtr image_nativeObj, IntPtr lines_nativeObj, double rho, double theta, int threshold, double srn, double stn);
  4406. [DllImport(LIBNAME)]
  4407. private static extern void imgproc_Imgproc_HoughLines_13(IntPtr image_nativeObj, IntPtr lines_nativeObj, double rho, double theta, int threshold, double srn);
  4408. [DllImport(LIBNAME)]
  4409. private static extern void imgproc_Imgproc_HoughLines_14(IntPtr image_nativeObj, IntPtr lines_nativeObj, double rho, double theta, int threshold);
  4410. // C++: void cv::HoughLinesP(Mat image, Mat& lines, double rho, double theta, int threshold, double minLineLength = 0, double maxLineGap = 0)
  4411. [DllImport(LIBNAME)]
  4412. private static extern void imgproc_Imgproc_HoughLinesP_10(IntPtr image_nativeObj, IntPtr lines_nativeObj, double rho, double theta, int threshold, double minLineLength, double maxLineGap);
  4413. [DllImport(LIBNAME)]
  4414. private static extern void imgproc_Imgproc_HoughLinesP_11(IntPtr image_nativeObj, IntPtr lines_nativeObj, double rho, double theta, int threshold, double minLineLength);
  4415. [DllImport(LIBNAME)]
  4416. private static extern void imgproc_Imgproc_HoughLinesP_12(IntPtr image_nativeObj, IntPtr lines_nativeObj, double rho, double theta, int threshold);
  4417. // C++: void cv::HoughLinesPointSet(Mat _point, Mat& _lines, int lines_max, int threshold, double min_rho, double max_rho, double rho_step, double min_theta, double max_theta, double theta_step)
  4418. [DllImport(LIBNAME)]
  4419. private static extern void imgproc_Imgproc_HoughLinesPointSet_10(IntPtr _point_nativeObj, IntPtr _lines_nativeObj, int lines_max, int threshold, double min_rho, double max_rho, double rho_step, double min_theta, double max_theta, double theta_step);
  4420. // C++: void cv::HuMoments(Moments m, Mat& hu)
  4421. [DllImport(LIBNAME)]
  4422. private static extern void imgproc_Imgproc_HuMoments_10(double m_m00, double m_m10, double m_m01, double m_m20, double m_m11, double m_m02, double m_m30, double m_m21, double m_m12, double m_m03, IntPtr hu_nativeObj);
  4423. // C++: void cv::Laplacian(Mat src, Mat& dst, int ddepth, int ksize = 1, double scale = 1, double delta = 0, int borderType = BORDER_DEFAULT)
  4424. [DllImport(LIBNAME)]
  4425. private static extern void imgproc_Imgproc_Laplacian_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, int ksize, double scale, double delta, int borderType);
  4426. [DllImport(LIBNAME)]
  4427. private static extern void imgproc_Imgproc_Laplacian_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, int ksize, double scale, double delta);
  4428. [DllImport(LIBNAME)]
  4429. private static extern void imgproc_Imgproc_Laplacian_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, int ksize, double scale);
  4430. [DllImport(LIBNAME)]
  4431. private static extern void imgproc_Imgproc_Laplacian_13(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, int ksize);
  4432. [DllImport(LIBNAME)]
  4433. private static extern void imgproc_Imgproc_Laplacian_14(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth);
  4434. // C++: void cv::Scharr(Mat src, Mat& dst, int ddepth, int dx, int dy, double scale = 1, double delta = 0, int borderType = BORDER_DEFAULT)
  4435. [DllImport(LIBNAME)]
  4436. private static extern void imgproc_Imgproc_Scharr_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, int dx, int dy, double scale, double delta, int borderType);
  4437. [DllImport(LIBNAME)]
  4438. private static extern void imgproc_Imgproc_Scharr_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, int dx, int dy, double scale, double delta);
  4439. [DllImport(LIBNAME)]
  4440. private static extern void imgproc_Imgproc_Scharr_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, int dx, int dy, double scale);
  4441. [DllImport(LIBNAME)]
  4442. private static extern void imgproc_Imgproc_Scharr_13(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, int dx, int dy);
  4443. // C++: void cv::Sobel(Mat src, Mat& dst, int ddepth, int dx, int dy, int ksize = 3, double scale = 1, double delta = 0, int borderType = BORDER_DEFAULT)
  4444. [DllImport(LIBNAME)]
  4445. private static extern void imgproc_Imgproc_Sobel_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, int dx, int dy, int ksize, double scale, double delta, int borderType);
  4446. [DllImport(LIBNAME)]
  4447. private static extern void imgproc_Imgproc_Sobel_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, int dx, int dy, int ksize, double scale, double delta);
  4448. [DllImport(LIBNAME)]
  4449. private static extern void imgproc_Imgproc_Sobel_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, int dx, int dy, int ksize, double scale);
  4450. [DllImport(LIBNAME)]
  4451. private static extern void imgproc_Imgproc_Sobel_13(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, int dx, int dy, int ksize);
  4452. [DllImport(LIBNAME)]
  4453. private static extern void imgproc_Imgproc_Sobel_14(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, int dx, int dy);
  4454. // C++: void cv::accumulate(Mat src, Mat& dst, Mat mask = Mat())
  4455. [DllImport(LIBNAME)]
  4456. private static extern void imgproc_Imgproc_accumulate_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr mask_nativeObj);
  4457. [DllImport(LIBNAME)]
  4458. private static extern void imgproc_Imgproc_accumulate_11(IntPtr src_nativeObj, IntPtr dst_nativeObj);
  4459. // C++: void cv::accumulateProduct(Mat src1, Mat src2, Mat& dst, Mat mask = Mat())
  4460. [DllImport(LIBNAME)]
  4461. private static extern void imgproc_Imgproc_accumulateProduct_10(IntPtr src1_nativeObj, IntPtr src2_nativeObj, IntPtr dst_nativeObj, IntPtr mask_nativeObj);
  4462. [DllImport(LIBNAME)]
  4463. private static extern void imgproc_Imgproc_accumulateProduct_11(IntPtr src1_nativeObj, IntPtr src2_nativeObj, IntPtr dst_nativeObj);
  4464. // C++: void cv::accumulateSquare(Mat src, Mat& dst, Mat mask = Mat())
  4465. [DllImport(LIBNAME)]
  4466. private static extern void imgproc_Imgproc_accumulateSquare_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr mask_nativeObj);
  4467. [DllImport(LIBNAME)]
  4468. private static extern void imgproc_Imgproc_accumulateSquare_11(IntPtr src_nativeObj, IntPtr dst_nativeObj);
  4469. // C++: void cv::accumulateWeighted(Mat src, Mat& dst, double alpha, Mat mask = Mat())
  4470. [DllImport(LIBNAME)]
  4471. private static extern void imgproc_Imgproc_accumulateWeighted_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, double alpha, IntPtr mask_nativeObj);
  4472. [DllImport(LIBNAME)]
  4473. private static extern void imgproc_Imgproc_accumulateWeighted_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, double alpha);
  4474. // C++: void cv::adaptiveThreshold(Mat src, Mat& dst, double maxValue, int adaptiveMethod, int thresholdType, int blockSize, double C)
  4475. [DllImport(LIBNAME)]
  4476. private static extern void imgproc_Imgproc_adaptiveThreshold_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, double maxValue, int adaptiveMethod, int thresholdType, int blockSize, double C);
  4477. // C++: void cv::applyColorMap(Mat src, Mat& dst, Mat userColor)
  4478. [DllImport(LIBNAME)]
  4479. private static extern void imgproc_Imgproc_applyColorMap_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr userColor_nativeObj);
  4480. // C++: void cv::applyColorMap(Mat src, Mat& dst, int colormap)
  4481. [DllImport(LIBNAME)]
  4482. private static extern void imgproc_Imgproc_applyColorMap_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int colormap);
  4483. // C++: void cv::approxPolyDP(vector_Point2f curve, vector_Point2f& approxCurve, double epsilon, bool closed)
  4484. [DllImport(LIBNAME)]
  4485. private static extern void imgproc_Imgproc_approxPolyDP_10(IntPtr curve_mat_nativeObj, IntPtr approxCurve_mat_nativeObj, double epsilon, bool closed);
  4486. // C++: void cv::arrowedLine(Mat& img, Point pt1, Point pt2, Scalar color, int thickness = 1, int line_type = 8, int shift = 0, double tipLength = 0.1)
  4487. [DllImport(LIBNAME)]
  4488. private static extern void imgproc_Imgproc_arrowedLine_10(IntPtr img_nativeObj, double pt1_x, double pt1_y, double pt2_x, double pt2_y, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int line_type, int shift, double tipLength);
  4489. [DllImport(LIBNAME)]
  4490. private static extern void imgproc_Imgproc_arrowedLine_11(IntPtr img_nativeObj, double pt1_x, double pt1_y, double pt2_x, double pt2_y, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int line_type, int shift);
  4491. [DllImport(LIBNAME)]
  4492. private static extern void imgproc_Imgproc_arrowedLine_12(IntPtr img_nativeObj, double pt1_x, double pt1_y, double pt2_x, double pt2_y, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int line_type);
  4493. [DllImport(LIBNAME)]
  4494. private static extern void imgproc_Imgproc_arrowedLine_13(IntPtr img_nativeObj, double pt1_x, double pt1_y, double pt2_x, double pt2_y, double color_val0, double color_val1, double color_val2, double color_val3, int thickness);
  4495. [DllImport(LIBNAME)]
  4496. private static extern void imgproc_Imgproc_arrowedLine_14(IntPtr img_nativeObj, double pt1_x, double pt1_y, double pt2_x, double pt2_y, double color_val0, double color_val1, double color_val2, double color_val3);
  4497. // C++: void cv::bilateralFilter(Mat src, Mat& dst, int d, double sigmaColor, double sigmaSpace, int borderType = BORDER_DEFAULT)
  4498. [DllImport(LIBNAME)]
  4499. private static extern void imgproc_Imgproc_bilateralFilter_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int d, double sigmaColor, double sigmaSpace, int borderType);
  4500. [DllImport(LIBNAME)]
  4501. private static extern void imgproc_Imgproc_bilateralFilter_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int d, double sigmaColor, double sigmaSpace);
  4502. // C++: void cv::blur(Mat src, Mat& dst, Size ksize, Point anchor = Point(-1,-1), int borderType = BORDER_DEFAULT)
  4503. [DllImport(LIBNAME)]
  4504. private static extern void imgproc_Imgproc_blur_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, double ksize_width, double ksize_height, double anchor_x, double anchor_y, int borderType);
  4505. [DllImport(LIBNAME)]
  4506. private static extern void imgproc_Imgproc_blur_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, double ksize_width, double ksize_height, double anchor_x, double anchor_y);
  4507. [DllImport(LIBNAME)]
  4508. private static extern void imgproc_Imgproc_blur_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, double ksize_width, double ksize_height);
  4509. // C++: void cv::boxFilter(Mat src, Mat& dst, int ddepth, Size ksize, Point anchor = Point(-1,-1), bool normalize = true, int borderType = BORDER_DEFAULT)
  4510. [DllImport(LIBNAME)]
  4511. private static extern void imgproc_Imgproc_boxFilter_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, double ksize_width, double ksize_height, double anchor_x, double anchor_y, bool normalize, int borderType);
  4512. [DllImport(LIBNAME)]
  4513. private static extern void imgproc_Imgproc_boxFilter_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, double ksize_width, double ksize_height, double anchor_x, double anchor_y, bool normalize);
  4514. [DllImport(LIBNAME)]
  4515. private static extern void imgproc_Imgproc_boxFilter_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, double ksize_width, double ksize_height, double anchor_x, double anchor_y);
  4516. [DllImport(LIBNAME)]
  4517. private static extern void imgproc_Imgproc_boxFilter_13(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, double ksize_width, double ksize_height);
  4518. // C++: void cv::boxPoints(RotatedRect box, Mat& points)
  4519. [DllImport(LIBNAME)]
  4520. private static extern void imgproc_Imgproc_boxPoints_10(double box_center_x, double box_center_y, double box_size_width, double box_size_height, double box_angle, IntPtr points_nativeObj);
  4521. // C++: void cv::calcBackProject(vector_Mat images, vector_int channels, Mat hist, Mat& dst, vector_float ranges, double scale)
  4522. [DllImport(LIBNAME)]
  4523. private static extern void imgproc_Imgproc_calcBackProject_10(IntPtr images_mat_nativeObj, IntPtr channels_mat_nativeObj, IntPtr hist_nativeObj, IntPtr dst_nativeObj, IntPtr ranges_mat_nativeObj, double scale);
  4524. // C++: void cv::calcHist(vector_Mat images, vector_int channels, Mat mask, Mat& hist, vector_int histSize, vector_float ranges, bool accumulate = false)
  4525. [DllImport(LIBNAME)]
  4526. private static extern void imgproc_Imgproc_calcHist_10(IntPtr images_mat_nativeObj, IntPtr channels_mat_nativeObj, IntPtr mask_nativeObj, IntPtr hist_nativeObj, IntPtr histSize_mat_nativeObj, IntPtr ranges_mat_nativeObj, bool accumulate);
  4527. [DllImport(LIBNAME)]
  4528. private static extern void imgproc_Imgproc_calcHist_11(IntPtr images_mat_nativeObj, IntPtr channels_mat_nativeObj, IntPtr mask_nativeObj, IntPtr hist_nativeObj, IntPtr histSize_mat_nativeObj, IntPtr ranges_mat_nativeObj);
  4529. // C++: void cv::circle(Mat& img, Point center, int radius, Scalar color, int thickness = 1, int lineType = LINE_8, int shift = 0)
  4530. [DllImport(LIBNAME)]
  4531. private static extern void imgproc_Imgproc_circle_10(IntPtr img_nativeObj, double center_x, double center_y, int radius, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType, int shift);
  4532. [DllImport(LIBNAME)]
  4533. private static extern void imgproc_Imgproc_circle_11(IntPtr img_nativeObj, double center_x, double center_y, int radius, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType);
  4534. [DllImport(LIBNAME)]
  4535. private static extern void imgproc_Imgproc_circle_12(IntPtr img_nativeObj, double center_x, double center_y, int radius, double color_val0, double color_val1, double color_val2, double color_val3, int thickness);
  4536. [DllImport(LIBNAME)]
  4537. private static extern void imgproc_Imgproc_circle_13(IntPtr img_nativeObj, double center_x, double center_y, int radius, double color_val0, double color_val1, double color_val2, double color_val3);
  4538. // C++: void cv::convertMaps(Mat map1, Mat map2, Mat& dstmap1, Mat& dstmap2, int dstmap1type, bool nninterpolation = false)
  4539. [DllImport(LIBNAME)]
  4540. private static extern void imgproc_Imgproc_convertMaps_10(IntPtr map1_nativeObj, IntPtr map2_nativeObj, IntPtr dstmap1_nativeObj, IntPtr dstmap2_nativeObj, int dstmap1type, bool nninterpolation);
  4541. [DllImport(LIBNAME)]
  4542. private static extern void imgproc_Imgproc_convertMaps_11(IntPtr map1_nativeObj, IntPtr map2_nativeObj, IntPtr dstmap1_nativeObj, IntPtr dstmap2_nativeObj, int dstmap1type);
  4543. // C++: void cv::convexHull(vector_Point points, vector_int& hull, bool clockwise = false, _hidden_ returnPoints = true)
  4544. [DllImport(LIBNAME)]
  4545. private static extern void imgproc_Imgproc_convexHull_10(IntPtr points_mat_nativeObj, IntPtr hull_mat_nativeObj, bool clockwise);
  4546. [DllImport(LIBNAME)]
  4547. private static extern void imgproc_Imgproc_convexHull_12(IntPtr points_mat_nativeObj, IntPtr hull_mat_nativeObj);
  4548. // C++: void cv::convexityDefects(vector_Point contour, vector_int convexhull, vector_Vec4i& convexityDefects)
  4549. [DllImport(LIBNAME)]
  4550. private static extern void imgproc_Imgproc_convexityDefects_10(IntPtr contour_mat_nativeObj, IntPtr convexhull_mat_nativeObj, IntPtr convexityDefects_mat_nativeObj);
  4551. // C++: void cv::cornerEigenValsAndVecs(Mat src, Mat& dst, int blockSize, int ksize, int borderType = BORDER_DEFAULT)
  4552. [DllImport(LIBNAME)]
  4553. private static extern void imgproc_Imgproc_cornerEigenValsAndVecs_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int blockSize, int ksize, int borderType);
  4554. [DllImport(LIBNAME)]
  4555. private static extern void imgproc_Imgproc_cornerEigenValsAndVecs_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int blockSize, int ksize);
  4556. // C++: void cv::cornerHarris(Mat src, Mat& dst, int blockSize, int ksize, double k, int borderType = BORDER_DEFAULT)
  4557. [DllImport(LIBNAME)]
  4558. private static extern void imgproc_Imgproc_cornerHarris_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int blockSize, int ksize, double k, int borderType);
  4559. [DllImport(LIBNAME)]
  4560. private static extern void imgproc_Imgproc_cornerHarris_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int blockSize, int ksize, double k);
  4561. // C++: void cv::cornerMinEigenVal(Mat src, Mat& dst, int blockSize, int ksize = 3, int borderType = BORDER_DEFAULT)
  4562. [DllImport(LIBNAME)]
  4563. private static extern void imgproc_Imgproc_cornerMinEigenVal_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int blockSize, int ksize, int borderType);
  4564. [DllImport(LIBNAME)]
  4565. private static extern void imgproc_Imgproc_cornerMinEigenVal_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int blockSize, int ksize);
  4566. [DllImport(LIBNAME)]
  4567. private static extern void imgproc_Imgproc_cornerMinEigenVal_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, int blockSize);
  4568. // C++: void cv::cornerSubPix(Mat image, Mat& corners, Size winSize, Size zeroZone, TermCriteria criteria)
  4569. [DllImport(LIBNAME)]
  4570. private static extern void imgproc_Imgproc_cornerSubPix_10(IntPtr image_nativeObj, IntPtr corners_nativeObj, double winSize_width, double winSize_height, double zeroZone_width, double zeroZone_height, int criteria_type, int criteria_maxCount, double criteria_epsilon);
  4571. // C++: void cv::createHanningWindow(Mat& dst, Size winSize, int type)
  4572. [DllImport(LIBNAME)]
  4573. private static extern void imgproc_Imgproc_createHanningWindow_10(IntPtr dst_nativeObj, double winSize_width, double winSize_height, int type);
  4574. // C++: void cv::cvtColor(Mat src, Mat& dst, int code, int dstCn = 0)
  4575. [DllImport(LIBNAME)]
  4576. private static extern void imgproc_Imgproc_cvtColor_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int code, int dstCn);
  4577. [DllImport(LIBNAME)]
  4578. private static extern void imgproc_Imgproc_cvtColor_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int code);
  4579. // C++: void cv::cvtColorTwoPlane(Mat src1, Mat src2, Mat& dst, int code)
  4580. [DllImport(LIBNAME)]
  4581. private static extern void imgproc_Imgproc_cvtColorTwoPlane_10(IntPtr src1_nativeObj, IntPtr src2_nativeObj, IntPtr dst_nativeObj, int code);
  4582. // C++: void cv::demosaicing(Mat src, Mat& dst, int code, int dstCn = 0)
  4583. [DllImport(LIBNAME)]
  4584. private static extern void imgproc_Imgproc_demosaicing_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int code, int dstCn);
  4585. [DllImport(LIBNAME)]
  4586. private static extern void imgproc_Imgproc_demosaicing_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int code);
  4587. // C++: void cv::dilate(Mat src, Mat& dst, Mat kernel, Point anchor = Point(-1,-1), int iterations = 1, int borderType = BORDER_CONSTANT, Scalar borderValue = morphologyDefaultBorderValue())
  4588. [DllImport(LIBNAME)]
  4589. private static extern void imgproc_Imgproc_dilate_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr kernel_nativeObj, double anchor_x, double anchor_y, int iterations, int borderType, double borderValue_val0, double borderValue_val1, double borderValue_val2, double borderValue_val3);
  4590. [DllImport(LIBNAME)]
  4591. private static extern void imgproc_Imgproc_dilate_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr kernel_nativeObj, double anchor_x, double anchor_y, int iterations, int borderType);
  4592. [DllImport(LIBNAME)]
  4593. private static extern void imgproc_Imgproc_dilate_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr kernel_nativeObj, double anchor_x, double anchor_y, int iterations);
  4594. [DllImport(LIBNAME)]
  4595. private static extern void imgproc_Imgproc_dilate_13(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr kernel_nativeObj, double anchor_x, double anchor_y);
  4596. [DllImport(LIBNAME)]
  4597. private static extern void imgproc_Imgproc_dilate_14(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr kernel_nativeObj);
  4598. // C++: void cv::distanceTransform(Mat src, Mat& dst, Mat& labels, int distanceType, int maskSize, int labelType = DIST_LABEL_CCOMP)
  4599. [DllImport(LIBNAME)]
  4600. private static extern void imgproc_Imgproc_distanceTransformWithLabels_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr labels_nativeObj, int distanceType, int maskSize, int labelType);
  4601. [DllImport(LIBNAME)]
  4602. private static extern void imgproc_Imgproc_distanceTransformWithLabels_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr labels_nativeObj, int distanceType, int maskSize);
  4603. // C++: void cv::distanceTransform(Mat src, Mat& dst, int distanceType, int maskSize, int dstType = CV_32F)
  4604. [DllImport(LIBNAME)]
  4605. private static extern void imgproc_Imgproc_distanceTransform_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int distanceType, int maskSize, int dstType);
  4606. [DllImport(LIBNAME)]
  4607. private static extern void imgproc_Imgproc_distanceTransform_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int distanceType, int maskSize);
  4608. // C++: void cv::drawContours(Mat& image, vector_vector_Point contours, int contourIdx, Scalar color, int thickness = 1, int lineType = LINE_8, Mat hierarchy = Mat(), int maxLevel = INT_MAX, Point offset = Point())
  4609. [DllImport(LIBNAME)]
  4610. private static extern void imgproc_Imgproc_drawContours_10(IntPtr image_nativeObj, IntPtr contours_mat_nativeObj, int contourIdx, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType, IntPtr hierarchy_nativeObj, int maxLevel, double offset_x, double offset_y);
  4611. [DllImport(LIBNAME)]
  4612. private static extern void imgproc_Imgproc_drawContours_11(IntPtr image_nativeObj, IntPtr contours_mat_nativeObj, int contourIdx, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType, IntPtr hierarchy_nativeObj, int maxLevel);
  4613. [DllImport(LIBNAME)]
  4614. private static extern void imgproc_Imgproc_drawContours_12(IntPtr image_nativeObj, IntPtr contours_mat_nativeObj, int contourIdx, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType, IntPtr hierarchy_nativeObj);
  4615. [DllImport(LIBNAME)]
  4616. private static extern void imgproc_Imgproc_drawContours_13(IntPtr image_nativeObj, IntPtr contours_mat_nativeObj, int contourIdx, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType);
  4617. [DllImport(LIBNAME)]
  4618. private static extern void imgproc_Imgproc_drawContours_14(IntPtr image_nativeObj, IntPtr contours_mat_nativeObj, int contourIdx, double color_val0, double color_val1, double color_val2, double color_val3, int thickness);
  4619. [DllImport(LIBNAME)]
  4620. private static extern void imgproc_Imgproc_drawContours_15(IntPtr image_nativeObj, IntPtr contours_mat_nativeObj, int contourIdx, double color_val0, double color_val1, double color_val2, double color_val3);
  4621. // C++: void cv::drawMarker(Mat& img, Point position, Scalar color, int markerType = MARKER_CROSS, int markerSize = 20, int thickness = 1, int line_type = 8)
  4622. [DllImport(LIBNAME)]
  4623. private static extern void imgproc_Imgproc_drawMarker_10(IntPtr img_nativeObj, double position_x, double position_y, double color_val0, double color_val1, double color_val2, double color_val3, int markerType, int markerSize, int thickness, int line_type);
  4624. [DllImport(LIBNAME)]
  4625. private static extern void imgproc_Imgproc_drawMarker_11(IntPtr img_nativeObj, double position_x, double position_y, double color_val0, double color_val1, double color_val2, double color_val3, int markerType, int markerSize, int thickness);
  4626. [DllImport(LIBNAME)]
  4627. private static extern void imgproc_Imgproc_drawMarker_12(IntPtr img_nativeObj, double position_x, double position_y, double color_val0, double color_val1, double color_val2, double color_val3, int markerType, int markerSize);
  4628. [DllImport(LIBNAME)]
  4629. private static extern void imgproc_Imgproc_drawMarker_13(IntPtr img_nativeObj, double position_x, double position_y, double color_val0, double color_val1, double color_val2, double color_val3, int markerType);
  4630. [DllImport(LIBNAME)]
  4631. private static extern void imgproc_Imgproc_drawMarker_14(IntPtr img_nativeObj, double position_x, double position_y, double color_val0, double color_val1, double color_val2, double color_val3);
  4632. // C++: void cv::ellipse(Mat& img, Point center, Size axes, double angle, double startAngle, double endAngle, Scalar color, int thickness = 1, int lineType = LINE_8, int shift = 0)
  4633. [DllImport(LIBNAME)]
  4634. private static extern void imgproc_Imgproc_ellipse_10(IntPtr img_nativeObj, double center_x, double center_y, double axes_width, double axes_height, double angle, double startAngle, double endAngle, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType, int shift);
  4635. [DllImport(LIBNAME)]
  4636. private static extern void imgproc_Imgproc_ellipse_11(IntPtr img_nativeObj, double center_x, double center_y, double axes_width, double axes_height, double angle, double startAngle, double endAngle, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType);
  4637. [DllImport(LIBNAME)]
  4638. private static extern void imgproc_Imgproc_ellipse_12(IntPtr img_nativeObj, double center_x, double center_y, double axes_width, double axes_height, double angle, double startAngle, double endAngle, double color_val0, double color_val1, double color_val2, double color_val3, int thickness);
  4639. [DllImport(LIBNAME)]
  4640. private static extern void imgproc_Imgproc_ellipse_13(IntPtr img_nativeObj, double center_x, double center_y, double axes_width, double axes_height, double angle, double startAngle, double endAngle, double color_val0, double color_val1, double color_val2, double color_val3);
  4641. // C++: void cv::ellipse(Mat& img, RotatedRect box, Scalar color, int thickness = 1, int lineType = LINE_8)
  4642. [DllImport(LIBNAME)]
  4643. private static extern void imgproc_Imgproc_ellipse_14(IntPtr img_nativeObj, double box_center_x, double box_center_y, double box_size_width, double box_size_height, double box_angle, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType);
  4644. [DllImport(LIBNAME)]
  4645. private static extern void imgproc_Imgproc_ellipse_15(IntPtr img_nativeObj, double box_center_x, double box_center_y, double box_size_width, double box_size_height, double box_angle, double color_val0, double color_val1, double color_val2, double color_val3, int thickness);
  4646. [DllImport(LIBNAME)]
  4647. private static extern void imgproc_Imgproc_ellipse_16(IntPtr img_nativeObj, double box_center_x, double box_center_y, double box_size_width, double box_size_height, double box_angle, double color_val0, double color_val1, double color_val2, double color_val3);
  4648. // C++: void cv::ellipse2Poly(Point center, Size axes, int angle, int arcStart, int arcEnd, int delta, vector_Point& pts)
  4649. [DllImport(LIBNAME)]
  4650. private static extern void imgproc_Imgproc_ellipse2Poly_10(double center_x, double center_y, double axes_width, double axes_height, int angle, int arcStart, int arcEnd, int delta, IntPtr pts_mat_nativeObj);
  4651. // C++: void cv::equalizeHist(Mat src, Mat& dst)
  4652. [DllImport(LIBNAME)]
  4653. private static extern void imgproc_Imgproc_equalizeHist_10(IntPtr src_nativeObj, IntPtr dst_nativeObj);
  4654. // C++: void cv::erode(Mat src, Mat& dst, Mat kernel, Point anchor = Point(-1,-1), int iterations = 1, int borderType = BORDER_CONSTANT, Scalar borderValue = morphologyDefaultBorderValue())
  4655. [DllImport(LIBNAME)]
  4656. private static extern void imgproc_Imgproc_erode_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr kernel_nativeObj, double anchor_x, double anchor_y, int iterations, int borderType, double borderValue_val0, double borderValue_val1, double borderValue_val2, double borderValue_val3);
  4657. [DllImport(LIBNAME)]
  4658. private static extern void imgproc_Imgproc_erode_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr kernel_nativeObj, double anchor_x, double anchor_y, int iterations, int borderType);
  4659. [DllImport(LIBNAME)]
  4660. private static extern void imgproc_Imgproc_erode_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr kernel_nativeObj, double anchor_x, double anchor_y, int iterations);
  4661. [DllImport(LIBNAME)]
  4662. private static extern void imgproc_Imgproc_erode_13(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr kernel_nativeObj, double anchor_x, double anchor_y);
  4663. [DllImport(LIBNAME)]
  4664. private static extern void imgproc_Imgproc_erode_14(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr kernel_nativeObj);
  4665. // C++: void cv::fillConvexPoly(Mat& img, vector_Point points, Scalar color, int lineType = LINE_8, int shift = 0)
  4666. [DllImport(LIBNAME)]
  4667. private static extern void imgproc_Imgproc_fillConvexPoly_10(IntPtr img_nativeObj, IntPtr points_mat_nativeObj, double color_val0, double color_val1, double color_val2, double color_val3, int lineType, int shift);
  4668. [DllImport(LIBNAME)]
  4669. private static extern void imgproc_Imgproc_fillConvexPoly_11(IntPtr img_nativeObj, IntPtr points_mat_nativeObj, double color_val0, double color_val1, double color_val2, double color_val3, int lineType);
  4670. [DllImport(LIBNAME)]
  4671. private static extern void imgproc_Imgproc_fillConvexPoly_12(IntPtr img_nativeObj, IntPtr points_mat_nativeObj, double color_val0, double color_val1, double color_val2, double color_val3);
  4672. // C++: void cv::fillPoly(Mat& img, vector_vector_Point pts, Scalar color, int lineType = LINE_8, int shift = 0, Point offset = Point())
  4673. [DllImport(LIBNAME)]
  4674. private static extern void imgproc_Imgproc_fillPoly_10(IntPtr img_nativeObj, IntPtr pts_mat_nativeObj, double color_val0, double color_val1, double color_val2, double color_val3, int lineType, int shift, double offset_x, double offset_y);
  4675. [DllImport(LIBNAME)]
  4676. private static extern void imgproc_Imgproc_fillPoly_11(IntPtr img_nativeObj, IntPtr pts_mat_nativeObj, double color_val0, double color_val1, double color_val2, double color_val3, int lineType, int shift);
  4677. [DllImport(LIBNAME)]
  4678. private static extern void imgproc_Imgproc_fillPoly_12(IntPtr img_nativeObj, IntPtr pts_mat_nativeObj, double color_val0, double color_val1, double color_val2, double color_val3, int lineType);
  4679. [DllImport(LIBNAME)]
  4680. private static extern void imgproc_Imgproc_fillPoly_13(IntPtr img_nativeObj, IntPtr pts_mat_nativeObj, double color_val0, double color_val1, double color_val2, double color_val3);
  4681. // C++: void cv::filter2D(Mat src, Mat& dst, int ddepth, Mat kernel, Point anchor = Point(-1,-1), double delta = 0, int borderType = BORDER_DEFAULT)
  4682. [DllImport(LIBNAME)]
  4683. private static extern void imgproc_Imgproc_filter2D_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, IntPtr kernel_nativeObj, double anchor_x, double anchor_y, double delta, int borderType);
  4684. [DllImport(LIBNAME)]
  4685. private static extern void imgproc_Imgproc_filter2D_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, IntPtr kernel_nativeObj, double anchor_x, double anchor_y, double delta);
  4686. [DllImport(LIBNAME)]
  4687. private static extern void imgproc_Imgproc_filter2D_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, IntPtr kernel_nativeObj, double anchor_x, double anchor_y);
  4688. [DllImport(LIBNAME)]
  4689. private static extern void imgproc_Imgproc_filter2D_13(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, IntPtr kernel_nativeObj);
  4690. // C++: void cv::findContours(Mat image, vector_vector_Point& contours, Mat& hierarchy, int mode, int method, Point offset = Point())
  4691. [DllImport(LIBNAME)]
  4692. private static extern void imgproc_Imgproc_findContours_10(IntPtr image_nativeObj, IntPtr contours_mat_nativeObj, IntPtr hierarchy_nativeObj, int mode, int method, double offset_x, double offset_y);
  4693. [DllImport(LIBNAME)]
  4694. private static extern void imgproc_Imgproc_findContours_11(IntPtr image_nativeObj, IntPtr contours_mat_nativeObj, IntPtr hierarchy_nativeObj, int mode, int method);
  4695. // C++: void cv::fitLine(Mat points, Mat& line, int distType, double param, double reps, double aeps)
  4696. [DllImport(LIBNAME)]
  4697. private static extern void imgproc_Imgproc_fitLine_10(IntPtr points_nativeObj, IntPtr line_nativeObj, int distType, double param, double reps, double aeps);
  4698. // C++: void cv::getDerivKernels(Mat& kx, Mat& ky, int dx, int dy, int ksize, bool normalize = false, int ktype = CV_32F)
  4699. [DllImport(LIBNAME)]
  4700. private static extern void imgproc_Imgproc_getDerivKernels_10(IntPtr kx_nativeObj, IntPtr ky_nativeObj, int dx, int dy, int ksize, bool normalize, int ktype);
  4701. [DllImport(LIBNAME)]
  4702. private static extern void imgproc_Imgproc_getDerivKernels_11(IntPtr kx_nativeObj, IntPtr ky_nativeObj, int dx, int dy, int ksize, bool normalize);
  4703. [DllImport(LIBNAME)]
  4704. private static extern void imgproc_Imgproc_getDerivKernels_12(IntPtr kx_nativeObj, IntPtr ky_nativeObj, int dx, int dy, int ksize);
  4705. // C++: void cv::getRectSubPix(Mat image, Size patchSize, Point2f center, Mat& patch, int patchType = -1)
  4706. [DllImport(LIBNAME)]
  4707. private static extern void imgproc_Imgproc_getRectSubPix_10(IntPtr image_nativeObj, double patchSize_width, double patchSize_height, double center_x, double center_y, IntPtr patch_nativeObj, int patchType);
  4708. [DllImport(LIBNAME)]
  4709. private static extern void imgproc_Imgproc_getRectSubPix_11(IntPtr image_nativeObj, double patchSize_width, double patchSize_height, double center_x, double center_y, IntPtr patch_nativeObj);
  4710. // C++: void cv::goodFeaturesToTrack(Mat image, vector_Point& corners, int maxCorners, double qualityLevel, double minDistance, Mat mask, int blockSize, int gradientSize, bool useHarrisDetector = false, double k = 0.04)
  4711. [DllImport(LIBNAME)]
  4712. private static extern void imgproc_Imgproc_goodFeaturesToTrack_10(IntPtr image_nativeObj, IntPtr corners_mat_nativeObj, int maxCorners, double qualityLevel, double minDistance, IntPtr mask_nativeObj, int blockSize, int gradientSize, bool useHarrisDetector, double k);
  4713. [DllImport(LIBNAME)]
  4714. private static extern void imgproc_Imgproc_goodFeaturesToTrack_11(IntPtr image_nativeObj, IntPtr corners_mat_nativeObj, int maxCorners, double qualityLevel, double minDistance, IntPtr mask_nativeObj, int blockSize, int gradientSize, bool useHarrisDetector);
  4715. [DllImport(LIBNAME)]
  4716. private static extern void imgproc_Imgproc_goodFeaturesToTrack_12(IntPtr image_nativeObj, IntPtr corners_mat_nativeObj, int maxCorners, double qualityLevel, double minDistance, IntPtr mask_nativeObj, int blockSize, int gradientSize);
  4717. // C++: void cv::goodFeaturesToTrack(Mat image, vector_Point& corners, int maxCorners, double qualityLevel, double minDistance, Mat mask = Mat(), int blockSize = 3, bool useHarrisDetector = false, double k = 0.04)
  4718. [DllImport(LIBNAME)]
  4719. private static extern void imgproc_Imgproc_goodFeaturesToTrack_13(IntPtr image_nativeObj, IntPtr corners_mat_nativeObj, int maxCorners, double qualityLevel, double minDistance, IntPtr mask_nativeObj, int blockSize, bool useHarrisDetector, double k);
  4720. [DllImport(LIBNAME)]
  4721. private static extern void imgproc_Imgproc_goodFeaturesToTrack_14(IntPtr image_nativeObj, IntPtr corners_mat_nativeObj, int maxCorners, double qualityLevel, double minDistance, IntPtr mask_nativeObj, int blockSize, bool useHarrisDetector);
  4722. [DllImport(LIBNAME)]
  4723. private static extern void imgproc_Imgproc_goodFeaturesToTrack_15(IntPtr image_nativeObj, IntPtr corners_mat_nativeObj, int maxCorners, double qualityLevel, double minDistance, IntPtr mask_nativeObj, int blockSize);
  4724. [DllImport(LIBNAME)]
  4725. private static extern void imgproc_Imgproc_goodFeaturesToTrack_16(IntPtr image_nativeObj, IntPtr corners_mat_nativeObj, int maxCorners, double qualityLevel, double minDistance, IntPtr mask_nativeObj);
  4726. [DllImport(LIBNAME)]
  4727. private static extern void imgproc_Imgproc_goodFeaturesToTrack_17(IntPtr image_nativeObj, IntPtr corners_mat_nativeObj, int maxCorners, double qualityLevel, double minDistance);
  4728. // C++: void cv::grabCut(Mat img, Mat& mask, Rect rect, Mat& bgdModel, Mat& fgdModel, int iterCount, int mode = GC_EVAL)
  4729. [DllImport(LIBNAME)]
  4730. private static extern void imgproc_Imgproc_grabCut_10(IntPtr img_nativeObj, IntPtr mask_nativeObj, int rect_x, int rect_y, int rect_width, int rect_height, IntPtr bgdModel_nativeObj, IntPtr fgdModel_nativeObj, int iterCount, int mode);
  4731. [DllImport(LIBNAME)]
  4732. private static extern void imgproc_Imgproc_grabCut_11(IntPtr img_nativeObj, IntPtr mask_nativeObj, int rect_x, int rect_y, int rect_width, int rect_height, IntPtr bgdModel_nativeObj, IntPtr fgdModel_nativeObj, int iterCount);
  4733. // C++: void cv::integral(Mat src, Mat& sum, Mat& sqsum, Mat& tilted, int sdepth = -1, int sqdepth = -1)
  4734. [DllImport(LIBNAME)]
  4735. private static extern void imgproc_Imgproc_integral3_10(IntPtr src_nativeObj, IntPtr sum_nativeObj, IntPtr sqsum_nativeObj, IntPtr tilted_nativeObj, int sdepth, int sqdepth);
  4736. [DllImport(LIBNAME)]
  4737. private static extern void imgproc_Imgproc_integral3_11(IntPtr src_nativeObj, IntPtr sum_nativeObj, IntPtr sqsum_nativeObj, IntPtr tilted_nativeObj, int sdepth);
  4738. [DllImport(LIBNAME)]
  4739. private static extern void imgproc_Imgproc_integral3_12(IntPtr src_nativeObj, IntPtr sum_nativeObj, IntPtr sqsum_nativeObj, IntPtr tilted_nativeObj);
  4740. // C++: void cv::integral(Mat src, Mat& sum, Mat& sqsum, int sdepth = -1, int sqdepth = -1)
  4741. [DllImport(LIBNAME)]
  4742. private static extern void imgproc_Imgproc_integral2_10(IntPtr src_nativeObj, IntPtr sum_nativeObj, IntPtr sqsum_nativeObj, int sdepth, int sqdepth);
  4743. [DllImport(LIBNAME)]
  4744. private static extern void imgproc_Imgproc_integral2_11(IntPtr src_nativeObj, IntPtr sum_nativeObj, IntPtr sqsum_nativeObj, int sdepth);
  4745. [DllImport(LIBNAME)]
  4746. private static extern void imgproc_Imgproc_integral2_12(IntPtr src_nativeObj, IntPtr sum_nativeObj, IntPtr sqsum_nativeObj);
  4747. // C++: void cv::integral(Mat src, Mat& sum, int sdepth = -1)
  4748. [DllImport(LIBNAME)]
  4749. private static extern void imgproc_Imgproc_integral_10(IntPtr src_nativeObj, IntPtr sum_nativeObj, int sdepth);
  4750. [DllImport(LIBNAME)]
  4751. private static extern void imgproc_Imgproc_integral_11(IntPtr src_nativeObj, IntPtr sum_nativeObj);
  4752. // C++: void cv::invertAffineTransform(Mat M, Mat& iM)
  4753. [DllImport(LIBNAME)]
  4754. private static extern void imgproc_Imgproc_invertAffineTransform_10(IntPtr M_nativeObj, IntPtr iM_nativeObj);
  4755. // C++: void cv::line(Mat& img, Point pt1, Point pt2, Scalar color, int thickness = 1, int lineType = LINE_8, int shift = 0)
  4756. [DllImport(LIBNAME)]
  4757. private static extern void imgproc_Imgproc_line_10(IntPtr img_nativeObj, double pt1_x, double pt1_y, double pt2_x, double pt2_y, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType, int shift);
  4758. [DllImport(LIBNAME)]
  4759. private static extern void imgproc_Imgproc_line_11(IntPtr img_nativeObj, double pt1_x, double pt1_y, double pt2_x, double pt2_y, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType);
  4760. [DllImport(LIBNAME)]
  4761. private static extern void imgproc_Imgproc_line_12(IntPtr img_nativeObj, double pt1_x, double pt1_y, double pt2_x, double pt2_y, double color_val0, double color_val1, double color_val2, double color_val3, int thickness);
  4762. [DllImport(LIBNAME)]
  4763. private static extern void imgproc_Imgproc_line_13(IntPtr img_nativeObj, double pt1_x, double pt1_y, double pt2_x, double pt2_y, double color_val0, double color_val1, double color_val2, double color_val3);
  4764. // C++: void cv::linearPolar(Mat src, Mat& dst, Point2f center, double maxRadius, int flags)
  4765. [DllImport(LIBNAME)]
  4766. private static extern void imgproc_Imgproc_linearPolar_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, double center_x, double center_y, double maxRadius, int flags);
  4767. // C++: void cv::logPolar(Mat src, Mat& dst, Point2f center, double M, int flags)
  4768. [DllImport(LIBNAME)]
  4769. private static extern void imgproc_Imgproc_logPolar_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, double center_x, double center_y, double M, int flags);
  4770. // C++: void cv::matchTemplate(Mat image, Mat templ, Mat& result, int method, Mat mask = Mat())
  4771. [DllImport(LIBNAME)]
  4772. private static extern void imgproc_Imgproc_matchTemplate_10(IntPtr image_nativeObj, IntPtr templ_nativeObj, IntPtr result_nativeObj, int method, IntPtr mask_nativeObj);
  4773. [DllImport(LIBNAME)]
  4774. private static extern void imgproc_Imgproc_matchTemplate_11(IntPtr image_nativeObj, IntPtr templ_nativeObj, IntPtr result_nativeObj, int method);
  4775. // C++: void cv::medianBlur(Mat src, Mat& dst, int ksize)
  4776. [DllImport(LIBNAME)]
  4777. private static extern void imgproc_Imgproc_medianBlur_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ksize);
  4778. // C++: void cv::minEnclosingCircle(vector_Point2f points, Point2f& center, float& radius)
  4779. [DllImport(LIBNAME)]
  4780. private static extern void imgproc_Imgproc_minEnclosingCircle_10(IntPtr points_mat_nativeObj, double[] center_out, double[] radius_out);
  4781. // C++: void cv::morphologyEx(Mat src, Mat& dst, int op, Mat kernel, Point anchor = Point(-1,-1), int iterations = 1, int borderType = BORDER_CONSTANT, Scalar borderValue = morphologyDefaultBorderValue())
  4782. [DllImport(LIBNAME)]
  4783. private static extern void imgproc_Imgproc_morphologyEx_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int op, IntPtr kernel_nativeObj, double anchor_x, double anchor_y, int iterations, int borderType, double borderValue_val0, double borderValue_val1, double borderValue_val2, double borderValue_val3);
  4784. [DllImport(LIBNAME)]
  4785. private static extern void imgproc_Imgproc_morphologyEx_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int op, IntPtr kernel_nativeObj, double anchor_x, double anchor_y, int iterations, int borderType);
  4786. [DllImport(LIBNAME)]
  4787. private static extern void imgproc_Imgproc_morphologyEx_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, int op, IntPtr kernel_nativeObj, double anchor_x, double anchor_y, int iterations);
  4788. [DllImport(LIBNAME)]
  4789. private static extern void imgproc_Imgproc_morphologyEx_13(IntPtr src_nativeObj, IntPtr dst_nativeObj, int op, IntPtr kernel_nativeObj, double anchor_x, double anchor_y);
  4790. [DllImport(LIBNAME)]
  4791. private static extern void imgproc_Imgproc_morphologyEx_14(IntPtr src_nativeObj, IntPtr dst_nativeObj, int op, IntPtr kernel_nativeObj);
  4792. // C++: void cv::polylines(Mat& img, vector_vector_Point pts, bool isClosed, Scalar color, int thickness = 1, int lineType = LINE_8, int shift = 0)
  4793. [DllImport(LIBNAME)]
  4794. private static extern void imgproc_Imgproc_polylines_10(IntPtr img_nativeObj, IntPtr pts_mat_nativeObj, bool isClosed, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType, int shift);
  4795. [DllImport(LIBNAME)]
  4796. private static extern void imgproc_Imgproc_polylines_11(IntPtr img_nativeObj, IntPtr pts_mat_nativeObj, bool isClosed, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType);
  4797. [DllImport(LIBNAME)]
  4798. private static extern void imgproc_Imgproc_polylines_12(IntPtr img_nativeObj, IntPtr pts_mat_nativeObj, bool isClosed, double color_val0, double color_val1, double color_val2, double color_val3, int thickness);
  4799. [DllImport(LIBNAME)]
  4800. private static extern void imgproc_Imgproc_polylines_13(IntPtr img_nativeObj, IntPtr pts_mat_nativeObj, bool isClosed, double color_val0, double color_val1, double color_val2, double color_val3);
  4801. // C++: void cv::preCornerDetect(Mat src, Mat& dst, int ksize, int borderType = BORDER_DEFAULT)
  4802. [DllImport(LIBNAME)]
  4803. private static extern void imgproc_Imgproc_preCornerDetect_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ksize, int borderType);
  4804. [DllImport(LIBNAME)]
  4805. private static extern void imgproc_Imgproc_preCornerDetect_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ksize);
  4806. // C++: void cv::putText(Mat& img, String text, Point org, int fontFace, double fontScale, Scalar color, int thickness = 1, int lineType = LINE_8, bool bottomLeftOrigin = false)
  4807. [DllImport(LIBNAME)]
  4808. private static extern void imgproc_Imgproc_putText_10(IntPtr img_nativeObj, string text, double org_x, double org_y, int fontFace, double fontScale, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType, bool bottomLeftOrigin);
  4809. [DllImport(LIBNAME)]
  4810. private static extern void imgproc_Imgproc_putText_11(IntPtr img_nativeObj, string text, double org_x, double org_y, int fontFace, double fontScale, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType);
  4811. [DllImport(LIBNAME)]
  4812. private static extern void imgproc_Imgproc_putText_12(IntPtr img_nativeObj, string text, double org_x, double org_y, int fontFace, double fontScale, double color_val0, double color_val1, double color_val2, double color_val3, int thickness);
  4813. [DllImport(LIBNAME)]
  4814. private static extern void imgproc_Imgproc_putText_13(IntPtr img_nativeObj, string text, double org_x, double org_y, int fontFace, double fontScale, double color_val0, double color_val1, double color_val2, double color_val3);
  4815. // C++: void cv::pyrDown(Mat src, Mat& dst, Size dstsize = Size(), int borderType = BORDER_DEFAULT)
  4816. [DllImport(LIBNAME)]
  4817. private static extern void imgproc_Imgproc_pyrDown_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, double dstsize_width, double dstsize_height, int borderType);
  4818. [DllImport(LIBNAME)]
  4819. private static extern void imgproc_Imgproc_pyrDown_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, double dstsize_width, double dstsize_height);
  4820. [DllImport(LIBNAME)]
  4821. private static extern void imgproc_Imgproc_pyrDown_12(IntPtr src_nativeObj, IntPtr dst_nativeObj);
  4822. // C++: void cv::pyrMeanShiftFiltering(Mat src, Mat& dst, double sp, double sr, int maxLevel = 1, TermCriteria termcrit = TermCriteria(TermCriteria::MAX_ITER+TermCriteria::EPS,5,1))
  4823. [DllImport(LIBNAME)]
  4824. private static extern void imgproc_Imgproc_pyrMeanShiftFiltering_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, double sp, double sr, int maxLevel, int termcrit_type, int termcrit_maxCount, double termcrit_epsilon);
  4825. [DllImport(LIBNAME)]
  4826. private static extern void imgproc_Imgproc_pyrMeanShiftFiltering_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, double sp, double sr, int maxLevel);
  4827. [DllImport(LIBNAME)]
  4828. private static extern void imgproc_Imgproc_pyrMeanShiftFiltering_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, double sp, double sr);
  4829. // C++: void cv::pyrUp(Mat src, Mat& dst, Size dstsize = Size(), int borderType = BORDER_DEFAULT)
  4830. [DllImport(LIBNAME)]
  4831. private static extern void imgproc_Imgproc_pyrUp_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, double dstsize_width, double dstsize_height, int borderType);
  4832. [DllImport(LIBNAME)]
  4833. private static extern void imgproc_Imgproc_pyrUp_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, double dstsize_width, double dstsize_height);
  4834. [DllImport(LIBNAME)]
  4835. private static extern void imgproc_Imgproc_pyrUp_12(IntPtr src_nativeObj, IntPtr dst_nativeObj);
  4836. // C++: void cv::rectangle(Mat& img, Point pt1, Point pt2, Scalar color, int thickness = 1, int lineType = LINE_8, int shift = 0)
  4837. [DllImport(LIBNAME)]
  4838. private static extern void imgproc_Imgproc_rectangle_10(IntPtr img_nativeObj, double pt1_x, double pt1_y, double pt2_x, double pt2_y, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType, int shift);
  4839. [DllImport(LIBNAME)]
  4840. private static extern void imgproc_Imgproc_rectangle_11(IntPtr img_nativeObj, double pt1_x, double pt1_y, double pt2_x, double pt2_y, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType);
  4841. [DllImport(LIBNAME)]
  4842. private static extern void imgproc_Imgproc_rectangle_12(IntPtr img_nativeObj, double pt1_x, double pt1_y, double pt2_x, double pt2_y, double color_val0, double color_val1, double color_val2, double color_val3, int thickness);
  4843. [DllImport(LIBNAME)]
  4844. private static extern void imgproc_Imgproc_rectangle_13(IntPtr img_nativeObj, double pt1_x, double pt1_y, double pt2_x, double pt2_y, double color_val0, double color_val1, double color_val2, double color_val3);
  4845. // C++: void cv::rectangle(Mat& img, Rect rec, Scalar color, int thickness = 1, int lineType = LINE_8, int shift = 0)
  4846. [DllImport(LIBNAME)]
  4847. private static extern void imgproc_Imgproc_rectangle_14(IntPtr img_nativeObj, int rec_x, int rec_y, int rec_width, int rec_height, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType, int shift);
  4848. [DllImport(LIBNAME)]
  4849. private static extern void imgproc_Imgproc_rectangle_15(IntPtr img_nativeObj, int rec_x, int rec_y, int rec_width, int rec_height, double color_val0, double color_val1, double color_val2, double color_val3, int thickness, int lineType);
  4850. [DllImport(LIBNAME)]
  4851. private static extern void imgproc_Imgproc_rectangle_16(IntPtr img_nativeObj, int rec_x, int rec_y, int rec_width, int rec_height, double color_val0, double color_val1, double color_val2, double color_val3, int thickness);
  4852. [DllImport(LIBNAME)]
  4853. private static extern void imgproc_Imgproc_rectangle_17(IntPtr img_nativeObj, int rec_x, int rec_y, int rec_width, int rec_height, double color_val0, double color_val1, double color_val2, double color_val3);
  4854. // C++: void cv::remap(Mat src, Mat& dst, Mat map1, Mat map2, int interpolation, int borderMode = BORDER_CONSTANT, Scalar borderValue = Scalar())
  4855. [DllImport(LIBNAME)]
  4856. private static extern void imgproc_Imgproc_remap_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr map1_nativeObj, IntPtr map2_nativeObj, int interpolation, int borderMode, double borderValue_val0, double borderValue_val1, double borderValue_val2, double borderValue_val3);
  4857. [DllImport(LIBNAME)]
  4858. private static extern void imgproc_Imgproc_remap_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr map1_nativeObj, IntPtr map2_nativeObj, int interpolation, int borderMode);
  4859. [DllImport(LIBNAME)]
  4860. private static extern void imgproc_Imgproc_remap_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr map1_nativeObj, IntPtr map2_nativeObj, int interpolation);
  4861. // C++: void cv::resize(Mat src, Mat& dst, Size dsize, double fx = 0, double fy = 0, int interpolation = INTER_LINEAR)
  4862. [DllImport(LIBNAME)]
  4863. private static extern void imgproc_Imgproc_resize_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, double dsize_width, double dsize_height, double fx, double fy, int interpolation);
  4864. [DllImport(LIBNAME)]
  4865. private static extern void imgproc_Imgproc_resize_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, double dsize_width, double dsize_height, double fx, double fy);
  4866. [DllImport(LIBNAME)]
  4867. private static extern void imgproc_Imgproc_resize_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, double dsize_width, double dsize_height, double fx);
  4868. [DllImport(LIBNAME)]
  4869. private static extern void imgproc_Imgproc_resize_13(IntPtr src_nativeObj, IntPtr dst_nativeObj, double dsize_width, double dsize_height);
  4870. // C++: void cv::sepFilter2D(Mat src, Mat& dst, int ddepth, Mat kernelX, Mat kernelY, Point anchor = Point(-1,-1), double delta = 0, int borderType = BORDER_DEFAULT)
  4871. [DllImport(LIBNAME)]
  4872. private static extern void imgproc_Imgproc_sepFilter2D_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, IntPtr kernelX_nativeObj, IntPtr kernelY_nativeObj, double anchor_x, double anchor_y, double delta, int borderType);
  4873. [DllImport(LIBNAME)]
  4874. private static extern void imgproc_Imgproc_sepFilter2D_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, IntPtr kernelX_nativeObj, IntPtr kernelY_nativeObj, double anchor_x, double anchor_y, double delta);
  4875. [DllImport(LIBNAME)]
  4876. private static extern void imgproc_Imgproc_sepFilter2D_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, IntPtr kernelX_nativeObj, IntPtr kernelY_nativeObj, double anchor_x, double anchor_y);
  4877. [DllImport(LIBNAME)]
  4878. private static extern void imgproc_Imgproc_sepFilter2D_13(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, IntPtr kernelX_nativeObj, IntPtr kernelY_nativeObj);
  4879. // C++: void cv::spatialGradient(Mat src, Mat& dx, Mat& dy, int ksize = 3, int borderType = BORDER_DEFAULT)
  4880. [DllImport(LIBNAME)]
  4881. private static extern void imgproc_Imgproc_spatialGradient_10(IntPtr src_nativeObj, IntPtr dx_nativeObj, IntPtr dy_nativeObj, int ksize, int borderType);
  4882. [DllImport(LIBNAME)]
  4883. private static extern void imgproc_Imgproc_spatialGradient_11(IntPtr src_nativeObj, IntPtr dx_nativeObj, IntPtr dy_nativeObj, int ksize);
  4884. [DllImport(LIBNAME)]
  4885. private static extern void imgproc_Imgproc_spatialGradient_12(IntPtr src_nativeObj, IntPtr dx_nativeObj, IntPtr dy_nativeObj);
  4886. // C++: void cv::sqrBoxFilter(Mat src, Mat& dst, int ddepth, Size ksize, Point anchor = Point(-1, -1), bool normalize = true, int borderType = BORDER_DEFAULT)
  4887. [DllImport(LIBNAME)]
  4888. private static extern void imgproc_Imgproc_sqrBoxFilter_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, double ksize_width, double ksize_height, double anchor_x, double anchor_y, bool normalize, int borderType);
  4889. [DllImport(LIBNAME)]
  4890. private static extern void imgproc_Imgproc_sqrBoxFilter_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, double ksize_width, double ksize_height, double anchor_x, double anchor_y, bool normalize);
  4891. [DllImport(LIBNAME)]
  4892. private static extern void imgproc_Imgproc_sqrBoxFilter_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, double ksize_width, double ksize_height, double anchor_x, double anchor_y);
  4893. [DllImport(LIBNAME)]
  4894. private static extern void imgproc_Imgproc_sqrBoxFilter_13(IntPtr src_nativeObj, IntPtr dst_nativeObj, int ddepth, double ksize_width, double ksize_height);
  4895. // C++: void cv::warpAffine(Mat src, Mat& dst, Mat M, Size dsize, int flags = INTER_LINEAR, int borderMode = BORDER_CONSTANT, Scalar borderValue = Scalar())
  4896. [DllImport(LIBNAME)]
  4897. private static extern void imgproc_Imgproc_warpAffine_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr M_nativeObj, double dsize_width, double dsize_height, int flags, int borderMode, double borderValue_val0, double borderValue_val1, double borderValue_val2, double borderValue_val3);
  4898. [DllImport(LIBNAME)]
  4899. private static extern void imgproc_Imgproc_warpAffine_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr M_nativeObj, double dsize_width, double dsize_height, int flags, int borderMode);
  4900. [DllImport(LIBNAME)]
  4901. private static extern void imgproc_Imgproc_warpAffine_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr M_nativeObj, double dsize_width, double dsize_height, int flags);
  4902. [DllImport(LIBNAME)]
  4903. private static extern void imgproc_Imgproc_warpAffine_13(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr M_nativeObj, double dsize_width, double dsize_height);
  4904. // C++: void cv::warpPerspective(Mat src, Mat& dst, Mat M, Size dsize, int flags = INTER_LINEAR, int borderMode = BORDER_CONSTANT, Scalar borderValue = Scalar())
  4905. [DllImport(LIBNAME)]
  4906. private static extern void imgproc_Imgproc_warpPerspective_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr M_nativeObj, double dsize_width, double dsize_height, int flags, int borderMode, double borderValue_val0, double borderValue_val1, double borderValue_val2, double borderValue_val3);
  4907. [DllImport(LIBNAME)]
  4908. private static extern void imgproc_Imgproc_warpPerspective_11(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr M_nativeObj, double dsize_width, double dsize_height, int flags, int borderMode);
  4909. [DllImport(LIBNAME)]
  4910. private static extern void imgproc_Imgproc_warpPerspective_12(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr M_nativeObj, double dsize_width, double dsize_height, int flags);
  4911. [DllImport(LIBNAME)]
  4912. private static extern void imgproc_Imgproc_warpPerspective_13(IntPtr src_nativeObj, IntPtr dst_nativeObj, IntPtr M_nativeObj, double dsize_width, double dsize_height);
  4913. // C++: void cv::warpPolar(Mat src, Mat& dst, Size dsize, Point2f center, double maxRadius, int flags)
  4914. [DllImport(LIBNAME)]
  4915. private static extern void imgproc_Imgproc_warpPolar_10(IntPtr src_nativeObj, IntPtr dst_nativeObj, double dsize_width, double dsize_height, double center_x, double center_y, double maxRadius, int flags);
  4916. // C++: void cv::watershed(Mat image, Mat& markers)
  4917. [DllImport(LIBNAME)]
  4918. private static extern void imgproc_Imgproc_watershed_10(IntPtr image_nativeObj, IntPtr markers_nativeObj);
  4919. [DllImport(LIBNAME)]
  4920. private static extern void imgproc_Imgproc_n_1getTextSize(string text, int fontFace, double fontScale, int thickness, int[] baseLine, double[] vals);
  4921. #endif
  4922. }
  4923. }