3軸加速度の結果から体積を求めたいです

6 visualizaciones (últimos 30 días)
daiki naito
daiki naito el 4 de Mzo. de 2022
Comentada: daiki naito el 6 de Mzo. de 2022
3軸加速度計の結果から、以下の式で3次元にプロットした結果の95%を含む体積を求めようとしています。
4pi / 3×(中心から楕円までの最大長)×(最小長)×(2軸に直行する軸の長さ)
こちらの最大長、最小長、2軸に直行する軸の長さを求める方法の模索に苦慮しています。
これらを求める方法を教えて頂けると幸いです。
  4 comentarios
Hernia Baby
Hernia Baby el 5 de Mzo. de 2022
ありがとうございます
楕円体が回転体なのか等でアプローチが変わると思います
楕円体が原点とx,y,z軸を通るなら以下に近いアプローチが取れますがいかがですか?
clc,clear
[X,Y,Z]=ellipsoid(0,0,0,6,3.25,3.25);
plot3(X(:),Y(:),Z(:),'--k')
hold on
surf(X,Y,Z,'EdgeColor','none','FaceAlpha',.2)
xline(0)
yline(0)
idx(:,:,1) = abs(X) == max(abs(X),[],'all');
idx(:,:,2) = abs(Y) == max(abs(Y),[],'all');
idx(:,:,3) = abs(Z) == max(abs(Z),[],'all');
for ii = 1:length(idx(1,1,:))
scatter3(X(idx(:,:,ii)),Y(idx(:,:,ii)),Z(idx(:,:,ii)),'red','filled')
end
daiki naito
daiki naito el 5 de Mzo. de 2022
ありがとうございます。
求める楕円体は回転体ではございません。
ご教示いただいたアプローチ方法を試してみようと思います。
対応していただき、ありがとうございました。

Iniciar sesión para comentar.

Respuesta aceptada

Hernia Baby
Hernia Baby el 5 de Mzo. de 2022
体積演算まで書いておきます
clc,clear
ここでは原点中心とした楕円体を作成しています。
[X,Y,Z]=ellipsoid(0,0,0,6,3.25,3.25);
fig(X,Y,Z);hold off;
X軸、Y軸、Z軸上で絶対値が最大となる点をとります
X,Y,Zは行列なので行と列での最大を探します
idx(:,:,1) = abs(X) == max(abs(X),[],'all');
idx(:,:,2) = abs(Y) == max(abs(Y),[],'all');
idx(:,:,3) = abs(Z) == max(abs(Z),[],'all');
絶対値なので2点ずつ現れます
fig(X,Y,Z)
for ii = 1:length(idx(1,1,:))
scatter3(X(idx(:,:,ii)),Y(idx(:,:,ii)),Z(idx(:,:,ii)),'red','filled')
end
さて4pi / 3×(中心から楕円までの最大長)×(最小長)×(2軸に直行する軸の長さ)
つまりを求めていきましょう
a = max(X(idx(:,:,1)));
b = max(Y(idx(:,:,2)));
c = max(Z(idx(:,:,3)));
V = 4/3*a*b*c;
fprintf('最大長:%d\n最小長:%d\n2軸に直行する軸長さ:%d\n体積:%d',a,b,c,V);
最大長:6 最小長:3.250000e+00 2軸に直行する軸長さ:3.250000e+00 体積:8.450000e+01
以下は楕円体の図を描写する関数です
function [] = fig(X,Y,Z)
figure
plot3(X(:),Y(:),Z(:),'--k')
hold on
surf(X,Y,Z,'EdgeColor','none','FaceAlpha',.2)
xline(0)
yline(0)
end
  3 comentarios
Hernia Baby
Hernia Baby el 6 de Mzo. de 2022
懸念していた部分はこの楕円体が平行移動したり、X,Y,Z軸にθ°回転するケースです。今回はそれはなさそうとの事なので記載してません。また何かありましたら、気軽にどうぞ。
daiki naito
daiki naito el 6 de Mzo. de 2022
ありがとうございました。 とても助かりました。 また何かありましたらよろしくお願いします。

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre ライティング、透明度、およびシェーディング en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!