Skip to content

Commit cc6f534

Browse files
committed
finalizing webpage for blazepose video
1 parent 319c10d commit cc6f534

File tree

4 files changed

+53
-29
lines changed

4 files changed

+53
-29
lines changed
30.9 KB
Loading
12.9 KB
Loading
Binary file not shown.
Lines changed: 53 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,36 @@
11
{
22
"title": "3D Pose Estimation with ml5.js",
3-
"description": "In this video, I substitute the MoveNet model with the BlazePose model, showing how to track #D body keypoints and visualize 'skeleton' connections using recorded video.",
4-
"videoId": "",
5-
"nebulaSlug": "",
6-
"date": "2024-12-1",
3+
"description": "Building on BodyPose in ml5.js, this video explores the 3D capabilities of the BlazePose model, visualizing poses in a 3D space using WEBGL in p5.js.",
4+
"videoId": "IF414I26_K8",
5+
"nebulaSlug": "codingtrain-3d-pose-estimation-with-ml5js",
6+
"date": "2024-12-01",
77
"languages": ["ml5.js", "JavaScript"],
88
"topics": ["machine learning (ML)", "webcam", "pose detection", "ml5.js", "MoveNet", "BlazePose"],
99
"canContribute": true,
1010
"timestamps": [
1111
{ "time": "0:00", "title": "Introduction" },
12-
{ "time": "2:00", "title": "Change to the BlazePose model" },
13-
{ "time": "2:37", "title": "x, y, z values are real world measurements" },
14-
{ "time": "4:30", "title": "Replace live camera feed with recorded video" },
15-
{ "time": "5:49", "title": "Render using p5 WEBGL renderer" },
16-
{ "time": "7:48", "title": "Use scale() to expand range of x, y, z values" },
17-
{ "time": "9:00", "title": "Add floor" },
18-
{ "time": "9:58", "title": "Rotate scene" },
19-
{ "time": "11:24", "title": "Use orbitControl() to rotate scene" },
20-
{ "time": "12:22", "title": "Translate to point" },
21-
{ "time": "13:42", "title": "Outro" }
12+
{ "time": "2:00", "title": "Incorporating BlazePose model" },
13+
{ "time": "2:37", "title": "What are the xyz values?" },
14+
{ "time": "4:30", "title": "Replace live camera with recorded video." },
15+
{ "time": "5:49", "title": "Render with p5.js WEBGL" },
16+
{ "time": "7:48", "title": "Use scale() to expand range of xyz values" },
17+
{ "time": "9:00", "title": "Creating 3D scene" },
18+
{ "time": "9:58", "title": "Rotating scene." },
19+
{ "time": "11:24", "title": "Using orbitControl()" },
20+
{ "time": "12:22", "title": "Using 3D shapes" },
21+
{ "time": "13:42", "title": "Goodbye!" }
2222
],
2323
"codeExamples": [
24+
{
25+
"title": "BlazePose 3D",
26+
"description": "Sketch demonstrating use of BlazePose model with 3D keypoints.",
27+
"image": "blazepose.png",
28+
"urls": { "p5": "https://editor.p5js.org/codingtrain/sketches/ftALPDieT" }
29+
},
2430
{
2531
"title": "BlazePose Lerp",
26-
"description": "Sketch demonstrating use of BlazePose model with lerp smoothing.",
27-
"image": "image.jpg",
32+
"description": "Sketch demonstrating linear interpolation of 3D keypoints.",
33+
"image": "blazepose_lerp.png",
2834
"urls": { "p5": "https://editor.p5js.org/codingtrain/sketches/JMhDRpcxi_" }
2935
}
3036
],
@@ -34,38 +40,56 @@
3440
"links": [
3541
{
3642
"icon": "πŸ’»",
37-
"title": "ml5.js",
38-
"url": "https://ml5js.org/",
39-
"description": "ml5 page with documentation and supporting material."
43+
"title": "ml5.js: BodyPose",
44+
"url": "https://docs.ml5js.org/#/reference/bodypose",
45+
"description": "ml5.js documentation on BodyPose models."
46+
},
47+
{
48+
"icon": "πŸ“„",
49+
"title": "On-device, Real-time Body Pose Tracking with MediaPipe BlazePose",
50+
"url": "https://research.google/blog/on-device-real-time-body-pose-tracking-with-mediapipe-blazepose/",
51+
"description": "Google Research blog post on the BlazePose model."
52+
},
53+
{
54+
"icon": "πŸ“„",
55+
"title": "3D Pose Detection with MediaPipe BlazePose GHUM and TensorFlow.js",
56+
"url": "https://blog.tensorflow.org/2021/08/3d-pose-detection-with-mediapipe-blazepose-ghum-tfjs.html",
57+
"description": "TensorFlow blog post on the BlazePose GHUM model."
4058
},
4159
{
4260
"icon": "πŸ“„",
43-
"title": "BlazePose Paper",
44-
"url": "https://arxiv.org/pdf/2006.10204",
45-
"description": "On-device Real-time Body Pose tracking."
61+
"title": "BlazePose GHUM Holistic:",
62+
"url": "https://arxiv.org/pdf/2206.11678",
63+
"description": "Research paper covering real-time 3D human landmarks and pose estimation."
4664
}
4765
]
4866
},
4967
{
5068
"title": "Videos",
5169
"links": [
70+
{
71+
"icon": "πŸš‚",
72+
"title": "ml5.js Pose Estimation",
73+
"url": "/tracks/ml5js-beginners-guide/ml5/7-bodypose/pose-detection",
74+
"description": "Previous video covering BodyPose in ml5.js focusing on the MoveNet model."
75+
},
5276
{
5377
"icon": "πŸš‚",
5478
"title": "Custom Shapes",
5579
"url": "/tracks/p5-tips-and-tricks/more-p5/custom-shapes",
5680
"description": "In this video, I look at how to draw \"custom\" shapes in p5.js, using, `beginShape()`, `endShape()`, `vertex()` and `curveVertex()."
5781
},
58-
{
59-
"icon": "πŸš‚",
60-
"title": "Translate, Rotate, Push/Pop",
61-
"url": "/tracks/transformations-in-p5/transformations/translate-rotate-push-pop",
62-
"description": "In this video I cover the functions translate(), rotate(), push() and pop()."
63-
}
82+
{
83+
"icon": "πŸš‚",
84+
"title": "Translate, Rotate, Push/Pop",
85+
"url": "/tracks/transformations-in-p5/transformations/translate-rotate-push-pop",
86+
"description": "In this video I cover the functions translate(), rotate(), push() and pop()."
87+
}
6488
]
6589
}
6690
],
6791
"credits": [
6892
{ "title": "Editing", "name": "Mathieu Blanchette" },
6993
{ "title": "Animations", "name": "Jason Heglund" }
7094
]
71-
}
95+
}

0 commit comments

Comments
Β (0)