Search Comments and Ratings

go

Comments and Ratings

   
Date File Comment by Comment Rating
14 Nov 2009 SURFACE RECONSTRUCTION FROM SCATTERED POINTS CLOUD PART1 Builds a triangulated surface given a 3D points cloud. They don't need to be in the z=f(x,y) form. Author: Luigi Giaccari puri, ucd

Hi, thanks for all your postings, they are fantastic. I read on your blog that using this function, the volume of the triangulated surface. Question 1) How do you do that.
I have another question with volume visualization.
i have a volume similar to as shown in this link.
http://www.mathworks.se/products/matlab/demos.html?file=/products/demos/shipping/matlab/transpdemo.html

When i using the alpha a value to 0.3 to visualise the inner structure similar to that in the above link . Now I want to calculate the surface area of that inner structure ONLY.Question 2) Is that possible, and how do i go about finding it.

I would be very thankful if you could please provide some guidance. I have tried to ask many people and posted this questions at many places but i never received any answer. Kindly help please.

10 Nov 2009 HOW TO PLOT A COLOURED SURFACE FROM 3D SCATTER Simple script that shows how to plot surfaces in the z=f(x,y) form with rgb values at each point. Author: Luigi Giaccari Chao, aivers

03 Nov 2009 FAST K-NEAREST NEIGHBORS SEARCH Simple but very fast algorithm for nearest neighbors search. Supports KNN and radius search. Author: Luigi Giaccari Giaccari, Luigi

Thank you it will fixed in the next release.
Please report comments on :
http://www.advancedmcode.org/
I don't check my FEX profile very often.

Thank you again

 Luigi

21 Oct 2009 FAST K-NEAREST NEIGHBORS SEARCH Simple but very fast algorithm for nearest neighbors search. Supports KNN and radius search. Author: Luigi Giaccari Andrew

When I run mex DeleteGLTree.cpp on version R2009a with Mac OS 10.6 (Snow Leopard), I get the following message:

Undefined symbols:
  "_mexFunction", referenced from:
     -exported_symbols_list command line option
ld: symbol(s) not found
collect2: ld returned 1 exit status

    mex: link of ' "DeleteGLTree.mexmaci"' failed.

This turns out to be a problem with the declaration of mexFunction. For the solution, see
http://www.mathworks.co.kr/matlabcentral/newsreader/view_thread/173095

15 Sep 2009 POKER PREDICTOR A Texas Holdem Poker Probability and Odds calculator. Fast, accurate and free. Author: Luigi Giaccari Andrzej

03 Sep 2009 SURFACE RECONSTRUCTION FROM SCATTERED POINTS CLOUD PART2 Builds a triangulated surface given a 3D points cloud. They do not need to be in the z=f(x,y) form. Author: Luigi Giaccari Giaccari, Luigi

Send the data on my e-mail I need to see them.

03 Sep 2009 SURFACE RECONSTRUCTION FROM SCATTERED POINTS CLOUD PART2 Builds a triangulated surface given a 3D points cloud. They do not need to be in the z=f(x,y) form. Author: Luigi Giaccari Linuc, Rehat

hi. I m trying to use this tool, it works ok with your data. I have some other cloud data that are on Pareto front of an optimization tool. I need to plot it correctly as thay are part of a surface (Pareto front) but i ken not. Any help?

24 Aug 2009 VOLUME ENCLOSED BY A TRIANGULATED SURFACE Computes the volume enclosed by a triangualted surface with outwards traignle orientation. Author: Luigi Giaccari Bizkevelci, Erdal

24 Aug 2009 SURFACE PARAMETRIZER Returns a 2D parametrization from a 3D triangulated surface Author: Luigi Giaccari Bizkevelci, Erdal

13 Aug 2009 VOLUME ENCLOSED BY A TRIANGULATED SURFACE Computes the volume enclosed by a triangualted surface with outwards traignle orientation. Author: Luigi Giaccari creek

Useful fantastic work.

11 Aug 2009 FAST K-NEAREST NEIGHBOURS SEARCH 3D VERSION The 3d version of GLTREE Author: Luigi Giaccari Vie, Syl

