免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

R3LIVE代碼詳解:從視覺光流到激光緊耦合優(yōu)化的SLAM實(shí)戰(zhàn)

R3LIVE代碼詳解:從視覺光流到激光緊耦合優(yōu)化的SLAM實(shí)戰(zhàn) 1. 從“看懂”到“改懂”為什么我們需要深入R3LIVE的代碼細(xì)節(jié)如果你已經(jīng)跟著教程跑通了R3LIVE的Demo看著點(diǎn)云地圖一點(diǎn)點(diǎn)構(gòu)建出來感覺挺酷那恭喜你入門了。但接下來你可能會(huì)遇到一堆問題為什么我的設(shè)備跑起來幀率這么低這個(gè)參數(shù)調(diào)了好像沒用我想加個(gè)新的傳感器該怎么接想自己改點(diǎn)東西從哪下手這些問題官方文檔和論文往往不會(huì)告訴你答案都藏在代碼里?!按a詳解”系列目的就是幫你跨過“能用”到“能改”這道坎。上一篇我們搭建了環(huán)境理清了數(shù)據(jù)流的主干。這一篇我們要真正扎進(jìn)核心的算法模塊里去看看那些炫酷的實(shí)時(shí)建圖與定位功能到底是怎么一行行代碼實(shí)現(xiàn)的。我會(huì)帶你像讀一個(gè)復(fù)雜工程的源碼一樣不是浮光掠影而是抓住幾個(gè)最關(guān)鍵、最常被問到的“牛鼻子”圖像數(shù)據(jù)的處理流水線、激光雷達(dá)點(diǎn)云的畸變補(bǔ)償與特征提取以及最核心的緊耦合優(yōu)化器。我會(huì)用大量的代碼片段和流程圖文字描述來解釋并分享我在調(diào)試和修改這些模塊時(shí)踩過的坑和總結(jié)的經(jīng)驗(yàn)。2. 視覺前端從RAW圖到光流追蹤的完整流水線R3LIVE的視覺部分承擔(dān)著提供高頻姿態(tài)更新和深度估計(jì)的重任。它的輸入是原始圖像輸出則是用于后續(xù)優(yōu)化的視覺特征點(diǎn)。這個(gè)過程遠(yuǎn)比調(diào)用一個(gè)cv::calcOpticalFlowPyrLK函數(shù)復(fù)雜。2.1 圖像預(yù)處理與金字塔構(gòu)建原始圖像進(jìn)來第一步絕不是直接丟給光流。在R3LIVE的image_process函數(shù)中通常位于某個(gè)visual_processing.cpp或類似文件中你會(huì)發(fā)現(xiàn)它做了以下幾件事去畸變根據(jù)事先標(biāo)定好的相機(jī)內(nèi)參和畸變系數(shù)對(duì)圖像進(jìn)行矯正。這里用的是OpenCV的cv::undistort函數(shù)。一個(gè)常見的坑是標(biāo)定參數(shù)的單位和格式必須與代碼中的cv::Mat矩陣完全匹配否則去畸變后圖像會(huì)變得很奇怪。我曾經(jīng)因?yàn)闃?biāo)定文件里k1 k2 p1 p2 k3的順序和代碼里讀取的順序不一致導(dǎo)致后續(xù)光流追蹤完全失敗查了半天才定位到這里。// 偽代碼示意 cv::Mat intrinsic_mat (cv::Mat_double(3 3) fx 0 cx 0 fy cy 0 0 1); cv::Mat dist_coeffs (cv::Mat_double(1 5) k1 k2 p1 p2 k3); cv::undistort(raw_image undistorted_image intrinsic_mat dist_coeffs);圖像金字塔生成光流追蹤需要在不同尺度上尋找匹配點(diǎn)以提高對(duì)大運(yùn)動(dòng)的魯棒性和計(jì)算效率。R3LIVE會(huì)構(gòu)建一個(gè)高斯金字塔比如4層。底層是原圖或下采樣后的基礎(chǔ)層上層是逐步降采樣的模糊圖像。這里的關(guān)鍵參數(shù)是金字塔層數(shù)(pyramid_levels)和每層的縮放系數(shù)(scale_factor通常為0.5)。層數(shù)越多能處理的幀間位移越大但計(jì)算量也越大。對(duì)于車載或無人機(jī)高速場(chǎng)景我通常會(huì)把層數(shù)設(shè)為4甚至5對(duì)于室內(nèi)機(jī)器人低速場(chǎng)景3層就夠了可以節(jié)省計(jì)算資源。2.2 光流追蹤的核心策略與關(guān)鍵代碼預(yù)處理后的圖像連同上一幀追蹤到的特征點(diǎn)被送入光流模塊。R3LIVE通常采用LK光流法。但直接調(diào)用OpenCV函數(shù)是不夠的需要一套策略來管理特征點(diǎn)的“生死”。在代碼中你會(huì)找到一個(gè)FeatureTracker類或類似的結(jié)構(gòu)體。它的trackImage函數(shù)是核心。我拆解一下它的典型步驟前向光流用上一幀的特征點(diǎn)prev_pts在當(dāng)前幀金字塔上追蹤得到curr_pts。反向光流校驗(yàn)這是一個(gè)非常有效的去外點(diǎn)手段。再用當(dāng)前幀追蹤到的點(diǎn)curr_pts反向到上一幀金字塔進(jìn)行追蹤得到back_pts。然后計(jì)算prev_pts和back_pts的距離如果大于某個(gè)閾值比如0.5個(gè)像素則認(rèn)為這個(gè)追蹤不可靠剔除。F矩陣校驗(yàn)對(duì)于前后幀的點(diǎn)對(duì)計(jì)算基礎(chǔ)矩陣F利用RANSAC剔除不符合極線約束的匹配外點(diǎn)。這一步能過濾掉由于遮擋、重復(fù)紋理等造成的錯(cuò)誤匹配。均勻化與補(bǔ)點(diǎn)經(jīng)過剔除特征點(diǎn)可能變得稀疏或不均勻。代碼里會(huì)有一個(gè)rejectWithF和uniformDistribution函數(shù)。它會(huì)將圖像劃分成網(wǎng)格如10x10的格子確保每個(gè)格子里有一定數(shù)量的特征點(diǎn)。如果某個(gè)格子點(diǎn)太少就會(huì)在這個(gè)格子內(nèi)用cv::goodFeaturesToTrack檢測(cè)新的角點(diǎn)進(jìn)行補(bǔ)充。這里有一個(gè)重要的實(shí)操細(xì)節(jié)特征點(diǎn)ID的管理。每個(gè)被追蹤的特征點(diǎn)都有一個(gè)唯一ID。在補(bǔ)點(diǎn)時(shí)新點(diǎn)會(huì)被賦予新的ID追蹤成功的點(diǎn)保留原有ID。這個(gè)ID會(huì)一直傳遞到后端優(yōu)化用于構(gòu)建重投影誤差。如果ID管理混亂后端的數(shù)據(jù)關(guān)聯(lián)就會(huì)出錯(cuò)。在閱讀代碼時(shí)務(wù)必理清ids這個(gè)向量是如何隨著光流追蹤而更新和傳遞的。2.3 視覺深度估計(jì)與點(diǎn)云生成追蹤到的2D像素點(diǎn)需要轉(zhuǎn)換成3D空間點(diǎn)才能用于建圖。這就是視覺深度估計(jì)模塊的工作。在R3LIVE中深度主要來源于兩種方式激光雷達(dá)深度關(guān)聯(lián)這是R3LIVE的核心創(chuàng)新之一。對(duì)于當(dāng)前幀的每個(gè)視覺特征點(diǎn)代碼會(huì)去查找同一時(shí)刻或時(shí)間戳對(duì)齊后的激光雷達(dá)點(diǎn)云。利用當(dāng)前的姿態(tài)估計(jì)來自IMU預(yù)測(cè)或上一輪優(yōu)化將視覺點(diǎn)反向投影到3D空間然后在投影線附近的一定半徑內(nèi)搜索最近鄰的激光點(diǎn)。如果找到則該激光點(diǎn)的深度就作為這個(gè)視覺特征點(diǎn)的深度。這個(gè)過程在代碼中體現(xiàn)為一個(gè)searchPointCloudForDepth的函數(shù)或循環(huán)。注意這里的“半徑”參數(shù)非常關(guān)鍵。設(shè)大了容易關(guān)聯(lián)到錯(cuò)誤的、非對(duì)應(yīng)的物體上的點(diǎn)引入噪聲設(shè)小了很多點(diǎn)會(huì)因找不到對(duì)應(yīng)深度而被丟棄導(dǎo)致特征利用率低。我的經(jīng)驗(yàn)是這個(gè)半徑需要根據(jù)激光雷達(dá)的精度和點(diǎn)云密度來調(diào)整。對(duì)于16線雷達(dá)在5-10米內(nèi)0.1-0.2米是個(gè)不錯(cuò)的起點(diǎn)對(duì)于固態(tài)激光雷達(dá)或高線數(shù)雷達(dá)可以更小一些。三角化對(duì)于無法從激光雷達(dá)獲得深度的點(diǎn)比如遠(yuǎn)處或雷達(dá)盲區(qū)如果這個(gè)特征點(diǎn)被連續(xù)多幀追蹤到則可以通過多視圖幾何三角化的方式估計(jì)其深度。代碼中會(huì)調(diào)用cv::triangulatePoints函數(shù)。經(jīng)過深度估計(jì)后具有有效深度的視覺特征點(diǎn)就被轉(zhuǎn)換為3D點(diǎn)并和激光點(diǎn)云一起送入后續(xù)的融合建圖模塊。一個(gè)常見的性能瓶頸就在這里對(duì)每一個(gè)視覺點(diǎn)進(jìn)行最近鄰搜索尤其是暴力搜索是非常耗時(shí)的。在代碼優(yōu)化時(shí)可以考慮對(duì)當(dāng)前幀的激光點(diǎn)云建立KD-Tree能大幅加速搜索過程。3. 激光雷達(dá)前端點(diǎn)云去畸變與特征提取激光雷達(dá)在旋轉(zhuǎn)掃描過程中載體本身也在運(yùn)動(dòng)這會(huì)導(dǎo)致點(diǎn)云發(fā)生“運(yùn)動(dòng)畸變”。R3LIVE作為緊耦合系統(tǒng)必須首先糾正這個(gè)畸變?nèi)缓筇崛∮杏玫奶卣鳌?.1 運(yùn)動(dòng)畸變補(bǔ)償原理與插值策略假設(shè)一幀激光點(diǎn)云覆蓋了100ms的時(shí)間在這100ms里機(jī)器人的位置和姿態(tài)發(fā)生了變化。掃描開始時(shí)打到的點(diǎn)和掃描結(jié)束時(shí)打到的點(diǎn)其對(duì)應(yīng)的機(jī)器人位姿是不同的?;冄a(bǔ)償?shù)哪康木褪菍⑦@一幀內(nèi)所有的點(diǎn)都統(tǒng)一補(bǔ)償?shù)酵粋€(gè)時(shí)刻通常是這幀點(diǎn)云的結(jié)束時(shí)間戳或稱為scan_end_time。在代碼中這個(gè)功能通常由一個(gè)LidarProcessor類的distortionCorrection函數(shù)完成。它的輸入是原始點(diǎn)云和一系列IMU數(shù)據(jù)提供了高頻的姿態(tài)變化。其核心步驟如下時(shí)間對(duì)齊為點(diǎn)云中的每個(gè)點(diǎn)point_i計(jì)算其相對(duì)于本幀結(jié)束時(shí)間scan_end_time的時(shí)間差delta_t_i。這個(gè)時(shí)間差通常由雷達(dá)驅(qū)動(dòng)提供如timestamp字段或者是根據(jù)點(diǎn)的掃描角度和雷達(dá)轉(zhuǎn)速推算的。位姿插值我們需要知道在scan_end_time - delta_t_i這個(gè)時(shí)刻機(jī)器人的位姿是什么。由于IMU頻率高如200Hz我們可以利用IMU預(yù)積分或直接插值的方式獲取。R3LIVE通常維護(hù)一個(gè)姿態(tài)緩沖區(qū)state_buffer里面按時(shí)間戳存儲(chǔ)了歷史時(shí)刻的機(jī)器人狀態(tài)位置、姿態(tài)、速度等。通過查找這個(gè)緩沖區(qū)對(duì)兩個(gè)最近時(shí)刻的狀態(tài)進(jìn)行線性插值或球面線性插值對(duì)于旋轉(zhuǎn)得到每個(gè)點(diǎn)對(duì)應(yīng)時(shí)刻的位姿T_i。坐標(biāo)變換設(shè)scan_end_time時(shí)刻的位姿為T_end。那么將點(diǎn)point_i從T_i坐標(biāo)系變換到T_end坐標(biāo)系的公式為point_i_corrected T_end.inverse() * T_i * point_i。這樣所有點(diǎn)就被校正到了同一時(shí)刻的坐標(biāo)系下。這里有一個(gè)極易出錯(cuò)的細(xì)節(jié)姿態(tài)的存儲(chǔ)和插值方式。如果代碼中使用的是四元數(shù)表示旋轉(zhuǎn)插值時(shí)必須使用球面線性插值slerp而不是對(duì)四元數(shù)的四個(gè)分量進(jìn)行線性插值后者會(huì)破壞四元數(shù)的單位約束導(dǎo)致結(jié)果錯(cuò)誤。檢查代碼中是否有Eigen::Quaterniond::slerp或類似函數(shù)的調(diào)用。3.2 特征提取平面點(diǎn)與邊緣點(diǎn)的判別去畸變后的點(diǎn)云接下來要被分類為“平面點(diǎn)”和“邊緣點(diǎn)”。這兩類特征在后端優(yōu)化中分別用于構(gòu)建點(diǎn)到面的距離誤差和點(diǎn)到線的距離誤差。特征提取的算法通常借鑒LOAM系列。在代碼里你會(huì)找到一個(gè)extractFeatures函數(shù)。它的大致邏輯是計(jì)算曲率對(duì)于點(diǎn)云中的每個(gè)點(diǎn)i取其前后各5個(gè)點(diǎn)在同一掃描線上計(jì)算這些鄰近點(diǎn)到點(diǎn)i擬合的直線的距離或到擬合的平面的距離這個(gè)距離的某種統(tǒng)計(jì)量如方差被定義為曲率。曲率大的點(diǎn)意味著其局部幾何變化劇烈可能是邊緣曲率小的點(diǎn)局部平坦可能是平面。分類篩選對(duì)每一條掃描線ring上的點(diǎn)根據(jù)曲率排序。選取曲率最大的幾個(gè)點(diǎn)作為候選邊緣點(diǎn)曲率最小的幾個(gè)點(diǎn)作為候選平面點(diǎn)。同時(shí)要避免特征點(diǎn)聚集所以會(huì)施加一個(gè)距離閾值確保選出的特征點(diǎn)在空間上是分散的。遮擋判斷這是一個(gè)非常重要的邏輯。如下圖所示如果點(diǎn)B被選中但點(diǎn)A和點(diǎn)C與點(diǎn)B的夾角很小且距離激光雷達(dá)更近那么點(diǎn)B可能是一個(gè)被遮擋的邊緣比如墻的側(cè)面這種點(diǎn)不穩(wěn)定應(yīng)當(dāng)剔除。代碼中會(huì)計(jì)算點(diǎn)B與其前后點(diǎn)的向量夾角和距離比來進(jìn)行判斷。激光雷達(dá) / \ / \ A C \ / \ / B (可能被遮擋的邊緣點(diǎn))調(diào)參經(jīng)驗(yàn)特征提取環(huán)節(jié)有幾個(gè)關(guān)鍵參數(shù)curvature_threshold曲率閾值直接影響特征點(diǎn)的數(shù)量。閾值設(shè)低特征點(diǎn)多優(yōu)化約束強(qiáng)但可能引入噪聲閾值設(shè)高特征點(diǎn)少可能約束不足。需要根據(jù)場(chǎng)景調(diào)整。neighbor_count計(jì)算曲率時(shí)考慮的鄰近點(diǎn)數(shù)。通常5-10是個(gè)合理范圍。selected_feature_num_per_scan每條掃描線選取的特征點(diǎn)數(shù)量。這需要平衡計(jì)算量和精度。對(duì)于16線雷達(dá)每條線選2-4個(gè)邊緣點(diǎn)和4-6個(gè)平面點(diǎn)可能是個(gè)起點(diǎn)。提取出的特征點(diǎn)會(huì)被存儲(chǔ)起來并和視覺特征點(diǎn)一起等待后端優(yōu)化器的“召喚”。4. 緊耦合后端優(yōu)化誤差構(gòu)建與求解的魔鬼細(xì)節(jié)這是R3LIVE最核心、也是最復(fù)雜的部分。它接收來自視覺前端和激光前端預(yù)處理好的特征數(shù)據(jù)以及IMU的預(yù)積分量構(gòu)建一個(gè)統(tǒng)一的非線性最小二乘問題然后求解出最優(yōu)的機(jī)器人狀態(tài)。4.1 狀態(tài)向量與IMU預(yù)積分約束優(yōu)化器如Estimator類維護(hù)著一個(gè)滑窗內(nèi)的狀態(tài)向量。狀態(tài)x通常包括位置p(3維)姿態(tài)四元數(shù)q或旋轉(zhuǎn)矩陣R(4維或3維SO3)速度v(3維)陀螺儀零偏b_g(3維)加速度計(jì)零偏b_a(3維)可能還有視覺特征的逆深度λ。IMU預(yù)積分約束連接了滑窗中相鄰兩個(gè)關(guān)鍵幀i和j之間的狀態(tài)。它提供了相對(duì)位置、速度和旋轉(zhuǎn)的變化量Δp Δv Δq這些變化量只與i和j時(shí)刻之間的IMU測(cè)量以及零偏有關(guān)與全局狀態(tài)無關(guān)。在優(yōu)化中IMU約束構(gòu)建的誤差項(xiàng)是e_imu [Δp - pred_Δp Δv - pred_Δv 2*[q_i^{-1} ? q_j ? pred_Δq^{-1}]_xyz]其中pred_Δp pred_Δv pred_Δq是由IMU預(yù)積分理論計(jì)算出的預(yù)測(cè)值。這個(gè)誤差項(xiàng)將i和j時(shí)刻的狀態(tài)緊密耦合在一起。代碼閱讀重點(diǎn)找到IMU預(yù)積分類如IntegrationBase。關(guān)注它如何接收IMU數(shù)據(jù)、進(jìn)行中值積分或歐拉積分、更新預(yù)積分量delta_pdelta_vdelta_q和協(xié)方差矩陣。更重要的是找到它如何提供對(duì)零偏b_ab_g的雅可比矩陣因?yàn)閮?yōu)化過程中需要這些雅可比來更新預(yù)積分量當(dāng)零偏估計(jì)發(fā)生變化時(shí)。4.2 激光雷達(dá)約束點(diǎn)到面與點(diǎn)到線對(duì)于提取的一個(gè)激光平面點(diǎn)p_l我們?cè)跉v史地圖中尋找其對(duì)應(yīng)的平面。具體做法是將p_l根據(jù)當(dāng)前估計(jì)的位姿T變換到世界坐標(biāo)系然后在世界坐標(biāo)系下的全局地圖KD-Tree中尋找p_l最近的5個(gè)點(diǎn)用這5個(gè)點(diǎn)擬合一個(gè)平面π (n d)其中n是單位法向量d是原點(diǎn)到平面的距離。那么點(diǎn)到面的距離誤差就是e_lidar_plane n^T * (T * p_l) d這個(gè)誤差的物理意義是當(dāng)前觀測(cè)到的點(diǎn)p_l應(yīng)該落在它對(duì)應(yīng)的歷史地圖平面π上。同理對(duì)于一個(gè)激光邊緣點(diǎn)我們?cè)跉v史地圖中尋找最近的5個(gè)點(diǎn)用主成分分析PCA判斷這5個(gè)點(diǎn)是否構(gòu)成一條線第二大特征值遠(yuǎn)大于第三大。如果是則用這5個(gè)點(diǎn)擬合一條直線。點(diǎn)到線的距離誤差就是點(diǎn)到這條直線距離的平方。在代碼中這部分體現(xiàn)在LidarMapFactor或LidarPlaneNormFactor這樣的自定義因子類中。你需要關(guān)注它如何重載Evaluate函數(shù)來計(jì)算誤差和雅可比矩陣。雅可比的計(jì)算是重中之重它決定了優(yōu)化收斂的速度和正確性。雅可比矩陣描述了誤差e相對(duì)于狀態(tài)x如位姿T的變化率即de/dx。通常需要用到李代數(shù)擾動(dòng)模型來推導(dǎo)。4.3 視覺約束重投影誤差對(duì)于一個(gè)具有深度λ或3D坐標(biāo)P_w的視覺特征點(diǎn)其誤差構(gòu)建更為直觀。假設(shè)這個(gè)點(diǎn)在第i幀圖像中被觀測(cè)到像素坐標(biāo)為(u_i v_i)。將這個(gè)3D點(diǎn)P_w用當(dāng)前估計(jì)的第i幀相機(jī)位姿T_cam_i變換到相機(jī)坐標(biāo)系P_c T_cam_i * P_w。將P_c投影到歸一化平面p_n (P_c.x / P_c.z P_c.y / P_c.z)。再經(jīng)過相機(jī)內(nèi)參矩陣K投影到像素平面得到預(yù)測(cè)的像素坐標(biāo)(u_pred v_pred)。重投影誤差就是觀測(cè)值與預(yù)測(cè)值的差e_vision [u_i - u_pred v_i - v_pred]^T。在代碼中這對(duì)應(yīng)著ReprojectionFactor或ProjectionFactor類。同樣需要關(guān)注其Evaluate函數(shù)中誤差和雅可比的計(jì)算。視覺誤差的雅可比涉及到對(duì)3D點(diǎn)坐標(biāo)的求導(dǎo)如果狀態(tài)中包含逆深度和對(duì)相機(jī)位姿的求導(dǎo)。4.4 優(yōu)化求解與邊緣化所有的誤差項(xiàng)IMU、激光、視覺構(gòu)建好后就形成了一個(gè)大規(guī)模的非線性最小二乘問題min Σ ||e_i||^2。R3LIVE通常使用Ceres Solver或g2o來求解。求解前需要設(shè)置參數(shù)塊狀態(tài)變量和殘差塊誤差項(xiàng)。一個(gè)關(guān)鍵技巧是參數(shù)塊的參數(shù)化。對(duì)于旋轉(zhuǎn)四元數(shù)必須使用EigenQuaternionParameterization或Ceres的QuaternionParameterization以確保優(yōu)化過程中四元數(shù)保持單位長(zhǎng)度。另一個(gè)核心概念是邊緣化。由于滑窗大小固定當(dāng)新的關(guān)鍵幀到來時(shí)舊的關(guān)鍵幀需要被移出窗口。但不能直接扔掉因?yàn)榕f幀攜帶的信息尤其是IMU預(yù)積分約束著滑窗內(nèi)的狀態(tài)。直接扔掉會(huì)導(dǎo)致約束丟失系統(tǒng)變得不客觀。邊緣化就是將舊幀的狀態(tài)從優(yōu)化變量中消除但將其攜帶的約束信息轉(zhuǎn)化為一個(gè)先驗(yàn)約束作為一個(gè)新的誤差項(xiàng)加到后續(xù)的優(yōu)化問題中。這個(gè)過程在代碼中體現(xiàn)為維護(hù)一個(gè)MarginalizationInfo對(duì)象它會(huì)構(gòu)造一個(gè)舒爾補(bǔ)將待邊緣化的狀態(tài)消元并更新剩余狀態(tài)的Hessian矩陣和b向量。調(diào)試心得優(yōu)化部分出問題最難查。我的方法是打印誤差值在每次迭代開始或結(jié)束時(shí)打印出各類誤差e_imue_lidare_vision的范數(shù)。正常情況下它們應(yīng)該隨著迭代逐漸減小。如果某一項(xiàng)誤差突然變得巨大說明對(duì)應(yīng)的數(shù)據(jù)關(guān)聯(lián)或雅可比計(jì)算可能出錯(cuò)了。檢查雅可比Ceres Solver提供了數(shù)值求導(dǎo)選項(xiàng)。對(duì)于自定義因子可以先使用數(shù)值求導(dǎo)NumericDiffCostFunction來驗(yàn)證你解析推導(dǎo)的雅可比是否正確。如果兩者結(jié)果一致再用解析求導(dǎo)以提升效率??梢暬虚g結(jié)果將優(yōu)化前的激光匹配關(guān)系、視覺重投影關(guān)系用RVIZ或Pangolin畫出來。肉眼觀察匹配是否正確能快速定位是前端特征關(guān)聯(lián)的問題還是后端優(yōu)化本身的問題。5. 地圖管理體素濾波與增量更新優(yōu)化得到的新幀位姿后需要將當(dāng)前幀處理好的點(diǎn)云包括激光特征點(diǎn)和帶深度的視覺點(diǎn)融合到全局地圖中。R3LIVE通常使用體素網(wǎng)格Voxel Grid來管理地圖以防止地圖無限膨脹并保持實(shí)時(shí)性。5.1 體素濾波融合代碼中會(huì)有一個(gè)VoxelMap或PointCloudMap類。其addPoints函數(shù)負(fù)責(zé)融合新點(diǎn)云。流程如下坐標(biāo)變換將當(dāng)前幀點(diǎn)云根據(jù)優(yōu)化后的位姿T變換到世界坐標(biāo)系。體素化為世界坐標(biāo)系下的每個(gè)點(diǎn)計(jì)算其所屬的體素網(wǎng)格的索引。例如體素分辨率設(shè)為0.1米那么點(diǎn)(1.05 2.13 0.08)就屬于體素(10 21 0)每個(gè)坐標(biāo)除以分辨率后取整。點(diǎn)云融合對(duì)于同一個(gè)體素內(nèi)的所有點(diǎn)包括新來的點(diǎn)和地圖中已有的點(diǎn)不是簡(jiǎn)單地將新點(diǎn)添加進(jìn)去而是進(jìn)行降采樣或取平均。常見策略有體素中心化用該體素內(nèi)所有點(diǎn)的坐標(biāo)平均值作為這個(gè)體素的唯一代表點(diǎn)。隨機(jī)采樣在該體素內(nèi)隨機(jī)保留一個(gè)點(diǎn)。最近點(diǎn)保留保留離體素中心最近的點(diǎn)。第一種方法取平均能有效平滑噪聲是更常用的方法。在代碼中這通常通過一個(gè)std::unordered_map來實(shí)現(xiàn)鍵是體素索引值是一個(gè)結(jié)構(gòu)體存儲(chǔ)該體素內(nèi)點(diǎn)的累加和、數(shù)量以便快速計(jì)算平均值。5.2 地圖的保存與加載一個(gè)實(shí)用的SLAM系統(tǒng)必須支持地圖的保存與重載。R3LIVE的地圖保存通常很簡(jiǎn)單將全局地圖點(diǎn)云經(jīng)過體素濾波后的寫入一個(gè).pcd或.ply文件。同時(shí)可能需要保存一些關(guān)鍵幀的位姿軌跡TUM格式或KITTI格式。更高級(jí)的功能是增量保存與加載。這意味著系統(tǒng)在運(yùn)行時(shí)可以定期將新增的地圖點(diǎn)云追加到磁盤文件而不是每次都保存整個(gè)地圖。加載時(shí)可以快速讀入已有的地圖點(diǎn)云并重建KD-Tree。在相關(guān)代碼文件中你會(huì)看到saveMap和loadMap函數(shù)里面主要是pcl::io::savePCDFile和pcl::io::loadPCDFile的調(diào)用。一個(gè)性能陷阱頻繁地將點(diǎn)云添加到全局地圖并立即重建KD-Tree用于后續(xù)的激光匹配是非常耗時(shí)的。常見的優(yōu)化是設(shè)置一個(gè)緩沖機(jī)制累積一定數(shù)量的點(diǎn)比如一幀或若干幀后再一次性添加到地圖并重建KD-Tree。在代碼中可能會(huì)有一個(gè)map_cloud_buff點(diǎn)云緩沖區(qū)和相關(guān)的計(jì)數(shù)器。6. 實(shí)戰(zhàn)調(diào)試從理論到跑通的最后一步讀懂了代碼最終還是要落到修改和調(diào)試上?;谖叶啻我浦埠驼{(diào)試R3LIVE及其衍生項(xiàng)目的經(jīng)驗(yàn)分享幾個(gè)最具實(shí)操性的建議。6.1 如何高效地修改與驗(yàn)證代碼不要一上來就改核心算法。遵循以下步驟先理解數(shù)據(jù)流在關(guān)鍵函數(shù)的入口和出口添加打印語句或ROS_INFO輸出數(shù)據(jù)的尺寸、時(shí)間戳、前幾個(gè)數(shù)值。確保數(shù)據(jù)如你預(yù)期的那樣流動(dòng)。例如在featureTracker.trackImage()前后打印追蹤到的特征點(diǎn)數(shù)量在lidarProcessor.distortionCorrection()前后打印點(diǎn)云大小。模塊化測(cè)試如果可能將視覺前端、激光前端等模塊單獨(dú)剝離出來編寫簡(jiǎn)單的測(cè)試程序輸入模擬數(shù)據(jù)或錄制好的ROS Bag看輸出是否符合預(yù)期。這能幫你快速定位問題是出在模塊內(nèi)部還是模塊間的接口上。善用調(diào)試工具GDB對(duì)于運(yùn)行時(shí)崩潰段錯(cuò)誤GDB是定位神器。編譯時(shí)加上-g選項(xiàng)運(yùn)行程序崩潰后用bt命令查看調(diào)用棧。Valgrind檢查內(nèi)存泄漏。SLAM系統(tǒng)長(zhǎng)時(shí)間運(yùn)行微小的內(nèi)存泄漏也會(huì)導(dǎo)致崩潰。用valgrind --leak-checkfull來運(yùn)行你的程序。ROS工具rqt_graph查看節(jié)點(diǎn)連接rqt_console查看日志rosbag play -r 0.5慢速播放數(shù)據(jù)包以便觀察。6.2 參數(shù)調(diào)優(yōu)一個(gè)系統(tǒng)性的思路參數(shù)眾多不要盲目亂調(diào)。建立一個(gè)系統(tǒng)性的調(diào)優(yōu)順序運(yùn)動(dòng)畸變補(bǔ)償相關(guān)首先確保這部分正確。如果畸變補(bǔ)償沒做好特征提取和后續(xù)匹配全是錯(cuò)的。檢查IMU和激光雷達(dá)的時(shí)間戳同步是否精確到毫秒級(jí)??梢試L試讓系統(tǒng)靜止不動(dòng)然后查看去畸變后的點(diǎn)云是否還是一個(gè)“干凈”的靜止場(chǎng)景點(diǎn)云如果仍有拖影說明補(bǔ)償有問題。特征提取參數(shù)在靜止和低速場(chǎng)景下調(diào)整曲率閾值、每線提取特征數(shù)等確保提取的特征點(diǎn)既不過于稀疏導(dǎo)致約束不足也不過于密集引入噪聲且增加計(jì)算量??梢酝ㄟ^RVIZ將提取的邊緣點(diǎn)紅色和平面點(diǎn)綠色可視化出來直觀判斷。匹配搜索參數(shù)主要是激光匹配時(shí)的搜索半徑kdtree_search_radius和視覺深度關(guān)聯(lián)時(shí)的搜索半徑。從小值開始慢慢調(diào)大觀察地圖質(zhì)量是否出現(xiàn)很多漂浮的離群點(diǎn)和跟蹤穩(wěn)定性。優(yōu)化器參數(shù)Ceres Solver的迭代次數(shù)、線性求解器類型SPARSE_NORMAL_CHOLESKY常用、信任域策略的初始半徑等。對(duì)于大多數(shù)問題保持默認(rèn)值通常可以工作。如果優(yōu)化不收斂首先應(yīng)懷疑是前端數(shù)據(jù)關(guān)聯(lián)或雅可比計(jì)算錯(cuò)誤而不是盲目調(diào)整優(yōu)化器參數(shù)。6.3 遇到“跑著跑著就飛了”怎么辦這是SLAM調(diào)試中最常見也最頭疼的問題。提供一個(gè)排查清單檢查時(shí)間戳這是首要嫌疑犯。確保相機(jī)、激光雷達(dá)、IMU三者的時(shí)間戳在同一個(gè)時(shí)間源最好是硬件同步下并且在代碼中正確對(duì)齊。打印關(guān)鍵回調(diào)函數(shù)收到消息的時(shí)間戳看差值是否穩(wěn)定。檢查傳感器外參T_lidar_to_imu和T_cam_to_imu這兩個(gè)變換矩陣標(biāo)定不準(zhǔn)是致命的。可以嘗試讓設(shè)備做純旋轉(zhuǎn)運(yùn)動(dòng)如果軌跡在旋轉(zhuǎn)中心嚴(yán)重漂移很可能是外參有問題。檢查特征關(guān)聯(lián)增加可視化。將當(dāng)前幀的激光特征點(diǎn)變換到世界坐標(biāo)系和歷史地圖中為其找到的對(duì)應(yīng)平面/線同時(shí)顯示出來。肉眼觀察匹配是否正確。大量錯(cuò)誤的匹配會(huì)導(dǎo)致優(yōu)化器“被帶偏”。檢查IMU預(yù)積分在靜止初始化階段IMU預(yù)積分應(yīng)該能較好地估計(jì)出重力和零偏。如果初始化后重力方向估計(jì)錯(cuò)誤導(dǎo)致地圖傾斜或者零偏估計(jì)值異常大可能是IMU數(shù)據(jù)有問題或預(yù)積分代碼有bug。逐步簡(jiǎn)化問題如果問題復(fù)雜嘗試先關(guān)閉視覺只運(yùn)行激光SLAM部分類似LIO。如果激光部分穩(wěn)定再加入視覺。或者在簡(jiǎn)單、紋理豐富的環(huán)境中先測(cè)試排除環(huán)境因素。閱讀R3LIVE這類大型開源項(xiàng)目的代碼就像在解一個(gè)精密的機(jī)械手表。每個(gè)齒輪模塊都必須嚴(yán)絲合縫地配合。本篇詳解的幾個(gè)核心模塊是保證這塊“手表”走時(shí)準(zhǔn)確的關(guān)鍵齒輪。希望這些帶著代碼細(xì)節(jié)和實(shí)踐經(jīng)驗(yàn)的拆解能讓你在動(dòng)手修改和調(diào)試時(shí)不再茫然而是能有條不紊地定位問題甚至實(shí)現(xiàn)自己的創(chuàng)新想法。代碼的世界里沒有黑魔法每一行背后都是確定的數(shù)學(xué)和邏輯理解它們你就能真正掌控它。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
99久久亚洲精品视频| 六月丁香五月婷婷| 婷婷97狠狠干| 色五月激情五月| 另类婷婷丁香| 99久久久99久久91熟女| 涩五月婷婷| 天天操九九插| 97香蕉久久超级碰碰高清版 | 色五月天成人| 五月激情精品视频| 激情AV在线| 黄网在线免费| 免费视频99| 国产精品激情五月天色婷婷| 五月久久丁香| 综合久久婷婷| 九九自拍网| 六月婷婷视频| 狠狠色噜噜狠狠色噜噜噜999| 大香蕉婷婷五月天| 亚洲精品色| 六月婷婷之青青草| 91九色在线| 丁香婷婷浪潮AV久久综合| 五月天在线视频尤物视频在线看| 丁香五月婷婷久久久| 天天日日夜夜爽。| 99精品7| 五月天丁香成人社| 97久久五月丁香婷婷| 五月婷婷五月| 激情www| 丁香五月婷婷啪| 五月丁香淫淫婷婷婷| 日本视频久久| 国产真实乱了老女人视频| 这里只有精品9| AV中文在线| 老妇操B| 江苏少妇性BBB搡BBB爽爽爽| 黄色成人网站在线播放| 色色色欧美色色| 欧美日韩成人在线网| 在线天堂9| 欧美久久婷婷| 亚洲色色色色色色色色色| 中文字幕在线免费看线人| 丁香婷婷成人在线播放| 亚洲国产婷婷色五月| 夜夜嗨一区二区三区直播内容 | 色色色色色色色色色色色色色97| 婷婷亚洲综合| 狠狠综合| 激情99| 人人妻人人澡| 激情丁香五月天| www.99热在线| 99啪啪| 只有精品视频在线观看| 久久日韩婷婷五月| 色欲九区| 这里只有精品日韩精品| 免费婷婷| 久婷婷五月激情| 久久网日本| 激情婷婷。| 91丨九色丨首页| 五月天精品| 婷婷五月天成人| 九久9精品| 五月天开心色情网| 天天日夜夜爽| 在线综合亚洲欧美65| 色情五月丁香| 精品婷婷| 真实熟女-91九色| 欧美十二区| 91热在线观看视频| 五月婷婷影院| 亚洲 欧洲 国产 伦综合| jiZZdr| 99热国产这里只有精品| 久久丁香| 色婷婷第四色| 色婷婷影院| 99re66热这里只有精品| 欧美日韩99| 第四色五月婷婷| 99噜噜| 色婷婷88| 六月丁香婷婷开心综合基地| 思思视频这里是精品| 五月丁香六月综合基地| 色噜噜综合网| 五月天成人在线播放丁香| 婷婷,五月天,丁香,第一| 99热碰碰热| se99高清无码| 九九热婷婷| 91色婷婷综合久久中文字幕二区| 夜夜骑夜夜操| www.婷婷五月天,com| 五月天婷婷基地| 国产亚洲成AV人片在线观黄桃| 二色av| 天天AV导航网| 99综合一区| 青青草国产亚洲精品久久| 超碰99热| 婷婷娌伦网| 五月天久久久| 色播五月网| 久久性爱视频| AAA久久| 影音先锋女人AA鲁色资源| 丁香六月色婷婷| 欧美大片免费观看| 久热99| 淫荡工a| 97久久精品| 中字幕视频在线永久在线观看免费| 九月丁香婷婷| 伊人久久婷婷| 人人摸人人操人人爽| 五月天丁香综合久久国产| 六月丁香色婷婷| 伊人啪啪网| www91色网站| 激情五月天色色网| 综合色播| 9热在线观看| 国精产品一区一区三区免费视频| 丁香九月综合在线| 热99只有里视频| 人人爱操| 天天插天天插天天操| 涩涩涩,com| 99久久五月婷婷| 五月婷久久| 伊久久婷婷| 色青青五月| 久久3p| 91人妻人人操| 色综合综合色| 九九色综合| 久久多色| 婷婷五月丁香综合| 综合婷婷久久| 狠狠艹狠狠艹| 伊人久久婷婷| 性爱网久久| www.黄色片-久久成人国产精品在线播放-999AV | 亚洲人人干| 五月天狠狠网| 久久99精品日本| 女人天堂 AV| 五月丁香激情婷婷| 色吊丝99| 婷婷综合97| 人人操人人看97干| www,超碰| 成人片在线播放| 婷婷午夜综合| 涩涩五月天综合| 综合色五月| 九九99免费视频| 亚洲va成人va成人va在线观看| 91精品久久久久久综合五月天| 欧美色图片88| 天天爽免费视频| 丁香婷婷成年| 久久 天天| www.色色五月天.com| 激情综合亚洲| 99色热视频| 欧美大肥婆大肥BBBBB| 久久日韩婷婷五月| 日婷婷久久开心| 丁香五月综合激情久久潮喷| 激情丁香五月激情婷婷| CHINESE熟女老女人HD视频| 久久久A级视频| 人。妻久久| 色女人久久| 四色五月视频| 99免费| 婷婷的激情五月| 久久婷婷五月综合| 婷婷五月天激情文学| 婷婷五月色播放| 99色综合网| 日韩成人电影AV| 丁香六月高清视频| 五月停停色| 五月天婷婷三级黄| 伊人天堂婷婷| 激情五月天丁香| 99re6在线视频精品免费| 大香蕉人在线65| 91综合国免费久入| 久色国产| 精a品a视a频| 国产欧美精品AAAAAA片| 996热re视频精品视频这里| 久久99久久99久久99人受| 深夜男女福利刺激影院一区完整| 九九久久五月天| 激情色中文| 人人艹艹艹| 丁香五月天激情综合| av五月天婷婷丁香| 丁香五月AV| 六月五月婷婷| 伊人大香五月天| 五月丁香激情综合| 天天操夜夜肏| 五月天天天综合| 超碰无码老师| 无码人妻精品一区二区蜜桃色欲| 久久综合天天综合| 亚洲操操| 欧美日韩国产伦精品日韩人妻一| 51XX午夜影福利| 婷婷六月网| 六月婷色| 色域五月丁香| 亚洲成人AV高清字幕| 激情小说五月天中文字幕| 欧美性猛交99久久久久99按摩| 色噜噜伊人| 色婷婷色五月综合| 日本成人内射| 七七婷婷综合| 9色在线| 深爱婷婷丁香五月激情| 五月丁香综合中文| 久久久日韩特色特黄AAAA| 婷婷在线激情| 99久在线精品99re8| 大香蕉婷婷五月| 成人国产欧美大片一区| 97在线刺激| www.深爱激情| 5月婷婷激情网| 激情播丁香| 开心久久网婷婷| 五月天丁香综合久久国产| 五月婷婷69| 三区激情四射av| 99这里只有精品|v| 97色婷| 五月综合婷婷五月| 色婷婷久久综合中文久久一本| 超碰免费观看| 中文字幕 码精品视频网站| 五月婷庭丁香在线| 99热精品综合| 激情网五月婷婷| 深爱五月中文字幕| 五月婷丁香久久久| 俺去啦综合网| 午夜日韩久久久网站| 人人摸人人| 干婷婷五月天| 色5月婷婷| 狠狠狠狠狠狠草| 五月综合亚洲色| 国产 亚洲 在线| 先锋资源婷婷| 香蕉综合在线| 丁香五月婷婷啪| 丁香六月婷婷| 亚洲 精品 综合 精品| 色天使色综合| 婷婷色在线| 99热精品在线观看| 亚洲精品一区中文字幕乱码| 99视频久久| 人妻激情综合| 五月丁香影视| 丁香婷婷综合影院| 天天狠天天叉| 五月丁香啪啪啪| 精品夜夜澡人妻无码AV| 思思re99视频在线观看| 日韩超碰在线| 色色婷婷五月天| 97色婷婷| 超碰操日| 一级性感黄色内射视频| 亚洲在线成人| 色吧综合网| 欧美激情五月天婷婷| 色丁香五月| 日韩综合久| 97干97色| 亚洲狠狠色丁香婷婷综合久久| 日本久久精品| 五月天操逼激情| 亚洲最大视频网站| 婷婷九九| 99色 色| 天天日天天草| 五月婷婷自拍视频| 久久久久久久久99精品| 天天爽天天爽| 99这里有精品视频| 色色综合激情| 亚洲激情淫网| 欧美熟女乱又伦| 狠狠xx| 天天搡日日搡aaaaⅩ| 久久久久久久久人妻| 五月丁香AV、伊人业余、性色熟妇 | 99久久久| 色婷婷影视| 99热这里有精品| 色级婷婷| 亚洲激情电影五月天色婷婷丁香一起草| 人人看人人要| 玖玖爱综合网| 91日在线视频| 久久五月丁香伊人青草| 五月丁香婷婷激情久久| 婷婷五月丁香六月天亚洲综合| 第四色婷婷最爱| 六月天婷婷| 色色激情| 伊人激情综合网| 校园激情 亚洲| 国产午夜一区二区三区| 六月丁香综合| 久热99久热| 丁香六月色香蕉视频| 涩综合在线| 99热精品在这里| 成人视频网| 五月丁香好婷婷A片网| 日韩啪| 五月综合六月婷婷| 国产精产国品一二三在观看| 婷婷狠狠青青| 丁香婷婷六月激情综合| 色婷婷888| 五月天婷婷影院影院| 深情五月天| 五月婷色色| 五月开心啪啪| 婷婷色丁香六月| EEUSS鲁片一区二区三区| 色色色激情网| 秋霞电影理论| 激情99| 欧美大道不卡| 五月丁香六月婷婷综合| 色色色色色色色色综合网| 无码AV久久久久久久久| 五月天另类图片区99| 九九色热| 色婷婷久久| 99九九热在线观看| 欧美久久婷婷| www99xxxx五月丁| 狠狠色狠狠色综合日日91| 欧美婷婷五月天| 五月天婷婷Av| 丁香婷婷综合激情五月色,开心五月丁香花综合网,激情综合五月亚洲婷婷,五月天 | 五月天综合缴情网网站0| 婷婷涩涩网| 天天色亚洲| 久久狠婷婷| 亚洲精品午夜国产va久久成人| 婷婷五月天激情视频| 天色综合网站| 亚洲狠9| 激情五月综合色婷婷| 六月丁香婷婷综合在线| 日99网站| 五月婷六月婷婷| 懂色av粉嫩AV蜜臀AV| 久草A片| 国产操碰| 婷婷五月天小说| 狠狠做五月| 色综合色| 91色在线/日韩| 天天日天天草| 97香蕉碰碰人妻国产欧美| 99热99网| 五月停停大香蕉| 色区域网站视频| 婷婷五月天天激情| 天天操B| 婷婷五月天激情小说| 天天天天爽爽天干| 五月天另类图片区99| 激情九九这里只有精品| 超碰v| 夜丁香五月婷婷| 97色视频网| 婷婷五月天狠狠搞干| 99色在线| 九九综合图片网| 国产成人在线精品| 千人斩操逼| http://www.com久久久精品一区| 日韩人妻无码一区二区| 性色五月天| 狠狠狠激情网| 日本婷婷在线| 荫道BBWBBB高潮潮喷| 成人av免费观看| 99热精品在线播放| 中文av网站| 2015超碰| AA片在线观看视频在线播放| 亚洲狠狠狠色婷婷综合激情久久久| 99热最新| 夜夜干天天干| 丁香六月AV| 日本久久久97| 色中色综合| 婷婷丁香激情五月天色色| 欧美成人AAA片一区国产精品| 激情五月综合| 丁香色五月婷婷91桃色| 色情网综合| 久久9精品| 天天操天天日天天爽| 国产精品VIDEOSSEX久久发布| 六月丁香婷婷拍拍| 日韩国产在线免费观看| 婷婷丁香综合| 99热这里只有精品亚洲| 欧美成人在线观看| 婷婷色在线视频| 插插干干干色| 亚洲婷婷在线播放十月| 国产69久久久欧美黑人A片| 北条麻妃九九九国产精品视频| 99er免费在线观看| 丁香六月激情四射| 狠狠色噜噜色狠狠狠综合色| 久久丝袜婷婷| 激情综合激情综合| 丁香五月婷婷激情中文| 99riAV国产精品视频| WWW.99热| 久久a热| 丁香五月天人体| 4399欧美另类视频| 婷婷综合伊人| 香蕉视频性爱BB做爱| 亚洲激情97五月天| 综合狠狠伊人| 久久9视频| 久久丁香社| 九九日伊人| 色99视频| 亚洲第一黄网| 深爱五月婷婷| 久久九九色| 热996精品在线观看| 翔田千里 50岁 无码| 婷婷丁香五| 超碰久热| 碰碰91| 婷婷五月色惰| 综合伊人久久| 91互操| 丁香花五月天婷婷成人社区| 5月婷婷6月六月丁香| 亚洲操逼网| 啪啪五月婷婷| txt五月激情四射网综合俺也来了| 激情六月天| 永久精品| 色色日本欧美| 久久综合99| 九九热av| 丁香综合伊人| 色丁香在线视频| 激情五月天婷婷直播| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 欧美丁香六月在线观看视频| 99热99艹在线观看| 影音先锋美国A| 国产精产国品一二三在观看| 久久小视频| 狠狠色大香蕉| 九九精品热| 97人人操人人干| 日韩1区2区| 爱草视频在线观看| 能看的av片| 一本伊人色婷| 五月婷婷草| 日韩啪| 九九无码| 97色婷| 屁股翘好撅高迎合跪趴| 国产超碰在线| 丁香五月婷婷免费视频| 午夜天堂一区人妻| 色婷婷色综合| 色婷婷啪啪啪啪啪啪| 两性婷婷丁香五月| 99久久99九九九99九他书对| 丁香五月社区| 九九热免费视频| 丁香六月综合激情| 五月色激情综合网| 欧美色图天堂网色| 97激情五月天| 国精产品一区一区三区有限公司杨 | 天天在线久久综合| 夜夜骑夜夜撸| 99热97| 艹B高清无码| 99婷婷综合| 婷婷色在线视频| 97av在线视频| 91在线观看www| 99色中文| 深爱激情六月| 99色在线| 久啪欧美| 高清无码中文字幕aVDV| 最新五月天婷婷影| 久久久久久9| 婷婷激情小说| 亚洲五月天色色| 久久婷婷五月| www五月| 99热这里只有精品99| 色婷视频| 色欲影香| 亚洲狠狠狠| 午夜亚洲国产精品av一区二区| 色婷五月婷婷| 99热综合网| 麻豆AV一区二区三区| 中文成人在线| 天天做综合| 激情五月天婷婷五月天| 伦乱天堂| 婷婷五月天大香蕉| 美女五月激情| 激情五月婷黄版| 人妻体体内射精一区二区| 成人无码精品1区2区3区免费看| 日韩黄在免| www,久久久| 第四色首页| 一点色成人网| 色五月激情视频在线综合| 玖玖资源部在线播放| 久久久久人无码人妻| 婷婷五月丁香基地| 日日噜狠狠色综合久| 站长推荐无码播放| 99ri视频在线观看| 天天日天天日天天搞| 丁香五月欧美| 婷婷性爱综合| 五月丁香操亭亭网| 久在热99| 蜜桃五月天色| 天天操天天干天天射| 久久99看免费| 超碰国产AV| 成人在线观看精品| 久久九精品| 欧美久久婷婷| 日本精品人妻无码77777| 丁香亚洲色综合| 开心五月婷婷在线| 区欧美日韩成人| 色综合五月婷婷狠狠干| 人妻久久久| 专区无日本视频高清8| 欧美久人人| 夜夜干夜夜操| 91九色 婷婷| 日本色色网站| 综合久久影院| 久久思思热| 婷婷在线观看五月天在线视频| 婷婷开心激情五月激情网| 久久99热在线观看| 在线看黄色| 伊人色综合久久久| 色欲天天综合| 高清无码网址| 91dy.av| 久久六月婷婷| 99在热线免费视频| 激情婷婷在线中文字幕| 五月社区婷婷激情| 中文字幕av久久爽| 丁香五月综合激情性爱| 六月丁香啪| 天天日天天插| 亭亭五月丁香综合欧美| 九九AV在线| 天天爽在线视频| 99在线精品观看99| 五月天停停成人网| 色婷婷AV在线| 99成人| 五月天欧美激情| 色综合av超碰| 久久久精品人妻| 极品 少妇 内射| 久久丁香综合精品综合| 五月天色网站| 国产操B视频| 可以免费观看的AV| 丁香六月激情蜜桃| 国产ava| av大香蕉| 欧美婷婷综合| 天天摸.天天mo| 五月停停99| 337p大胆噜噜噜噜噜91Av| 婷婷五月丁香六月综合网| 秋霞九九无码| 婷婷五月天AV| 99热这里只有精品在线播放 | WWW.天天日| 黄色热99| 五月婷婷六月丁香综合| 亚洲欧美成人在线| 91精品刘玥| 五月婷在线观看| www.人人操人人看人人想人人摸 人人人人操,COM| 91婷婷丁香五月亚洲| 丁香五月婷婷激情四射| 婷婷久久综合久| 开心色播色五月婷婷| 丁香六月丁香婷婷激情| 亚洲va欧洲va国产va不卡| 日韩av高清| www.色五月| 丁香五月五月婷婷五月天激情四射| 久婷婷视平| 色综合久久天天综合网| 亚洲色色色色色| 第1影院之五月婷婷| 26uuu国产| 婷婷丁香一月| 五月婷婷另类| 99综合熟女| 五月六月丁香激情| 欧美色骚婷婷五月天| 天天草女人| 综合激情视频| 久久新地址| 色婷婷亚洲五月天| 99爱无码| 俺也去综合| 六月亚洲婷婷6月中文字幕| 久久99国产综合精品免费 | 丁香五月婷婷亚洲色图| 五月天激情小说| 亚洲高清在线| 99啪| 婷婷丁香人妻天天爽| 九九99免费视频| 日日夜夜爽| 色高清无码视频| 五月丁香狠狠爱| 99精品久| 91在线人| 99精品九九| 婷婷综合丁香| 在线综合亚洲欧美65| 久久婷婷丁香| 五月天色区| 婷婷金品综合视频| 天天色,天天日,天天做| 精品久色| 开心六月丁香五月婷婷| 大香蕉啪啪啪啪啪啪| 99ri在线视频| 91精品久久久久久77777| 色色欧美色色| 五月婷婷我| 欧洲综合色| 五月婷丁香久久久| 欧美英丁香开心快乐六月天网| 热久69| 少妇大叫太大太粗太爽了A片| 五月激情站| 天天做天天爽| 99久久久免费| 26uuu国产精品| 99这里只有免费的精品| 婷婷丁香亚洲色综合91| 大鸡巴伊人网| 亚洲狠狠婷婷| 91久久综合亚洲噜噜成人在线 | 日韩小视频在线99| 最新久久99视频网站| 亚洲色五月| 亚洲精品V天堂中文字幕| 免费啪啪亚州视频| 天天天干夜夜夜操| 久草热8精品视频在线观看 | 国产精品成人在线| www.夜夜操.con| 五月综合在线婷婷图片| 五月天日日操夜夜操 | 香蕉综合在线| 久久AV无码精品人妻系列试探| 久久伊人婷婷| 99在线精品免费视频| 午夜色婷婷| 超碰AV在线| 九九热狼人| 日本乱论99| 天堂成人A片永久免费网站| 欧美色久| 五月天激情网图片| 嫩草哈哈操| 婷婷久久丁香五月| 精品无码人妻一区| 日本丁香五月| 99久久9| 91精品91久久久中77777| 97精品欧美91久久久久久久| 婷婷五月天视频免费在线观看| 丁香六月激情国产| 天天干 夜夜爽| 国外亚洲成AV人片在线观看| 五月丁香婷婷中文网| 欧美日韩大黄| 丁香五月六月婷婷怡红院| 快乐激情五月色婷婷| 99超级碰免费视频| 久久婷婷五月天激情唯美| 蜜臀A∨在线水帘洞| WWW.天天日| 五月天激情AV| 婷婷色综合| 先锋影音男人的天堂AV| 欧美三级视频| 久久婷婷成人视频| 五月婷婷亚洲色视频| 四月婷婷五月丁香| 丰满少妇猛烈A片免费看观看| 中文字幕精品无码一区二区| 丁香性爱在线视频| 好色婷婷| 秋霞电影理论| 99在线精品观看99| 超碰成人在线免费观看| 亚洲人妻电影| 色六月天| 婷婷在线视频| 久久精品婷婷| 欧美狠狠色| 五月天丁香久久综合| 国产亚洲av片| www.色五月天.com| 天天天天干| 婷婷香蕉| 五月天色色色| 久热AA| 日韩欧美成人网| 婷婷久久五月天亚洲欧美国产日韩在线观看 | 免费AV播放| 五月天久久综合婷婷丁香| 色99色| 大香蕉 婷婷| 这里只有精品视频在线观看免费| 婷婷天天综合| 五月伊人网| 丁香婷婷五月综合| 日韩99精品| 超碰v| 九九久久综合| 成人版视频在线观看| 丁香五月色| 狠狠色丁香久久久婷| 精品少妇蜜臀91| 大香蕉人妻| 丁香九月久久| 精品久久99码| 97久久超碰| 日韩成人网址| 精品久久99码| 欧美成人A片AAA片在线播放| 开心五月婷婷婷美女| 丁香花五月天激情| 99碰视频| 在线天堂9| 久久久久网站| 9久精品视频| VA色婷婷| 岛国av网站| 五月天国产成人| 五月丁香激情综合网| 欧美黄色一级| 终合激情网| 国产美女主播vip| 啄木鸟丝袜美女福利视频| 五月天婷婷基地| 99亚洲综合| 99ER热精品视频| 91啪级电影| www.久99| 色婷婷的五月天| 九九综合网色全集 | av操B网站| 婷婷五月丁香久久| 九九久久污| 丁香五月天论坛| 久久久久久久久99精品| 乱轮A片| 牛牛色av| 丁香五月婷婷激情尤物| 五月丁香另类网| 六月丁香av| 九九视频在线观看| 五月天欧美 另类小说| 97在线视频观看| 丁香婷婷免费| 亚洲天堂色| 婷婷九九| 狠狠干2007| 丁香五月 无码| 激情综合九月| 狠狠999| 91久久九九| 色婷婷综合网站| 欧美婷婷五月激情| 亚州欧美黄色电影| 乱码操操| 五月天婷婷色播在线网| 嫩草AV久久伊人妇女超级A| 天天激情5月天亚洲| 黄色三级日本| 伊人五月网| 影音先锋噜一噜| 激情网 久久| 五月天婷婷爱| 99er6| 色婷婷五月天成人网| 成人五月天婷婷| 精品亚洲国产成AV人片传媒| 久色网| 国内自拍97在线| 亚洲视频图片婷婷五月| 综合精品啪啪| 综合色99| 在线观看婷婷5月| www,欧美干干干干干干| 91肏肏肏| 五月婷婷六月丁香| 十月丁香九月婷婷综合| www,久久久人人| 五月激情天| 狠狠综合网| 无码九九| 国产av影片| 五月丁香亭亭电影久久| 停停五月丁香| 色。 日日日| 狠狠爱激情网| 五月99久久| Av性爱网| 啊V视频在线观看| 亚洲色图五月丁香五月婷婷| 99热手机在线精品| 六月丁香婷婷开心综合基地| 久久婷婷大香蕉| 专区无日本视频高清8| 极品五月天| 丁香五月综合久久八| 国产FREESEXVIDEOS性中国| 五月天婷婷五月| 天天爽天天爽天天爽天天爽天天爽天天爽天天 | 天天爱天天做天天日| 香蕉AV777XXX色综合一区| WWW99热| 99视频综合网| 亚洲精品又粗又大又爽A片 | 婷婷五月天成人小说| 99色日本| 婷婷五月综合丁香久久| 五月丁香六月成人| 亚洲天堂AAA| 亚洲精99| 操人妻90p| 激情综合网五月在线播放| 婷婷社区五月天| 九九99九九99偷拍视频免费看| 九九家庭影院| 如何安全看伊人婷婷| 亚洲视频一区| 99色| 99热伊人| 婷婷丁香五月天激情| 操丝袜视频影院导航| 天堂在线9| 免费看成人747474九号视频在线观看| 黄色短视频在线观看| 日韩无码色色| 日韩人妻在线观看| 色狠狠999综合| 丁香六月婷婷综合欧美| 国产欧美日韩性爱| 色九月婷婷| 丁香五月亚洲AV| 99热这里只有精品268| 一起操 91N.com| 久久网婷婷| 在线99色| 激情四射网| 久久婷五月天| 开心 五月 综合| 五月综亚洲| 婷婷色五月天综合网| 丁香五月综合高清在线| AV免费在线网站| 五月天堂色色| 激情丁香六月| 性色人人爽| 人人草成人视频| 激情5月婷婷狠狠干| 啊V视频在线观看| 久久久久久xxxxx| 丁香婷停五月激情综合深爱| 久热大香蕉| 久久久精品AV| 欧美性二区| 夜夜天天久久婷婷| 五月色丁香激情| 中文字幕乱轮| 九九热精品99| 79成人网| 欧美丁香婷婷五月天| 91小黄书网址在线观看| 人妻熟妇六区| 五月WWW| 久99久精品| 97婷婷狠狠| 蜜桃成语时李时珍 免费| 丁香五月天啪啪| 中字幕视频在线永久在线观看免费| 色情婷婷五月天| 超碰97在线操| 亚洲成人AV在线| 中文字幕永久在线| 这里只有免费的精品| 69er小视频| 久久婷婷操| 少妇搡BBBB搡BBB搡毛茸茸 | 婷婷五月天国产| www.久久久久| 黄色短视频在线观看| 亚洲狠狠终合停停终合| 日韩av变天就操逼不卡区| 亚洲电影在线观看| 亚洲欧洲午夜成人精品av| 久久一伦| 天堂爱爱| 天堂久久性| 中字幕视频在线永久在线观看免费| 99热网站| 色色色97| 涩五月丁香| 久婷婷| 国产亚洲精品AAAAAAA片| 欧美电影在线观看| 婷婷激情人妻| 亚洲中文乱字字幕线在永久| 国产精品成人av在线观看春天| 女力报到正好爱上你| 亚洲日日日| 97碰在线视频| 97操碰日本女人| 热久久77777| 成人综合视频在线| 热99色| 五月丁香久久网| 成人免费在线电影| 97人人妻人人艹| 色婷婷内射| 色婷婷操逼| 97搞在线| 激情校园 亚洲| 五月色综合| 99精品高潮| 色综合天天天天做夜夜| 九九热最新| 久久久婷丁香五月| 六月婷婷狠狠| 色色色色色色色色综合网| 99久在线精品99re8| 夜夜 操无码| 2022人人操人人看| 久久这里有精品视频| 亚洲综合视频网| 国产综合A片| 天天爱天天做天天爽| 丁香婷婷深情五月亚洲| 五月天开心激情综合网| 婷婷婷婷午夜| 九月婷婷综合八月丁香在线观看| 五月丁香婷婷开心| 欧美精品中文字幕亚洲专区| 我想看国产大学生口爆吞精的视频| 涩综合网| 久99久精品视频| 激情婷婷网| 五月丁香五月婷婷在线观看| 爱射综合| 日亚二欧美| 99在线亚洲| 99热草草| 丁香综合网| 超碰av在| 99热这里只有精品1998| 婷婷丁香五月在线播放| 激情五月影院| 99er这里只有精品| 草草视频91| 五月婷婷无码| 久久99热这里只有精品| 色婷综合| 色五月激情网| 天堂在线9| 色婷婷六月天| 99丁香五月婷| 日本三级黄色大片| 久色网| 大香蕉久久| 91碰碰碰| 五月婷婷影院| α久久| 九九热最新视频| 亚洲视频国产一区| 大婷婷色呦呦噜噜色呦呦噜噜| 国产精品第一国产精品| 色婷婷在线播放| 另类视频五月天| 婷婷久久国产视频| 精品成人在线| 婷婷五月天亚洲色| 熟妇人妻中文字幕无码老熟妇| 超碰在线看| 综合色久| 五月天婷婷中文字幕在线播放| 久久性爱视频| 五月婷婷开心丁香| 视频一二区| 97超碰在线免费观看| 永久天堂日本| 日韩成人电影在线播放| 99婷婷五月天激情| 日本超碰在线| 日本五月丁香| 狠狠爱成人综合网| 五月婷婷五月天在线| 午夜成人片400| 色综合色综合色综合| 97一区二区| 久久人妻视步| 大香蕉狼人久久| 丁香五月天激情综合| 九九99免费视频| www.五月天| 99爱视频在线观看这里只有精品| www.韩日视频| 九九热欧美| 五月婷婷综合色拍| 五月丁香视频色色| 天天做天天爱| www天天爽| 欧美色色色| 国产性爱大片久久| 九九色99| 五月天播播综合| 99ri视频在线播放| 成人视频网| 日91高清无玛| 婷婷久久六月天| 色玖玖玖| 五月开心播播网| 99热这里全都是精品| 色老久久| 玖玖色综合色| 色五月天堂| www.狠狠干com| 丁香婷婷久久 | 狠狠色情婷婷| 日韩成人AV在线播放| 国产精品色色666| 日韩成人综合| 国产精品久久久久久久久久免费| 国产日比| 美女xx不卡| 亚洲亚洲人成综合网络| 好激情在线综合网| 日韩婷婷五月| 综合爱久久| 国产精品18久久久| 久久婷婷激情| 色婷婷五月天偷拍| 日在线V视频在线播放| 91丨九色丨国产| 激情综合五月天| 五月丁香婷草| 日日噜狠狠色| 西瓜美女a片| 久久久久久久久久91| 婷婷精品在线| 天天爱天天做天天操| 欧美婷婷日本| 亚洲网在线观看| 天天狠天天叉| 99热免费精品| 五月天伊人网| 丁香六月色婷婷| 天天添天天摸天天天天做| 99狠狠色| 91视频免费后入强操| 综合激情五月丁香| 天天色视频| 五月天婷婷网站888| 丁香五月婷婷骚视屏| 91大神操美女| 97热久久五月婷婷| 999久久久国产精品| 欧美成人精品A片免费一区99| 久久婷婷激情视频| 亚洲综合五月天综合| 欧美性交一区二区三区| 五月天开心网| 色香欲综合| 久久九九网| 91精品久久久久久| 婷婷五月激情网| 色噜噜97视频在线观看| 久久久久9| 亚洲天堂99| 日本色道视频网站| 91chinese在线| 91超碰在线观看| 亚洲精品视频在线播放| 五月丁香天堂| 婷婷综合久久综合| 一区=区操屄高清大全av| 另类小说五月天| 丝袜大香蕉| 少妇人妻偷人精品无码视频新浪| 亚洲秘 无码一区二区三区妃光/1| 全国最新疫情| 五月丁香六月婷婷手机无线| 国产午夜精品AV一区二区麻豆| 97色永久免费视频| 影视av久久久噜噜噜噜噜三级| 插插插色综合网| 国产综合激情五月久久| 色婷婷狠狠爱| 色频玖玖五月天| 热99精品视频在线观看| 啪精品| 91人人网| 中文精品久久久久人妻不| 99热九九在线| 五月婷婷草| 91精品在线看| 天天草人人摸| 婷婷五月天com| 九九爱激情| 色五月av| 人人九色| 日韩999| 我淫我色婷婷五月天激情四射| 噜噜噜狠狠色综合| 五月天成人综合| 美女被操一区二区| 丁香五婷| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 色播激情| 182TV亚洲| 激情五月综合免费| 深爱激情婷| 99热99色| 五月激情久久| 人人亚洲| 五月天婷婷婷| 五月丁香六月激情综合| 五月婷婷花| site:wpjngj.com| 丁香婷婷成人在线播放| 99丁香五月婷| 国产成人亚洲综合A∨婷婷| 成人在线视频男人的天堂4399| 激情五月婷婷啪啪| 26uuu青青| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 婷婷五月天最新综合你懂的 | 中美日韩成人在线| 国产在线另类五月婷婷| 天天摸日日舔狠狠添婷婷婷| 婷婷开心综合人妻小说网址| 日本在线视频播放91| 中美日韩成人在线| 开心五月婷| 91热爆在线| 色停停影院五月天| 亚洲色涩视频| 婷婷五月天天爽| 蜜桃人妻无码AV天堂三区| 在线观看日韩12345区| 丁香五月成人自拍| 日韩无码专区| 丁香五月天婷婷激情| 丁香五月婷婷五月天| 亚洲色综合| 变态另类色图 | www.日日夜夜.com| 91刘玥视频在线观看| 99在线视频精品| 久久性爰视频这里只有精品| 六月婷婷久久| 日本性视频| 亚洲AAA| 中文字幕永久在线| 日本女人久久| 五月婷色激情五月| 综合天堂AV久久久久久久| 丁香五月ⅤA久久久| 99热91| 日本色婷婷| 99精品偷拍视频| 亚洲一区先锋影音| 最近中文字幕在线中文视频| 一本久久婷婷| 人人色AV| 91超级碰碰| 伍月婷丁香婷| 五月婷精品| 色色激情网| 激情久久丁香| 97色婷婷在线观看| 天天色宗合| 成人短视频免费| 丁香五月,激情五月,深爱五月| 中文字幕在线免费观看视频| 欧洲色区| 丁香五月大片| 狠狠操狠狠爱| 婷婷综合网在线| 五月天另类激情在线| 九月丁香八月婷婷久久综合久97| 婷婷五月天成人在线视频| 激情五月小说婷婷| #NAME?| 天天色视频| 色播综合|