99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

坐標(biāo)變換與張量運(yùn)算:從數(shù)學(xué)原理到tf樹(shù)實(shí)踐

坐標(biāo)變換與張量運(yùn)算:從數(shù)學(xué)原理到tf樹(shù)實(shí)踐 1. 先說(shuō)清楚坐標(biāo)變換和張量運(yùn)算到底在搞什么如果你做過(guò)機(jī)器人、做過(guò)三維視覺(jué)、搞過(guò)流體力學(xué)或者寫過(guò)游戲引擎八成和這兩個(gè)詞打過(guò)照面。但很多朋友一開(kāi)始接觸它們的時(shí)候都是各學(xué)各的——坐標(biāo)變換在“機(jī)器人學(xué)”那一章學(xué)張量運(yùn)算在“數(shù)學(xué)物理方法”那一章學(xué)中間隔著一整個(gè)學(xué)期結(jié)果到后面做多傳感器融合、做機(jī)械臂標(biāo)定、做有限元仿真的時(shí)候才發(fā)現(xiàn)兩者原來(lái)是一家人。這篇是系列的第16篇前面已經(jīng)覆蓋了向量基礎(chǔ)、矩陣運(yùn)算、常用坐標(biāo)系定義等內(nèi)容這篇開(kāi)始進(jìn)入一個(gè)比較關(guān)鍵的轉(zhuǎn)折點(diǎn)把坐標(biāo)變換和張量運(yùn)算統(tǒng)一到一個(gè)框架下去看。特別地很多做ROS開(kāi)發(fā)的朋友都聽(tīng)過(guò)“搭建tf樹(shù)坐標(biāo)變換”這個(gè)說(shuō)法但tf樹(shù)本質(zhì)上到底是什么它背后做的運(yùn)算是什么為什么俯瞰rviz里的坐標(biāo)軸樹(shù)狀結(jié)構(gòu)時(shí)最底層能對(duì)齊、最上層能跟隨中間到底算了幾輪這些問(wèn)題的答案其實(shí)都在今天要聊的內(nèi)容里。先說(shuō)結(jié)論坐標(biāo)變換描述的是“同一個(gè)客觀實(shí)體在不同觀察者眼里的坐標(biāo)數(shù)值如何互相換算”張量運(yùn)算描述的是“當(dāng)我們換坐標(biāo)系時(shí)一個(gè)物理量的表達(dá)形式如何保持一致”。一個(gè)偏幾何、一個(gè)偏代數(shù)但兩者是同一枚硬幣的兩面——坐標(biāo)變換是張量運(yùn)算在歐幾里得空間里的具體表現(xiàn)形式tf樹(shù)則是這兩個(gè)數(shù)學(xué)工具在工程中的一次經(jīng)典落地。這篇我會(huì)盡量用大白話把原理講透然后帶大家動(dòng)手搭一套完整的tf樹(shù)坐標(biāo)變換把實(shí)操中會(huì)踩的坑也一并列出來(lái)。適合有三四個(gè)月ROS或三維數(shù)學(xué)基礎(chǔ)、但一直沒(méi)把坐標(biāo)變換和張量運(yùn)算串起來(lái)的人也適合正在做多傳感器標(biāo)定、機(jī)械臂運(yùn)動(dòng)學(xué)、SLAM建圖被各種坐標(biāo)系搞到頭大的朋友。2. 坐標(biāo)變換的核心機(jī)制與實(shí)操要點(diǎn)2.1 旋轉(zhuǎn)矩陣的由來(lái)與選擇坐標(biāo)變換里最基礎(chǔ)的問(wèn)題就一句話同一個(gè)點(diǎn)在兩個(gè)坐標(biāo)系下的坐標(biāo)如何互相轉(zhuǎn)換。我們把它拆成兩步來(lái)看首先忽略平移只討論旋轉(zhuǎn)這就是旋轉(zhuǎn)矩陣存在的意義。旋轉(zhuǎn)矩陣的構(gòu)造方式有好幾種。最傳統(tǒng)的思路是把坐標(biāo)軸看成一組基向量從舊坐標(biāo)系到新坐標(biāo)系的旋轉(zhuǎn)矩陣每一列就是舊坐標(biāo)系的基向量在新坐標(biāo)系下的坐標(biāo)表示。另一個(gè)思路是從歐拉角出發(fā)按繞固定軸或繞自身軸的順序把三個(gè)基礎(chǔ)旋轉(zhuǎn)矩陣依次乘起來(lái)。這里特別強(qiáng)調(diào)一點(diǎn)繞固定軸和繞自身軸內(nèi)旋的乘積順序是相反的一不留神就翻車。實(shí)際操作中我不太推薦直接用歐拉角做內(nèi)部計(jì)算這是個(gè)從血淚里得出的教訓(xùn)。歐拉角最明顯的問(wèn)題就是萬(wàn)向節(jié)鎖Gimbal Lock當(dāng)俯仰角接近90度時(shí)滾轉(zhuǎn)和偏航會(huì)變得無(wú)法區(qū)分旋轉(zhuǎn)的自由度從三個(gè)降為兩個(gè)。這會(huì)導(dǎo)致在某些姿態(tài)附近數(shù)值會(huì)變得極度敏感輕微擾動(dòng)就能讓輸出姿態(tài)劇烈跳動(dòng)。所以工程上一般把歐拉角用于顯示、交互和參數(shù)輸入內(nèi)部計(jì)算優(yōu)先選擇四元數(shù)或者旋轉(zhuǎn)矩陣。旋轉(zhuǎn)矩陣本身有幾個(gè)天然約束值得需要明確它是一個(gè)正交矩陣即矩陣的轉(zhuǎn)置等于矩陣的逆這保證了旋轉(zhuǎn)不會(huì)產(chǎn)生拉伸或扭曲且行列式嚴(yán)格等于1這保證了它不會(huì)引入鏡像翻轉(zhuǎn)。在做數(shù)值計(jì)算時(shí)因?yàn)楦↑c(diǎn)誤差累積矩陣的正交性會(huì)被逐漸破壞所以每經(jīng)過(guò)大量累乘之后建議用格拉姆-施密特正交化或者奇異值分解逼近處理一下把矩陣“拉”回正交陣這一步在長(zhǎng)期運(yùn)行的SLAM系統(tǒng)里不是可選項(xiàng)而是剛需。2.2 四元數(shù)為什么更香說(shuō)到姿態(tài)表示繞不開(kāi)四元數(shù)。很多初學(xué)者第一次接觸四元數(shù)都會(huì)覺(jué)得它是天書(shū)但工程用下來(lái)四元數(shù)確實(shí)好用。我們不去背誦公式先理解它到底在干什么四元數(shù)本質(zhì)上是一種用四個(gè)數(shù)來(lái)表示三維旋轉(zhuǎn)的方式其中前三個(gè)數(shù)可以理解為旋轉(zhuǎn)軸的三個(gè)分量經(jīng)過(guò)歸一化處理第四個(gè)數(shù)則和旋轉(zhuǎn)角度的半角余弦有關(guān)。從計(jì)算角度看四元數(shù)的優(yōu)勢(shì)太明顯了。首先是拼接效率高兩個(gè)旋轉(zhuǎn)的組合用四元數(shù)乘法計(jì)算只需要16次浮點(diǎn)乘法而旋轉(zhuǎn)矩陣相乘需要27次乘法更關(guān)鍵的是將一個(gè)矢量本質(zhì)上是純四元數(shù)應(yīng)用旋轉(zhuǎn)時(shí)只需要兩次四元數(shù)乘法加上若干次加減法整個(gè)過(guò)程沒(méi)有三角函數(shù)運(yùn)算這一點(diǎn)在嵌入式平臺(tái)、MCU上尤其重要。另一個(gè)容易被忽略的優(yōu)勢(shì)是插值的平滑性。四元數(shù)可以通過(guò)球面線性插值SLERP在兩個(gè)姿態(tài)之間生成一條“最短路徑”的旋轉(zhuǎn)過(guò)渡而歐拉角的線性插值會(huì)產(chǎn)生明顯的抖動(dòng)和非自然繞路。做云臺(tái)控制、機(jī)械臂軌跡規(guī)劃、相機(jī)平滑跟隨這類需求時(shí)SLERP幾乎是標(biāo)配。需要記住四元數(shù)的一個(gè)特點(diǎn)四元數(shù)q和-q表達(dá)同一個(gè)旋轉(zhuǎn)因?yàn)樾D(zhuǎn)角度加360度并不產(chǎn)生實(shí)際變化。但在插值計(jì)算時(shí)要格外小心符號(hào)的一致性如果兩個(gè)四元數(shù)之間的點(diǎn)積是負(fù)數(shù)說(shuō)明它們?cè)谒木S球面上相距超過(guò)90度直接插值會(huì)繞遠(yuǎn)路可以先對(duì)其中一個(gè)取負(fù)再插值。2.3 齊次變換矩陣的工程意義到這一步我們還只有旋轉(zhuǎn)沒(méi)有平移。工程里不可能只有旋轉(zhuǎn)機(jī)械臂末端既要轉(zhuǎn)也要?jiǎng)佑谑俏覀冃枰环N能同時(shí)編碼旋轉(zhuǎn)和平移的表達(dá)方式齊次變換矩陣就此登場(chǎng)。齊次變換矩陣是一個(gè)4x4矩陣左上角3x3是旋轉(zhuǎn)矩陣或正交化后的旋轉(zhuǎn)分量右上角3x1是平移向量底下是[0 0 0 1]這一行用來(lái)保證矩陣乘法結(jié)構(gòu)的一致性。通過(guò)這一個(gè)矩陣我們可以把繞任意軸的旋轉(zhuǎn)和任意方向的平移合并為一次線性變換并且可以將多次變換直接累乘起來(lái)得到一個(gè)描述“從初始坐標(biāo)系到最終坐標(biāo)系”的復(fù)合變換矩陣。這里有一個(gè)經(jīng)典的概念要反復(fù)強(qiáng)調(diào)矩陣乘法不滿足交換律所以變換的順序極其重要。先旋轉(zhuǎn)再平移和先平移再旋轉(zhuǎn)得到的結(jié)果完全不同。在代碼層面常見(jiàn)的錯(cuò)誤就是把變換矩陣乘反了方向——一個(gè)是把點(diǎn)從左邊的坐標(biāo)系變換到右邊的坐標(biāo)系另一個(gè)是把同一變換作用到點(diǎn)本身這分別對(duì)應(yīng)數(shù)學(xué)上的“坐標(biāo)系變換”和“點(diǎn)的變換”本質(zhì)是逆運(yùn)算關(guān)系但工程里混亂操作的情況非常多。實(shí)操建議在代碼注釋里固定一種約定并且明確標(biāo)注“這個(gè)矩陣是body系到world系”還是“world系到body系”。凡是矩陣作用在被變換的對(duì)象上時(shí)一定要搞清當(dāng)前的點(diǎn)是在哪個(gè)坐標(biāo)系下表達(dá)的。我的習(xí)慣是在所有變換矩陣命名的后綴里帶上源坐標(biāo)系和目標(biāo)坐標(biāo)系比如T_wb表示從body到world然后在代碼里強(qiáng)烈禁止不標(biāo)注的裸矩陣出現(xiàn)這個(gè)習(xí)慣救回來(lái)無(wú)數(shù)次。3. 張量運(yùn)算的物理本質(zhì)與變換規(guī)則3.1 從矢量和矩陣到“張量”的一次升級(jí)在普通線性代數(shù)里我們習(xí)慣把數(shù)據(jù)分成標(biāo)量、向量、矩陣這三類。但在坐標(biāo)變換的語(yǔ)境下這個(gè)分類不夠用因?yàn)樗鼪](méi)有區(qū)分“向量本身”和“向量的坐標(biāo)分量表示”之間的區(qū)別。張量概念的引入就是為了更準(zhǔn)確地區(qū)分幾何對(duì)象和它的坐標(biāo)表像。一個(gè)粗略但管用的定義張量是一種“在不同坐標(biāo)系下按照特定的坐標(biāo)變換規(guī)則變化”的多線性量。零階張量就是標(biāo)量它沒(méi)有方向無(wú)論坐標(biāo)系怎么旋轉(zhuǎn)數(shù)值都不變一階張量就是向量它的分量會(huì)隨坐標(biāo)系的旋轉(zhuǎn)而變化但向量本身作為幾何實(shí)體不隨觀察者改變二階張量可以看成矩陣的推廣但必須要按照特定變換規(guī)則改變比如應(yīng)力張量、慣性張量、旋轉(zhuǎn)矩陣本身這些都屬于物理上具有明確意義的二階張量。很多人第一次聽(tīng)到“張量”這個(gè)詞還以為它是物理的專屬但實(shí)際上深度學(xué)習(xí)里的“張量”就是沿用這個(gè)概念只是把高維數(shù)組作為基本數(shù)據(jù)結(jié)構(gòu)來(lái)用并沒(méi)有嚴(yán)格套用協(xié)變逆變的物理變換規(guī)則。而在工程力學(xué)、相對(duì)論、機(jī)器人學(xué)等領(lǐng)域“張量的分量必須按照坐標(biāo)變換規(guī)則變化”這一條是不可動(dòng)搖的。3.2 協(xié)變與逆變張量變換的一條分水嶺張量運(yùn)算中最容易繞暈的點(diǎn)就是協(xié)變covariant和逆變contravariant的區(qū)別但它的物理直覺(jué)其實(shí)并不復(fù)雜。我們可以這樣理解想象一個(gè)向量它既可以使用基向量坐標(biāo)軸方向的線性組合來(lái)表達(dá)也可以使用坐標(biāo)標(biāo)架基向量之間的對(duì)偶標(biāo)架的線性組合來(lái)表達(dá)。如果坐標(biāo)軸本身變長(zhǎng)了那個(gè)需要變“短”才能保持物理數(shù)值不變的分量就是逆變分量那個(gè)跟著坐標(biāo)軸一起變“長(zhǎng)”的分量就是協(xié)變分量。用一組坐標(biāo)變換來(lái)說(shuō)可能更順口。假設(shè)有一個(gè)坐標(biāo)變換x^i x^i(x^j)其雅可比矩陣為 J^i_j ?x^i/?x^j。一個(gè)逆變向量比如速度矢量的分量按“逆變換雅可比”的方式改變V^i ?x^i/?x^j V^j。而一個(gè)協(xié)變向量比如梯度?f的分量按“正變換雅可比”的方式改變W_i ?x^j/?x^i W_j。這個(gè)i在角標(biāo)上面還是下面就是這個(gè)區(qū)別的精髓。為什么要區(qū)分這兩個(gè)變形方向因?yàn)槿绻粎^(qū)分梯度方向和速度方向在坐標(biāo)系變形時(shí)會(huì)被當(dāng)成同一類對(duì)象來(lái)處理從而丟失物理含義。工程上最常見(jiàn)的誤解是認(rèn)為梯度就是一個(gè)普通向量可以任意與速度方向點(diǎn)乘并期望得到一個(gè)標(biāo)量。但除非度規(guī)是標(biāo)準(zhǔn)的也就是坐標(biāo)系是勻速直線運(yùn)動(dòng)再加上正交標(biāo)準(zhǔn)基否則這個(gè)點(diǎn)乘是不具有坐標(biāo)不變性的。機(jī)器人學(xué)中當(dāng)使用關(guān)節(jié)空間坐標(biāo)q和笛卡爾空間坐標(biāo)x進(jìn)行速度與力的映射時(shí)速度和力的角標(biāo)逆變和協(xié)變關(guān)系如果搞錯(cuò)雅可比矩陣轉(zhuǎn)置的用法就很可能出現(xiàn)問(wèn)題。3.3 度規(guī)張量與內(nèi)積的不變性既然提到了點(diǎn)乘就必須介紹度規(guī)張量。度規(guī)張量是一個(gè)二階張量它定義了兩個(gè)向量之間的內(nèi)積也就是如何計(jì)算投影、長(zhǎng)度、夾角這些幾何量。在笛卡爾直角坐標(biāo)系里度規(guī)張量恰好是單位矩陣所以點(diǎn)乘公式很簡(jiǎn)單a·b a_x b_x a_y b_y a_z b_z。但一旦到了柱坐標(biāo)、球坐標(biāo)或者任意曲線坐標(biāo)系度規(guī)張量就會(huì)變成非對(duì)角的、甚至隨位置變化的函數(shù)。舉個(gè)例子在柱坐標(biāo)(r, θ, z)下兩個(gè)向量的點(diǎn)積不能只是簡(jiǎn)單地把對(duì)應(yīng)分量相乘再相加而是需要乘上度規(guī)張量的相應(yīng)分量。其中角向的度規(guī)分量為r^2所以同樣的坐標(biāo)分量在離軸較遠(yuǎn)的地方“實(shí)際長(zhǎng)度”會(huì)被放大。如果我們拿著笛卡爾系的直覺(jué)直接硬套算出來(lái)的模長(zhǎng)和夾角都會(huì)錯(cuò)。而度規(guī)張量存在的意義正是保證內(nèi)積的結(jié)果不依賴于坐標(biāo)系的選擇——無(wú)論在笛卡爾系還是柱坐標(biāo)系下a·b的值應(yīng)該完全相同因?yàn)樗菐缀螌?shí)體之間的不變量。這個(gè)思想在后來(lái)的廣義相對(duì)論、連續(xù)介質(zhì)力學(xué)中都是基石而即便在普通機(jī)器人學(xué)中當(dāng)你要做關(guān)節(jié)空間與操作空間之間的變換時(shí)度規(guī)在這里表現(xiàn)為慣性矩陣或質(zhì)量矩陣也扮演了核心角色。從操作空間向關(guān)節(jié)空間映射力時(shí)要用到雅可比轉(zhuǎn)置這與度規(guī)的變換規(guī)則一脈相承。3.4 張量變換規(guī)則在工程中的具體體現(xiàn)說(shuō)了這么多抽象的東西舉一個(gè)看得見(jiàn)摸得著的工程例子慣性張量。在剛體動(dòng)力學(xué)里慣性張量是一個(gè)3x3矩陣它描述了剛體在旋轉(zhuǎn)時(shí)的質(zhì)量分布。但這里有個(gè)陷阱同一根連桿在固連坐標(biāo)系下算出來(lái)的慣性張量和在世界坐標(biāo)系下使用的時(shí)候不能直接套用同樣的矩陣數(shù)值而必須乘以旋轉(zhuǎn)矩陣及其轉(zhuǎn)置來(lái)變換。具體公式是 I_world R I_body R^T這個(gè)變換就是張量分量變換規(guī)則的一個(gè)典型案例。很多剛接觸機(jī)器人動(dòng)力學(xué)的人會(huì)習(xí)慣性地把慣性矩陣當(dāng)成普通矩陣去乘結(jié)果算出來(lái)的力矩、角加速度與實(shí)測(cè)對(duì)不上。一旦意識(shí)到慣性張量是一個(gè)二階張量必須遵循張量變換規(guī)則很多問(wèn)題就迎刃而解了。同理協(xié)方差矩陣在坐標(biāo)變換下也遵循類似的規(guī)則Σ_world R Σ_local R^T。這種根據(jù)物理對(duì)象類型來(lái)選擇變換規(guī)則的能力正是張量運(yùn)算訓(xùn)練帶給工程師的核心價(jià)值——它不只是數(shù)學(xué)上的優(yōu)雅包裝而是直接決定計(jì)算結(jié)果正確與否的工具。4. 搭建tf樹(shù)坐標(biāo)變換從數(shù)學(xué)到ROS工程實(shí)踐4.1 tf樹(shù)在ROS中的定位說(shuō)完了原理我們進(jìn)入實(shí)操環(huán)節(jié)。ROS中的tf庫(kù)本質(zhì)上就是一套現(xiàn)成的坐標(biāo)變換管理框架它提供了一張“坐標(biāo)變換樹(shù)”每個(gè)節(jié)點(diǎn)代表一個(gè)坐標(biāo)系每條邊代表父子坐標(biāo)系之間的變換關(guān)系。只要建立了這棵樹(shù)任意兩個(gè)坐標(biāo)系之間的變換都能通過(guò)從葉子走到根再走下來(lái)的方式推導(dǎo)出來(lái)。tf樹(shù)的設(shè)計(jì)思路其實(shí)就是一個(gè)分布式數(shù)據(jù)庫(kù)里面存儲(chǔ)著各坐標(biāo)系之間的相對(duì)位姿包括平移和旋轉(zhuǎn)。它的數(shù)據(jù)來(lái)源可以來(lái)自靜態(tài)發(fā)布比如傳感器在機(jī)身中心的固定安裝位置也可以來(lái)自動(dòng)態(tài)計(jì)算比如從輪式里程計(jì)、IMU積分、視覺(jué)SLAM輸出的位姿估計(jì)。系統(tǒng)運(yùn)行時(shí)tf庫(kù)自動(dòng)維護(hù)所有坐標(biāo)系的實(shí)時(shí)關(guān)系并提供lookupTransform接口來(lái)查詢?nèi)我鈨蓚€(gè)坐標(biāo)系之間的最新變換。4.2 靜態(tài)變換部分搭建地基搭建tf樹(shù)的第一步是理清機(jī)器人本體的坐標(biāo)系結(jié)構(gòu)。拿一臺(tái)典型的差速輪小車舉例至少有這些坐標(biāo)系map地圖系全局參考、odom里程計(jì)系漂移修正、base_footprint/base_link機(jī)器人本體系、laser_link激光雷達(dá)安裝位置、imu_linkIMU安裝位置以及各輪子的旋轉(zhuǎn)坐標(biāo)系。靜態(tài)變換用static_transform_publisher來(lái)發(fā)布。比如激光雷達(dá)裝在底盤中心正上方0.2米旋轉(zhuǎn)角約180度因?yàn)榧す鈷呙璧姆较蛲ǔ:蜋C(jī)器人前進(jìn)方向有安裝偏移那么對(duì)應(yīng)的命令形如rosrun tf2_ros static_transform_publisher x y z yaw pitch roll parent_frame child_frame很多初學(xué)者直接背命令但我的建議是每次寫靜態(tài)變換前先在紙上畫出坐標(biāo)系的朝向關(guān)系標(biāo)清楚三個(gè)軸的指向再填參數(shù)。因?yàn)橄嗖钜粋€(gè)軸、差一個(gè)正負(fù)號(hào)整個(gè)tf樹(shù)看起來(lái)一切正常但數(shù)據(jù)流向完全錯(cuò)了。在靜態(tài)變換中還有一類特殊的細(xì)節(jié)frame_id的命名規(guī)范。整套系統(tǒng)里的坐標(biāo)系命名必須全局唯一建議用小寫字母加下劃線而且最好把所有坐標(biāo)系的名稱維護(hù)在一個(gè)單獨(dú)的約定文件里避免不同模塊之間用不同的昵稱導(dǎo)致查詢失敗。4.3 動(dòng)態(tài)變換部分讓樹(shù)“活”起來(lái)靜態(tài)變換只適合固定安裝關(guān)系的坐標(biāo)系底盤移動(dòng)的時(shí)候map到odom到base_link這幾條邊是動(dòng)態(tài)的。這個(gè)動(dòng)態(tài)更新通常由兩個(gè)模塊產(chǎn)生里程計(jì)源和定位源。底盤輪式里程計(jì)負(fù)責(zé)輸出odom到base_link的變換視覺(jué)/激光定位模塊則負(fù)責(zé)輸出map到odom之間的變換相當(dāng)于對(duì)里程計(jì)漂移做修正。還有一種方式是固定map到odom保持不動(dòng)把累計(jì)漂移全部放到odom到base_link這條邊上這種方案在純輪式里程計(jì)下更簡(jiǎn)單但長(zhǎng)期精度會(huì)下降。在ROS2中動(dòng)態(tài)變換通常用tf2_ros::TransformBroadcaster發(fā)布每次發(fā)布時(shí)給出新的變換矩陣。典型代碼大致長(zhǎng)這樣geometry_msgs::msg::TransformStamped t; t.header.stamp this-now(); t.header.frame_id odom; t.child_frame_id base_link; t.transform.translation.x x; t.transform.translation.y y; t.transform.translation.z 0.0; t.transform.rotation quat; broadcaster_-sendTransform(t);這里有件事必須強(qiáng)調(diào)時(shí)間戳很重要。tf2在設(shè)計(jì)上帶有時(shí)間戳校驗(yàn)機(jī)制如果發(fā)布的變換時(shí)間戳比當(dāng)前時(shí)間慢了超過(guò)緩存窗口lookupTransform會(huì)報(bào)錯(cuò)。而如果時(shí)間戳遠(yuǎn)快于真實(shí)頻率整個(gè)樹(shù)的插值也會(huì)失去意義。對(duì)于動(dòng)態(tài)變換消息頻率應(yīng)該和對(duì)應(yīng)傳感器的更新率一致不要盲目地往高頻發(fā)。4.4 完整搭建步驟與驗(yàn)證手段我建議按下面這套步驟去搭tf樹(shù)比較不容易踩坑第一步畫tf樹(shù)結(jié)構(gòu)圖明確各坐標(biāo)系之間的父子關(guān)系每一對(duì)父子之間想好是靜態(tài)還是動(dòng)態(tài)。第二步選一個(gè)根坐標(biāo)系。本質(zhì)上根坐標(biāo)系的選擇應(yīng)當(dāng)是一個(gè)“參考精度最高、漂移修正能力最優(yōu)”的坐標(biāo)系通常選map或者odom而不是base_link。把根坐標(biāo)系掛在樹(shù)的頂層之后所有坐標(biāo)系都能從根節(jié)點(diǎn)追溯到。第三步把靜態(tài)變換全部發(fā)布出來(lái)用tf2_echo逐個(gè)驗(yàn)證每一對(duì)坐標(biāo)系的數(shù)值是否符合物理安裝參數(shù)。第四步接上動(dòng)態(tài)源比如里程計(jì)和IMU或者定位模塊打開(kāi)rviz同時(shí)顯示odom和map兩條鏈路觀察是否隨時(shí)間持續(xù)對(duì)齊。第五步做退化測(cè)試把小車抬起來(lái)手動(dòng)旋轉(zhuǎn)一下看rviz里base_link和laser_link的相對(duì)位置是否始終保持一致。通常到這一步剛才所有的小問(wèn)題都會(huì)暴露出來(lái)。4.5 tf樹(shù)查詢的注意事項(xiàng)在實(shí)際做導(dǎo)航、做抓取規(guī)劃時(shí)最常用的接口就是lookupTransform。這里有幾個(gè)常被忽略的坑。第一是“父系目標(biāo)”還是“子系目標(biāo)”的顛倒。查詢時(shí)參數(shù)是target_frame和source_frame意思是“把source坐標(biāo)系下的數(shù)據(jù)變換到target坐標(biāo)系下”寫代碼時(shí)我非常建議把兩個(gè)frame_id打印出來(lái)驗(yàn)證而不是靠記憶硬寫。第二是時(shí)間插值的方向。tf2支持查詢一個(gè)歷史時(shí)間點(diǎn)的變換但需要保證兩邊的時(shí)間戳之間有對(duì)應(yīng)的緩存數(shù)據(jù)時(shí)間窗口設(shè)置得過(guò)小會(huì)讓歷史查詢失敗。第三是“靜態(tài)緩存”的誤用。雖然靜態(tài)變換數(shù)據(jù)理論上不變但tf2的緩存機(jī)制仍會(huì)存儲(chǔ)多幀數(shù)據(jù)如果發(fā)布頻率異常高且長(zhǎng)期運(yùn)行內(nèi)存可能緩慢增長(zhǎng)需要在發(fā)布靜態(tài)變換時(shí)選擇低頻或一次性發(fā)布策略。5. 常見(jiàn)問(wèn)題速查與排錯(cuò)實(shí)錄5.1 TF樹(shù)中的超時(shí)與丟幀問(wèn)題跑tf樹(shù)時(shí)最容易看到的錯(cuò)誤就是“Lookup would require extrapolation into the past”或者“Lookup would require extrapolation into the future”。這類錯(cuò)誤的本質(zhì)是樹(shù)里找不到時(shí)間戳匹配的變換數(shù)據(jù)。常見(jiàn)的誘因有幾種動(dòng)態(tài)變換發(fā)布頻率太低緩存窗口覆蓋不到系統(tǒng)啟動(dòng)初期時(shí)間尚未同步各節(jié)點(diǎn)時(shí)間戳相差過(guò)大發(fā)布端和查詢端的時(shí)鐘不一致。排查思路我一般這樣走先檢查發(fā)布端的發(fā)布頻率可以訂閱/tf話題看消息間隔再檢查緩存時(shí)間看參數(shù)里cache_time是否足夠大最后檢查所有傳感器節(jié)點(diǎn)的系統(tǒng)時(shí)間是否同步設(shè)備多的時(shí)候NTP同步非常重要否則每個(gè)節(jié)點(diǎn)的時(shí)間基準(zhǔn)差幾個(gè)毫秒就會(huì)導(dǎo)致查詢失敗。有一個(gè)經(jīng)驗(yàn)值得分享在開(kāi)發(fā)階段把ROS的調(diào)試日志級(jí)別調(diào)到debugtf2會(huì)打印每一組發(fā)布的變換數(shù)據(jù)直接對(duì)比數(shù)值可以很快確認(rèn)是哪一條邊的數(shù)據(jù)不對(duì)。另外用tf2_monitor工具可以查看當(dāng)前樹(shù)的狀態(tài)包括每條邊的更新頻率和平均時(shí)延這個(gè)工具在復(fù)雜系統(tǒng)里簡(jiǎn)直救命。5.2 坐標(biāo)抖動(dòng)與隨機(jī)漂移如果你發(fā)現(xiàn)rviz里某個(gè)坐標(biāo)系在靜止?fàn)顟B(tài)下仍然不停抖動(dòng)問(wèn)題多半出在以下三個(gè)地方。第一旋轉(zhuǎn)四元數(shù)沒(méi)有歸一化。tf2在底層對(duì)四元數(shù)有歸一化處理但如果上游傳入的四元數(shù)數(shù)值嚴(yán)重異常歸一化后仍然會(huì)有微小抖動(dòng)。第二姿態(tài)融合算法輸出的位姿噪聲過(guò)大。常見(jiàn)于IMU沒(méi)有做校準(zhǔn)或者磁力計(jì)干擾嚴(yán)重時(shí)此時(shí)需要優(yōu)先優(yōu)化傳感器融合環(huán)節(jié)而不是懷疑tf樹(shù)發(fā)布邏輯。第三靜態(tài)變換與動(dòng)態(tài)變換之間存在沖突。比如base_link到laser_link明明發(fā)布了兩套不同的靜態(tài)關(guān)系同一對(duì)坐標(biāo)系在樹(shù)里出現(xiàn)了環(huán)路就會(huì)造成結(jié)果跳變。遇到這種情況先把問(wèn)題定位到“哪個(gè)坐標(biāo)系的變換在抖”這個(gè)可以用rviz中單獨(dú)顯示該坐標(biāo)系和其父系來(lái)觀察。然后斷開(kāi)上游數(shù)據(jù)源替換成一段固定值發(fā)布器看抖動(dòng)是否消失。如果固定值發(fā)布時(shí)也抖動(dòng)那問(wèn)題出在tf緩存或查詢邏輯如果不抖動(dòng)那問(wèn)題出在上游數(shù)據(jù)源。5.3 旋轉(zhuǎn)方向約定不一致最后是一個(gè)特別隱蔽但很常見(jiàn)的坑坐標(biāo)系的旋轉(zhuǎn)方向約定。有些設(shè)備定義正yaw為逆時(shí)針有些為正順時(shí)針有些廠家把IMU的z軸向上定為正旋轉(zhuǎn)有些卻沒(méi)有在文檔中說(shuō)明清楚。當(dāng)你把多個(gè)傳感器的數(shù)據(jù)統(tǒng)一到同一棵tf樹(shù)上時(shí)如果k各自的旋轉(zhuǎn)方向不一致在模型上看起來(lái)都是“轉(zhuǎn)了同樣的角度”實(shí)際數(shù)據(jù)卻互相矛盾。解決方案是每個(gè)傳感器接入tf樹(shù)之前先單獨(dú)做一次矩形軌跡測(cè)試。例如讓機(jī)器人沿閉合矩形行走檢查rviz中機(jī)器人朝向相對(duì)軌跡的角度變化是否符合預(yù)期。如果發(fā)現(xiàn)某個(gè)數(shù)據(jù)源的旋轉(zhuǎn)方向和預(yù)期相反最好在驅(qū)動(dòng)層做歸一化處理如對(duì)四元數(shù)z取負(fù)而不是在tf樹(shù)里加一個(gè)額外的旋轉(zhuǎn)邊來(lái)“校正”。5.4 坐標(biāo)變換與張量運(yùn)算結(jié)合后的常見(jiàn)認(rèn)知誤區(qū)把坐標(biāo)變換和張量運(yùn)算放到一起后很多人還會(huì)犯一個(gè)認(rèn)知層面的錯(cuò)誤以為旋轉(zhuǎn)矩陣圖是個(gè)張量。嚴(yán)格來(lái)說(shuō)旋轉(zhuǎn)矩陣本身是一個(gè)特殊的二階張量但它的兩個(gè)下標(biāo)在坐標(biāo)變換下并不總是遵循一樣的規(guī)則需要區(qū)分矩陣是作為“變換矩陣”還是“物理量”的表示。比如慣性張量在坐標(biāo)系變換后按R I R^T更新而旋轉(zhuǎn)矩陣R本身則是用于變換向量的算子它并不像普通張量那樣被“操作”它本身就是“操作”本身。這種微妙差別在實(shí)際計(jì)算中直接決定了你用R^T還是R。在機(jī)械臂運(yùn)動(dòng)學(xué)里當(dāng)從關(guān)節(jié)速度計(jì)算末端速度時(shí)用雅可比矩陣而從末端力映射回關(guān)節(jié)力矩時(shí)用雅可比矩陣的轉(zhuǎn)置這背后的數(shù)學(xué)機(jī)制就是協(xié)變與逆變關(guān)系的具體體現(xiàn)。不搞懂這兩個(gè)概念遇到機(jī)器人奇異位形時(shí)很容易不知道雅可比為什么會(huì)退化更不知道如何用奇異值分解去判斷可操作度。這些看似“純數(shù)學(xué)”的知識(shí)在工程中實(shí)實(shí)在在決定著系統(tǒng)的穩(wěn)定性、精度和調(diào)試效率。我也是連續(xù)做了幾個(gè)多傳感器融合項(xiàng)目踩過(guò)不少角度、方向、矩陣順序上的坑之后才真正意識(shí)到張量運(yùn)算和坐標(biāo)變換不是一個(gè)“知道就行”的知識(shí)點(diǎn)而是一種需要肌肉記憶的工程直覺(jué)。最后分享一個(gè)親身試驗(yàn)過(guò)很有效的練習(xí)方法自己拿張紙手動(dòng)把同一個(gè)向量在直角坐標(biāo)和極坐標(biāo)之間變換把協(xié)變和逆變各算一遍再手動(dòng)計(jì)算度規(guī)矩陣完成一輪之后對(duì)張量變換的那些公式會(huì)從“背住”變成“理解”。這套練習(xí)做完之后再回頭處理tf樹(shù)你會(huì)發(fā)現(xiàn)那些報(bào)錯(cuò)不再是隨機(jī)碰運(yùn)氣的事而是完全可預(yù)測(cè)、可推理的。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
777米奇影视第四色| 久久五月激情| 99热这里都是精品| 国产看真人毛片爱做A片| 5月丁香综合网| 超碰天堂网| www.色五月| 无遮挡国产高潮视频免费观看| 欧美成人精品老美女噜噜噜| 九九操操| 91婷婷在线观看| 五月天开心色情网| 欧美啄木乌丝袜人妻系列| 欧美亚洲成人在线| 婷婷五月花.97| 成人丁香婷婷| 五月激情网五月综合网| 婷婷啪啪| 日本一级大片| 99cao婷婷| AV网站免费在线| 开心婷婷五月天电影院| 99re这里只有精品99| 五月婷婷很很色| 久久伊人五月天| 五月激情丁香久久综合网| 4399精品一区二区| 97久久综合网| 校花娇喘呻吟校长陈若雪视频| 91精品久久久久、久五月天| 九九精品视频在线观看| 热99只有里视频| 好好干Av| 天天爽爽日日做做| 激情文学第四色婷婷丁香五月| 久青草影院| 久久久久人妻精品| 婷婷五月婷婷| 色五月色图| 婷婷九九| 五月丁香色色| 天天日夜夜欢| 亚洲高清在线| 婷婷丁香人妻天久久| 免费啪啪啪网站| 成人做爰A片免费看网站找不到了| 五月天综合久久| 99青青草| 五月色欧洲| 丁香久久五月婷综合| 久久久全国免费视频| 伊人超碰| 中文av网| 婷婷97狠狠成人网站| 特级西西4444www无码| 成人丁香| 久久色情| 亚洲五月婷婷| 色偷偷AV亚洲男人的天堂| 成人丁香五月| 9精品在线| 精品99*| 五月激情综合网| 婷婷六月五月天综合| 婷婷日日天天| 97好吊操| 五月丁香六月婷婷色日| 99在线视频精品| 亚洲无码色| 日本色爽| 久久99热这里只频精品6学生| 色碰碰| 九九色图| 五月天社区| 中文字幕成人影视| 九九九色综合| 狠狠干狠狠干| 91免费试看| 99久久超级| 综合久久婷婷99| 丁香五月天成人| 国产黄色在线观看| 久色88| 婷婷午夜综合| 色婷婷欧美在线| 国产精品色婷婷久久久精品| 五月婷婷 欧美| 狠狠干五月丁香| 伊人婷婷五月天av| 色狠狠综合| 日本强伦片中文字幕免费看| 国产乱妇无乱码大黄AA片| 婷婷九月色| 五月婷婷在线免费观看| 99亚州综合精品成人网| 五月丁香婷婷狠狠操| 人妻日日日| 色婷婷狠狠禁久久| 99免费视频久久| 五月激情婷婷色| 六月丁香好婷婷| 丁香五月天无码| 天天日天天爱天天噪| 综合激情视频| 国外亚洲成AV人片在线观看| 久久丁香九| 色综合久久综合中文综合网| 丁香六月视频| 五月婷在线观看| 激情av| av一区二区电影免费在线观看| 亚洲av无码精品色午夜| 99国产小视频| 99国产精品久久久久久久久久久| 天天肏天天肏天天肏| 五月丁香色婷婷婷基地| 日本在线视频www色| 五月婷丁香| 婷婷碰碰| 五月婷婷丁香五月亚洲色| 狠狠操狠狠做| 狼友视频在线观看18| 成人国产欧美大片一区| 亚洲爱婷婷| 亚洲综合激| 婷婷五月天六点丁香五月| 色婷丁香| 人人操碰| 久久久大香蕉| 久久激情网| 日韩成人电影AV| 996热re视频在线观看视频| 无码se| 99热99ai| 婷婷成人视频| 婷婷色网| 中文AV网| 色爽九九| 天天情色五月天| 黄色三级日本| 婷婷内射视频在线| 亚洲99在线| 国精产品一区二区三区| 碰97 久| 99玖玖人人| 2020夜夜操天天爽| 97一区二区| 天天干,天天舔| 99综合网| 五月色丁香婷婷综合| 精品无码色欲AV| 另类图片天天影视在线观看| 成人在线不卡| 99ri国产在线| 欧美色偷拍| 99综合激情久久精品久久| 五月丁香六月婷婷网| 高清一区二区三区日本久| 婷婷九月亚洲| 色综合久| 另类五月婷婷| 内射干少妇亚洲69XXX| 色婷婷丁香五月| 91日日日| 97香蕉碰碰人妻国产欧美| 色 色 色综合com| 五月丁香久久激情综合| 影音先锋91| 黄色一极大片| 在线色色| 五月丁香六月婷婷在线小说视频| www.第四色99| 99日韩网站| 夜夜爽天天干| 我爱宗和色| AⅤ网站在线看| 婷婷五月开心中文字幕在线| 久热免费视频| 五月天激情.com| 久婷狼色诱惑在线| 任你爽精品免费视频6| 99碰网站| 色五月综合网| 五月天婷五月天综合网在线观| 日本色天堂| WWW免费视频碰碰碰碰| 久久激情天堂| 亚洲日韩人妻操逼| 激情碰碰碰| 99精品免费| 91精品无码久久久久久五月天| 超碰人人干| 日韩久久色| 五月婷婷六月丁香| 丁香五月电影| 精品国产va久久久久| 深爱激情69热| 婷婷永久在线| 99操视频| 99热6这里只有精品6| 成人无码精品1区2区3区免费看| 久久91久久91色欲精品| 这里只有精品视频在线| 精品久久久久久久人妻| 丁香五月1页| 色久九| 日本高清久| 日本欧美国产| 天天色天天舔天天爱天天爽| 中文字幕av久久爽一区| 9l视频自拍九色9l黑人| 99久久综合| 丁香五月六月久久综合 | 久久人操-久草婷婷-成人AV| 九九色色| 久久99这里只有精品视频| 婷婷五月丁香综合激情| 激情六月一二| 婷婷激情五月天在线视频| 这里只有精品视频99| 婷婷五月丁香成人| 亚洲另类婷婷五月丁香在线播放| 婷婷娌伦网| 五月婷婷激情综合| 碰碰91| 五月丁香婷婷啪啪综合网| 蜜乳人妻一区二区三区| 人人操av| 99热9| 免费五月婷婷网| AV色五月婷婷| 97人凄人人操人人爽| 啪啪一区| 久久久性爱视频| 九九色99| sewuyuejiqingwang| 超碰69天堂| 五月丁香婷婷综合网| 人人操Av| 久久最新色色色| 国产综合丁香五月天| 亚洲精品又粗又大又爽A片| 激情五月综合亚洲另类| 熟女激情五月天| 婷婷综合网在线| 成人毛片在线免费观看| 婷婷色在线播放| 亚洲影院婷婷色| 亚洲蜜桃精久久久久久久久久久久| 丁香六月综合| 26uuu精品一区二区| 五月婷婷少妇之| 久久五月激情| 99ri国产在线| 91色色色| 99精品无码视频| 色色综合网站| 色婷丁香五月| 亚洲狠狠狠色婷婷综合激情久久久| 武则天精品久久| 激情宗合 激情宗合| 五月丁香婷婷狠狠操| 这里只有精品视频在线观看免费| 欧洲激情网站| 加勒比色色| 99热亚洲精品| 91超级碰| 99亚洲综合| www.99色| 丁香五月狠狠综合欧美| 天天舔天天摸天天透| 综合AV在线| 久色五月天| 五月婷婷国产| 九九色色网| www,色婷婷| 中文AⅤ大全| 久热天堂| 婷婷五月天激情小说| 国产精品视频免费看| 久久9精品视频| 情久久综合五月天| 26uuu亚洲精品国产| 五月第四色| 色婷婷久久| 五月丁香婷婷深深爱| 五月婷婷丁香婷婷| 五月亭亭六月天| 天天干天天爽| 图片区 小说区 区 亚洲五月| 日本欧美成人片AAAA| 婷婷大香蕉| 欧美性生交XXXXX无码小说| 99这里只有精品| 99热这里有精品| 91丁香色| 九九99免费视频| 亚洲国产精品五月天| 五月丁香六月激情狠狠| 2020日日干| 激情婷婷五月| av一区二区电影免费在线观看| 日韩无码系列| site:minyis.com| 米奇影视资源777狠狠色婷婷五月天激情网 | 黑人无码一区| 色亭亭五月天网扯| 日本丁香五月| 粉嫩AV久久一区二区三区| 2023天天日夜夜爽| 五月婷视频| 久久丁香五月天| 色情终和网| 婷婷激情人妻| 日逼免费视频| 99精品综合视频| 婷婷在线日韩综合| 五月丁香婷婷无码中文| 亚州操操| 国产三级在线播放| 色综合xx| 亚洲久热| 婷婷色在线播放| 99re热精品在线视频| 亚洲99在线视频| 99啪| 久99精品视频| 久热中文字幕在线线观看| WWW.17C亚洲精品| 亚洲操逼网| 丁香花五月天社区| 色狠狠色狠狠| 五月婷婷丁香| 狠狠九九婷婷韩| 亚洲XX日本| 久草性爱| 婷婷六月综合基地| 五月丁香六月婷婷视频| 亚洲天堂婷婷丁香| 性 色 婷婷| 五月丁香亭亭操逼| 色情婷| 丁香六月毛片| 亚洲愉拍99热成人精品| 五月婷婷丁香五月亚洲色| 991精品在线视频| 91操女| 婷婷成人综合免费视频| 色婷婷香蕉| 538任你爽| 五月激情综合美女久久| 七月丁香婷婷 色色| 久久草人妻| 97香蕉久久超级碰碰高清版| 1024成人在线观看| 激情爱爱网站超大免费| 久久影视婷婷五月| 亚州精品久久久久AV无码| 婷婷五月天成人网| 五月丁香啪啪激情| www婷婷色| 777精品成人a v久久| 一区二区三区视频| 翔田千里aV中文字幕| 色五月婷婷综合| aa久久| 超碰成人av| se.久久视频在线观看| 99热在线观看免费| 96色婷婷| 开心五月天激情网| 嫩草视频在线观看| 丁香婷婷激情| 思思热精品免费视频| 嫩BBB槡BBBB搡BBBB| 丁香婷婷久久| 国产亚洲精品AAAA片APP| 久久精品五月天| 激情综合网五月婷婷| 一区二区你懂的| 亚洲情a| ZpRSw| 五月天伊人网| 亚洲啪啪视频| 婷婷五月丁香五月| 天天做天天爱天天综合| 日本女人久久| 五月天大香蕉| 天天天天爽爽天干| 亚洲旡码| 国产高潮A片羞羞视频涩涩| 天天爽天天弄| 丁香五月天影院| 色色日本| 五月丁香激情综合网| 色色色热| 丁香婷在线| 精品九九婷婷| 四色五月婷婷| 亚洲无码成人性爰网| 操操综合网婷婷| 婷婷99丁香| 日韩成人AV在线播放| 五月激情视频| 大香蕉久久综合网| 久久婷婷色| 五月丁香婷色| 丁香五月综合激情性爱| 99热这里有精品| 久久一热| www.国产亚洲69ty.久久久久久久久久久久| 少妇被躁爽到高潮无码文| 天天色,天天日,天天做| 色五月婷婷成人视频| 99精品综合在线| 日本久久人| 色综合色综合色综合高潮| 欧美色必爱| 五月天激情图片| 婷婷六月激情丁香| 亚洲精品国产成人AV在线| 亚洲综合婷婷| 综合色99| 1024在线视频| 99热这里只有精品55| 久久网思思| 久综合九| 91男人资源站| 久久精品99国产精品日本| 五月花综合视频| 色欲久久综合| 色九月国产| 久久思思热| 天天噜| 久久午夜理论| 99色精品视频| 六月婷欧美| 婷婷成人基地| 丁香五月色| 日韩啊啊啊| 六月伊人婷婷| 99色综合网| 丁香花成人区| 丁香五月婷婷少妇| 国产亚洲AV人片在线| 五月激情小说| 激情五月婷婷视频一区二区三区| 激情五月婷| 99综合免费视频| 狠狠88综合久久久久噜噜噜| 婷婷成人网五月天| 婷婷亚洲综合| 五月天婷婷av| 色婷婷97| 99操视频| 色婷婷综合网| 亚洲啪啪啪啪| 91狠狠综合久久| 99九九在线视频| 日美三级| 9热久久在线| 婷婷5月久久综合网站| 色婷婷激情| 9l视频自拍9l九色9l成人| 丁香五月综合亚洲| 骚货艹网站视频| 玖操97| 91免费在线视频6| 久久xx| 久久婷丁香五月| 综合九九久久| 中文字幕成人影视| 九九热自拍| 色婷久九| 久热九九| 久久久com| 色噜噜婷婷| 99操久久| 激情小说视频图片| 大香蕉久操| 大香蕉久| 99色综合| 欧在线一区| 国内9l视频自拍老熟女九色| 欧美日韩日韩成人| 五月丁香久久呀| 久久五月天视频| 天堂A∨在线| 久久er视频6| .操區COm| 婷婷五月伦理| 日韩一级网站| 五月婷激情| 99热精品在线观看| 92久久久| 久久五月天色婷婷| 五月婷婷激情综合在线| 激情五月天噢美| 五月激情综合激情五月| 五月花亭亭| 丁香五月天激情视频| 日本色图综合| 亚洲蜜桃精久久久久久久久久久久| 拍真实国产伦偷精品| 在线看九一V图片| 婷婷福利影院| 9 1超碰九色| 五月丁香六月婷婷不卡免费无码 | 91热99| 六月婷婷激情| 午夜av网| 久操福利| 六月丁AV| 五月丁香影视| 91综合网| xxxx五月激情| 中文在线视频久1| 九九色人| 婷婷无五月无码视频| 夜夜操激情| 亚洲六月色婷婷| 99性爱| 狠狠色婷婷丁香五月| 超碰人人操在线| 激情五月天网页| 人妻啪啪啪| 思思热在线| 五月婷护士| 丁香花五月天激情| 色婷婷狠狠干芒果TV| 五月婷婷激情性爱| 色99欧洲色19| 日本天天综合| 丁香五月婷婷啪| www.丁香黄色五月天人与| 九九自拍网| 五月婷婷在线观看| 婷婷在线视频| 中文字幕,综合,91| 日韩精品二三区| 99热自拍| 日韩欧美颜射| 操日视频| 日本天堂久久| 六月五月丁香五月欧美| 99久久久久| 五月色激情综合网| 丁香五月AV综合激情| 婷婷五月亚洲综合| 熟女啪啪视频| 五月丁香中文| AV中文字幕夜夜操b天天摸bb | 天天日 天天草| 极品人妻VIDEOSSS人妻| 九九99男女视频在线观看| 99人这里只有精品| 久久婷婷六月综合综合| 亚洲区视频| 色婷婷精品视频| 婷婷大香焦| 婷五月丁香| 亚洲综合激情五月久久| 久热伊人| 五月天婷婷激情小说电影| 成人免费网站免费看| 人人操A| www.夜夜| 5月婷婷6月丁香aV| 天天做天天爽| 月婷婷亚洲| 激情五月久久| 日韩在线观看亚洲| 激情婷婷丁香五月天| 激情久久 婷婷| 日本色视| 丁香婷婷综合激情五月色| 91婷婷丁香五月亚洲| 久久狠狠色| 无码人妻少妇色欲AV一区二区| 97九色| 婷婷色丁香五月| 99色视频在线观看最新| 一级性爱视频| 99这里只有免费的精品| 亚洲精品无AMM毛片| 五月天免费色| 久久桃花网色婷婷| 五月婷婷激情综合网 | 日本九九九九| 蜜臀九九九九| 激情婷婷。| 天天五月天综合网址| 九九热99久久99| 99热这里只有精品在线观看| 色婷婷偷拍| 丁香五月天黄色片| 婷婷五月网图片区| 综合色五月| 天天干,天天舔| 久久婷婷六月综合| 五月丁香六月婷婷的女人| 天啪天啪天啪天啪| 色婷婷伊人| 色噜噜狠狠色综| 图片区 小说区 区 亚洲五月| 久久38视频| 婷婷射图| 婷婷色综合| 97涩涩丁香五月天| 黄色视频网站在线播放| 色婷婷五月天视频在线| 九九这里是免费的视频5| 五月丁香偷拍| 操你av| 大香蕉中文| 狠狠五月天| 婷婷成人小说综合| 国内一级精品| 激情婷婷五月女| 国产精产国品一二三在观看| 亚洲五月婷婷| 99热在这里只有免费精品| 色涩视频久久| 操碰99| 91啪级电影| 大胆伊人久久| 婷婷久久综合| 超碰不卡在线| 日批在线看| 操人视频91| 99热久久这里只有精品| 五月天天天天天天天天天天天婷婷婷| 99久热这里有精品| 日韩精品超碰在线观看| 婷婷情色开心五月天99| 无码啪啪| 精品五月天| 丁香综合婷婷开心激情网| 91色五月在线观看| 色色色99| 五月天操逼网| 性99网站| 五月色 亚洲| 丁香五月自拍| 日韩高清久久| 久久ri精品视频| 开心五月婷婷激情| 日本女人久久| 26uuu精品国产| 久热2025无码| 超碰亚洲天堂| 亚洲无码成人网| 狠狠干五月| 婷婷五月六月丁香| 激情综合99| 婷婷五月激情在线视频| 亚洲久久婷婷丁香五月天| 欧美日本VA| 毛片新网地| 色色丁香五月天社区| 无码AV免费精品一区二区三区| 99九九玖玖| 六月丁香五月天| 白天AV月月| 久青青久| 色色色色色色色色综合网| 欧美成人精品老美女噜噜噜| 丁香婷婷六月激情| 成人精品一区二区三区四区五区| 色婷婷综合综合网| 婷婷色吧| www.99热精品| 91九色精品| 亚洲婷婷激情综合激情999精品| 久久丁香综合香蕉| 激情综合网激情五月婷婷| 亚洲精品字幕在线观看| 激情小说五月天| www.久久99| 99热最新| 大地资源色婷婷视频在线| 九九色逼| 少妇大叫太大太粗太爽了A片| 五月天婷婷激情小说电影| 天天天综合网| 爱草视频在线| 9999色色色色| 亚洲欧美国产高清vA在线播放| 婷婷五月六月丁香综合| 丁香涩涩爱| 一级黄色尤物综合视频手机在线观看| 色五月丁香五月天| 九九热re99re6在线精品| 香蕉婷婷色五月| 久久婷婷网| 色情婷婷| 小视频久久久aaa| www.夜夜操.com| 色播播五月天| 9精品久久999| 9999热精品| 日韩黄色电影| 婷婷va| 丁香五月综合| 一區四區歐美日韓| 激情五月婷在线精品| 5月丁香啪啪啪| 99a级片| 久久激情五月| 淫五月停停| 欧美毛卡| 26uuu视频欧美| 丁香五月天欧美| 婷婷六月丁香欧美视频在线| 精品无吗va视频免费观看| 成人免费在线电影| 丁香五月天婷婷在线视频| 第四色婷婷最爱| 噜噜精品| 激情丁香五月天| 三年高清大片免费观看国语| 9在线9在线婷婷在线国产| 91视频一起草| 亚洲AV无码久久精品色欲| 99久久极情精品一区| 久久新地址| 这里只有精品视频99| 99久99久| 伊人久久婷婷| 五月丁香六月婷婷网站| 色情丁香五月婷婷精品| 亚洲蜜桃精久久久久久久久久久久| 五月丁香久久激情综合| 五月丁香A片| 人人人操B超碰| 久久婷五月婷| 色综久久久| 99热网站| 天天日综合| 97在线观看| 五月丁香激情怕怕| 开心五月综合激情综合五月| 丁香色成人| 五月成人丁香av91| 伊九九三级区| 五月丁香五月婷婷| 国产精品激情AV久久久青桔| 五月丁香花激情综合网| 丁香五月欧美色综合| 六月丁香激情| 黄色AAAAAAA| 日操| 99啪啪网| 婷婷94s| 丁香激情五月综合网| 99热这里只有精品8| 操碰色一区就去操| 丁香五月六月久久综合 | 丁香婷婷午夜| 亚洲性天天| 91久久久久久| 182TV大香蕉| 久久久久久五月天| 国产成人精品123区免费视频 | 思思久久96热在精品国产,| 色婷婷操逼| 久久九九re热| 九九在线这里只有精品视频| 狠狠另类视频| 人人摸人人| 成人在线视频网| 天天做天天爽| 婷婷九月在线| 激情文学五月丁香六月婷婷| 国内熟女黄色系列| 亚洲噜色| 狠狠色噜噜狠| 丁香六月婷婷高清| 丁香婷婷基地| 婷婷丁香宗合888| a久久| 狠狠色丁香久久婷婷综合五月| 婷婷五月天美女视频| 激情五月天色播| 激情网战码亚洲A| 九月婷婷综合| 五月婷婷99热| 99久久婷婷国产综合精品草原| 五月婷在线色视频| 九九激情网| a在线观看| 九热...av| 五月天丁香综合| 91尤物九色在线| 天天噜日日噜综合无码| 久青操| 五月丁香成人| 97啪啪| 99精品在线观看| 青青.com| 欧美成人精品A片免费一区99| 噜噜噜色噜噜| 99热99精品在线观看| 色五月婷婷婷婷| 国产精品黑丝| 婷婷色六月| 超碰人人91| 97干在线视频| 久久五月天合网| 国产肥白大熟妇BBBB视频| 五月天综合区| 香蕉五月婷婷| 色九月婷婷| 五月丁香好婷婷姑娘综合网| 69凹凸成人综合网| 激情五月视频在线婷婷| 色噜噜五月天| 丁香五月欧美| 综合色综合| 五月婷免费视频| 殴美激情综合网| 开心五月婷婷婷美女| 久久综合婷婷| 欧美日韩aaaa| 91干视频| 国产乱子轮XXX农村| 五月婷婷六月婷| 婷婷趴趴| 六月激情婷婷| 五月开心深深爱激情综合| 综合99视频| 99婷婷| 色五月综合网| 五月色丁香| 欧美大片| 丁香婷婷激情| 无码毛片992367| 激情丁香久久| 91九色网| 五月天六月色| 99爱在线| 色色五月天网站| 搡BBBB搡BBB搡18 | 99色在线| 九热在线这里有精品6| 久久九九99.www| 99re8在这里只有精品| 激情综合五月色丁香婷婷| 五月丁香啪啪综合| 国产精品91抖高| 最新久久网址| 嫩草乱码一区三区四区| 69精品人人人人| 婷婷六月香| 可以看的av网站| 丁香五月在线观看| 97色色色色色色色色色色色色色| 97性视频| 人人综合色| 婷婷色综合| 九九99精品视频在线观看| 国产精品A片| 99久久99视频只有精品| 五月婷免费视频| 蜜臀久久99精品久久久久久酒店| 99九九在线| 色爱亚洲| 天天干天天操天天上| 婷婷五月天久久久| 99爱操| www.91色| 五月丁香婷婷综合久久| 欧美黄色AA片哗啦啦啦| 婷婷六月久久| 综合激情网五月激情| 六月丁香色色| 国产操逼网站| 欧美日韩成人h| 免费无码毛片一区二区A片| 中文激情网| 天天操综合网| 人人爱国产| 天堂草在线观| 99在线看片| 九九热只有这里是精品| 五月丁香婷婷啪啪| 婷婷五月花丁香| www.狠狠色.com| 欧美情月伍月天| 日韩综合网络男女香蕉a片| 丁香综合久久| 人妻Av在线| 99se丁香| 综合 激情 婷婷| 精品无码久久久久久久久| 人人干av| 婷婷五月情| 骚。com| 五月婷婷丁香在线视频| 激情校园 亚洲| 五月激情婷婷开心五月| 日韩五月婷婷| 狠狠色五月激情| 丁香五月天在线视频| 99啪啪| 91丨九色丨国产在线| 五月天婷婷激情在线色图| 久久精品五月| 欧美精品A片一区在线观看| 久久久久久久久久久44| 99综合熟女| 婷婷网影院| 精品成人在线观看| 高清视频一区| 在线综合91| 九洲一级A片| 啊v视频在线观看| 色婷婷视频| 开心五月激情| 天天开心AV色综合婷婷五月天| 丁香五月日本| 这里只有精品免费视频在线观看| 五月色网| 日韩无码色色| 久久久ww| 狠狠操狠狠操AV| 9久精品| 午夜无码熟熟妇丰满人妻 | 色色色com| 曰韩少妇内射免费播放| www狠狠爱com| 激情五月,激情综合网| 婷婷色影院| 五月婷婷丁香深深爱| 天天 青草 丝袜制服 在线| 这里只有精品免费观看网占| 99热国产免费| 99色在线视频| 久久精品国产AV一区二区三区 | 婷婷五月天VI| CAOBIBI| 五月丁香婷婷综合网| 人妻AV在线| 森林影视大全,最好看的2019年视频 | 午夜一区| 成人做爰黄A片免费看直播室男男 久草热8精品视频在线观看 | 97久久久| 激情网战码亚洲A| 五月丁香色五月| 99免费在线| 99爱在线精品视频免费观看| 色五月激情五月| 碰碰碰91| 另类色网| 夜夜夜夜撸夜夜操| 色五月婷婷中文字幕| 香港九九六区八区99| 97性视频| 26uuu国产精品| 日本五月天激情| 超碰九色| 色婷婷综合在线| 婷婷五月丁香六月伊人网| 婷婷丁香五月六月激情| 日本色色网站| 亚洲色就是色色色| 九九99九九99九九99视频网| 婷婷五月开心中文字幕在线| 伊人网碰碰| 色五月婷婷777| 色情丁香五月婷婷精品| 另类色视频| 久久久久久97| 琪琪色五月婷婷老师| 五月综合激情| 第四色婷婷色五月| 大香蕉520| 激情婷婷黄色五月| 99er免费在线观看| 在线另类视频| 综合激情四射一theav| 五月丁色AV| 人人舔天天| 五月天婷婷综合| 婷婷五月天情色| 六月丁香婷婷综合色播| 亚洲人妻Av| 99精品久| 丁香五月婷婷在线视频| 婷婷俺去也| 91热视频色网站| 婷婷丁香五月高清| 五月婷婷六月激情| 久久9视频| 欧美Va婷色| 丁香色五月AV在线| 激情5月天天天| 99热官网| 九九热这里只有精品7| 丰满人妻一区二区三区| 久久99大| 激情五月,色五月| 色99网| 国产精品操| 五月婷婷av| 97在线日韩| 九九九九九九九热| 专区无日本视频高清8| 人妻久久久久久久久妻久久久久久久久| 无码动漫av| 伊人五月婷婷国产视频| 五月婷婷丁香狠狠撸久久| 免费观看欧美成人AA片爱我多深 | 网站免费一站二站| 久热在线观看视频9| 天天舔天天操| www.91AV.com| 免费视频这里只有精品| 伊人久久丁香狠狠婷婷综合香蕉| 欧美这里只有精品| 久久婷婷青草五月天| 国产综合网在线| 涩 五月 婷婷 狠狠| 亚洲色色香蕉| 婷婷伊人綜合中文| 可以观看的AV| 欧美婷婷丁香五月| 狠狠干夜夜干| 五月丁香六月婷婷久久肏| 五月婷婷丁香| 91大神操美女| 色色色色网站| site:minyis.com| 欧美日韩中文国产一区发布| 五月丁香婷庭在线| 久9草在线观看视频| 亚洲婷婷免费| 91丨九色丨白浆| 色欲av伊人久久大香线蕉影院| 久久婷婷色色| 亚洲人妻av| 99热99日…..| 婷婷色色网站| 日本婷婷色日| 成年人夜夜喷水| 99亚洲视频| 停停五月天激情网| 人人叉久| 久热9| 天天舔天天摸天天射| 超碰婷婷色| 五月色天情| 色玖玖综合网| 婷婷中文字幕| 色五月首页| 97日在线视频| 五月天激情婷婷| 丁香五月婷婷久久综合激情网| 亚洲日本韩国| 精a品a| 99九九在线| 国产69久久久欧美黑人A片| 99久久综合精品五月天| 九色99视频| 久久婷婷综合网| 热无码A∨| 日本天堂网站99| 五月婷婷人人人操| 再次出发二| 日韩国产AV播放| 影音先锋一区| 日 日干 日日做| 啪精品| 久久伊人大香蕉| 五月婷婷干| 伊人干综合| www.丁香黄色五月天人与| 成人AV中文字幕| 色婷婷激情小说网| 婷婷刺激综合| 狠狠一日| 99热久| 2025年最新亚洲在线欧美| 六月婷婷综合久久| 亚洲精品一区中文字幕乱码| 伊人婷婷五月天av| 丁香五月大香蕉| 六月丁香婷婷爱| 五月丁香六月激情在线| 毛片色五月| 七七九九色色| 色色色色色色色色五月先| 久热精品免费视频4| 婷婷久久网| 色综合天天天天做夜夜| 色色色色欧洲| 丁香网站| 91九九| 五月婷婷六月丁香色| 久久婷婷五月国产激情综合片| 久热久re| 国产看真人毛片爱做A片| AV九九| 婷婷人妻激情| 日日夜夜干| 五月丁香福利| 五月婷婷综合视频| 天天干-天天日| 99热这里是精品| 97超碰欧美中文字幕| 五月婷婷爽爽爽| 亚洲激情五月天| 五月婷婷自拍视频| 婷婷 激情 五月| av网址在线| 影音先锋91资源站| 婷婷五月成人社区| 国产欧美日韩综合精品一区二区| 六月丁香啪啪啪| 久热成人| 超碰93在线观看| 丁香六月久| 视色综合| 亚洲免费99| 九九视频精品在线免费| 4399在线观看免费高清电视剧| 五月丁香啪啪婷婷| 婷婷色偷拍| 久久久久激情网| 男人天堂AV在线一区二区| 亚洲人操亚洲人| 五月天色色无码| 伊人久久婷婷| WWW,五月| 99re在线观看| 99碰超| 五月亚洲| 色色综合网络| 五月婷婷六月基地| 五月婷婷色吧!| 成人做爰A片免费看网站找不到了| 激情亚洲婷婷| www.com亚洲网站在线免费| 久久久高清| 亚洲操女| 福利视频在线播放| 日韩精品AV一区二区三区| 国产精品一区在线观看你懂的| 色五月五月婷婷| 中文字幕按摩做爰| 4399无码视频| 激情综合丁香六| www九九免费视频| 色婷婷成人久久| 玖玖激情网| 色欲影香| 亚洲99综合| 久热这里只有精品在线观看| 色亚洲中文| 五月丁香 啪啪啪| 婷婷5月九九| 丁香五月婷婷大香蕉| 色久女| 婷婷色色五月天| 丁香六月婷| 婷婷五月丁香四射| 丁香六月婷婷社区| 中文字幕综合| 色亚洲无码| 欧美性色五月天| 婷婷五月天久久久| 中文字幕AV网址| 天天噜噜| 国内自拍97在线| 99婷婷五月天激情| 五月丁香婷婷色色| 99热这里只有精品21| 色99热| 91色综合网| 久色激情| 97人碰人操| 天堂久久性| 色婷婷88| 5月婷婷综合| 五月天另类小说| 五月婷婷天堂| wwwss在线观看| 男人的天堂av俄罗斯热| 操久久网| 色久五月| 26uuu欧美| 人妻av在线| 9热久久| 久久久人妻不卡| 国产精品久久久丁香五月八戒视频| 五月激情综合深爱| 婷婷五月天网址| 99热在线观看| CAoub青青超碰| WWW五月婷婷| 日本VA视频| 99热精品无码| 亚洲殴洲精品Av在线| 激情婷婷五月| 九九色婷婷Av| 99热久| 蜜臀九九九九| 99热综合| 国产精品男人AV不卡| 99ri久久| 婷婷五月丁香伊人| 婷婷五月激情图片| 99在线精品免费视频| 七七婷婷综合| 亚洲操逼片| 国语精品探花| 亚洲成人在线播放| 久久九九99.www| 狠狠狠狠狠狠草| 婷婷射综合| 91九九九色在| 色婷婷综合综合网| 婷婷久久亚洲| 99热在线播放| 另类精品视频在线观看| 丁香婷婷婷五月| 久久精品99国产精品日本| 99熟女啪啪视频| 天天操夜夜玩!| 色婷婷影视| 97碰成超视频免费视频| 五月丁香六月婷婷综合在线| 操日视频| 国模狼狼| 五月亭亭六月激情| 亚洲超碰在线| 色五月综合在线| 一本大道嫩草AV无码专区| 色综合大香蕉| 色99热| 丁香五月电影| 亚洲视频二区| 91九色国产熟女| 婷婷五月精品| 九九操综合网| 五月丁香黄色视频| 91seAV| 六月丁香五月激情婷婷| 亚洲精品V天堂中文字幕| 91狠狠色| 色婷婷先锋| 婷婷伊人75| 精品人妻一区二区三区四区不卡在| 中国女人内射6XXXXX| 亚洲AV电影美洲AV电影| 91精品久久久久久综合五月天| 久久人妻少妇嫩草AV| 玖玖在线资源视频| 国产精品色| 思思热在线视频观看精品| 日日夜夜天天综合| 久久久人人操A V| 2025天天日爽| 久久99精品久久久久久三级| 天天爽,夜夜爽| www狠狠com|