Hi all, I’m self-taught in Python for my university honours project and its been one hell of a journey. Simply put I’m designing a 3D scanner-printer hybrid to aid in the creation of prosthetic limbs. So long story short I’m running the system on an RPi and you can find more information here, if you want to help: https://github.com/AcrimoniousMirth/Project-Adam-3D-SCANNER-CODE <https://github.com/AcrimoniousMirth/Project-Adam-3D-SCANNER-CODE> So, in essence I have an array of form [[x1 y1 z1] [x2 y2 z2]… [xn yn zn]] and I need to turn it into an STL mesh. A forum member pointed me in the direction of scipy’s Delauney triangulation. Now, the values were appended into the array such that each group (of unknown size) will have the same z value and the next will have the closest z value to that. Due to how it was generated (with OpenCv) I can’t be entirely sure but I believe each group with the same z value was written in the same order and so the first of z1 should be close to the first of z2. Your help is greatly appreciated as this is very new territory to me and I’m not sure where to start. This is the final hurdle in the way of me graduating with a pretty good accreditation and two charities are interested in the idea so it’d be a blessing to get it working! Many thanks, Sam
On Fri, Mar 2, 2018 at 12:46 PM, Samuel Maybury <samuel_maybury@me.com> wrote:
Hi all, I’m self-taught in Python for my university honours project and its been
one hell of a journey. Simply put I’m designing a 3D scanner-printer hybrid to aid in the creation of prosthetic limbs. So long story short I’m running the system on an RPi and you can find more information here, if you want to help: https://github.com/AcrimoniousMirth/Project-Adam-3D-SCANNER-CODE
So, in essence I have an array of form [[x1 y1 z1] [x2 y2 z2]… [xn yn
Now, the values were appended into the array such that each group (of unknown size) will have the same z value and the next will have the closest z value to that. Due to how it was generated (with OpenCv) I can’t be entirely sure but I believe each group with the same z value was written in
zn]] and I need to turn it into an STL mesh. A forum member pointed me in the direction of scipy’s Delauney triangulation. the same order and so the first of z1 should be close to the first of z2.
Your help is greatly appreciated as this is very new territory to me and
I’m not sure where to start. This is the final hurdle in the way of me graduating with a pretty good accreditation and two charities are interested in the idea so it’d be a blessing to get it working! A Delaunay triangulation does not get you very far. We don't have much in scipy for doing mesh reconstruction from point clouds. Typically, you want to do this in an interactive environment so you can tweak parameters. Consider using MeshLab for this purpose: http://www.meshlab.net/ -- Robert Kern
Hi Robert, Thanks for your reply! I’ll take a look. The shapes that would be scanned are very simple: cylindrical with rounded end and no holes. Wouldn’t the triangulation be able to handle the tessellation of that? Many thanks, Sam Sent from my iPad
On 2 Mar 2018, at 10:38 pm, Robert Kern <robert.kern@gmail.com> wrote:
On Fri, Mar 2, 2018 at 12:46 PM, Samuel Maybury <samuel_maybury@me.com> wrote:
Hi all, I’m self-taught in Python for my university honours project and its been one hell of a journey. Simply put I’m designing a 3D scanner-printer hybrid to aid in the creation of prosthetic limbs. So long story short I’m running the system on an RPi and you can find more information here, if you want to help: https://github.com/AcrimoniousMirth/Project-Adam-3D-SCANNER-CODE
So, in essence I have an array of form [[x1 y1 z1] [x2 y2 z2]… [xn yn zn]] and I need to turn it into an STL mesh. A forum member pointed me in the direction of scipy’s Delauney triangulation. Now, the values were appended into the array such that each group (of unknown size) will have the same z value and the next will have the closest z value to that. Due to how it was generated (with OpenCv) I can’t be entirely sure but I believe each group with the same z value was written in the same order and so the first of z1 should be close to the first of z2.
Your help is greatly appreciated as this is very new territory to me and I’m not sure where to start. This is the final hurdle in the way of me graduating with a pretty good accreditation and two charities are interested in the idea so it’d be a blessing to get it working!
A Delaunay triangulation does not get you very far. We don't have much in scipy for doing mesh reconstruction from point clouds. Typically, you want to do this in an interactive environment so you can tweak parameters. Consider using MeshLab for this purpose:
-- Robert Kern _______________________________________________ SciPy-User mailing list SciPy-User@python.org https://mail.python.org/mailman/listinfo/scipy-user
On 3/3/18 2:16 AM, Samuel Maybury wrote:
Hi all, I’m self-taught in Python for my university honours project and its been one hell of a journey. Simply put I’m designing a 3D scanner-printer hybrid to aid in the creation of prosthetic limbs. So long story short I’m running the system on an RPi and you can find more information here, if you want to help: https://github.com/AcrimoniousMirth/Project-Adam-3D-SCANNER-CODE
So, in essence I have an array of form*[[x1 y1 z1] [x2 y2 z2]… [xn yn zn]] *and I need to turn it into an STL mesh. A forum member pointed me in the direction of scipy’s Delauney triangulation. Now, the values were appended into the array such that each group (of unknown size) will have the same *z *value and the next will have the closest *z *value to that. Due to how it was generated (with OpenCv) I can’t be entirely sure but I believe each group with the same z value was written in the same order and so the first of *z1* should be close to the first of *z2.* * * Your help is greatly appreciated as this is very new territory to me and I’m not sure where to start. This is the final hurdle in the way of me graduating with a pretty good accreditation and two charities are interested in the idea so it’d be a blessing to get it working! This isn't going to do the triangulation but is handy to manipulate STL files from Python:
https://github.com/WoLpH/numpy-stl cheers, Prabhu
Hi Prabhu, Yes, I looked at numpy-STL first, it was actually the creator, Rick Van Hattem, who suggested I look at Delaunay :)
On 3 Mar 2018, at 4:08 am, Prabhu Ramachandran <prahu@aero.iitb.ac.in> wrote:
On 3/3/18 2:16 AM, Samuel Maybury wrote: Hi all, I’m self-taught in Python for my university honours project and its been one hell of a journey. Simply put I’m designing a 3D scanner-printer hybrid to aid in the creation of prosthetic limbs. So long story short I’m running the system on an RPi and you can find more information here, if you want to help: https://github.com/AcrimoniousMirth/Project-Adam-3D-SCANNER-CODEhttps://gith...
So, in essence I have an array of form [[x1 y1 z1] [x2 y2 z2]… [xn yn zn]] and I need to turn it into an STL mesh. A forum member pointed me in the direction of scipy’s Delauney triangulation. Now, the values were appended into the array such that each group (of unknown size) will have the same z value and the next will have the closest z value to that. Due to how it was generated (with OpenCv) I can’t be entirely sure but I believe each group with the same z value was written in the same order and so the first of z1 should be close to the first of z2.
Your help is greatly appreciated as this is very new territory to me and I’m not sure where to start. This is the final hurdle in the way of me graduating with a pretty good accreditation and two charities are interested in the idea so it’d be a blessing to get it working! This isn't going to do the triangulation but is handy to manipulate STL files from Python:
https://github.com/WoLpH/numpy-stl
cheers, Prabhu _______________________________________________ SciPy-User mailing list SciPy-User@python.org https://mail.python.org/mailman/listinfo/scipy-user
participants (3)
-
Prabhu Ramachandran -
Robert Kern -
Samuel Maybury