예제 #1
0
        public void Execute()
        {
            // KMR モジュールで全ファイル分のList<Keypoint>(平滑化済み)を取ってくる(今はまだ1フレーム分)
            var opr = new OpenPoseReader(@"C:\tmp\");

            _keypointsCollection.Add(1, opr.ReadOneFile("Sample_000000000213_keypoints.json"));

            // foreachで1つずつSZKモジュールで処理
            var dolls = new Dictionary <int, Doll>();

            foreach (var keypoints in _keypointsCollection)
            {
                var estimator = new PoseEstimator();
                dolls.Add(keypoints.Key, estimator.EstimateSingleFrame(1920, 1080, keypoints.Value));
            }

            var vmd = new Vmd("Sample", dolls);
            var vw  = new VmdWriter(@"C:\tmp\Sample_000000000213_keypoints.vmd");

            vw.Write(vmd);

            // ※必要な入力引数
            // OpenPoseディレクトリ(平面座標取得から一貫して行うなら)
            // OpenPose出力先ディレクトリ
            // Vmd出力ファイルパス
        }
예제 #2
0
파일: Program.cs 프로젝트: Nankk/Beastrack
        static void Main(string[] args)
        {
#if DEBUG
            string dir = @"C:\tmp\";
#else
#endif
            var opr       = new OpenPoseReader(dir);
            var keypoints = opr.ReadOneFile("Sample_000000000132_keypoints.json");
            Console.WriteLine($"Keypoints:");
            int count = 0;
            foreach (var kp in keypoints)
            {
                Console.WriteLine($"Point {count++, 10}: ({kp.X}, {kp.Y}, {kp.Reliability})");
            }
            Console.ReadKey(true);
        }