![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/527989/image.png)
Solve 4 circles with known centers and radii
1 view (last 30 days)
Show older comments
Hello everyone,
I am working on a positioning system where I have distances of a pinger (sound-source) from 4 microphones in a 3-D space. I need to find the intersection of these 4 circles to find the position of the pinger. Note that the sensors and distance calculation model are noisy and hence these 4 circles may or may not meet a single point. I could have used fsolve if they met at a single point. In most cases, they are forming a small volume and I need to find the centre point of the volume for further steps of the algorithm.
Any help or suggestion would be really helpful. Let me know if you don't understand the exact question.
Thank you in advance,
Amit
0 Comments
Answers (1)
darova
on 22 Feb 2021
You can try to use image processing toolbox
clc,clear
[x,y] = meshgrid(1:100);
A1 = (x-20).^2+ (y-30).^2 < 15^2;
A2 = (x-57).^2+ (y-30).^2 < 25^2;
A3 = (x-28).^2+ (y-74).^2 < 30^2;
A = A1 | A2 | A3;
imshow(A)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/527989/image.png)
Then just use bwlabel to separate each region
2 Comments
darova
on 25 Feb 2021
I used 2D case to simplify the problem and to visualize
You can use it in 3D too
[x,y,z] = meshgrid(1:100);
A1 = (x-x0).^2+(y-y0).^2+(z-z0).^2 < R^2;
% A2 = ...
% A3 = ...
Don't forget about scaling
bwlabel seperates each region (it numerates them)
See Also
Categories
Find more on Surface and Mesh Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!