001// 002// This file is auto-generated. Please don't modify it! 003// 004package org.opencv.video; 005 006import org.opencv.core.Algorithm; 007import org.opencv.core.Mat; 008 009// C++: class DenseOpticalFlow 010/** 011 * Base class for dense optical flow algorithms 012 */ 013public class DenseOpticalFlow extends Algorithm { 014 015 protected DenseOpticalFlow(long addr) { super(addr); } 016 017 // internal usage only 018 public static DenseOpticalFlow __fromPtr__(long addr) { return new DenseOpticalFlow(addr); } 019 020 // 021 // C++: void cv::DenseOpticalFlow::calc(Mat I0, Mat I1, Mat& flow) 022 // 023 024 /** 025 * Calculates an optical flow. 026 * 027 * @param I0 first 8-bit single-channel input image. 028 * @param I1 second input image of the same size and the same type as prev. 029 * @param flow computed flow image that has the same size as prev and type CV_32FC2. 030 */ 031 public void calc(Mat I0, Mat I1, Mat flow) { 032 calc_0(nativeObj, I0.nativeObj, I1.nativeObj, flow.nativeObj); 033 } 034 035 036 // 037 // C++: void cv::DenseOpticalFlow::collectGarbage() 038 // 039 040 /** 041 * Releases all inner buffers. 042 */ 043 public void collectGarbage() { 044 collectGarbage_0(nativeObj); 045 } 046 047 048 @Override 049 protected void finalize() throws Throwable { 050 delete(nativeObj); 051 } 052 053 054 055 // C++: void cv::DenseOpticalFlow::calc(Mat I0, Mat I1, Mat& flow) 056 private static native void calc_0(long nativeObj, long I0_nativeObj, long I1_nativeObj, long flow_nativeObj); 057 058 // C++: void cv::DenseOpticalFlow::collectGarbage() 059 private static native void collectGarbage_0(long nativeObj); 060 061 // native support for java finalize() 062 private static native void delete(long nativeObj); 063 064}