BackgroundSubtractorGMG.cs 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491
  1. 
  2. using OpenCVForUnity.CoreModule;
  3. using OpenCVForUnity.VideoModule;
  4. using OpenCVForUnity.UtilsModule;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Runtime.InteropServices;
  8. namespace OpenCVForUnity.BgsegmModule {
  9. // C++: class BackgroundSubtractorGMG
  10. //javadoc: BackgroundSubtractorGMG
  11. public class BackgroundSubtractorGMG : BackgroundSubtractor {
  12. protected override void Dispose(bool disposing) {
  13. #if (UNITY_ANDROID && !UNITY_EDITOR)
  14. try {
  15. if (disposing) {
  16. }
  17. if (IsEnabledDispose) {
  18. if (nativeObj != IntPtr.Zero)
  19. bgsegm_BackgroundSubtractorGMG_delete(nativeObj);
  20. nativeObj = IntPtr.Zero;
  21. }
  22. } finally {
  23. base.Dispose(disposing);
  24. }
  25. #else
  26. return;
  27. #endif
  28. }
  29. protected internal BackgroundSubtractorGMG(IntPtr addr) : base(addr) { }
  30. // internal usage only
  31. public static new BackgroundSubtractorGMG __fromPtr__(IntPtr addr) { return new BackgroundSubtractorGMG(addr); }
  32. //
  33. // C++: bool cv::bgsegm::BackgroundSubtractorGMG::getUpdateBackgroundModel()
  34. //
  35. //javadoc: BackgroundSubtractorGMG::getUpdateBackgroundModel()
  36. public bool getUpdateBackgroundModel() {
  37. ThrowIfDisposed();
  38. #if (UNITY_ANDROID && !UNITY_EDITOR)
  39. bool retVal = bgsegm_BackgroundSubtractorGMG_getUpdateBackgroundModel_10(nativeObj);
  40. return retVal;
  41. #else
  42. return false;
  43. #endif
  44. }
  45. //
  46. // C++: double cv::bgsegm::BackgroundSubtractorGMG::getBackgroundPrior()
  47. //
  48. //javadoc: BackgroundSubtractorGMG::getBackgroundPrior()
  49. public double getBackgroundPrior() {
  50. ThrowIfDisposed();
  51. #if (UNITY_ANDROID && !UNITY_EDITOR)
  52. double retVal = bgsegm_BackgroundSubtractorGMG_getBackgroundPrior_10(nativeObj);
  53. return retVal;
  54. #else
  55. return -1;
  56. #endif
  57. }
  58. //
  59. // C++: double cv::bgsegm::BackgroundSubtractorGMG::getDecisionThreshold()
  60. //
  61. //javadoc: BackgroundSubtractorGMG::getDecisionThreshold()
  62. public double getDecisionThreshold() {
  63. ThrowIfDisposed();
  64. #if (UNITY_ANDROID && !UNITY_EDITOR)
  65. double retVal = bgsegm_BackgroundSubtractorGMG_getDecisionThreshold_10(nativeObj);
  66. return retVal;
  67. #else
  68. return -1;
  69. #endif
  70. }
  71. //
  72. // C++: double cv::bgsegm::BackgroundSubtractorGMG::getDefaultLearningRate()
  73. //
  74. //javadoc: BackgroundSubtractorGMG::getDefaultLearningRate()
  75. public double getDefaultLearningRate() {
  76. ThrowIfDisposed();
  77. #if (UNITY_ANDROID && !UNITY_EDITOR)
  78. double retVal = bgsegm_BackgroundSubtractorGMG_getDefaultLearningRate_10(nativeObj);
  79. return retVal;
  80. #else
  81. return -1;
  82. #endif
  83. }
  84. //
  85. // C++: double cv::bgsegm::BackgroundSubtractorGMG::getMaxVal()
  86. //
  87. //javadoc: BackgroundSubtractorGMG::getMaxVal()
  88. public double getMaxVal() {
  89. ThrowIfDisposed();
  90. #if (UNITY_ANDROID && !UNITY_EDITOR)
  91. double retVal = bgsegm_BackgroundSubtractorGMG_getMaxVal_10(nativeObj);
  92. return retVal;
  93. #else
  94. return -1;
  95. #endif
  96. }
  97. //
  98. // C++: double cv::bgsegm::BackgroundSubtractorGMG::getMinVal()
  99. //
  100. //javadoc: BackgroundSubtractorGMG::getMinVal()
  101. public double getMinVal() {
  102. ThrowIfDisposed();
  103. #if (UNITY_ANDROID && !UNITY_EDITOR)
  104. double retVal = bgsegm_BackgroundSubtractorGMG_getMinVal_10(nativeObj);
  105. return retVal;
  106. #else
  107. return -1;
  108. #endif
  109. }
  110. //
  111. // C++: int cv::bgsegm::BackgroundSubtractorGMG::getMaxFeatures()
  112. //
  113. //javadoc: BackgroundSubtractorGMG::getMaxFeatures()
  114. public int getMaxFeatures() {
  115. ThrowIfDisposed();
  116. #if (UNITY_ANDROID && !UNITY_EDITOR)
  117. int retVal = bgsegm_BackgroundSubtractorGMG_getMaxFeatures_10(nativeObj);
  118. return retVal;
  119. #else
  120. return -1;
  121. #endif
  122. }
  123. //
  124. // C++: int cv::bgsegm::BackgroundSubtractorGMG::getNumFrames()
  125. //
  126. //javadoc: BackgroundSubtractorGMG::getNumFrames()
  127. public int getNumFrames() {
  128. ThrowIfDisposed();
  129. #if (UNITY_ANDROID && !UNITY_EDITOR)
  130. int retVal = bgsegm_BackgroundSubtractorGMG_getNumFrames_10(nativeObj);
  131. return retVal;
  132. #else
  133. return -1;
  134. #endif
  135. }
  136. //
  137. // C++: int cv::bgsegm::BackgroundSubtractorGMG::getQuantizationLevels()
  138. //
  139. //javadoc: BackgroundSubtractorGMG::getQuantizationLevels()
  140. public int getQuantizationLevels() {
  141. ThrowIfDisposed();
  142. #if (UNITY_ANDROID && !UNITY_EDITOR)
  143. int retVal = bgsegm_BackgroundSubtractorGMG_getQuantizationLevels_10(nativeObj);
  144. return retVal;
  145. #else
  146. return -1;
  147. #endif
  148. }
  149. //
  150. // C++: int cv::bgsegm::BackgroundSubtractorGMG::getSmoothingRadius()
  151. //
  152. //javadoc: BackgroundSubtractorGMG::getSmoothingRadius()
  153. public int getSmoothingRadius() {
  154. ThrowIfDisposed();
  155. #if (UNITY_ANDROID && !UNITY_EDITOR)
  156. int retVal = bgsegm_BackgroundSubtractorGMG_getSmoothingRadius_10(nativeObj);
  157. return retVal;
  158. #else
  159. return -1;
  160. #endif
  161. }
  162. //
  163. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setBackgroundPrior(double bgprior)
  164. //
  165. //javadoc: BackgroundSubtractorGMG::setBackgroundPrior(bgprior)
  166. public void setBackgroundPrior(double bgprior) {
  167. ThrowIfDisposed();
  168. #if (UNITY_ANDROID && !UNITY_EDITOR)
  169. bgsegm_BackgroundSubtractorGMG_setBackgroundPrior_10(nativeObj, bgprior);
  170. return;
  171. #else
  172. return;
  173. #endif
  174. }
  175. //
  176. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setDecisionThreshold(double thresh)
  177. //
  178. //javadoc: BackgroundSubtractorGMG::setDecisionThreshold(thresh)
  179. public void setDecisionThreshold(double thresh) {
  180. ThrowIfDisposed();
  181. #if (UNITY_ANDROID && !UNITY_EDITOR)
  182. bgsegm_BackgroundSubtractorGMG_setDecisionThreshold_10(nativeObj, thresh);
  183. return;
  184. #else
  185. return;
  186. #endif
  187. }
  188. //
  189. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setDefaultLearningRate(double lr)
  190. //
  191. //javadoc: BackgroundSubtractorGMG::setDefaultLearningRate(lr)
  192. public void setDefaultLearningRate(double lr) {
  193. ThrowIfDisposed();
  194. #if (UNITY_ANDROID && !UNITY_EDITOR)
  195. bgsegm_BackgroundSubtractorGMG_setDefaultLearningRate_10(nativeObj, lr);
  196. return;
  197. #else
  198. return;
  199. #endif
  200. }
  201. //
  202. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setMaxFeatures(int maxFeatures)
  203. //
  204. //javadoc: BackgroundSubtractorGMG::setMaxFeatures(maxFeatures)
  205. public void setMaxFeatures(int maxFeatures) {
  206. ThrowIfDisposed();
  207. #if (UNITY_ANDROID && !UNITY_EDITOR)
  208. bgsegm_BackgroundSubtractorGMG_setMaxFeatures_10(nativeObj, maxFeatures);
  209. return;
  210. #else
  211. return;
  212. #endif
  213. }
  214. //
  215. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setMaxVal(double val)
  216. //
  217. //javadoc: BackgroundSubtractorGMG::setMaxVal(val)
  218. public void setMaxVal(double val) {
  219. ThrowIfDisposed();
  220. #if (UNITY_ANDROID && !UNITY_EDITOR)
  221. bgsegm_BackgroundSubtractorGMG_setMaxVal_10(nativeObj, val);
  222. return;
  223. #else
  224. return;
  225. #endif
  226. }
  227. //
  228. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setMinVal(double val)
  229. //
  230. //javadoc: BackgroundSubtractorGMG::setMinVal(val)
  231. public void setMinVal(double val) {
  232. ThrowIfDisposed();
  233. #if (UNITY_ANDROID && !UNITY_EDITOR)
  234. bgsegm_BackgroundSubtractorGMG_setMinVal_10(nativeObj, val);
  235. return;
  236. #else
  237. return;
  238. #endif
  239. }
  240. //
  241. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setNumFrames(int nframes)
  242. //
  243. //javadoc: BackgroundSubtractorGMG::setNumFrames(nframes)
  244. public void setNumFrames(int nframes) {
  245. ThrowIfDisposed();
  246. #if (UNITY_ANDROID && !UNITY_EDITOR)
  247. bgsegm_BackgroundSubtractorGMG_setNumFrames_10(nativeObj, nframes);
  248. return;
  249. #else
  250. return;
  251. #endif
  252. }
  253. //
  254. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setQuantizationLevels(int nlevels)
  255. //
  256. //javadoc: BackgroundSubtractorGMG::setQuantizationLevels(nlevels)
  257. public void setQuantizationLevels(int nlevels) {
  258. ThrowIfDisposed();
  259. #if (UNITY_ANDROID && !UNITY_EDITOR)
  260. bgsegm_BackgroundSubtractorGMG_setQuantizationLevels_10(nativeObj, nlevels);
  261. return;
  262. #else
  263. return;
  264. #endif
  265. }
  266. //
  267. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setSmoothingRadius(int radius)
  268. //
  269. //javadoc: BackgroundSubtractorGMG::setSmoothingRadius(radius)
  270. public void setSmoothingRadius(int radius) {
  271. ThrowIfDisposed();
  272. #if (UNITY_ANDROID && !UNITY_EDITOR)
  273. bgsegm_BackgroundSubtractorGMG_setSmoothingRadius_10(nativeObj, radius);
  274. return;
  275. #else
  276. return;
  277. #endif
  278. }
  279. //
  280. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setUpdateBackgroundModel(bool update)
  281. //
  282. //javadoc: BackgroundSubtractorGMG::setUpdateBackgroundModel(update)
  283. public void setUpdateBackgroundModel(bool update) {
  284. ThrowIfDisposed();
  285. #if (UNITY_ANDROID && !UNITY_EDITOR)
  286. bgsegm_BackgroundSubtractorGMG_setUpdateBackgroundModel_10(nativeObj, update);
  287. return;
  288. #else
  289. return;
  290. #endif
  291. }
  292. #if (UNITY_ANDROID && !UNITY_EDITOR)
  293. const string LIBNAME = "opencvforunity";
  294. // C++: bool cv::bgsegm::BackgroundSubtractorGMG::getUpdateBackgroundModel()
  295. [DllImport(LIBNAME)]
  296. private static extern bool bgsegm_BackgroundSubtractorGMG_getUpdateBackgroundModel_10(IntPtr nativeObj);
  297. // C++: double cv::bgsegm::BackgroundSubtractorGMG::getBackgroundPrior()
  298. [DllImport(LIBNAME)]
  299. private static extern double bgsegm_BackgroundSubtractorGMG_getBackgroundPrior_10(IntPtr nativeObj);
  300. // C++: double cv::bgsegm::BackgroundSubtractorGMG::getDecisionThreshold()
  301. [DllImport(LIBNAME)]
  302. private static extern double bgsegm_BackgroundSubtractorGMG_getDecisionThreshold_10(IntPtr nativeObj);
  303. // C++: double cv::bgsegm::BackgroundSubtractorGMG::getDefaultLearningRate()
  304. [DllImport(LIBNAME)]
  305. private static extern double bgsegm_BackgroundSubtractorGMG_getDefaultLearningRate_10(IntPtr nativeObj);
  306. // C++: double cv::bgsegm::BackgroundSubtractorGMG::getMaxVal()
  307. [DllImport(LIBNAME)]
  308. private static extern double bgsegm_BackgroundSubtractorGMG_getMaxVal_10(IntPtr nativeObj);
  309. // C++: double cv::bgsegm::BackgroundSubtractorGMG::getMinVal()
  310. [DllImport(LIBNAME)]
  311. private static extern double bgsegm_BackgroundSubtractorGMG_getMinVal_10(IntPtr nativeObj);
  312. // C++: int cv::bgsegm::BackgroundSubtractorGMG::getMaxFeatures()
  313. [DllImport(LIBNAME)]
  314. private static extern int bgsegm_BackgroundSubtractorGMG_getMaxFeatures_10(IntPtr nativeObj);
  315. // C++: int cv::bgsegm::BackgroundSubtractorGMG::getNumFrames()
  316. [DllImport(LIBNAME)]
  317. private static extern int bgsegm_BackgroundSubtractorGMG_getNumFrames_10(IntPtr nativeObj);
  318. // C++: int cv::bgsegm::BackgroundSubtractorGMG::getQuantizationLevels()
  319. [DllImport(LIBNAME)]
  320. private static extern int bgsegm_BackgroundSubtractorGMG_getQuantizationLevels_10(IntPtr nativeObj);
  321. // C++: int cv::bgsegm::BackgroundSubtractorGMG::getSmoothingRadius()
  322. [DllImport(LIBNAME)]
  323. private static extern int bgsegm_BackgroundSubtractorGMG_getSmoothingRadius_10(IntPtr nativeObj);
  324. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setBackgroundPrior(double bgprior)
  325. [DllImport(LIBNAME)]
  326. private static extern void bgsegm_BackgroundSubtractorGMG_setBackgroundPrior_10(IntPtr nativeObj, double bgprior);
  327. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setDecisionThreshold(double thresh)
  328. [DllImport(LIBNAME)]
  329. private static extern void bgsegm_BackgroundSubtractorGMG_setDecisionThreshold_10(IntPtr nativeObj, double thresh);
  330. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setDefaultLearningRate(double lr)
  331. [DllImport(LIBNAME)]
  332. private static extern void bgsegm_BackgroundSubtractorGMG_setDefaultLearningRate_10(IntPtr nativeObj, double lr);
  333. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setMaxFeatures(int maxFeatures)
  334. [DllImport(LIBNAME)]
  335. private static extern void bgsegm_BackgroundSubtractorGMG_setMaxFeatures_10(IntPtr nativeObj, int maxFeatures);
  336. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setMaxVal(double val)
  337. [DllImport(LIBNAME)]
  338. private static extern void bgsegm_BackgroundSubtractorGMG_setMaxVal_10(IntPtr nativeObj, double val);
  339. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setMinVal(double val)
  340. [DllImport(LIBNAME)]
  341. private static extern void bgsegm_BackgroundSubtractorGMG_setMinVal_10(IntPtr nativeObj, double val);
  342. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setNumFrames(int nframes)
  343. [DllImport(LIBNAME)]
  344. private static extern void bgsegm_BackgroundSubtractorGMG_setNumFrames_10(IntPtr nativeObj, int nframes);
  345. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setQuantizationLevels(int nlevels)
  346. [DllImport(LIBNAME)]
  347. private static extern void bgsegm_BackgroundSubtractorGMG_setQuantizationLevels_10(IntPtr nativeObj, int nlevels);
  348. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setSmoothingRadius(int radius)
  349. [DllImport(LIBNAME)]
  350. private static extern void bgsegm_BackgroundSubtractorGMG_setSmoothingRadius_10(IntPtr nativeObj, int radius);
  351. // C++: void cv::bgsegm::BackgroundSubtractorGMG::setUpdateBackgroundModel(bool update)
  352. [DllImport(LIBNAME)]
  353. private static extern void bgsegm_BackgroundSubtractorGMG_setUpdateBackgroundModel_10(IntPtr nativeObj, bool update);
  354. // native support for java finalize()
  355. [DllImport(LIBNAME)]
  356. private static extern void bgsegm_BackgroundSubtractorGMG_delete(IntPtr nativeObj);
  357. #endif
  358. }
  359. }