-
Notifications
You must be signed in to change notification settings - Fork 23
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add frames in the CAD model that represent the positions of the iCub's sole taxels #98
Comments
If someone can take care of the cc @fjandrad |
If someone wants to produce the pptx, please check https://redmine.robotology.eu/s/D2WH329 for instructions on how to produce the pptx from the foot ini generators:
For the photos to annotate please ask to Marco Maggiali or Davide Gandini. |
We asked Marco Maggiali and he gave us the numbering of the feet soles skin patches. |
The CAD, simmechanics and generation files have been updated (thanks @fjandrad for the help!).
|
Sorry but I tried and I have some questions.
I had issues generating the URDF:
So I guess I am probably doing something wrong.
Are there any guidelines about this? I could not find much, could you give me some hints? @fiorisi @fjandrad @traversaro? |
The |
Ok I see, so I had to build icub-model-generator to get the new urdf files.
It did generate some urdf files, but I didn't see the soles skin anywhere.
|
Disable the |
I eventually succedeed in generating the taxels positions :D With these commands:
Plots generated by the script: I will prepare a pull request with the modifications and the generated txt files with taxels positions. |
As you may notice, there is an approximation that is currently used that is particularly bad for the taxels in the foot: currently the taxels that are outside the convex hull of the are approximated with the triangle center (see https://github.com/robotology/icub-model-generator/blob/master/simmechanics/scripts/generate_taxels_3d_positions.py#L215 for the code related to this). |
yes I was wondering why there are no taxels outside, this is actually pretty bad, considering that in the feet the taxels that are the most active are those on the boundaries. |
The pull request has been merged. The new models should be automatically commited to the icub-models repository soon. |
…sole are not links and the generated model would not take into account the new skin frames. See robotology#98 (comment)
@fiorisi I created a new null request to update the yaml.in file, otherwise with the current version the generated URDF would not take into account the new frames. |
For 2D patches probably it just make sense to get the 3D centers of the triangles from the URDF model and generate the rest of the taxel position by just adding the offset w.r.t. of each triangle, considering the orientation of the patch plane and the angle of the triangle, adapting to the new script the idea implemented by @prashanthr05 in https://github.com/robotology-playground/icub-taxel-positions/blob/master/cad_extraction/r_foot/foot_taxel.py#L135 . |
@traversaro consider that the orientation of the frame was defined as follows:
|
Sorry, with orientation I meant the 2D angle provided by the iCubSkinGui configuration file, not the orientation of the frame, i.e. the |
Can we close this issue? |
Did anyone tried this?
|
Not that I am aware of. |
I didn't try that. For me we can close this issue for the time being. |
I just realized that a super-easy way to achieve extrapolation is to use KD-Tree (or similar NN-friendly data structures) for finding the closest neighbors instead of Delanauy triangulation. Once you have the 3 (or 4 or more) 3D nearest neighbors, you can choose any interpolant surface (in a linear case, a plane) to approximate the surface and even extrapolate the data. One of the advantages of this is that the libraries for performing implementing KD-Tree or similar data structure are usually available in most programming languages, and are more common than libraries implementing delanauy triangulation (finding a suitable library was one of the problems for @joankangro ). |
Note that, for internal poitsn, nearest neighbors is equivalent to Delanauy triangulation only if the point you are interpolating from are sufficiently regular (otherwise you could have a lot of close points on "one side", and the point you want to interpolete could be outside the convex hull of the 3/4 nearest neighbors. |
Sorry for the late reply: I think the issue should not be closed, as the taxel position were generated, but they are not available in any repository, neither this one nor in https://github.com/robotology/icub-main/tree/master/app/skinGui/conf/positions . However, I will open a new issue for this for clarity. |
This would be useful for @hu-yue's experiments.
We had some preliminary data obtained in 2016 by @prashanthr05 available in https://github.com/robotology-playground/icub-taxel-positions , but it would be good if we could add the triangle centers frames in the CAD models to generate the taxel positions using the pipeline of this repo, described in https://redmine.robotology.eu/easy_knowledge_stories/57 . The sole are actually quite convenient for this process because the patch is completely flat and the triangles are already modeled at the CAD level.
cc @DanielePucci @fiorisi
The text was updated successfully, but these errors were encountered: