001 002// 003// This file is auto-generated. Please don't modify it! 004// 005package org.opencv.ml; 006 007import java.util.ArrayList; 008import java.util.List; 009import org.opencv.core.Mat; 010import org.opencv.core.TermCriteria; 011import org.opencv.utils.Converters; 012 013// C++: class EM 014//javadoc: EM 015public class EM extends StatModel { 016 017 protected EM(long addr) { super(addr); } 018 019 020 public static final int 021 COV_MAT_SPHERICAL = 0, 022 COV_MAT_DIAGONAL = 1, 023 COV_MAT_GENERIC = 2, 024 COV_MAT_DEFAULT = COV_MAT_DIAGONAL, 025 DEFAULT_NCLUSTERS = 5, 026 DEFAULT_MAX_ITERS = 100, 027 START_E_STEP = 1, 028 START_M_STEP = 2, 029 START_AUTO_STEP = 0; 030 031 032 // 033 // C++: Mat getMeans() 034 // 035 036 //javadoc: EM::getMeans() 037 public Mat getMeans() 038 { 039 040 Mat retVal = new Mat(getMeans_0(nativeObj)); 041 042 return retVal; 043 } 044 045 046 // 047 // C++: Mat getWeights() 048 // 049 050 //javadoc: EM::getWeights() 051 public Mat getWeights() 052 { 053 054 Mat retVal = new Mat(getWeights_0(nativeObj)); 055 056 return retVal; 057 } 058 059 060 // 061 // C++: static Ptr_EM create() 062 // 063 064 //javadoc: EM::create() 065 public static EM create() 066 { 067 068 EM retVal = new EM(create_0()); 069 070 return retVal; 071 } 072 073 074 // 075 // C++: TermCriteria getTermCriteria() 076 // 077 078 //javadoc: EM::getTermCriteria() 079 public TermCriteria getTermCriteria() 080 { 081 082 TermCriteria retVal = new TermCriteria(getTermCriteria_0(nativeObj)); 083 084 return retVal; 085 } 086 087 088 // 089 // C++: Vec2d predict2(Mat sample, Mat& probs) 090 // 091 092 //javadoc: EM::predict2(sample, probs) 093 public double[] predict2(Mat sample, Mat probs) 094 { 095 096 double[] retVal = predict2_0(nativeObj, sample.nativeObj, probs.nativeObj); 097 098 return retVal; 099 } 100 101 102 // 103 // C++: bool trainE(Mat samples, Mat means0, Mat covs0 = Mat(), Mat weights0 = Mat(), Mat& logLikelihoods = Mat(), Mat& labels = Mat(), Mat& probs = Mat()) 104 // 105 106 //javadoc: EM::trainE(samples, means0, covs0, weights0, logLikelihoods, labels, probs) 107 public boolean trainE(Mat samples, Mat means0, Mat covs0, Mat weights0, Mat logLikelihoods, Mat labels, Mat probs) 108 { 109 110 boolean retVal = trainE_0(nativeObj, samples.nativeObj, means0.nativeObj, covs0.nativeObj, weights0.nativeObj, logLikelihoods.nativeObj, labels.nativeObj, probs.nativeObj); 111 112 return retVal; 113 } 114 115 //javadoc: EM::trainE(samples, means0) 116 public boolean trainE(Mat samples, Mat means0) 117 { 118 119 boolean retVal = trainE_1(nativeObj, samples.nativeObj, means0.nativeObj); 120 121 return retVal; 122 } 123 124 125 // 126 // C++: bool trainEM(Mat samples, Mat& logLikelihoods = Mat(), Mat& labels = Mat(), Mat& probs = Mat()) 127 // 128 129 //javadoc: EM::trainEM(samples, logLikelihoods, labels, probs) 130 public boolean trainEM(Mat samples, Mat logLikelihoods, Mat labels, Mat probs) 131 { 132 133 boolean retVal = trainEM_0(nativeObj, samples.nativeObj, logLikelihoods.nativeObj, labels.nativeObj, probs.nativeObj); 134 135 return retVal; 136 } 137 138 //javadoc: EM::trainEM(samples) 139 public boolean trainEM(Mat samples) 140 { 141 142 boolean retVal = trainEM_1(nativeObj, samples.nativeObj); 143 144 return retVal; 145 } 146 147 148 // 149 // C++: bool trainM(Mat samples, Mat probs0, Mat& logLikelihoods = Mat(), Mat& labels = Mat(), Mat& probs = Mat()) 150 // 151 152 //javadoc: EM::trainM(samples, probs0, logLikelihoods, labels, probs) 153 public boolean trainM(Mat samples, Mat probs0, Mat logLikelihoods, Mat labels, Mat probs) 154 { 155 156 boolean retVal = trainM_0(nativeObj, samples.nativeObj, probs0.nativeObj, logLikelihoods.nativeObj, labels.nativeObj, probs.nativeObj); 157 158 return retVal; 159 } 160 161 //javadoc: EM::trainM(samples, probs0) 162 public boolean trainM(Mat samples, Mat probs0) 163 { 164 165 boolean retVal = trainM_1(nativeObj, samples.nativeObj, probs0.nativeObj); 166 167 return retVal; 168 } 169 170 171 // 172 // C++: int getClustersNumber() 173 // 174 175 //javadoc: EM::getClustersNumber() 176 public int getClustersNumber() 177 { 178 179 int retVal = getClustersNumber_0(nativeObj); 180 181 return retVal; 182 } 183 184 185 // 186 // C++: int getCovarianceMatrixType() 187 // 188 189 //javadoc: EM::getCovarianceMatrixType() 190 public int getCovarianceMatrixType() 191 { 192 193 int retVal = getCovarianceMatrixType_0(nativeObj); 194 195 return retVal; 196 } 197 198 199 // 200 // C++: void getCovs(vector_Mat& covs) 201 // 202 203 //javadoc: EM::getCovs(covs) 204 public void getCovs(List<Mat> covs) 205 { 206 Mat covs_mat = new Mat(); 207 getCovs_0(nativeObj, covs_mat.nativeObj); 208 Converters.Mat_to_vector_Mat(covs_mat, covs); 209 covs_mat.release(); 210 return; 211 } 212 213 214 // 215 // C++: void setClustersNumber(int val) 216 // 217 218 //javadoc: EM::setClustersNumber(val) 219 public void setClustersNumber(int val) 220 { 221 222 setClustersNumber_0(nativeObj, val); 223 224 return; 225 } 226 227 228 // 229 // C++: void setCovarianceMatrixType(int val) 230 // 231 232 //javadoc: EM::setCovarianceMatrixType(val) 233 public void setCovarianceMatrixType(int val) 234 { 235 236 setCovarianceMatrixType_0(nativeObj, val); 237 238 return; 239 } 240 241 242 // 243 // C++: void setTermCriteria(TermCriteria val) 244 // 245 246 //javadoc: EM::setTermCriteria(val) 247 public void setTermCriteria(TermCriteria val) 248 { 249 250 setTermCriteria_0(nativeObj, val.type, val.maxCount, val.epsilon); 251 252 return; 253 } 254 255 256 @Override 257 protected void finalize() throws Throwable { 258 delete(nativeObj); 259 } 260 261 262 263 // C++: Mat getMeans() 264 private static native long getMeans_0(long nativeObj); 265 266 // C++: Mat getWeights() 267 private static native long getWeights_0(long nativeObj); 268 269 // C++: static Ptr_EM create() 270 private static native long create_0(); 271 272 // C++: TermCriteria getTermCriteria() 273 private static native double[] getTermCriteria_0(long nativeObj); 274 275 // C++: Vec2d predict2(Mat sample, Mat& probs) 276 private static native double[] predict2_0(long nativeObj, long sample_nativeObj, long probs_nativeObj); 277 278 // C++: bool trainE(Mat samples, Mat means0, Mat covs0 = Mat(), Mat weights0 = Mat(), Mat& logLikelihoods = Mat(), Mat& labels = Mat(), Mat& probs = Mat()) 279 private static native boolean trainE_0(long nativeObj, long samples_nativeObj, long means0_nativeObj, long covs0_nativeObj, long weights0_nativeObj, long logLikelihoods_nativeObj, long labels_nativeObj, long probs_nativeObj); 280 private static native boolean trainE_1(long nativeObj, long samples_nativeObj, long means0_nativeObj); 281 282 // C++: bool trainEM(Mat samples, Mat& logLikelihoods = Mat(), Mat& labels = Mat(), Mat& probs = Mat()) 283 private static native boolean trainEM_0(long nativeObj, long samples_nativeObj, long logLikelihoods_nativeObj, long labels_nativeObj, long probs_nativeObj); 284 private static native boolean trainEM_1(long nativeObj, long samples_nativeObj); 285 286 // C++: bool trainM(Mat samples, Mat probs0, Mat& logLikelihoods = Mat(), Mat& labels = Mat(), Mat& probs = Mat()) 287 private static native boolean trainM_0(long nativeObj, long samples_nativeObj, long probs0_nativeObj, long logLikelihoods_nativeObj, long labels_nativeObj, long probs_nativeObj); 288 private static native boolean trainM_1(long nativeObj, long samples_nativeObj, long probs0_nativeObj); 289 290 // C++: int getClustersNumber() 291 private static native int getClustersNumber_0(long nativeObj); 292 293 // C++: int getCovarianceMatrixType() 294 private static native int getCovarianceMatrixType_0(long nativeObj); 295 296 // C++: void getCovs(vector_Mat& covs) 297 private static native void getCovs_0(long nativeObj, long covs_mat_nativeObj); 298 299 // C++: void setClustersNumber(int val) 300 private static native void setClustersNumber_0(long nativeObj, int val); 301 302 // C++: void setCovarianceMatrixType(int val) 303 private static native void setCovarianceMatrixType_0(long nativeObj, int val); 304 305 // C++: void setTermCriteria(TermCriteria val) 306 private static native void setTermCriteria_0(long nativeObj, int val_type, int val_maxCount, double val_epsilon); 307 308 // native support for java finalize() 309 private static native void delete(long nativeObj); 310 311}