Effacer les filtres
Effacer les filtres

finding dense location and define centeriod of the each dense location

2 vues (au cours des 30 derniers jours)
I have attached .mat file and below zoomed figure of one section , I would like to find the centeriod of the dense location.
Since I have huge data around 400000 * 2, i am not able to use DBSCAN.
can you please do help me out with the loaded data ?
  7 commentaires
darova
darova le 16 Avr 2020
Can i ask why do you need so many centroids? What are you doing further with them
SatyaPrakash Gupta
SatyaPrakash Gupta le 16 Avr 2020
Modifié(e) : SatyaPrakash Gupta le 16 Avr 2020
@darova :
Yes at the end i need to connect those line to each centriod where i am stuck now.
please find the attached data where i have found the centriods.
do you have any idea how can we connect them ?
or
how to further separate the data which below to left side and right side ?

Connectez-vous pour commenter.

Réponse acceptée

darova
darova le 16 Avr 2020
Here is simple but coarse (maybe not precise method)
Fill matrix Connect pixels Thin line Remove 'spur'
Results (green point - rounded orinal data)
I suppose you want to order those points now (connect them)
  4 commentaires
SatyaPrakash Gupta
SatyaPrakash Gupta le 17 Avr 2020
Modifié(e) : SatyaPrakash Gupta le 17 Avr 2020
Sorry this trick did not helped me, now i have a data separated with left and right , is it possible to connect a single line on left and single line on right side .
The line should break if the distance is more than 10m moving forward and start again with a new line for distance smaller than 10m
darova
darova le 17 Avr 2020
I don't understand the question. This is your data:
Can you make a simple sketch of the result you expect?

Connectez-vous pour commenter.

Plus de réponses (2)

Image Analyst
Image Analyst le 17 Avr 2020
Modifié(e) : Image Analyst le 17 Avr 2020
Looks like you already have an answer that you've accepted, however one way to approach it is to use fitPolynomialRANSAC() - it's in the Computer Vision Toolbox, if you have it. You can use this function twice. The first time it will get the first curve (one of them, not sure which one though). Then remove those points close to the first curve, and run it again to get the second curve and points close to it. fitPolynomialRANSAC() will return the polynomial coefficients of the curve and the indexes of the data points that are close to that curve.
Also see RANSAC in Wikipedia if you're not familiar with the RANSAC concept.
  2 commentaires
SatyaPrakash Gupta
SatyaPrakash Gupta le 17 Avr 2020
sorry i do not have computer vision toolbox , how can i implement in matlab lab without this toolbox ?
Image Analyst
Image Analyst le 17 Avr 2020
Well, don't bother. You already have an answer that you've accepted that works.

Connectez-vous pour commenter.


SatyaPrakash Gupta
SatyaPrakash Gupta le 17 Avr 2020
yes , let me explain you in details.
load leftRightCoord.mat
scatter(leftRightCoord.left(:,1),leftRightCoord.left(:,2)) %% this will plot the xy coordinates appearing on the left side
hold on
scatter(leftRightCoord.right(:,1),leftRightCoord.right(:,2)) %% this will plot xy coordinates apearing on the right side
please find the figure for above explaination.
Now expected as below:
the right xy coordinates(blue color) should be coonected to next line asn similarly for left coordinates.
If the distance between xy coordinates are more than 10meters, then stop continue drawing the same line
else , continue drawing , like the below figure attached.
  5 commentaires
darova
darova le 17 Avr 2020
I can't, sorry. Your question is too difficult for me
I did my best. That is all i can
SatyaPrakash Gupta
SatyaPrakash Gupta le 17 Avr 2020
No problem, thank you very much for your support.
you have provided me the link for all the clustering methods , that has helped me a lot

Connectez-vous pour commenter.

Produits


Version

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by