[英]3D - spline for trajectory generation in Matlab/Octave
我目前正在嘗試為Octave中的機器人末端執行器創建3D軌跡。 終端執行器應該訪問一組3D點X = [x_1 ,..., x_n]
,其中x_i = [xcoord_i; ycoord_i; zcoord_i]
x_i = [xcoord_i; ycoord_i; zcoord_i]
x_i = [xcoord_i; ycoord_i; zcoord_i]
。 簡單的線性插值將導致機器人運動不順暢。 因此,我想生成一個3D樣條曲線,在參考點之間生成N個3D點。 存在用於此類任務的Matlab實現( 文檔 )。 您能給我一個關於如何在Octave中解決此類問題的提示嗎?
您可以使用interp1
在X(1,:)
, X(2,:)
和X(3,:)
上進行三個一維樣條插值,請參見https://www.gnu.org/software/octave/doc /interpreter/One_002ddimensional-Interpolation.html
這應該工作:
t = 1:n;
ti = 0:0.01:n;
xi = interp1(t, X(1,:), ti, "spline");
yi = interp1(t, X(2,:), ti, "spline");
zi = interp1(t, X(3,:), ti, "spline");
Xi = [xi; yi; zi];
當然,您應該使t
和ti
適應您的需求。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.