09 Aug 2009 K-NEAREST NEIGHBOURS AND RADIUS (RANGE) SEARCH A Mex implementation of the brute search algorithm. Supports KNN and Radius Search. Author: Luigi Giaccari Clark, Thomas

Thanks Luigi, cool function - very useful for me!

05 Aug 2009 Geodetic_Dome Show deflection of the geodetic dome under its own weigth Author: Luigi Giaccari Giaccari, Luigi

<h2><script type="text/javascript"></script><a href="http://www.gigasize.com/affiliates/?s=308&amp;a=902"&gt;&lt;img class="aligncenter" style="border:none;" src="http://gigasize.connexplace.com/en/tracking/display_content?a=902&amp;c=37&amp;s=308" alt="Gigasize : Gigasize Banner" width="468" height="60" /> </a></h2>

29 Jul 2009 FAST K-NEAREST NEIGHBOURS SEARCH 3D VERSION The 3d version of GLTREE Author: Luigi Giaccari Giaccari, Luigi

You are right, the bug is generated only when the user choose to return distances. This is why I didn't realize before.

Thank you very much

29 Jul 2009 FAST K-NEAREST NEIGHBOURS SEARCH 3D VERSION The 3d version of GLTREE Author: Luigi Giaccari Korsawe, Johannes

Hi again,

i have found the erroneous line in KNNSearch.cpp:

instead of
                    pk.x=qp[i];pk.y=qp[i+N];pk.z=qp[i+N+N];
one has to use
                    pk.x=qp[i];pk.y=qp[i+Nq];pk.z=qp[i+Nq+Nq];

Now it's perfectly running. Very well done.

Best regards,
Johannes

29 Jul 2009 FAST K-NEAREST NEIGHBOURS SEARCH 3D VERSION The 3d version of GLTREE Author: Luigi Giaccari Korsawe, Johannes

Hi Luigi,

i really appreciate your tough work already for the 2d version.

However, there is some bug in your code that results in wrong results whenever the number of query points q does not match the number of data points p. If one adds a number of zeros to make the point numbers match, the code runs correct.

Are you able to fix this?

Best regards,
Johannes

20 Jul 2009 SURFACE RECONSTRUCTION FROM SCATTERED POINTS CLOUD PART2 Builds a triangulated surface given a 3D points cloud. They do not need to be in the z=f(x,y) form. Author: Luigi Giaccari Nathan, Roger

Excellent software. Great to use something that works immediately and gives the correct solution for my problem. Saved me an age of fiddling about with repairs to my previous attempts at triangulation of complex shapes.

17 Jul 2009 POKER PREDICTOR A Texas Holdem Poker Probability and Odds calculator. Fast, accurate and free. Author: Luigi Giaccari Karthik Mahadevan

16 Jul 2009 POKER PREDICTOR A Texas Holdem Poker Probability and Odds calculator. Fast, accurate and free. Author: Luigi Giaccari Rubio Martín, Óscar J.

10 Jul 2009 SURFACE RECONSTRUCTION FROM SCATTERED POINTS CLOUD PART2 Builds a triangulated surface given a 3D points cloud. They do not need to be in the z=f(x,y) form. Author: Luigi Giaccari Giaccari, Luigi

I am sorry there is no paper.

06 Jul 2009 Deleting multiple points: UniqueRows UniqueRows can be a faster alternative to the Matlab unique(X,'rows'); Author: Luigi Giaccari Rubio Martín, Óscar J.

A fast and smart alternative.
Just one comment:
As you want to replace unique(A,'rows'), include the possibility of getting two outputs:
- B: the matrix of unrepeated rows
- ind: the indices of the rows of B in the original matrix A

04 Jul 2009 FAST K-NEAREST NEIGHBOURS SEARCH 3D VERSION The 3d version of GLTREE Author: Luigi Giaccari Keller, Raphael

Hello,
Thank you for the code.
The BuildGLTree.m file needs some slight corrections for this 3D version.
Best,
RK

02 Jul 2009 POKER PREDICTOR A Texas Holdem Poker Probability and Odds calculator. Fast, accurate and free. Author: Luigi Giaccari Giaccari, Luigi

