//Retest //No Header public static List <String> buildMatrixA_file(List <Instance> list_inst, List <m_Motion> list_motion) { List <String> matrix = new List <String>(); foreach (Instance inst in list_inst) { string matrix_data = inst.name + "," + inst.subject_id + "," + inst.motion_id; foreach (m_Motion motion in list_motion) { Boolean detected = false; detected = TheRuleTester.testDetectMotion(inst.getDataRaw(true), motion.inputs); matrix_data += "," + TheTool.convertBoolean_01(detected); } matrix.Add(matrix_data); } return(matrix);//TheTool.convert_List_toDataTable(matrix) }
//Motion Analysis on 1 File //All Data (Whole Sequence) - All Motion //Output: Matrix static public string motionAnalysis(String path_load, String path_save, List <m_Motion> list_motions) { string currentFileName = TheTool.getFileName_byPath(path_load); string matrix_data = currentFileName; List <UKI_DataRaw> list_raw = TheUKI.csv_loadFileTo_DataRaw(path_load, 0); List <logDetection> log_list = new List <logDetection>();//keep output summary //--- Preprocess to obtain BasePosture Data UKI_Offline mr = new UKI_Offline(); mr.UKI_OfflineProcessing(list_raw, 0); List <UKI_Data_AnalysisForm> data = TheUKI.getData_AnalysisForm(mr.data.data_raw, mr.data.data_bp); //--- Analysis Motion by Motion foreach (m_Motion motion in list_motions) { Boolean detected = TheRuleTester.testDetectMotion(data, motion.inputs); logDetection log = TheRuleTester.temp_log; // log.info = motion.name + " ( " + log.info + " )"; if (detected) { log.info = "[" + log.detectAt + "] " + log.info; } else { log.info = "[X] " + log.info; } log_list.Add(log); matrix_data += "," + TheTool.convertBoolean_01(detected); } //-------------------------------- TheSys.showError("File: " + currentFileName); foreach (logDetection s in log_list.OrderBy(o => o.detectAt).ThenBy(o => o.num_pose)) { TheSys.showError(s.info); } TheSys.showError("---------------------"); return(matrix_data); }
public static void saveSetting() { try { List <string> stringList = new List <string>() { }; stringList.Add("savepath:" + TheURL.url_saveFolder); stringList.Add("mute:" + TheTool.convertBoolean_01(userTracker.checkMute.IsChecked.Value)); //-------- stringList.Add("kAngle:" + Math.Round(userTracker.slideAngle.Value)); stringList.Add("kSeat:" + TheTool.convertBoolean_01(userTracker.checkSeat.IsChecked.Value)); stringList.Add("kClose:" + TheTool.convertBoolean_01(userTracker.checkClose.IsChecked.Value)); stringList.Add("kFace:" + TheTool.convertBoolean_01(userTracker.checkFace.IsChecked.Value)); stringList.Add("kFlip:" + TheTool.convertBoolean_01(userTracker.checkFlip.IsChecked.Value)); //-------- stringList.Add("kSmooth:" + TheTool.convertBoolean_01(userTracker.checkSmooth.IsChecked.Value)); stringList.Add("kSmooth_S:" + Math.Round(userTracker.slide_Smooth.Value, 1)); stringList.Add("kSmooth_P:" + Math.Round(userTracker.slide_Predict.Value, 1)); stringList.Add("kSmooth_C:" + Math.Round(userTracker.slide_Correct.Value, 1)); stringList.Add("kSmooth_J:" + Math.Round(userTracker.slide_Jitter.Value, 2)); stringList.Add("kSmooth_M:" + Math.Round(userTracker.slide_Davia.Value, 2)); //-------- stringList.Add("hideData:" + TheTool.convertBoolean_01(userTracker.checkHide.IsChecked.Value)); stringList.Add("hideDebug:" + TheTool.convertBoolean_01(userTracker.checkHideDebug.IsChecked.Value)); //-------- stringList.Add("view1:" + userTracker.comboV1.SelectedIndex); stringList.Add("view2:" + userTracker.comboV2.SelectedIndex); stringList.Add("view3:" + userTracker.comboV2.SelectedIndex); stringList.Add("view4:" + userTracker.comboV2.SelectedIndex); stringList.Add("view1_j:" + TheTool.convertBoolean_01(userTracker.checkVJoint1.IsChecked.Value)); stringList.Add("view1_b:" + TheTool.convertBoolean_01(userTracker.checkVBone1.IsChecked.Value)); stringList.Add("view1_e:" + TheTool.convertBoolean_01(userTracker.checkVEdge1.IsChecked.Value)); stringList.Add("view2_j:" + TheTool.convertBoolean_01(userTracker.checkVJoint2.IsChecked.Value)); stringList.Add("view2_b:" + TheTool.convertBoolean_01(userTracker.checkVBone2.IsChecked.Value)); stringList.Add("view2_e:" + TheTool.convertBoolean_01(userTracker.checkVEdge2.IsChecked.Value)); stringList.Add("view3_j:" + TheTool.convertBoolean_01(userTracker.checkVJoint3.IsChecked.Value)); stringList.Add("view3_b:" + TheTool.convertBoolean_01(userTracker.checkVBone3.IsChecked.Value)); stringList.Add("view3_e:" + TheTool.convertBoolean_01(userTracker.checkVEdge3.IsChecked.Value)); stringList.Add("view4_j:" + TheTool.convertBoolean_01(userTracker.checkVJoint4.IsChecked.Value)); stringList.Add("view4_b:" + TheTool.convertBoolean_01(userTracker.checkVBone4.IsChecked.Value)); stringList.Add("view4_e:" + TheTool.convertBoolean_01(userTracker.checkVEdge4.IsChecked.Value)); //-------- stringList.Add("stream:" + userTracker.comboStream.SelectedIndex); stringList.Add("follow:" + userTracker.comboFollow.SelectedIndex); stringList.Add("backup:" + userTracker.txtBackup.Text); stringList.Add("digit:" + userTracker.comboDecimal.SelectedIndex); // if (userTracker.form_Detector != null) { stringList.Add("d_onTop:" + TheTool.convertBoolean_01(userTracker.form_Detector.checkOnTop.IsChecked.Value)); stringList.Add("POS_monitor:" + TheTool.convertBoolean_01(userTracker.form_Detector.checkPOSmonitor.IsChecked.Value)); stringList.Add("speech_off:" + TheTool.convertBoolean_01(userTracker.form_Detector.checkSpeech.IsChecked.Value)); stringList.Add("alarm_off:" + TheTool.convertBoolean_01(userTracker.form_Detector.checkSound.IsChecked.Value)); stringList.Add("consensus:" + userTracker.form_Detector.txtFrameAgree.Text); stringList.Add("BPcooldown:" + userTracker.form_Detector.txtWait.Text); } TheTool.writeFile(stringList, TheURL.url_config, true); } catch { TheSys.showError("Error Save Setting"); } }