Comments (2)
Hello,
Our implementation is a modified version of the original model.
First, for identity_1
, we don't know the exact purpose of this branch. This architecture is for tracking, so we guess that this branch predicts if there is a person in the image. I also verified this assumption by running the pre-trained model with the following code:
import tensorflow as tf
import cv2
import numpy as np
model = tf.keras.models.load_model('saved_model_full_pose_landmark_39kp')
cap = cv2.VideoCapture(0)
while True:
_, origin = cap.read()
img = cv2.resize(origin, (256, 256))
img = img.astype(float)
img = (img - 127) / 255
img = np.array([img])
heatmap, classify, regress = model.predict(img)
confidence = np.reshape(classify, (1,))[0]
print(confidence)
For identity_2
, as explained here, they have 4 outputs for each keypoints:
x and y: Landmark coordinates normalized to [0.0, 1.0] by the image width and height respectively.
z: Should be discarded as currently the model is not fully trained to predict depth, but this is something on the roadmap.
visibility: A value in [0.0, 1.0] indicating the likelihood of the landmark being visible (present and not occluded) in the image.
That's why their output size is 4 * number_of_keypoints. In the pre-trained model we used to implement this repo, number_of_keypoints = 39, so we have 4 * 39 = 156 outputs. I removed z
dimension from keypoints, the shape of the output is 3 * number_of_keypoints.
Another difference between our model and the original model is that the heatmap output of our model has the shape of (128, 128, number_of_keypoints) while the original model only has the shape of (128, 128, 1). We are using output from heatmap for the keypoints. In the future, we will modify this design.
from tf-blazepose.
@vietanhdev Thanks for your reply, which address my issues well! The other thing I am confused about is why there are 39 keypoints but not 33 or 35 keypoints as mentioned by the paper? By looking into the code in Mediapipe, I found the keypoint 34-35 are auxiliary_landmarks for ROI generation and keypoint 36-39 are not used. I further visualize the locations of keypoint 36-39 and found they are the same with some keypoints on hands.
from tf-blazepose.
Related Issues (20)
- Reference of pushup dataset
- Output issue after training
- How to train with custom dataset?
- 你好,你们有blaze-pose的tflite版本的模型吗? HOT 3
- TypeError: len is not well defined for symbolic Tensors. (Shape_2:0)
- File "/home/sa/anaconda3/envs/py38/lib/python3.8/site-packages/tensorflow/python/keras/saving/hdf5_format.py", line 175, in load_model_from_hdf5 raise ValueError('No model found in config file.') ValueError: No model found in config file. HOT 1
- I am not able to run the split_lsp_lspet.py file
- convert to onnx fails
- evaluation on LSP
- request for pre-trained weights HOT 2
- ValueError: Layer count mismatch when loading weights from file. Model expected 14 layers, found 22 saved layers.
- Asking for config.py of lspet dataset. i want to run train.py on lspet dataset.
- About BBox
- Is it possible to run without CUDA?
- Training does not converge
- Inferencing queries
- mpii_annotations.json HOT 2
- ValueError when running "run_video.py"
- Push-up HOT 1
- How to define the heatmap size wrt to input image size ?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tf-blazepose.