AH AH AH!

That's my latin-english. I'll fix it in the following days.

Thank you for your report

02 Jul 2009 POKER PREDICTOR A Texas Holdem Poker Probability and Odds calculator. Fast, accurate and free. Author: Luigi Giaccari Komarov, Oleg

just a niggle, it's profit, instead if profict.
I always "gambled" by trading stocks, but i think i will switch to poker :).
 

01 Jul 2009 POKER PREDICTOR A Texas Holdem Poker Probability and Odds calculator. Fast, accurate and free. Author: Luigi Giaccari Aldahiyat, Husam

01 Jul 2009 FAST K-NEAREST NEIGHBOURS SEARCH 3D VERSION The 3d version of GLTREE Author: Luigi Giaccari Giaccari, Luigi

Uh,
I am sorry, those lines are for debug purpose, I forgot to delete them.
A "clean" version is on the way.

01 Jul 2009 FAST K-NEAREST NEIGHBOURS SEARCH 3D VERSION The 3d version of GLTREE Author: Luigi Giaccari Jordan, Michael

interesting code. Can you provide an option to disable the print output ("tree #: ...) when building the tree?

22 Jun 2009 SURFACE RECONSTRUCTION FROM SCATTERED POINTS CLOUD PART1 Builds a triangulated surface given a 3D points cloud. They don't need to be in the z=f(x,y) form. Author: Luigi Giaccari James

Outstanding! Very nice work.

13 Jun 2009 SURFACE RECONSTRUCTION FROM SCATTERED POINTS CLOUD PART2 Builds a triangulated surface given a 3D points cloud. They do not need to be in the z=f(x,y) form. Author: Luigi Giaccari Galoshev, Gladnon

Great work!

Can you point to the description of used algorithm (white paper or something else)?

Regards

Gladnon

04 Jun 2009 BASIC GEAR DESIGN Builds a simple 3D model of Spur gear given a few standard parameters. Author: Luigi Giaccari Jim

cheese

01 Jun 2009 N-DIMENSIONAL CONVEX HULL: QUICKER HULL ALGORITHM Should be faster than convhulln on large models in dimension <5. Author: Luigi Giaccari Clark, Thomas

Good one Luigi, thanks :)

30 May 2009 IN POLYGON TEST FOR CONVEX POLYGON Detects points inside a convex polygon in 2D space. Should be faster than general inpolygon. Author: Luigi Giaccari Jveer

Luigi provided a customized 3d one thats works great! thank you.

25 May 2009 LINEAR SYSTEMS SOLVER (for small Systems) Solves many small linear systems in a vectorized way. It avoids to call the \ command inside a loop. Author: Luigi Giaccari Marika

Hello
I whant to know how to find an aigen vectors which correspond to known eigenvalue. For excample, how to solve the problem: M = [0 0 .5 .5; 0 0 .5 .5; 1 0 0 0; 0 1 0 0] and M'*P=P, where P is the vector, P=[P1; P2; P3; P4] and sum of P's elements equals 1.
Thanks for help.

23 May 2009 FAST K-NEAREST NEIGHBORS SEARCH Simple but very fast algorithm for nearest neighbors search. Supports KNN and radius search. Author: Luigi Giaccari Giaccari, Luigi

Given:
 
 N=reference +query points

Complexity of the algorithm is linear for random uniformly spaced points. Both for the serach and the tree construction.

 It becomes N^2 (Brute search) for very sparse dataset.

However this patological case can be detected after 5-10% running time. In this case is better to switch to kd-tree data structure. ( this detection is not present in this version)

                    Luigi

22 May 2009 FAST K-NEAREST NEIGHBORS SEARCH Simple but very fast algorithm for nearest neighbors search. Supports KNN and radius search. Author: Luigi Giaccari Luong, Bruno

Impressive running speed. I have tested against Matlab Delaunay/dsearch nearest point for 2 x 10^5 points and the code won hand down in speed. Very good work. I would like to see the author to provide mean/worse complexity of his algorithm, which is always necessary step when integrating in reliable software project.

19 May 2009 FAST CONVEX HULL ALGORITHM Totally m-code routine to compute convex hull in 2D space faster than the Matlab native convhull. Author: Luigi Giaccari Bonelli, Andreas

13 Apr 2009 SURFACE RECONSTRUCTION FROM SCATTERED POINTS CLOUD PART2 Builds a triangulated surface given a 3D points cloud. They do not need to be in the z=f(x,y) form. Author: Luigi Giaccari Strickland, Cat

This is an extremely useful file. Thank you!

01 Apr 2009 HOW TO PLOT A COLOURED SURFACE FROM 3D SCATTER Simple script that shows how to plot surfaces in the z=f(x,y) form with rgb values at each point. Author: Luigi Giaccari Giaccari, Luigi

Please report questions on my e-mail, this space is dedicated to comments and ratings.

If you have a filled colud there are two main options, depending if your cloud comes from a tetraedral FEM mesh or not.

-If you have tetraedrons, than it is easy just get the boundary triangles.

-If you do not have them, it is more complicated, a ball pivoting or alpha shape tool is needed.

For more info, questions, suggestions contact me on my e-mail.

29 Mar 2009 HOW TO PLOT A COLOURED SURFACE FROM 3D SCATTER Simple script that shows how to plot surfaces in the z=f(x,y) form with rgb values at each point. Author: Luigi Giaccari Jveer

what if the point cloud represents a 3D object rather than just a surface? how should i go about it to convert the outer points into a surface?

i've been stuck with this problem for a long time. the only close enugh solution i've found is 'tetramesh' but its a very bad and slow one.

22 Mar 2009 SURFACE RECONSTRUCTION FROM SCATTERED POINTS CLOUD PART2 Builds a triangulated surface given a 3D points cloud. They do not need to be in the z=f(x,y) form. Author: Luigi Giaccari ÁÔ, USTC

thanks a lot

20 Mar 2009 FAST K-NEAREST NEIGHBORS SEARCH Simple but very fast algorithm for nearest neighbors search. Supports KNN and radius search. Author: Luigi Giaccari Korsawe, Johannes

Really good! Great work and just came in handy.
Thanks a lot for sharing your work!

20 Mar 2009 SURFACE RECONSTRUCTION FROM SCATTERED POINTS CLOUD PART1 Builds a triangulated surface given a 3D points cloud. They don't need to be in the z=f(x,y) form. Author: Luigi Giaccari 2321232323123231, 133131321313132

Thanks a lot man...very good

20 Mar 2009 SURFACE RECONSTRUCTION FROM SCATTERED POINTS CLOUD PART2 Builds a triangulated surface given a 3D points cloud. They do not need to be in the z=f(x,y) form. Author: Luigi Giaccari 2321232323123231, 133131321313132

good job

10 Mar 2009 SURFACE RECONSTRUCTION FROM SCATTERED POINTS CLOUD PART1 Builds a triangulated surface given a 3D points cloud. They don't need to be in the z=f(x,y) form. Author: Luigi Giaccari MESFIN

It is very nice code for surface reconstruction.I find it very useful!!!Thx a lot.

06 Mar 2009 SURFACE RECONSTRUCTION FROM SCATTERED POINTS CLOUD PART2 Builds a triangulated surface given a 3D points cloud. They do not need to be in the z=f(x,y) form. Author: Luigi Giaccari Kumar, Atul

Awesome job!!! God Bless you...

26 Feb 2009 SURFACE RECONSTRUCTION FROM SCATTERED POINTS CLOUD PART1 Builds a triangulated surface given a 3D points cloud. They don't need to be in the z=f(x,y) form. Author: Luigi Giaccari Thana, Virap

Hello,

Thanks a lot.

Btw, do you have any ideas how to write codes for surface reconstruction using Fourier Transform Profilometry method (parallel fringe projection) I've taken images of reference fringe pattern and object on the pattern from digital camera.

Thanks in advance,

Regards,
Dave

19 Feb 2009 LINEAR SYSTEMS SOLVER (for small Systems) Solves many small linear systems in a vectorized way. It avoids to call the \ command inside a loop. Author: Luigi Giaccari Giaccari, Luigi

