/// <summary> /// ランダムツリーモデルの学習 /// </summary> /// <param name="train_data"></param> /// <param name="tflag"></param> /// <param name="responses"></param> /// <param name="comp_idx"></param> /// <param name="sample_idx"></param> /// <param name="var_type"></param> /// <param name="missing_mask"></param> /// <param name="params"></param> /// <returns></returns> #else /// <summary> /// Trains Random Trees model /// </summary> /// <param name="trainData"></param> /// <param name="tflag"></param> /// <param name="responses"></param> /// <param name="compIdx"></param> /// <param name="sampleIdx"></param> /// <param name="varType"></param> /// <param name="missingMask"></param> /// <param name="params"></param> /// <returns></returns> #endif public virtual bool Train(CvMat trainData, DTreeDataLayout tflag, CvMat responses, CvMat compIdx, CvMat sampleIdx, CvMat varType, CvMat missingMask, CvRTParams @params) { if (trainData == null) throw new ArgumentNullException("trainData"); if (responses == null) throw new ArgumentNullException("responses"); if(@params == null) @params = new CvRTParams(); IntPtr compIdxPtr = (compIdx == null) ? IntPtr.Zero : compIdx.CvPtr; IntPtr sampleIdxPtr = (sampleIdx == null) ? IntPtr.Zero : sampleIdx.CvPtr; IntPtr varTypePtr = (varType == null) ? IntPtr.Zero : varType.CvPtr; IntPtr missingMaskPtr = (missingMask == null) ? IntPtr.Zero : missingMask.CvPtr; return MLInvoke.CvRTrees_train( ptr, trainData.CvPtr, (int)tflag, responses.CvPtr, compIdxPtr, sampleIdxPtr, varTypePtr, missingMaskPtr, @params.CvPtr ); }
/// <summary> /// /// </summary> /// <param name="data"></param> /// <param name="params"></param> /// <returns></returns> #else /// <summary> /// /// </summary> /// <param name="data"></param> /// <param name="params"></param> /// <returns></returns> #endif public bool Train(CvMLData data, CvRTParams @params) { if (data == null) throw new ArgumentNullException("data"); if (@params == null) @params = new CvRTParams(); return MLInvoke.CvERTrees_train2(ptr, data.CvPtr, @params.CvPtr); }