FarnebackOpticalFlow.cs 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534
  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.VideoModule {
  8. // C++: class FarnebackOpticalFlow
  9. //javadoc: FarnebackOpticalFlow
  10. public class FarnebackOpticalFlow : DenseOpticalFlow {
  11. protected override void Dispose(bool disposing) {
  12. #if (UNITY_ANDROID && !UNITY_EDITOR)
  13. try {
  14. if (disposing) {
  15. }
  16. if (IsEnabledDispose) {
  17. if (nativeObj != IntPtr.Zero)
  18. video_FarnebackOpticalFlow_delete(nativeObj);
  19. nativeObj = IntPtr.Zero;
  20. }
  21. } finally {
  22. base.Dispose(disposing);
  23. }
  24. #else
  25. return;
  26. #endif
  27. }
  28. protected internal FarnebackOpticalFlow(IntPtr addr) : base(addr) { }
  29. // internal usage only
  30. public static new FarnebackOpticalFlow __fromPtr__(IntPtr addr) { return new FarnebackOpticalFlow(addr); }
  31. //
  32. // C++: static Ptr_FarnebackOpticalFlow cv::FarnebackOpticalFlow::create(int numLevels = 5, double pyrScale = 0.5, bool fastPyramids = false, int winSize = 13, int numIters = 10, int polyN = 5, double polySigma = 1.1, int flags = 0)
  33. //
  34. //javadoc: FarnebackOpticalFlow::create(numLevels, pyrScale, fastPyramids, winSize, numIters, polyN, polySigma, flags)
  35. public static FarnebackOpticalFlow create(int numLevels, double pyrScale, bool fastPyramids, int winSize, int numIters, int polyN, double polySigma, int flags) {
  36. #if (UNITY_ANDROID && !UNITY_EDITOR)
  37. FarnebackOpticalFlow retVal = FarnebackOpticalFlow.__fromPtr__(video_FarnebackOpticalFlow_create_10(numLevels, pyrScale, fastPyramids, winSize, numIters, polyN, polySigma, flags));
  38. return retVal;
  39. #else
  40. return null;
  41. #endif
  42. }
  43. //javadoc: FarnebackOpticalFlow::create(numLevels, pyrScale, fastPyramids, winSize, numIters, polyN, polySigma)
  44. public static FarnebackOpticalFlow create(int numLevels, double pyrScale, bool fastPyramids, int winSize, int numIters, int polyN, double polySigma) {
  45. #if (UNITY_ANDROID && !UNITY_EDITOR)
  46. FarnebackOpticalFlow retVal = FarnebackOpticalFlow.__fromPtr__(video_FarnebackOpticalFlow_create_11(numLevels, pyrScale, fastPyramids, winSize, numIters, polyN, polySigma));
  47. return retVal;
  48. #else
  49. return null;
  50. #endif
  51. }
  52. //javadoc: FarnebackOpticalFlow::create(numLevels, pyrScale, fastPyramids, winSize, numIters, polyN)
  53. public static FarnebackOpticalFlow create(int numLevels, double pyrScale, bool fastPyramids, int winSize, int numIters, int polyN) {
  54. #if (UNITY_ANDROID && !UNITY_EDITOR)
  55. FarnebackOpticalFlow retVal = FarnebackOpticalFlow.__fromPtr__(video_FarnebackOpticalFlow_create_12(numLevels, pyrScale, fastPyramids, winSize, numIters, polyN));
  56. return retVal;
  57. #else
  58. return null;
  59. #endif
  60. }
  61. //javadoc: FarnebackOpticalFlow::create(numLevels, pyrScale, fastPyramids, winSize, numIters)
  62. public static FarnebackOpticalFlow create(int numLevels, double pyrScale, bool fastPyramids, int winSize, int numIters) {
  63. #if (UNITY_ANDROID && !UNITY_EDITOR)
  64. FarnebackOpticalFlow retVal = FarnebackOpticalFlow.__fromPtr__(video_FarnebackOpticalFlow_create_13(numLevels, pyrScale, fastPyramids, winSize, numIters));
  65. return retVal;
  66. #else
  67. return null;
  68. #endif
  69. }
  70. //javadoc: FarnebackOpticalFlow::create(numLevels, pyrScale, fastPyramids, winSize)
  71. public static FarnebackOpticalFlow create(int numLevels, double pyrScale, bool fastPyramids, int winSize) {
  72. #if (UNITY_ANDROID && !UNITY_EDITOR)
  73. FarnebackOpticalFlow retVal = FarnebackOpticalFlow.__fromPtr__(video_FarnebackOpticalFlow_create_14(numLevels, pyrScale, fastPyramids, winSize));
  74. return retVal;
  75. #else
  76. return null;
  77. #endif
  78. }
  79. //javadoc: FarnebackOpticalFlow::create(numLevels, pyrScale, fastPyramids)
  80. public static FarnebackOpticalFlow create(int numLevels, double pyrScale, bool fastPyramids) {
  81. #if (UNITY_ANDROID && !UNITY_EDITOR)
  82. FarnebackOpticalFlow retVal = FarnebackOpticalFlow.__fromPtr__(video_FarnebackOpticalFlow_create_15(numLevels, pyrScale, fastPyramids));
  83. return retVal;
  84. #else
  85. return null;
  86. #endif
  87. }
  88. //javadoc: FarnebackOpticalFlow::create(numLevels, pyrScale)
  89. public static FarnebackOpticalFlow create(int numLevels, double pyrScale) {
  90. #if (UNITY_ANDROID && !UNITY_EDITOR)
  91. FarnebackOpticalFlow retVal = FarnebackOpticalFlow.__fromPtr__(video_FarnebackOpticalFlow_create_16(numLevels, pyrScale));
  92. return retVal;
  93. #else
  94. return null;
  95. #endif
  96. }
  97. //javadoc: FarnebackOpticalFlow::create(numLevels)
  98. public static FarnebackOpticalFlow create(int numLevels) {
  99. #if (UNITY_ANDROID && !UNITY_EDITOR)
  100. FarnebackOpticalFlow retVal = FarnebackOpticalFlow.__fromPtr__(video_FarnebackOpticalFlow_create_17(numLevels));
  101. return retVal;
  102. #else
  103. return null;
  104. #endif
  105. }
  106. //javadoc: FarnebackOpticalFlow::create()
  107. public static FarnebackOpticalFlow create() {
  108. #if (UNITY_ANDROID && !UNITY_EDITOR)
  109. FarnebackOpticalFlow retVal = FarnebackOpticalFlow.__fromPtr__(video_FarnebackOpticalFlow_create_18());
  110. return retVal;
  111. #else
  112. return null;
  113. #endif
  114. }
  115. //
  116. // C++: bool cv::FarnebackOpticalFlow::getFastPyramids()
  117. //
  118. //javadoc: FarnebackOpticalFlow::getFastPyramids()
  119. public bool getFastPyramids() {
  120. ThrowIfDisposed();
  121. #if (UNITY_ANDROID && !UNITY_EDITOR)
  122. bool retVal = video_FarnebackOpticalFlow_getFastPyramids_10(nativeObj);
  123. return retVal;
  124. #else
  125. return false;
  126. #endif
  127. }
  128. //
  129. // C++: double cv::FarnebackOpticalFlow::getPolySigma()
  130. //
  131. //javadoc: FarnebackOpticalFlow::getPolySigma()
  132. public double getPolySigma() {
  133. ThrowIfDisposed();
  134. #if (UNITY_ANDROID && !UNITY_EDITOR)
  135. double retVal = video_FarnebackOpticalFlow_getPolySigma_10(nativeObj);
  136. return retVal;
  137. #else
  138. return -1;
  139. #endif
  140. }
  141. //
  142. // C++: double cv::FarnebackOpticalFlow::getPyrScale()
  143. //
  144. //javadoc: FarnebackOpticalFlow::getPyrScale()
  145. public double getPyrScale() {
  146. ThrowIfDisposed();
  147. #if (UNITY_ANDROID && !UNITY_EDITOR)
  148. double retVal = video_FarnebackOpticalFlow_getPyrScale_10(nativeObj);
  149. return retVal;
  150. #else
  151. return -1;
  152. #endif
  153. }
  154. //
  155. // C++: int cv::FarnebackOpticalFlow::getFlags()
  156. //
  157. //javadoc: FarnebackOpticalFlow::getFlags()
  158. public int getFlags() {
  159. ThrowIfDisposed();
  160. #if (UNITY_ANDROID && !UNITY_EDITOR)
  161. int retVal = video_FarnebackOpticalFlow_getFlags_10(nativeObj);
  162. return retVal;
  163. #else
  164. return -1;
  165. #endif
  166. }
  167. //
  168. // C++: int cv::FarnebackOpticalFlow::getNumIters()
  169. //
  170. //javadoc: FarnebackOpticalFlow::getNumIters()
  171. public int getNumIters() {
  172. ThrowIfDisposed();
  173. #if (UNITY_ANDROID && !UNITY_EDITOR)
  174. int retVal = video_FarnebackOpticalFlow_getNumIters_10(nativeObj);
  175. return retVal;
  176. #else
  177. return -1;
  178. #endif
  179. }
  180. //
  181. // C++: int cv::FarnebackOpticalFlow::getNumLevels()
  182. //
  183. //javadoc: FarnebackOpticalFlow::getNumLevels()
  184. public int getNumLevels() {
  185. ThrowIfDisposed();
  186. #if (UNITY_ANDROID && !UNITY_EDITOR)
  187. int retVal = video_FarnebackOpticalFlow_getNumLevels_10(nativeObj);
  188. return retVal;
  189. #else
  190. return -1;
  191. #endif
  192. }
  193. //
  194. // C++: int cv::FarnebackOpticalFlow::getPolyN()
  195. //
  196. //javadoc: FarnebackOpticalFlow::getPolyN()
  197. public int getPolyN() {
  198. ThrowIfDisposed();
  199. #if (UNITY_ANDROID && !UNITY_EDITOR)
  200. int retVal = video_FarnebackOpticalFlow_getPolyN_10(nativeObj);
  201. return retVal;
  202. #else
  203. return -1;
  204. #endif
  205. }
  206. //
  207. // C++: int cv::FarnebackOpticalFlow::getWinSize()
  208. //
  209. //javadoc: FarnebackOpticalFlow::getWinSize()
  210. public int getWinSize() {
  211. ThrowIfDisposed();
  212. #if (UNITY_ANDROID && !UNITY_EDITOR)
  213. int retVal = video_FarnebackOpticalFlow_getWinSize_10(nativeObj);
  214. return retVal;
  215. #else
  216. return -1;
  217. #endif
  218. }
  219. //
  220. // C++: void cv::FarnebackOpticalFlow::setFastPyramids(bool fastPyramids)
  221. //
  222. //javadoc: FarnebackOpticalFlow::setFastPyramids(fastPyramids)
  223. public void setFastPyramids(bool fastPyramids) {
  224. ThrowIfDisposed();
  225. #if (UNITY_ANDROID && !UNITY_EDITOR)
  226. video_FarnebackOpticalFlow_setFastPyramids_10(nativeObj, fastPyramids);
  227. return;
  228. #else
  229. return;
  230. #endif
  231. }
  232. //
  233. // C++: void cv::FarnebackOpticalFlow::setFlags(int flags)
  234. //
  235. //javadoc: FarnebackOpticalFlow::setFlags(flags)
  236. public void setFlags(int flags) {
  237. ThrowIfDisposed();
  238. #if (UNITY_ANDROID && !UNITY_EDITOR)
  239. video_FarnebackOpticalFlow_setFlags_10(nativeObj, flags);
  240. return;
  241. #else
  242. return;
  243. #endif
  244. }
  245. //
  246. // C++: void cv::FarnebackOpticalFlow::setNumIters(int numIters)
  247. //
  248. //javadoc: FarnebackOpticalFlow::setNumIters(numIters)
  249. public void setNumIters(int numIters) {
  250. ThrowIfDisposed();
  251. #if (UNITY_ANDROID && !UNITY_EDITOR)
  252. video_FarnebackOpticalFlow_setNumIters_10(nativeObj, numIters);
  253. return;
  254. #else
  255. return;
  256. #endif
  257. }
  258. //
  259. // C++: void cv::FarnebackOpticalFlow::setNumLevels(int numLevels)
  260. //
  261. //javadoc: FarnebackOpticalFlow::setNumLevels(numLevels)
  262. public void setNumLevels(int numLevels) {
  263. ThrowIfDisposed();
  264. #if (UNITY_ANDROID && !UNITY_EDITOR)
  265. video_FarnebackOpticalFlow_setNumLevels_10(nativeObj, numLevels);
  266. return;
  267. #else
  268. return;
  269. #endif
  270. }
  271. //
  272. // C++: void cv::FarnebackOpticalFlow::setPolyN(int polyN)
  273. //
  274. //javadoc: FarnebackOpticalFlow::setPolyN(polyN)
  275. public void setPolyN(int polyN) {
  276. ThrowIfDisposed();
  277. #if (UNITY_ANDROID && !UNITY_EDITOR)
  278. video_FarnebackOpticalFlow_setPolyN_10(nativeObj, polyN);
  279. return;
  280. #else
  281. return;
  282. #endif
  283. }
  284. //
  285. // C++: void cv::FarnebackOpticalFlow::setPolySigma(double polySigma)
  286. //
  287. //javadoc: FarnebackOpticalFlow::setPolySigma(polySigma)
  288. public void setPolySigma(double polySigma) {
  289. ThrowIfDisposed();
  290. #if (UNITY_ANDROID && !UNITY_EDITOR)
  291. video_FarnebackOpticalFlow_setPolySigma_10(nativeObj, polySigma);
  292. return;
  293. #else
  294. return;
  295. #endif
  296. }
  297. //
  298. // C++: void cv::FarnebackOpticalFlow::setPyrScale(double pyrScale)
  299. //
  300. //javadoc: FarnebackOpticalFlow::setPyrScale(pyrScale)
  301. public void setPyrScale(double pyrScale) {
  302. ThrowIfDisposed();
  303. #if (UNITY_ANDROID && !UNITY_EDITOR)
  304. video_FarnebackOpticalFlow_setPyrScale_10(nativeObj, pyrScale);
  305. return;
  306. #else
  307. return;
  308. #endif
  309. }
  310. //
  311. // C++: void cv::FarnebackOpticalFlow::setWinSize(int winSize)
  312. //
  313. //javadoc: FarnebackOpticalFlow::setWinSize(winSize)
  314. public void setWinSize(int winSize) {
  315. ThrowIfDisposed();
  316. #if (UNITY_ANDROID && !UNITY_EDITOR)
  317. video_FarnebackOpticalFlow_setWinSize_10(nativeObj, winSize);
  318. return;
  319. #else
  320. return;
  321. #endif
  322. }
  323. #if (UNITY_ANDROID && !UNITY_EDITOR)
  324. const string LIBNAME = "opencvforunity";
  325. // C++: static Ptr_FarnebackOpticalFlow cv::FarnebackOpticalFlow::create(int numLevels = 5, double pyrScale = 0.5, bool fastPyramids = false, int winSize = 13, int numIters = 10, int polyN = 5, double polySigma = 1.1, int flags = 0)
  326. [DllImport(LIBNAME)]
  327. private static extern IntPtr video_FarnebackOpticalFlow_create_10(int numLevels, double pyrScale, bool fastPyramids, int winSize, int numIters, int polyN, double polySigma, int flags);
  328. [DllImport(LIBNAME)]
  329. private static extern IntPtr video_FarnebackOpticalFlow_create_11(int numLevels, double pyrScale, bool fastPyramids, int winSize, int numIters, int polyN, double polySigma);
  330. [DllImport(LIBNAME)]
  331. private static extern IntPtr video_FarnebackOpticalFlow_create_12(int numLevels, double pyrScale, bool fastPyramids, int winSize, int numIters, int polyN);
  332. [DllImport(LIBNAME)]
  333. private static extern IntPtr video_FarnebackOpticalFlow_create_13(int numLevels, double pyrScale, bool fastPyramids, int winSize, int numIters);
  334. [DllImport(LIBNAME)]
  335. private static extern IntPtr video_FarnebackOpticalFlow_create_14(int numLevels, double pyrScale, bool fastPyramids, int winSize);
  336. [DllImport(LIBNAME)]
  337. private static extern IntPtr video_FarnebackOpticalFlow_create_15(int numLevels, double pyrScale, bool fastPyramids);
  338. [DllImport(LIBNAME)]
  339. private static extern IntPtr video_FarnebackOpticalFlow_create_16(int numLevels, double pyrScale);
  340. [DllImport(LIBNAME)]
  341. private static extern IntPtr video_FarnebackOpticalFlow_create_17(int numLevels);
  342. [DllImport(LIBNAME)]
  343. private static extern IntPtr video_FarnebackOpticalFlow_create_18();
  344. // C++: bool cv::FarnebackOpticalFlow::getFastPyramids()
  345. [DllImport(LIBNAME)]
  346. private static extern bool video_FarnebackOpticalFlow_getFastPyramids_10(IntPtr nativeObj);
  347. // C++: double cv::FarnebackOpticalFlow::getPolySigma()
  348. [DllImport(LIBNAME)]
  349. private static extern double video_FarnebackOpticalFlow_getPolySigma_10(IntPtr nativeObj);
  350. // C++: double cv::FarnebackOpticalFlow::getPyrScale()
  351. [DllImport(LIBNAME)]
  352. private static extern double video_FarnebackOpticalFlow_getPyrScale_10(IntPtr nativeObj);
  353. // C++: int cv::FarnebackOpticalFlow::getFlags()
  354. [DllImport(LIBNAME)]
  355. private static extern int video_FarnebackOpticalFlow_getFlags_10(IntPtr nativeObj);
  356. // C++: int cv::FarnebackOpticalFlow::getNumIters()
  357. [DllImport(LIBNAME)]
  358. private static extern int video_FarnebackOpticalFlow_getNumIters_10(IntPtr nativeObj);
  359. // C++: int cv::FarnebackOpticalFlow::getNumLevels()
  360. [DllImport(LIBNAME)]
  361. private static extern int video_FarnebackOpticalFlow_getNumLevels_10(IntPtr nativeObj);
  362. // C++: int cv::FarnebackOpticalFlow::getPolyN()
  363. [DllImport(LIBNAME)]
  364. private static extern int video_FarnebackOpticalFlow_getPolyN_10(IntPtr nativeObj);
  365. // C++: int cv::FarnebackOpticalFlow::getWinSize()
  366. [DllImport(LIBNAME)]
  367. private static extern int video_FarnebackOpticalFlow_getWinSize_10(IntPtr nativeObj);
  368. // C++: void cv::FarnebackOpticalFlow::setFastPyramids(bool fastPyramids)
  369. [DllImport(LIBNAME)]
  370. private static extern void video_FarnebackOpticalFlow_setFastPyramids_10(IntPtr nativeObj, bool fastPyramids);
  371. // C++: void cv::FarnebackOpticalFlow::setFlags(int flags)
  372. [DllImport(LIBNAME)]
  373. private static extern void video_FarnebackOpticalFlow_setFlags_10(IntPtr nativeObj, int flags);
  374. // C++: void cv::FarnebackOpticalFlow::setNumIters(int numIters)
  375. [DllImport(LIBNAME)]
  376. private static extern void video_FarnebackOpticalFlow_setNumIters_10(IntPtr nativeObj, int numIters);
  377. // C++: void cv::FarnebackOpticalFlow::setNumLevels(int numLevels)
  378. [DllImport(LIBNAME)]
  379. private static extern void video_FarnebackOpticalFlow_setNumLevels_10(IntPtr nativeObj, int numLevels);
  380. // C++: void cv::FarnebackOpticalFlow::setPolyN(int polyN)
  381. [DllImport(LIBNAME)]
  382. private static extern void video_FarnebackOpticalFlow_setPolyN_10(IntPtr nativeObj, int polyN);
  383. // C++: void cv::FarnebackOpticalFlow::setPolySigma(double polySigma)
  384. [DllImport(LIBNAME)]
  385. private static extern void video_FarnebackOpticalFlow_setPolySigma_10(IntPtr nativeObj, double polySigma);
  386. // C++: void cv::FarnebackOpticalFlow::setPyrScale(double pyrScale)
  387. [DllImport(LIBNAME)]
  388. private static extern void video_FarnebackOpticalFlow_setPyrScale_10(IntPtr nativeObj, double pyrScale);
  389. // C++: void cv::FarnebackOpticalFlow::setWinSize(int winSize)
  390. [DllImport(LIBNAME)]
  391. private static extern void video_FarnebackOpticalFlow_setWinSize_10(IntPtr nativeObj, int winSize);
  392. // native support for java finalize()
  393. [DllImport(LIBNAME)]
  394. private static extern void video_FarnebackOpticalFlow_delete(IntPtr nativeObj);
  395. #endif
  396. }
  397. }