Hi john,

Your solution seem to be about 5% faster, but the best is it more flexible about the block size,
probably in the next days I will update code with the modification you suggested.

Thank you very much

19 Feb 2009 LINEAR SYSTEMS SOLVER (for small Systems) Solves many small linear systems in a vectorized way. It avoids to call the \ command inside a loop. Author: Luigi Giaccari D'Errico, John

I have not tested this for speed compared to the looped solution, but it is elegant. It is what I use in blktridiag.

%% Sparse block diagonal matrix, with no explicit loops
% Consider this matrix:
m = 4;
nblocks = 5;
A = rand(m,m*nblocks);

% We wish to generate a sparse block diagonal array,
% with five 4x4 blocks
[ind1,ind2,ind3] = ndgrid(0:m-1,0:m-1,0:nblocks-1);
rind = 1+ind1(:)+m*ind3(:);
cind = 1+ind2(:)+m*ind3(:);

% build the final array all in one call to sparse
Abd = sparse(rind,cind,A(:),nblocks*m,nblocks*m);

% Use spy to see the pattern is correct
spy(Abd)

%% Now do the same thing, but with 4x3 blocks
% Consider this matrix:
p = 4;
q = 3;
nblocks = 5;
A = rand(p,q,nblocks);

% use ndgrid
[ind1,ind2,ind3] = ndgrid(0:p-1,0:q-1,0:nblocks-1);
rind = 1+ind1(:)+p*ind3(:);
cind = 1+ind2(:)+q*ind3(:);

% build the final array all in one call to sparse
Abd = sparse(rind,cind,A(:),nblocks*p,nblocks*q);

% Use spy to see the pattern is correct
spy(Abd)

19 Feb 2009 LINEAR SYSTEMS SOLVER (for small Systems) Solves many small linear systems in a vectorized way. It avoids to call the \ command inside a loop. Author: Luigi Giaccari Giaccari, Luigi

Hi John thanks for the comment,

Honestly I didn't know the ndgrid command. More honestly, now that I know, I don't realize how to use it.

I thought about the 3D arrays as input but I personally prefer the 2D concatenation. Anyway in the next revision I will add this feature, since I thing the assembling indexes stays the same and it wont take a long time to code it.

I am not so confortable of least squares problems, I have just used lsqlin a few times. But I thing that this kind of solvers are slower that the ones for linear system, so the advantages of a vectorization will be minor. The for loop and function call time will be hidden by the solver time. As soon as I have a little free time I will run a few speed test and decide if add this new feature.

Thank you again

18 Feb 2009 LINEAR SYSTEMS SOLVER (for small Systems) Solves many small linear systems in a vectorized way. It avoids to call the \ command inside a loop. Author: Luigi Giaccari D'Errico, John

Pretty good. I like the help, example, etc.

For those interested, the sparse block diagonal matrix is built in a reasonable way. While it uses a loop the could be replaced with a call to ndgrid (see my own blktridiag for a mildly different way to build such a system) the loop here is a simple one that should not be costly.

I also like that the code is batched, so the matrices are limited in size, even for huge sets of problems to solve.

The only thing I'd have done differently would be to supply the matrix systems as a 3-d array, rather than concatenating them all horizontally. Make it a PxQxN matrix, where each plane of the array is a separate system to solve. This way if P>Q, then the linear solves will be least squares problems, all solved in a batch.

 

MATLAB Central Terms of Use

NOTICE: Any content you submit to MATLAB Central, including personal information, is not subject to the protections which may be afforded information collected under other sections of The MathWorks, Inc. Web site. You are entirely responsible for all content that you upload, post, e-mail, transmit or otherwise make available via MATLAB Central. The MathWorks does not control the content posted by visitors to MATLAB Central and, does not guarantee the accuracy, integrity, or quality of such content. Under no circumstances will The MathWorks be liable in any way for any content not authored by The MathWorks, or any loss or damage of any kind incurred as a result of the use of any content posted, e-mailed, transmitted or otherwise made available via MATLAB Central. Read the complete Terms prior to use.

Contact us at files@mathworks.com