Comments (8)
Hi @mks0601 ,
The docom=True calculates the center-of-mass of the hand which is then used for the crop. For the results reported in the paper, I used the center-of-mass for testing as well. You can set docom=False to use the ground truth location, but of course this is not very realistic.
from deep-prior.
However, as in the 319 and 320 line of src/util/handdetector.py,
com[0] += xstart
com[1] += ystart
com is calculated using xstart and ystart which are calculated from the groundtruth joint position(gtorig[0]) as line 305 of src/util/handdetector.py,
xstart, xend, ystart, yend, zstart, zend = self.comToBounds(com, size)
In summary,
- You use GT joint position(gtorig[0]) to calculate xstart and ystart (In this code, you used gtorig[0] as center-of-mass)
- And the calculated xstart and ystart are used to calculate a new center-of-mass
So, you used GT joint position to calculate the new center-of-mass even in test stage. Is that right?
from deep-prior.
Hi @mks0601 ,
Yes, as you described. The reason to do this is: (1) it is much faster than running the full detection pipeline, (2) it is equivalent to running the detection pipeline and iterating the com several times.
from deep-prior.
Thank you for your answer. I have a one more question. Can you explain me why did you add xstart and ystart to the com[0] and com[1] respectively (line 319, 320 of src/util/handdetector.py)?
com[0] += xstart
com[1] += ystart
from deep-prior.
Hi @mks0601 ,
The two lines are required, since the com is calculated from the cropped image (com is in image coordinates + depth), and the com is projected back to the full depth image using this offset.
from deep-prior.
Thank you for your answer! It would be a fair comparison if someone just use gt joint position as CoM?
from deep-prior.
+I have an another question
If i follow your pre-processing, some joints are not included in some frames of depth map because of cropping. I think the reason is some noisy pixels which result in biased CoM. Did you notice this situation? How did you handle this situation?
from deep-prior.
Hi @mks0601
Yes I noticed, this can happen, esp with an inaccurate detection. One way is to adjust the crop cube in the importer.py: config = {'cube':(250,250,250)}
and make it larger. Or you use the refinement of the CoM. In my experience it is not crucial, if it only effects some frames.
from deep-prior.
Related Issues (20)
- Input and output size of the CNN layers HOT 1
- Some questions about refinement using ICVL dataset. HOT 15
- Loading depth map of ICVL data HOT 3
- test_1 and test_2 in NYU dataset HOT 14
- data augmentation HOT 1
- How to get the xyz coordinates HOT 1
- Hi i have a question about data pre-processing HOT 1
- Hi, I have a question when using tensorflow HOT 10
- i cant find a package HOT 1
- problem with roslaunch HOT 2
- problem when i run a node
- problem with run the code HOT 3
- IOError: [Errno 2] No such file or directory: './NYU_network_prior.pkl' HOT 3
- use the camera HOT 5
- use kinect
- the refinement of ORRef HOT 1
- the result in the test phase (main_nyu_posereg_embedding) HOT 11
- Low dimensional embedding
- Confusion in the use of poseNet in real time HOT 5
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 deep-prior.