TDOA to Estimate Source Location
12 ビュー (過去 30 日間)
古いコメントを表示
(MATLAB 2018b)
Hello, the image below is taken from
titled: "Finding Location with Time of Arrival and Time Difference of Arrival Techniques"
author: Brian O’Keefe
The pdf is a project about using TDOA to estimate the location of the source in a 2D plane.
Similarly, I have one sound source emitter and three microphones, A, B, and C, that are placed near the emitter to detect the sound. I know the TDOA of the sound at the microphones, so I can solve for Δd and I already have the coordinates of all the microphones, so I already know (x1, y1) and (x2, y2). In the last paragraph, it says: "Using nonlinear regression, this equation can be converted to the form of a hyperbola. ... by finding the intersection." I don't quite understand the meaning of that.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/373701/image.png)
So far, I've tried to use "solve()" method to find x and y (which is the coordinates of the sound source emitter, but it returned error "Unable to find explicit solution". Any help would be appreciated!
syms x y
distanceDiffAB = 11.4133;
distanceDiffAC = 26.0046;
x_1 = -3.094347632074183e+03;
x_2 = -3.094339180850340e+03;
x_3 = -3.094356380044983e+03;
y_1 = 3.927902239661466e+03;
y_2 = 3.927920563806962e+03;
y_3 = 3.927917716062433e+03;
E = [distanceDiffAB == root((x_2-x)^2 - (y_2-y)^2) - root((x_1-x)^2 - (y_1-y)^2), ...
distanceDiffAC == root((x_3-x)^2 - (y_3-y)^2) - root((x_1-x)^2 - (y_1-y)^2)];
E = rewrite(E,'log');
S = solve(E, x, y, 'IgnoreAnalyticConstraints', 1);
0 件のコメント
回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Audio I/O and Waveform Generation についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!