Solve 4 circles with known centers and radii

조회 수: 1 (최근 30일)
Amit Daud
Amit Daud 2021년 2월 22일
댓글: darova 2021년 2월 25일
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

답변 (1개)

darova
darova 2021년 2월 22일
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)
Then just use bwlabel to separate each region
  댓글 수: 2
Amit Daud
Amit Daud 2021년 2월 25일
Thank you @darova for your time and efforts. Umm, I could say that I know a little bit of image processing and let me have a brief look at what are you saying. But from what I understood at this moment is you are talking about solving in 2-D. I don't know exactly what bwlebel does but I think this way I could have X and Y coordinates, but not the Z as the centres of these spheres of each microphone need not be coplanar. Let me know if you dont understand what I am saying.
Anyway thank you,
Amit
darova
darova 2021년 2월 25일
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)

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Agriculture에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by