色五月色开心色婷婷色丁香,五月婷婷丁香花综合网,婷婷丁香五月激情综合在线,五月婷婷六月丁香动漫,婷婷丁香五月激情综合在线,丁香花中文字幕在线观看,播五月色五月开心五月网,开心激情综合网,狠狠色丁香婷婷综合最新地址,丁香视频在线观看,狠狠做六月爱婷婷综合av,久久激情五月丁香伊人

ARTICLE DETAIL

資訊詳情

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

Unity虛擬仿真生成點(diǎn)云數(shù)據(jù):打通OpenPCDet訓(xùn)練流水線實(shí)戰(zhàn)

Unity虛擬仿真生成點(diǎn)云數(shù)據(jù):打通OpenPCDet訓(xùn)練流水線實(shí)戰(zhàn) 1. 項(xiàng)目概述為什么要在Unity里搞點(diǎn)云數(shù)據(jù)生成如果你正在做自動駕駛、機(jī)器人感知或者三維重建那你肯定對點(diǎn)云數(shù)據(jù)不陌生。激光雷達(dá)掃出來的那一堆三維空間點(diǎn)就是算法的“眼睛”。但現(xiàn)實(shí)是采集真實(shí)世界的點(diǎn)云數(shù)據(jù)成本高、周期長、場景受限還受天氣影響。這時候虛擬仿真就成了一個繞不開的利器。這個項(xiàng)目就是把兩個看似不搭界的工具鏈擰在一起Unity和OpenPCDet。Unity是頂級的實(shí)時3D內(nèi)容創(chuàng)作平臺能生成高度逼真、物理規(guī)則正確的虛擬世界。OpenPCDet則是目前最流行、最易用的點(diǎn)云3D目標(biāo)檢測開源框架之一基于PyTorch集成了PointPillar、PointRCNN、PV-RCNN等一系列SOTA模型。我們的目標(biāo)很明確在Unity中構(gòu)建一個可控的虛擬環(huán)境生成帶有精確標(biāo)注信息的點(diǎn)云數(shù)據(jù)并最終能被OpenPCDet的pipeline無縫讀取和訓(xùn)練。這聽起來像是個“縫合怪”但一旦跑通價(jià)值巨大。你可以批量生成雨雪霧天、黑夜、極端交通場景的數(shù)據(jù)可以隨意調(diào)整物體類別、密度和姿態(tài)成本幾乎為零。這對于算法模型的快速迭代、數(shù)據(jù)增強(qiáng)、以及解決真實(shí)數(shù)據(jù)中的長尾問題是降維打擊。我自己在推進(jìn)自動駕駛感知項(xiàng)目時就深受數(shù)據(jù)匱乏之苦。等路采車隊(duì)回來標(biāo)注團(tuán)隊(duì)再標(biāo)上幾周一個迭代周期就過去了。后來下定決心打通這條虛擬數(shù)據(jù)流水線中間踩了無數(shù)的坑從坐標(biāo)轉(zhuǎn)換、數(shù)據(jù)格式到標(biāo)注同步每一步都可能讓你卡上好幾天。這篇教程就是把我趟過的路、填過的坑系統(tǒng)地梳理出來讓你能避開我走過的彎路快速搭建起自己的虛擬數(shù)據(jù)生成工廠。2. 核心思路與架構(gòu)設(shè)計(jì)打通Unity到OpenPCDet的任督二脈整個流程的核心是設(shè)計(jì)一條從虛擬世界到檢測模型訓(xùn)練的數(shù)據(jù)通路。這不僅僅是“導(dǎo)出幾個點(diǎn)”那么簡單它涉及到坐標(biāo)系轉(zhuǎn)換、數(shù)據(jù)格式對齊、標(biāo)注信息同步等一系列工程問題。下圖清晰地展示了我們設(shè)計(jì)的核心數(shù)據(jù)流與模塊架構(gòu)flowchart TD A[Unity虛擬環(huán)境] --|模擬激光雷達(dá)br生成原始點(diǎn)云與標(biāo)注| B[數(shù)據(jù)生成模塊] B -- C{格式轉(zhuǎn)換與同步模塊} C --|轉(zhuǎn)換為PCD格式| D[點(diǎn)云數(shù)據(jù)br.pcd文件] C --|生成KITTI格式標(biāo)注| E[標(biāo)注文件br.txt文件] D -- F[OpenPCDet數(shù)據(jù)集目錄] E -- F F -- G[OpenPCDet數(shù)據(jù)預(yù)處理br創(chuàng)建gt_database等] G -- H[模型訓(xùn)練與驗(yàn)證]2.1 為什么是Unity OpenPCDet這個組合首先看Unity。選擇它而不是其他仿真軟件如CARLA其底層也是Unreal原因有幾個可控性與保真度Unity的渲染管線特別是URP/HDRP能產(chǎn)生極其逼真的圖像這對于模擬激光雷達(dá)的強(qiáng)度intensity信息至關(guān)重要。你可以精細(xì)控制材質(zhì)的光學(xué)屬性。靈活的腳本與插件生態(tài)C#腳本和龐大的Asset Store資源讓我們可以自定義激光雷達(dá)模型、控制場景邏輯、編寫數(shù)據(jù)導(dǎo)出器非常靈活。性能與批量生成Unity可以無頭模式Headless Mode運(yùn)行在服務(wù)器上批量跑仿真快速生成海量數(shù)據(jù)。物理引擎內(nèi)置的NVIDIA PhysX或新的Unity Physics能提供剛體動力學(xué)模擬讓車輛碰撞、物體掉落等場景更真實(shí)。再看OpenPCDet。它不是一個基礎(chǔ)框架而是一個高度模塊化、工程化完善的開源項(xiàng)目。統(tǒng)一的基準(zhǔn)它復(fù)現(xiàn)并統(tǒng)一了多個頂級點(diǎn)云檢測模型的代碼使用相同的評估標(biāo)準(zhǔn)和數(shù)據(jù)接口主要是KITTI格式避免了我們自己東拼西湊。易于擴(kuò)展其數(shù)據(jù)加載、模型定義、損失函數(shù)都是模塊化的我們生成的數(shù)據(jù)只要符合它的約定就能立即用于訓(xùn)練和評估。社區(qū)活躍遇到問題容易找到解決方案或討論。2.2 核心挑戰(zhàn)與解決思路結(jié)合上面的架構(gòu)圖整個流程面臨幾個核心挑戰(zhàn)挑戰(zhàn)一傳感器物理模擬Unity里沒有現(xiàn)成的、物理準(zhǔn)確的激光雷達(dá)模型。我們需要用腳本模擬激光束的發(fā)射、碰撞檢測并計(jì)算返回點(diǎn)的坐標(biāo)、距離和強(qiáng)度。強(qiáng)度模擬尤其復(fù)雜需要結(jié)合物體表面材質(zhì)、入射角、距離衰減等因素。解決思路不追求絕對物理正確而是追求“物理合理”和“一致性”。我們采用射線投射Raycast來模擬單束激光。強(qiáng)度值可以基于擊中物體的材質(zhì)預(yù)設(shè)一個基礎(chǔ)反射率再乘以一個基于入射角射線與法線夾角的衰減系數(shù)和距離衰減系數(shù)。關(guān)鍵是同一類物體在不同距離、角度下其強(qiáng)度值的變化趨勢要合理并且整個數(shù)據(jù)集的模擬規(guī)則要一致。挑戰(zhàn)二坐標(biāo)系轉(zhuǎn)換這是新手最容易栽跟頭的地方。Unity使用左手坐標(biāo)系Y軸向上而自動駕駛領(lǐng)域常用的KITTI數(shù)據(jù)集和OpenPCDet使用右手坐標(biāo)系Z軸向上。同時激光雷達(dá)的安裝位置、朝向偏航、俯仰、橫滾角都需要精確對齊。解決思路在數(shù)據(jù)導(dǎo)出的最后一步進(jìn)行統(tǒng)一的坐標(biāo)系變換。我們需要一個變換矩陣將Unity世界空間中的點(diǎn)左手系Y上轉(zhuǎn)換到以激光雷達(dá)為中心的右手坐標(biāo)系Z上X前Y左。這個變換通常包含平移到雷達(dá)中心、旋轉(zhuǎn)對齊軸系、可能還有縮放。必須寫一個工具函數(shù)并反復(fù)驗(yàn)證可以通過在場景中放置已知位置的標(biāo)定物來驗(yàn)證轉(zhuǎn)換是否正確。挑戰(zhàn)三數(shù)據(jù)與標(biāo)注格式對齊OpenPCDet主要支持KITTI格式。這意味著我們的點(diǎn)云需要保存為.binKITTI原始點(diǎn)云或.pcd文件標(biāo)注信息需要保存為特定的.txt文件每行包含物體類別、截?cái)?遮擋程度、觀測角、2D/3D邊界框等信息。解決思路在Unity中我們不僅要知道每個點(diǎn)打在了哪個物體上還要知道這個物體的3D邊界框在雷達(dá)坐標(biāo)系下。這需要在場景中為每個可檢測物體車、人、騎行者等添加一個腳本實(shí)時計(jì)算其相對于雷達(dá)的3D包圍盒。標(biāo)注文件中的參數(shù)如旋轉(zhuǎn)角繞Y軸、中心點(diǎn)、長寬高都需要從這個包圍盒精確計(jì)算出來。挑戰(zhàn)四流水線自動化最終我們需要的是一個“一鍵生成”或可批量調(diào)用的流程而不是在Unity編輯器里手動點(diǎn)擊播放、導(dǎo)出。解決思路利用Unity的命令行接口和C#腳本。我們可以編寫一個主控腳本負(fù)責(zé)按順序1加載場景2隨機(jī)化或按預(yù)設(shè)擺放物體、天氣、光照3運(yùn)行仿真4觸發(fā)雷達(dá)掃描和數(shù)據(jù)導(dǎo)出5循環(huán)。然后通過命令行調(diào)用Unity可執(zhí)行文件并執(zhí)行這個腳本實(shí)現(xiàn)自動化批量生成。3. 環(huán)境搭建與工具鏈準(zhǔn)備工欲善其事必先利其器。這一部分我們詳細(xì)列出所需的軟件、插件和初始配置。請嚴(yán)格按照步驟操作避免版本沖突。3.1 Unity側(cè)環(huán)境配置Unity版本選擇建議使用Unity 2021.3 LTS或2022.3 LTS版本。LTS長期支持版穩(wěn)定性高社區(qū)資源豐富。避免使用最新的技術(shù)預(yù)覽版可能遇到未知插件兼容性問題。安裝Unity Hub和指定版本編輯器從Unity官網(wǎng)下載并安裝Unity Hub。在Hub的“安裝”頁面添加所需的LTS版本編輯器。在安裝時務(wù)必勾選“Windows Build Support (IL2CPP)”或?qū)?yīng)的Linux/Mac模塊如果你在服務(wù)器上做無頭模式生成以及“Linux/Mac/Windows Dedicated Server”模塊用于無頭模式。創(chuàng)建新項(xiàng)目使用3D (URP)模板創(chuàng)建新項(xiàng)目。URP通用渲染管線在保真度和性能上取得了很好的平衡且更適合后期自定義渲染效果來模擬激光雷達(dá)強(qiáng)度。項(xiàng)目命名建議為PointCloudSimulator。關(guān)鍵插件與Asset導(dǎo)入Obi Rope / 或自定義射線管理雖然我們可以自己寫射線代碼但使用一些高級射線或物理插件能更方便地管理成千上萬條激光束。Obi是一個強(qiáng)大的物理插件但其主要用于柔體。對于純雷達(dá)模擬自己編寫一個高效的多線程Raycast管理器是更直接的選擇。我們這里先以自研為主。場景資源從Asset Store獲取高質(zhì)量的道路、車輛、行人、建筑資產(chǎn)包。推薦搜索“POLYGON”系列或“Synty Studios”的資產(chǎn)它們風(fēng)格統(tǒng)一、面數(shù)優(yōu)化好。也可以使用開源的“Unity Robotics”倉庫中的URDF導(dǎo)入工具如果你有機(jī)器人模型的話。天空與天氣系統(tǒng)可以使用Unity的Post Processing Volumetric Fog來模擬霧天或使用資產(chǎn)如“Enviro - Sky and Weather”來動態(tài)控制天氣。3.2 Python與OpenPCDet環(huán)境配置強(qiáng)烈建議使用Anaconda管理Python環(huán)境避免污染系統(tǒng)環(huán)境。安裝Anaconda從官網(wǎng)下載并安裝Anaconda。創(chuàng)建專用虛擬環(huán)境# 創(chuàng)建一個名為 openpcdet 的Python 3.8環(huán)境3.8是PyTorch兼容性較好的版本 conda create -n openpcdet python3.8 -y conda activate openpcdet安裝PyTorch 訪問PyTorch官網(wǎng)根據(jù)你的CUDA版本建議11.3或11.6選擇安裝命令。例如對于CUDA 11.3pip install torch1.12.1cu113 torchvision0.13.1cu113 torchaudio0.12.1 --extra-index-url https://download.pytorch.org/whl/cu113克隆并安裝OpenPCDet# 克隆倉庫 git clone https://github.com/open-mmlab/OpenPCDet.git cd OpenPCDet # 安裝依賴 pip install -r requirements.txt # 編譯CUDA算子關(guān)鍵步驟 python setup.py develop注意編譯CUDA算子時請確保你的nvcc版本與PyTorch要求的CUDA版本一致。如果編譯失敗通常是環(huán)境問題請仔細(xì)檢查PyTorch版本、CUDA版本和nvcc版本是否匹配。安裝點(diǎn)云處理庫pip install open3d # 用于可視化點(diǎn)云和格式轉(zhuǎn)換 pip install pyntcloud # 可選用于處理PCD文件3.3 數(shù)據(jù)格式橋梁自定義導(dǎo)出工具規(guī)劃我們需要在Unity中編寫C#腳本負(fù)責(zé)模擬激光雷達(dá)掃描。收集命中點(diǎn)信息坐標(biāo)、強(qiáng)度、物體ID。計(jì)算3D邊界框標(biāo)注。將數(shù)據(jù)導(dǎo)出為中間格式如JSON或自定義二進(jìn)制或直接轉(zhuǎn)換為KITTI格式。同時在Python端編寫一個后處理腳本負(fù)責(zé)讀取Unity導(dǎo)出的中間數(shù)據(jù)。執(zhí)行坐標(biāo)系轉(zhuǎn)換。生成最終的.pcd/.bin點(diǎn)云文件和KITTI格式的.txt標(biāo)注文件。按照OpenPCDet要求的目錄結(jié)構(gòu)組織數(shù)據(jù)。這種“Unity導(dǎo)出中間格式 - Python后處理”的架構(gòu)比在Unity中直接寫KITTI格式更靈活便于調(diào)試和擴(kuò)展。4. Unity端虛擬激光雷達(dá)與場景構(gòu)建實(shí)戰(zhàn)現(xiàn)在我們進(jìn)入U(xiǎn)nity編輯器開始構(gòu)建核心的傳感器模擬和數(shù)據(jù)采集系統(tǒng)。4.1 構(gòu)建一個基礎(chǔ)的激光雷達(dá)傳感器腳本我們在Unity中創(chuàng)建一個空的GameObject命名為LidarSensor并為其附加一個新的C#腳本LidarSimulator.cs。這個腳本的核心是模擬機(jī)械旋轉(zhuǎn)式激光雷達(dá)如Velodyne HDL-64E。我們需要定義幾個關(guān)鍵參數(shù)using UnityEngine; using System.Collections.Generic; using System.IO; public class LidarSimulator : MonoBehaviour { [Header(激光雷達(dá)參數(shù))] public int channels 64; // 激光線數(shù) public float maxRange 100.0f; // 最大探測距離米 public float minRange 0.5f; // 最小探測距離 public float horizontalFOV 360.0f; // 水平視場角 public float verticalFOV 26.8f; // 垂直視場角-24.8° 到 2° public float rotationFrequency 10.0f; // 旋轉(zhuǎn)頻率Hz public int pointsPerSecond 1300000; // 每秒點(diǎn)數(shù)估算值 [Header(輸出設(shè)置)] public string dataOutputPath LidarData; public bool saveEveryFrame false; public int frameRate 10; // 仿真幀率決定數(shù)據(jù)采集頻率 private ListVector4 currentFramePoints; // 存儲當(dāng)前幀的點(diǎn)云Vector4的w分量存儲強(qiáng)度 private float horizontalAngleStep; private float verticalAngleStart; private float timePerRotation; private float currentRotationAngle 0f; private int frameCount 0; void Start() { // 計(jì)算步進(jìn)角 horizontalAngleStep horizontalFOV / (pointsPerSecond / rotationFrequency / channels); verticalAngleStart -verticalFOV / 2.0f; timePerRotation 1.0f / rotationFrequency; currentFramePoints new ListVector4(); // 設(shè)置幀率 Application.targetFrameRate frameRate; // 創(chuàng)建輸出目錄 if (!Directory.Exists(dataOutputPath)) { Directory.CreateDirectory(dataOutputPath); } } void Update() { // 每一幀模擬一次旋轉(zhuǎn)掃描簡化模型實(shí)際是連續(xù)旋轉(zhuǎn) SimulateOneScan(); if (saveEveryFrame) { SaveCurrentFrameData(); } frameCount; } void SimulateOneScan() { currentFramePoints.Clear(); float deltaAngle horizontalAngleStep * Time.deltaTime * rotationFrequency * 360f; for (int ch 0; ch channels; ch) { float verticalAngle verticalAngleStart (verticalFOV / channels) * ch; // 將垂直角轉(zhuǎn)換為弧度并計(jì)算該通道激光的全局方向 Quaternion verticalRotation Quaternion.AngleAxis(verticalAngle, transform.right); Vector3 channelBaseDirection verticalRotation * transform.forward; // 水平旋轉(zhuǎn) Quaternion horizontalRotation Quaternion.AngleAxis(currentRotationAngle, transform.up); Vector3 rayDirection horizontalRotation * channelBaseDirection; // 發(fā)射射線 Ray ray new Ray(transform.position, rayDirection); RaycastHit hit; if (Physics.Raycast(ray, out hit, maxRange)) { if (hit.distance minRange) { // 計(jì)算強(qiáng)度簡化模型基于距離和材質(zhì) float intensity CalculateIntensity(hit.distance, hit.normal, rayDirection, hit.collider.material); Vector4 point new Vector4(hit.point.x, hit.point.y, hit.point.z, intensity); currentFramePoints.Add(point); } } } currentRotationAngle deltaAngle; if (currentRotationAngle 360f) currentRotationAngle - 360f; } float CalculateIntensity(float distance, Vector3 normal, Vector3 rayDir, Material material) { // 簡化強(qiáng)度模型 float baseReflectivity 0.5f; // 應(yīng)從材質(zhì)屬性中讀取這里簡化 float distanceAttenuation Mathf.Exp(-0.02f * distance); // 距離衰減 float cosIncidentAngle Vector3.Dot(-rayDir.normalized, normal.normalized); cosIncidentAngle Mathf.Clamp(cosIncidentAngle, 0.05f, 1.0f); // 避免角度過小導(dǎo)致強(qiáng)度過大 float angleFactor Mathf.Pow(cosIncidentAngle, 0.5f); return baseReflectivity * distanceAttenuation * angleFactor * Random.Range(0.9f, 1.1f); // 加入微小噪聲 } void SaveCurrentFrameData() { string frameFilePath Path.Combine(dataOutputPath, $frame_{frameCount:D6}.json); // 這里將currentFramePoints列表轉(zhuǎn)換為JSON或自定義格式保存 // 實(shí)際應(yīng)包含點(diǎn)坐標(biāo)、強(qiáng)度以及后續(xù)要關(guān)聯(lián)的物體ID // 為簡化示例我們先保存為CSV格式便于查看 using (StreamWriter sw new StreamWriter(frameFilePath)) { sw.WriteLine(x,y,z,intensity); foreach (var pt in currentFramePoints) { sw.WriteLine(${pt.x},{pt.y},{pt.z},{pt.w}); } } Debug.Log($Saved frame data to: {frameFilePath}); } }注意這是一個高度簡化的模擬器。真實(shí)的激光雷達(dá)模型需要考慮光束發(fā)散角、多回波、噪聲模型高斯噪聲、隨機(jī)丟點(diǎn)、雷達(dá)截面RCS等。對于學(xué)術(shù)研究和初步數(shù)據(jù)增強(qiáng)這個簡化模型已經(jīng)能產(chǎn)生非常有用的數(shù)據(jù)。關(guān)鍵在于一致性即你的模擬規(guī)則在整個數(shù)據(jù)集中保持不變。4.2 為場景物體添加標(biāo)注信息腳本為了讓系統(tǒng)知道哪個點(diǎn)屬于哪個物體我們需要給每個可檢測的物體如車輛、行人添加一個腳本DetectableObject.cs。using UnityEngine; public class DetectableObject : MonoBehaviour { public enum ObjectCategory { Car, Pedestrian, Cyclist, Misc } public ObjectCategory category ObjectCategory.Car; // 用于在雷達(dá)坐標(biāo)系下計(jì)算3D框 private Renderer objectRenderer; private Collider objectCollider; void Start() { objectRenderer GetComponentInChildrenRenderer(); objectCollider GetComponentInChildrenCollider(); } // 提供一個方法根據(jù)給定的雷達(dá)變換信息計(jì)算該物體在雷達(dá)坐標(biāo)系下的3D邊界框 public bool TryGetBoundingBoxInLidarSpace(Transform lidarTransform, out Vector3 center, out Vector3 size, out float rotationY) { center Vector3.zero; size Vector3.zero; rotationY 0f; if (objectRenderer null || objectCollider null) return false; // 獲取物體在世界坐標(biāo)系下的軸對齊包圍盒AABB Bounds worldBounds objectRenderer.bounds; // 將包圍盒的8個頂點(diǎn)轉(zhuǎn)換到雷達(dá)的局部坐標(biāo)系 Vector3[] corners new Vector3[8]; corners[0] lidarTransform.InverseTransformPoint(new Vector3(worldBounds.min.x, worldBounds.min.y, worldBounds.min.z)); corners[1] lidarTransform.InverseTransformPoint(new Vector3(worldBounds.min.x, worldBounds.min.y, worldBounds.max.z)); corners[2] lidarTransform.InverseTransformPoint(new Vector3(worldBounds.min.x, worldBounds.max.y, worldBounds.min.z)); corners[3] lidarTransform.InverseTransformPoint(new Vector3(worldBounds.min.x, worldBounds.max.y, worldBounds.max.z)); corners[4] lidarTransform.InverseTransformPoint(new Vector3(worldBounds.max.x, worldBounds.min.y, worldBounds.min.z)); corners[5] lidarTransform.InverseTransformPoint(new Vector3(worldBounds.max.x, worldBounds.min.y, worldBounds.max.z)); corners[6] lidarTransform.InverseTransformPoint(new Vector3(worldBounds.max.x, worldBounds.max.y, worldBounds.min.z)); corners[7] lidarTransform.InverseTransformPoint(new Vector3(worldBounds.max.x, worldBounds.max.y, worldBounds.max.z)); // 在雷達(dá)坐標(biāo)系下計(jì)算新的AABB Vector3 min corners[0]; Vector3 max corners[0]; foreach (Vector3 corner in corners) { min Vector3.Min(min, corner); max Vector3.Max(max, corner); } center (min max) / 2.0f; size max - min; // 計(jì)算偏航角繞雷達(dá)坐標(biāo)系Y軸的旋轉(zhuǎn)。這里簡化處理取物體自身Y軸旋轉(zhuǎn)。 // 更精確的做法是計(jì)算物體朝向在雷達(dá)XZ平面上的投影與雷達(dá)X軸的夾角。 Vector3 objectForwardInLidarSpace lidarTransform.InverseTransformDirection(transform.forward); rotationY Mathf.Atan2(objectForwardInLidarSpace.x, objectForwardInLidarSpace.z); // 注意坐標(biāo)系差異 return true; } // 獲取類別標(biāo)簽字符串用于KITTI格式 public string GetCategoryLabel() { switch (category) { case ObjectCategory.Car: return Car; case ObjectCategory.Pedestrian: return Pedestrian; case ObjectCategory.Cyclist: return Cyclist; default: return Misc; } } }然后我們需要修改LidarSimulator的射線檢測部分在擊中物體時不僅記錄點(diǎn)還要記錄擊中的物體ID可以通過hit.collider.gameObject.GetComponentDetectableObject()獲取并將這個ID與點(diǎn)云數(shù)據(jù)一起保存。在SaveCurrentFrameData時還需要遍歷場景中所有DetectableObject調(diào)用其TryGetBoundingBoxInLidarSpace方法生成該幀的標(biāo)注信息并保存為單獨(dú)的標(biāo)注文件。4.3 場景布置與自動化腳本構(gòu)建基礎(chǔ)場景創(chuàng)建一個平面作為地面導(dǎo)入道路模型、建筑、樹木等靜態(tài)資產(chǎn)。這些靜態(tài)資產(chǎn)通常不需要DetectableObject腳本除非你想檢測它們。創(chuàng)建車輛和行人預(yù)制體Prefab將帶有DetectableObject腳本的車輛、行人模型做成預(yù)制體。這樣便于批量放置和管理。編寫場景生成器創(chuàng)建一個SceneGenerator.cs腳本負(fù)責(zé)在運(yùn)行時隨機(jī)或按預(yù)設(shè)路徑生成車輛和行人。這可以包括在車道線上生成車輛隊(duì)列。在斑馬線附近生成行人。隨機(jī)化車輛的顏色、型號通過替換子模型。為物體賦予初始速度或簡單的AI如沿著路徑點(diǎn)移動。集成到主流程修改LidarSimulator使其在Start時調(diào)用場景生成器然后開始仿真和數(shù)據(jù)記錄。可以設(shè)置一個總幀數(shù)或總時長到達(dá)后自動停止并退出應(yīng)用Application.Quit()這對于命令行批量運(yùn)行至關(guān)重要。5. 數(shù)據(jù)后處理從Unity到OpenPCDet格式的轉(zhuǎn)換Unity導(dǎo)出的數(shù)據(jù)如CSV或自定義二進(jìn)制是“原始數(shù)據(jù)”我們需要將其轉(zhuǎn)換為OpenPCDet能夠直接讀取的標(biāo)準(zhǔn)格式。5.1 坐標(biāo)系轉(zhuǎn)換詳解這是最關(guān)鍵的一步。假設(shè)我們的Unity場景和雷達(dá)傳感器設(shè)置如下Unity世界坐標(biāo)系左手系Y軸向上X軸向右Z軸向前。我們的LidarSensorGameObject的Transform代表了雷達(dá)在Unity世界中的位置和朝向。目標(biāo)坐標(biāo)系KITTI/OpenPCDet雷達(dá)坐標(biāo)系右手系Z軸向上X軸向前Y軸向左。轉(zhuǎn)換步驟獲取點(diǎn)在雷達(dá)局部坐標(biāo)系下的坐標(biāo)在Unity中我們通過lidarTransform.InverseTransformPoint(hit.point)已經(jīng)得到了點(diǎn)相對于雷達(dá)的坐標(biāo)(x_u, y_u, z_u)其中y_u是向上的。左手系到右手系的轉(zhuǎn)換從Unity左手系到KITTI右手系通常意味著其中一個軸需要反向。最常見的轉(zhuǎn)換是X - X, Y - Z, Z - Y并且可能需要調(diào)整正負(fù)號來匹配朝向。 經(jīng)過實(shí)踐一個廣泛使用的轉(zhuǎn)換關(guān)系是x_kitti z_unity y_kitti -x_unity z_kitti y_unity但這取決于你的雷達(dá)傳感器在Unity中的朝向。如果你的雷達(dá)GameObject的Forward (Z) 指向Unity場景的前方比如車頭方向而你想讓KITTI坐標(biāo)系中X軸指向車頭前方那么上述轉(zhuǎn)換可能不對。最可靠的方法是進(jìn)行標(biāo)定在Unity中將雷達(dá)放在原點(diǎn)(0,0,0)朝向設(shè)為(0,0,1)Unity的Z正方向。在雷達(dá)正前方1米處Unity Z軸1放置一個標(biāo)定球。運(yùn)行掃描導(dǎo)出該點(diǎn)的坐標(biāo)假設(shè)得到(0, 0, 1)。應(yīng)用你的轉(zhuǎn)換公式得到KITTI坐標(biāo)。你期望的結(jié)果應(yīng)該是(1, 0, 0)X前Y左Z上。如果不匹配調(diào)整公式。常見的正確轉(zhuǎn)換可能是x_k z_u, y_k -x_u, z_k y_u。驗(yàn)證Unity點(diǎn)(0,0,1) - (1, 0, 0)符合預(yù)期。再在雷達(dá)正左方1米處Unity X軸1放一個球Unity點(diǎn)(1,0,0)應(yīng)轉(zhuǎn)換為KITTI點(diǎn)(0, -1, 0)。驗(yàn)證通過。5.2 生成KITTI格式標(biāo)注文件KITTI標(biāo)注文件.txt每行代表一個物體包含15個字段對于我們生成數(shù)據(jù)主要關(guān)注前14個字段說明我們的生成邏輯1類別 (如 ‘Car’, ‘Pedestrian’)從DetectableObject.GetCategoryLabel()獲取2截?cái)喑潭?(0~1)虛擬數(shù)據(jù)通常設(shè)為 0.0未截?cái)?遮擋程度 (0,1,2,3)虛擬數(shù)據(jù)通常設(shè)為 0完全可見4觀測角 (alpha)計(jì)算物體中心相對于雷達(dá)的方位角需轉(zhuǎn)換到相機(jī)坐標(biāo)系虛擬數(shù)據(jù)可先粗略估計(jì)或設(shè)為05~82D邊界框 (左上右下)虛擬數(shù)據(jù)通常留空或填-1因?yàn)檫@是圖像坐標(biāo)系下的框。我們只關(guān)注3D。9~113D尺寸 (高寬長)注意順序從TryGetBoundingBoxInLidarSpace輸出的size獲取。KITTI順序是高度、寬度、長度在相機(jī)坐標(biāo)系下。在雷達(dá)坐標(biāo)系下我們需要根據(jù)定義重新排序。通常size.y對應(yīng)高size.x對應(yīng)寬size.z對應(yīng)長。但務(wù)必驗(yàn)證12~143D位置 (x, y, z)從TryGetBoundingBoxInLidarSpace輸出的center獲取并應(yīng)用與點(diǎn)云相同的坐標(biāo)系轉(zhuǎn)換。15旋轉(zhuǎn)角 (ry繞Y軸)從TryGetBoundingBoxInLidarSpace輸出的rotationY獲取。關(guān)鍵提示KITTI的3D框定義是在相機(jī)坐標(biāo)系下也是右手系Z前X右Y下。但OpenPCDet在加載KITTI數(shù)據(jù)時會將其轉(zhuǎn)換到雷達(dá)坐標(biāo)系。因此我們生成標(biāo)注時可以直接生成雷達(dá)坐標(biāo)系下的3D框參數(shù)并忽略與相機(jī)相關(guān)的字段如2D框、觀測角alpha可以簡單計(jì)算或設(shè)0。許多基于KITTI訓(xùn)練的研究代碼都提供了只使用雷達(dá)坐標(biāo)標(biāo)注的選項(xiàng)。最穩(wěn)妥的方法是參考OpenPCDet中kitti_dataset.py的標(biāo)注加載部分看它具體期望什么坐標(biāo)系下的數(shù)據(jù)。5.3 編寫Python后處理腳本創(chuàng)建一個convert_unity_to_kitti.py腳本其工作流程如下讀取Unity原始數(shù)據(jù)讀取你保存的JSON/CSV/二進(jìn)制文件包含點(diǎn)云列表和每幀的物體標(biāo)注信息。應(yīng)用坐標(biāo)系轉(zhuǎn)換對每個點(diǎn)云坐標(biāo)和每個3D框中心點(diǎn)坐標(biāo)應(yīng)用5.1節(jié)確定的轉(zhuǎn)換公式。生成點(diǎn)云文件將轉(zhuǎn)換后的點(diǎn)云Nx4包含x,y,z,intensity保存為.bin文件純二進(jìn)制float32數(shù)組或.pcd文件PCL庫格式可用open3d讀寫。保存為.binpoints.astype(np.float32).tofile(‘xxxx.bin’)保存為.pcd使用open3d.geometry.PointCloud然后open3d.io.write_point_cloud。生成標(biāo)注文件為每一幀創(chuàng)建一個同名的.txt文件按照5.2節(jié)的格式寫入每個物體的信息。組織目錄結(jié)構(gòu)按照OpenPCDet的要求組織文件。通常結(jié)構(gòu)如下OpenPCDet └── data └── kitti ├── ImageSets │ └── train.txt (和val.txt, test.txt里面是幀ID列表如000000, 000001) ├── training │ ├── calib (校準(zhǔn)文件虛擬數(shù)據(jù)可以先放空文件或簡單模擬) │ ├── image_2 (空目錄或放置對應(yīng)的虛擬相機(jī)圖像) │ ├── label_2 (存放我們生成的.txt標(biāo)注文件) │ └── velodyne (存放我們生成的.bin或.pcd點(diǎn)云文件) └── testing (類似training如果沒有測試集就空著)生成數(shù)據(jù)集的劃分文件在ImageSets文件夾下的train.txt等文件中只需寫入幀的文件名不含擴(kuò)展名例如000000 000001 000002 ...6. 在OpenPCDet中訓(xùn)練與驗(yàn)證虛擬數(shù)據(jù)數(shù)據(jù)準(zhǔn)備就緒后我們終于可以在OpenPCDet中使用了。6.1 創(chuàng)建自定義數(shù)據(jù)集配置文件OpenPCDet使用YAML文件定義數(shù)據(jù)集。我們需要復(fù)制一個現(xiàn)有的KITTI配置文件如tools/cfgs/dataset_configs/kitti_dataset.yaml并修改。主要修改點(diǎn)DATASET: KittiDataset DATA_PATH: ../data/kitti # 你的數(shù)據(jù)根目錄 ... POINT_CLOUD_RANGE: [0, -40, -3, 70.4, 40, 1] # 點(diǎn)云感興趣區(qū)域根據(jù)你的場景調(diào)整 ... DATA_SPLIT: { train: train.txt, test: val.txt, # 通常用val集做測試 } INFO_PATH: { train: [kitti_infos_train.pkl], test: [kitti_infos_val.pkl], }然后你需要運(yùn)行OpenPCDet的數(shù)據(jù)預(yù)處理腳本來生成kitti_infos_train.pkl等文件cd OpenPCDet/tools python -m pcdet.datasets.kitti.kitti_dataset create_kitti_infos tools/cfgs/dataset_configs/your_custom_kitti.yaml這個命令會解析你的label_2和velodyne文件夾生成包含數(shù)據(jù)路徑、標(biāo)注、難度等信息的pkl文件。6.2 訓(xùn)練模型選擇一個模型例如PointPillar其配置文件在tools/cfgs/kitti_models/pointpillar.yaml。你需要修改其中的DATA_CONFIG部分指向你自定義的數(shù)據(jù)集配置文件。DATA_CONFIG: _BASE_CONFIG_: cfgs/dataset_configs/your_custom_kitti.yaml然后開始訓(xùn)練python train.py --cfg_file tools/cfgs/kitti_models/pointpillar.yaml --batch_size 4 --workers 4注意虛擬數(shù)據(jù)的分布和真實(shí)數(shù)據(jù)有差異Domain Gap直接訓(xùn)練可能效果有限。但我們的主要目的可能是驗(yàn)證流水線確保數(shù)據(jù)能被正確讀取、模型能正常訓(xùn)練。數(shù)據(jù)增強(qiáng)將虛擬數(shù)據(jù)與真實(shí)數(shù)據(jù)混合訓(xùn)練。特定場景預(yù)訓(xùn)練先在大量虛擬數(shù)據(jù)上預(yù)訓(xùn)練再用少量真實(shí)數(shù)據(jù)微調(diào)。6.3 可視化與調(diào)試OpenPCDet提供了很好的可視化工具。在訓(xùn)練前或訓(xùn)練后可以使用以下命令可視化你的數(shù)據(jù)或檢測結(jié)果# 可視化數(shù)據(jù)集中的某一幀包括點(diǎn)云和3D框 python demo.py --cfg_file ${CONFIG_FILE} --ckpt ${CHECKPOINT_FILE} --data_path ${POINT_CLOUD_DATA} --ext .bin通過可視化你可以最直觀地檢查點(diǎn)云坐標(biāo)轉(zhuǎn)換是否正確物體是否站在地面上Z軸向上場景方向是否符合預(yù)期3D標(biāo)注框是否準(zhǔn)確框是否緊密包裹物體旋轉(zhuǎn)角是否正確強(qiáng)度信息是否合理不同材質(zhì)、不同距離的物體強(qiáng)度值是否有明顯差異7. 常見問題、避坑指南與性能優(yōu)化在這一年的摸索中我遇到了無數(shù)問題。這里列出最典型的幾個及其解決方案。7.1 數(shù)據(jù)生成與轉(zhuǎn)換中的典型問題問題1點(diǎn)云和3D框在可視化時對不上。排查這是坐標(biāo)系轉(zhuǎn)換不一致導(dǎo)致的。確保點(diǎn)云轉(zhuǎn)換和3D框中心點(diǎn)轉(zhuǎn)換使用了完全相同的公式。單獨(dú)寫一個測試腳本用幾個已知空間關(guān)系的點(diǎn)如雷達(dá)原點(diǎn)、正前方1米點(diǎn)、正上方1米點(diǎn)進(jìn)行轉(zhuǎn)換并打印結(jié)果與預(yù)期對比。技巧在Unity中創(chuàng)建一個簡單的標(biāo)定場景放置幾個規(guī)則排列的立方體生成一幀數(shù)據(jù)。用Open3D在Python中加載轉(zhuǎn)換后的點(diǎn)云和3D框看它們是否重合。這是最有效的調(diào)試方法。問題2生成的3D框旋轉(zhuǎn)角ry不正確框的方向是歪的。原因TryGetBoundingBoxInLidarSpace中計(jì)算rotationY的方法過于簡化。它直接取了物體forward向量在雷達(dá)XZ平面投影的夾角但這可能不是物體實(shí)際朝向比如車頭可能并不嚴(yán)格朝向它的forward軸。解決方案對于規(guī)則物體如車輛一個更好的方法是使用主成分分析PCA或直接使用物體碰撞體Box Collider的方向。在Unity中如果物體使用BoxCollider你可以用boxCollider.transform.forward來獲取其本地軸向再轉(zhuǎn)換到雷達(dá)空間計(jì)算角度。問題3虛擬數(shù)據(jù)訓(xùn)練出的模型在真實(shí)數(shù)據(jù)上完全失效Domain Gap太大。原因虛擬數(shù)據(jù)的點(diǎn)云分布密度、噪聲、反射強(qiáng)度與真實(shí)雷達(dá)差異巨大。緩解策略傳感器模型精細(xì)化在Unity雷達(dá)腳本中加入更真實(shí)的噪聲模型如距離相關(guān)的高斯噪聲、隨機(jī)丟點(diǎn)、模擬多路徑反射等。強(qiáng)度模擬為不同材質(zhì)金屬、玻璃、塑料、植被分配不同的基礎(chǔ)反射率并讓反射率隨入射角變化更符合物理。數(shù)據(jù)混合訓(xùn)練不要只用虛擬數(shù)據(jù)。采用課程學(xué)習(xí)或簡單混合的方式將虛擬數(shù)據(jù)和真實(shí)數(shù)據(jù)按比例如1:1, 1:3混合在一個數(shù)據(jù)集中進(jìn)行訓(xùn)練。域自適應(yīng)技術(shù)考慮在模型中加入域自適應(yīng)模塊或使用生成對抗網(wǎng)絡(luò)GAN風(fēng)格遷移將虛擬點(diǎn)云風(fēng)格遷移到更接近真實(shí)點(diǎn)云。7.2 Unity仿真性能優(yōu)化當(dāng)場景復(fù)雜、激光雷達(dá)線數(shù)高時每幀數(shù)萬次Raycast會成為性能瓶頸。使用Jobs System和Burst CompilerUnity的C# Job System可以利用多核進(jìn)行并行Raycast計(jì)算。將射線方向數(shù)組、結(jié)果數(shù)組轉(zhuǎn)換為NativeArray在Job中并行執(zhí)行RaycastCommand。降低更新頻率不一定每Unity幀都進(jìn)行一次完整掃描??梢愿鶕?jù)雷達(dá)的實(shí)際頻率如10Hz來更新在間隔幀里不進(jìn)行計(jì)算。簡化碰撞體對遠(yuǎn)處的物體或復(fù)雜的模型使用簡化的Mesh Collider或甚至Box/Sphere Collider來代替高精度的碰撞體能大幅提升Raycast性能。使用空間劃分對于超大場景可以考慮動態(tài)加載只對雷達(dá)周圍的區(qū)域進(jìn)行物理模擬。7.3 自動化與批量生成最終目標(biāo)是無人值守的批量生成。命令行運(yùn)行Unity/path/to/Unity -batchmode -nographics -projectPath /path/to/yourProject -executeMethod YourNamespace.YourClass.YourMethod -quit-batchmode: 無頭模式運(yùn)行。-nographics: 不初始化圖形設(shè)備節(jié)省資源。-executeMethod: 指定啟動后執(zhí)行的靜態(tài)C#方法。在這個方法里你可以啟動你的場景生成和仿真流程。-quit: 執(zhí)行完畢后自動退出。參數(shù)化生成通過命令行參數(shù)或配置文件向Unity傳遞隨機(jī)種子、場景配置、生成幀數(shù)等參數(shù)實(shí)現(xiàn)生成數(shù)據(jù)的多樣性。任務(wù)隊(duì)列可以編寫一個Python主控腳本依次調(diào)用不同的Unity命令行生成不同天氣晴、雨、霧、不同時間晝、夜、不同交通密度的場景數(shù)據(jù)。打通Unity到OpenPCDet的虛擬數(shù)據(jù)生成管線是一個涉及計(jì)算機(jī)圖形學(xué)、傳感器物理、軟件工程和機(jī)器學(xué)習(xí)多個領(lǐng)域的綜合性項(xiàng)目。它沒有標(biāo)準(zhǔn)答案需要你根據(jù)自身需求不斷調(diào)整和優(yōu)化。但一旦這條管線穩(wěn)定運(yùn)行它將成為你算法研發(fā)過程中最強(qiáng)大的武器之一讓你擺脫對昂貴、緩慢的真實(shí)數(shù)據(jù)采集的依賴專注于算法創(chuàng)新本身。希望這篇超詳細(xì)的指南能為你點(diǎn)亮這條路上的第一盞燈。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产精品噜噜噜日日日| 日本天天干天天搞一区| 级做a爱无码性色永久免费| 91欧美美女日韩国产婷婷| 黄色一级视| 精品亚洲天堂| 97欧美色| 日本一天色道久久久精品视频| 熟女六十路| 国产av激情无码久久天堂| 操逼日批| 国产精品不卡一区二区三区av| 久久精品国产精品| 在线五区| 国产丝袜高跟美女av免费观看| 日本在线一二| 日本三级中国三级99人妇网站| 情色AV电影| 国产粉嫩出水在线播放| 特级毛片特黄久久免费看| 亚洲天堂男人的天堂| 蜜桃av综合网发布| 国产日韩中文字幕欧美| 尤物视频视频官网| 猛猛干| 欧美精品 - 91爱爱| 无码久| 好舒服视频| 国产农村一一级特黄毛片| 欧美少妇色图| 91暧暧| 大地资源在线观看中文第二页| 超碰在线97国产| 综合久久婷婷| 神马福利久草| 麻豆国产av网| 小明看看网址| 嗯嗯啊啊啊啊轻点视频| 国产又大又粗又长视频| 久久久久久999| 中文字幕视频在线观看| 97资源站日韩| 新久久AV| 青青草在线视频人人想人人上| 99这里有精品| 亚av顶级裸体一区二区三区四区五区 | 亚洲国内精品成人不卡| 乱色老一区二区三区的观看方式| 91中出在线| 中文字幕丰满子伦无码专区在线视频最新| 91福利网在线观看| 天天天天天天天天天天干美女| 激情五月天色色网| av2014 日韩在线中文字幕| 精品一久久久| 色九久| 人人贴人人摸| 五月婷婷色| 色999人与兽| 天天看特黄的免费网站| 另类老少妇| 翔田千里AV无码秘 三区| 中文字幕第9页萱萱影音先锋| 又粗又长又爽在线观看| 五月丁香在线| 国产久9| 欧美国产精品久久九九| 欧美劲爆视频一区二区| 性爱乱伦网址| 1024午夜激情男人的天堂| 亚欧性爱无码| 亚洲性爱高潮影院| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 狠狠色一区二区中文字幕| 久久久久久久久9| 中国一区二区亚洲人妻| 久热99999| 18禁免费视频| 性老妇一区二区三区| 网站A V在线| 99久久婷婷国产综合精品草原| 亚州欧美总和| 欧美日本国产日韩激情视频| 少妇第一页| 国产操逼网站亚洲一级黄色| 久久婷婷一区二| 国产熟女无套内射| 日韩三级一区 | 色逼综合| 欧美少妇一区二区三区| 影音先锋每日最新资源在线观看| 亚洲91av| 亚洲最大成人a毛毛片| 国产白领连续中出在线观看| 狠狠操夜夜| 亚av顶级裸体一区二区三区四区五区 | 亚洲在线a| 草b在线| 综合操逼| 搡老女人老91妇女老熟女| 婷婷丁香六月天| 丁香色狠狠色综合久久小说| 青青青艹在线视频| 色婷婷激一区二区三区 | 日本一久是| 少妇国产不卡| 视频二区美腿丝袜制服人妻欧美| 国产精品亚洲免费| 欧美日综合| 久久伊人五月天| 乱伦熟女区| 99这里有精品视频| 国产又粗又又黄又猛| 亚洲AV无码天美传媒一区| 91丨国产丨白浆| 亚洲色图欧美色图制服丝袜| 亚洲第一二区另类图| 91丝袜美腿片| 欧美色97| 亚洲AV噜噜狠狠网址蜜桃动漫| 日韩欧美成人性爱在线| 无码抄逼网| 男人的天堂2018东京热啪啪啪| 美女露胸露奶头| 亚洲91网站| 欧美日韩欧美| 色综合美国| av网站免费线看| 91狠狠| 欧美日本不卡| 精品人妻一区二区蜜桃视频| 亚洲国产中文字幕| 欧美中字不卡| 国内毛片四区| 精品欧美А∨无码黑人大荫蒂| 快播久久人人aV| 少妇高潮九九九九| 秋霞曰韩R级| 国产传媒日本欧美专区| 啪啪自拍九九综合| 国产大学生口爆吞精合集| 男人亚洲91首页在线| 亚洲熟女乱综合一区二区三区| 欧美在线天堂| 大香蕉综合网| 天天碰久久入| 人人射人人操人人摸| www.AV有限公司一区| 亚洲色婷婷久久久综合日本| 成人av免费观看| 91亚洲狠狠色| 韩国午夜理伦三级好看| 热久日综合| 国产一区自拍欧美日韩| 国产精品小视频一区二区三区| 亚洲第一页色网| 日产精品久久久一区二区| 久热99999| 福利一级版子| 日韩性爱视频在线免费观看| 在线天堂999| 美女裸体无遮挡永久免费观看网站| 日欧操屄视频| 日韩97在线| 防屏蔽在线视频| 久九九九| 中 文字幕一区二区三四 五 区日 日 骚 | 97久久久精品| 精品人妻1区| 欧美在线视频观看一二三四区高清| 青青伊人这里只有精品| 久操| 欧美在线伊人色| 人人摸.人人色| 精品久久久一本一道| 25国产精品免费观看| 你懂的在线观看区国产| 久久精品中文| 99热精品在线| 日韩性爱啪啪视频| 人妻久热在线| 九月丁香婷婷色| 操屄不卡视频| 最新日韩黄片| 99精品视频在线观看| 国产成人无码高清| 久艹99| 亚洲制服aⅴ中文字幕| 亚洲成A∨人影院在线欢看| av在线资源| 丰满熟女一区二区三区在线播放| 色小视频蜜乳| 午夜120视频在线观看| 五月天激情婷婷| 国产 日韩 欧美高清| 97中文综合| 992这里有精品| 美国一区二区三区视频| 又大又大又大又粗爽高潮观看| 麻豆国产成人精品| 无码视频一区二区| 欧美黄页在线| 麻豆国产尤物AV| 亚洲九月丁香| 91三级理论片播放器| 久久精品国产99精品亚洲蜜...| 91美女片在线| 91亚洲情色| 国产精品久久久久久久久久久久久久吹| 91丝袜在线视频| 久久噜| 精吧天堂| 中文字幕乱妇免费视频| 日韩BBN| 美女性91| 四虎午夜影院| 国产精品区在线12p| 欧洲欧美视频一区二区| 色欲人妻一区二区在线| 色综合99999| 嗯啊抽插大香蕉网页| 天天综合网网欲色| 97超碰护士| 久草这里只有精品| 狠狠91| 国产精品久久久| 国产一区在线看| 欧洲综合色| 97亚洲精品超碰| 欧美性高潮| 美女性91| 久久精品国产亚洲AV高清演员表| 高清无码一区二区三区| 国产福利影视| 天美国产精品| 国产女同性恋视频| 亚洲淫色网中文| 91在线/欧洲| 亚洲素人综合| 偷拍亚洲| 思思热在线cao| 最新中文字幕在线亚洲| 人妻少妇久久久| 久九干| 亚洲色91C| 欧美综合传媒| 人妻三级在线中文字幕| 亚欧日韩成人| 天天操狠狠日夜夜干超碰撸com视频在线观看 | 国产精品熟女乱伦| 欧美天天拍| 好看的91视频| 九九九不卡| 蜜桃狠狠色伊人亚洲综合网站| 成人97人人超碰人人| 免费伦费视频在线观看| 欧州色图区| 亚洲综合99999| 香蕉国产97| 中文字幕在线免费观看| 不卡一区二区日本视频| 亚洲日韩AV视色| 伊人991| 99999久久精| 99老司机精品视频在线观看| 久久香蕉国产传媒一区剧情天美| 97频视在线| 午夜αv| 国产精品久久久久久久毛片1| 五月婷视频| 99 国产丝袜在线| 啊啊啊想要| 操婷婷逼| 天天日熟妇| 欧美极品美女aaaaaa级黄片| 亚洲av无码成人精品国产| 在线综合 亚洲 欧美中文字幕| 91精品国产长腿丝袜美女| 蜜乳视频网站| 91成人精品| 欧美成人四级在线播放| juliaann精品熟女一区| 上床啊啊啊| 91人妻做a观看视频| 天天亚洲综合| 中国AAAAAA黄色片| 麻豆2区1区天美| 一本色道久久综合狠狠操| 国产又黄又粗的视频| 伊人成人中文字幕久久网| 秋霞鲁丝午夜无码一区二区三| 精品无码一区二区三区色欲| 吉田爱美AV在线| 人妻天堂网| 日本理论在线| 亚洲校园激情| 爽 好舒服 无码刺激久久| 激情黄色五月天| 日本色色视频网站| 夜夜骑操视频| 免费视频a级毛片免费视频| 国产视频第2页| www.99中文字幕| 天天干天天中出av| 美国一区二区三区视频| 天综合网欧美| 五月丁香色色网| a啊啊啊啊啊啊啊啊一区二区| 操逼操操操91| 亚洲国产97| 亚洲精品一区二区三区新线路| 亚洲欧美小说| 麻豆伊人网| 欧美专区日本专区| 丰满丝袜少妇AV| 熟女六十路| 欧美色图99| 长长久久免费视频| 小说区 图片区色 综合区| 亚州再线| 亚洲高清无码在线桃色| 91中文字幕制服丝袜免费视频| 91精品久久久久久77777| 欧美一二三| 中文字幕av久久爽Av| 国产成人自拍视频视频| 日韩综合97p| 91逼逼女人91| 国产熟女免费观看久久| 精品人妻15区| 青青草手机在线免费观看| 亚一综合久久久久久久久久| 久久久啊啊啊| 一区二区三区日韩欧美| 亚洲欧洲日韩国产自在线| 超碰4A| 久久9 9 9精品| 亚洲色 国产 欧美 日韩| 伊色久人大在线| 红桃视频高潮| 日本熟女中文| 欧美黄色大片在线观看 | 太久视频| 蜜臀99久久| 操死我了嗯嗯嗯| 亚洲熟女人妻中文字幕一区二区| 国产精品视频电影| 精品超碰国产| 午夜.DJ高清在线观看免费7| 91五十路| 亚洲九九视频| 日日噜噜夜夜久久亚洲一区二区| 欧插网站| 成人精品在线| 一区二区影院| 中国AV美女| 久久99九九九九6666免费观看软件| 亚洲成人一二三区| 日韩欧美女优电影| 久热婷婷| 97任你吞精| 五十路六十路七十路熟婆| 久久激情视频| av日韩中文字幕| 色婷婷婷五月天激情四射| 国产亚洲在线| 精品v日韩欧美国产| 国产一级特黄大片处女| 日韩熟女乱伦中出| 爱妃国产亚洲视频中文字幕| 麻豆天美一区二区| 九九九九精品视频| 精品十八在线观看| 骚日日av| 激情内射| 人人妻人人爽一区二区三区| 99超碰碰| 久久久久久人体| 91黄射| 劲爆欧美人妖三区91| 欧洲亚洲人妻无码中字久久三区四区 | 69人妻精品一区二区绯色| 激情综合网五月婷婷五月天| 2018天天干在线视频| 国产精品一区二区a| 亚洲图片欧美色| 99re视频这里只有精品| 人妻丝袜一区二区三区在线| 玖玖久久久| 变态另类专区| 色97干| 992视频一区| 99精品九九九九九九| 久久熟女嫩草成人片免费| 99精品无码| 国产2.3.4区| 国产精品日日摸天天碰| 亚州欧美色图| 日本操逼视频不卡直接放| 欧美一二三级精品在线| 日本精品网站在线中文| 小视频玖玖| 日本国产欧美高清在线| www.99热| 综合网欧| 国产精品动态一区二区三区四四| v91av| 欧美人黑A片无码免视费| 人人操欧美风骚| 日韩操逼性鲍| 一区三区啪啪| 欧美乱色| 日韩精品系列| 久久色网| 风月影院男女十八禁| 亚洲色图第四色| 蜜臀久久99精品久久久久电影| 亚洲精品电影| 最新岛国大片| 亚洲人妻一区二区三区| 精品乱子一区二区三区99| 中文字幕av丝袜| 成人草草视频| 91精品微拍福利| 日本道久久综合色色| 日韩乱码Av| 久啪| 九九九久久久| 久久亚洲精品成人av| 天天欧美欧美亚洲网| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 美性中文综合网| 欧美激情 一区| 国产亚洲日韩欧| 超碰人人在线| 国产熟女精品区| 97超碰欧美精品| 欧美成人一级免费电影| 亚洲综合888| 精品国产乱码久久久久久久| 国产精品免费日韩| 97超碰无码网| 99re在线| 观看视频图片一区二区三区| 九九九九精品精| 亚洲日韩美女中文字幕乱| 熟妇熟女亚洲天堂网| 日韩中文9| 一级性爱视频免费观看| 天天日天天插| 人妻喷水| 8050无码八戒| 亚洲色图第四色| 欧美日产国产在线成人第一区| julia高潮后不停追击中出| 欧美 亚洲 另类 综合| 少妇被c 黄 免费观看| 婷婷六月色| 欧美九一精品久久久熟妇| 性色av大全| 日韩99神马视频播放片在线播放| 超碰超碰超碰超碰的大鸡吧操黑丝袜| 国产精品久久久久久久毛片1| 中美日韩毛片| 日韩免费a级毛片无码a∨| 男人的天堂网免费| 91n欧美| www.久久| 精品久久久久综合无码| 天天插天天干| 国语精品av| 丁香婷婷啪啪| 玖玖久久久| 丝袜大香蕉| 全国男人天堂网| 探花激情视频| 丰满人妻-区二区三区免费看 | 91社区拍啪人妻| 加勒比日本在线| 国产女人高潮嗷嗷嗷叫小说| 内射夫妻三片| 婷婷色网| 欧美性爱伊人| 91精品国产91综合久久蜜臀| 国产性感骚丝袜在线| 婷婷婷婷婷婷久久久久| 91在线色| 欧美日韩 强奸乱伦| 亚洲色图第四色| 亚洲图片偷拍视频区| 婷婷丁香人妻 | 精品美女久久一二三| 欧美人妻精品一区二区| 国产乱不卡| 性吧在线视频| 98人妻精品一区二区色欲| 欧美一二在线| 男人a天堂手机在线版| 91大香蕉伊人| 9热9热综合网| 国产伦乱91| 久久9精品| 国产不卡精品91| 欧美午夜视频免费观看| 亚洲猛交| 麻豆久久久久久久久丝袜 | 丁香九月激情| 国产v片在线免费观看| 国产熟女精品区| 国模精品一区二区三区苹果色戒 | 牛牛操视频逼| 尤物视频新赏网鲜网色诱网| 97亚洲国产影视| 国产精品69人妻无码久久久| 加勒比综合88| 97超碰人操| 国产一区二区三区中文字幕| 韩国一级婬片A片无码天美 | 9九九九九视频在线观看| 99久国产精品午夜性色福利| 欧美日综合| 99蜜桃臀亚洲成人在线观看| 五月婷婷激情| 日本五十路熟女一区二区| 另类图片天天影视| 久久久精| av72网| 91蜜臀在线久久久久| 久草福利在线资源站| 中国AAAAAA黄色片| 蜜臀AV一区二区三区| 国产精品久久久777| 啊…啊…操我用力操我 | juliaann丝袜大战黑鬼| 丰满人妻-区二区三区免费| 国语国产操逼伊人AV网| 青娱乐福利99| 久久色精品视频在线| 超碰精品人妻狠狠干| 欧美日韩免费专区在线| 日韩精品一区二区三区色欲| a级免费在线观看| 九九九九精品在线| 热热色国产一二区AV| 99热在线不卡| 人人操天天爽| 国产精品一区二区在钱播放| 伊人五月天| 欧美日韩性爱操大逼| 久久五十路熟女人妻| 日韩肏逼视频| 久久久久亚洲Av无码专区老牛影视 | 诱惑网综合| 一级AAA片一区二区三区| 久久妇| 色娱乐色呦呦夜夜夜夜av| 久久超碰免费的| 亚 欧 美 综合| 国产又粗又又黄又猛| 五月大香蕉| 中文字幕在线免费观看视频| 综合自拍| 国产又粗又长的视频| 蜜臀久久99'精品久久久| 东京热精品97综合网| 密臀AV在线| 久久久久久久久久久999| 97色欧州| 日韩精品大香蕉伊人在线| 日韩美女高潮喷水视频| 久久久久921| 中文字幕一区二区三区蜜桃视频| 日韩精品资源| 超碰九7免费| 97天堂| 成人国产视频在线观看| 一区二区三区在线美女| 国产亚洲日韩在线三区黑人| 操我无码| 欧美久热| 精品免费1| 99青青草国产视频| 久久久精品久久| 欧美另类丝袜熟女| 亚州综合| 日本激情免费大片| 五月婷丁香| 好湿好紧好爽 视频| 久久綜合很很很| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 欧美人妻久久精品二区三区| 亚洲操人| 精品国产污一区二区三区| 330Dv国产女人终合视频极品人与兽| 99色婷婷中文字幕乱色| 伊人国产AV| 在线视频 亚洲精品| 男女性感激情网站| 色五月婷婷在线| 大香蕉欧美伊| 男人的天堂久久| 五月天婷婷在线看| 插欧洲美女欧美精品| 九九热免费国产视频婷婷伊人五月| 久久av网| 97超碰欧美精品| 欧美黄片免费在线观看视频| 久久乐| 中文字幕女同在线| 精品人妻一区二区三区四区不卡在| 午夜视频久久久久一区| 色婷婷狠狠18禁| 国模不卡一本二本三电影| 密臀在线视频| 在线观看成人性爱免费小视频| 亚洲色啪| 四虎免费视频| 操逼免费视频无码国产| 爱爱动态120秒| 国产热av| 国产av波波国产精品| 九九在线视频| 蜜桃传媒视频第一区入口在线看| 樱花蜜乳av| 国产精品九9| 九九九九一区| 网页导航五月天免费一二三区| 久久综合久久综合人久久夜精品| 91N综合网| 岛国在线一区二区三区| 精品九九九九九九九| 亚洲人妻久久| 少妇滛荡视频| 美国三级日本三级久久99| 岛国在线免费视频| 蜜臀亚洲中文| 久久婷婷电影网| 亚洲色图大香| 岛国精品视频在线观看| 夜草欧美| 精品人妻1区| 亚欧中文字幕在线视频| 3PAV乱伦视频| 嗯嗯嗯嗯啊啊啊好紧好大| 99rre在线精品99re8| 亚洲 欧美 手机在线观看| 久久久禁| 色婷婷激一区二区三区| 亚州欧美一区| 最近2019中文字幕国语免费版| 亚洲吊色| 日韩成人精品视频自拍| 大香蕉92| 男女一级A片大黄,一进一出| 婷婷8月天青娱乐| 五月丁香激情啪啪| 天天cao在线| h在线看免费版在线看| 九九九九九九九九九国产精品| 日本欧美国内在线| 人妻丝袜日本| 91九九九馒头| 99久久精品欧美国产| 青青草精品| av强奸乱轮| 亚洲美女黄色| 久久亚洲AV成人精品无码| 国产91久久九九免费精品无码| 色男人色天堂东京热| 日本免费一级AAA大片器| 九9热伊人| 91精品国产高清久久久久久,亚洲成人 | 亚洲精品视频二区| 久久 精品| 96AV久久久| 日韩熟女乱伦中出| 91精品国产长腿丝袜美女| 免费精品99| 99婷婷一区二区| 亚洲91大片| 国产精品国产拍高清AV| 91五十路| 欧美91久久久久| 美日韩成人| 超碰97人人cao| 久久久久921| 九九九九久久久| 国产真乱mangent| 欧美黑人168页欧美黑人167| 人人澡人人爽人人精品| 日本一区二区三区四区免费观看| 亚洲97精品| 日韩精品作爱导航| 色欧美天天| 久综合国内精品自在自线| 夜夜高潮夜夜爽国产伦精品| 日本熟妇熟色97一本在线观看| 久操网视频| 少妇久久久久| 亚洲AV在线资源| 性感女人网页在线观看视频| 国产精品一二三在线看| 永久电影三级在线观看| 果冻传媒一区二区三区| 男女91| 五月天社区| 女人被男人桶爽视频网站| 91亚洲图片| 久久6热精品99视频| 欧洲Au麻豆| 激情五月婷婷综合| 国产精品成人福利在线| 国产午夜精品理论片一二三区区 | 亚洲天堂7777| 在线岛| 午夜超碰| 东京热,男人的天堂| 欲香欲色天天天综合和网| 色爽爽文学| 色情五月丁香| 亚洲 欧美日韩 另类| 粉嫩av久久一区二区三区| 久久精品无码专区| 91色射| 欧洲亚洲人人爽爽视频| 欧美精品91| 91国产精品熟女| 色五月网址| 亚洲第一在线视频| 日操粉逼逼| 人人艹亚洲| 国产日韩区| 人人操人人爽人人操人人| 精品亚洲天堂| 男人的天堂va| 亚洲日韩美女丝袜美腿人妻视频| 亚洲少妇自拍中文字幕懂色| 国产中文字幕在线| 亚洲啪啪啪啪视香蕉| 人妻少妇精品久久久| 久久精品72| 激情终合网| 九九成人精品| 国产无码精品成人| A 天堂| 亚洲第一页第二页激情| 欧美天天| 人人操人人插 - 百度 - 百度| 九九九九免费| 在线免费观看高清无码视频| 精品无码欧美三级| 亚洲一区中文精品| 99久久久无码精品国产人| 国产欧美在线观看免费观看| 久久国产逼| 岛国免费黄色网址| 国产探花精品在线| 在线可观看的黄色网址| 2020国产精品| 韩国久久97| 久久久噜噜噜久久久| 天天弄欧美| 啊啊啊啊啊好舒服视频| 蜜臀在线看片| 欧美性性性| 极品销魂美女一区二区| 亚洲色图尤物视频| 在线中文字幕极品av| 狠狠色色| 综合亚洲情色| 98福利在线视频| 超碰色大香蕉| 91美女小视频| 日本黄色精品专区网站| 很黄很色的视频在线观看| 黄色免费网页无码| 九九热在线视频| 有码人妻系列| 九99久久| 免费岛国一级片| 亚洲 国产 精品一区| 99热免费| 熟妇精品juliaannAV| 日本ZZ高免费A级视频| 亚洲97在线观看| 26uuu性| 东京日日夜夜| 91精品婷婷国产综合久久竹菊| 91色s| 亚洲av噜噜噜噜噜噜| 精品亚洲国产成人精品| 中文字幕二区日韩天堂| 精品乱码久久久久| 密臀在线一区尤物| 综合五月婷婷亚洲一区| 黑丝少妇在线观看| 999 久久久| 一区在线精品中文字幕| 青娱乐久久艹| 欧美图片色综合| 日韩电影免费网站麻豆视频| 日本高清免费一本视频在线观看| 天天操天天舔| 91久久国产综合精品| www欧美91| 三级网色| 九九九久久久久| 欧美色另类| 熟女六十路| 丰满少妇高潮无码| 91精品91久久久久77777俄罗斯老妇姓x| 国产精品麻豆视频网站| 99热99re超碰精品| 男同专区一区二区三区在线| 亚洲天堂人妻熟妇视频| 美女大乳久久久久久久女人18| 97伊人网| 色色无码| 精品少妇99| 日韩不卡av一二三| 91欧美性| 国产AV激情无码久久无码 | 亚洲男人综合网| 100啪啪视频大全| 青青青操| 中文字幕熟女人妻丝袜| 99热精品在线观看| 熟人人妻少妇精品久久| 亚洲超碰AV| 男人天堂免费| 在线看片国产精品每日更新| 亚洲色资源| 少妇无码av专区线| 91网站视频在线观看| 中文字幕日韩专区精品系列 | 激情久久日韩精品中文字幕麻豆| 精品国产91内射久久| 有码人妻系列| 麻豆国产精品午夜视频| 精品免费一区二区三区在线亚洲人成| 97亚洲中文| 久热这里| 欧美天天射| 久久欧美1卡2卡3| 久久产精品一区二区三区电影| 日韩欧美女优电影| 天天激清| 欧美熟妇乱码在线一区| 国产高清自拍视频| 亚洲精品 超碰| 国产兽交视频在线播放| 欧美久久久15P| 日日噜噜夜夜狠狠视频无| 清清草影| 亚洲 欧美 手机在线观看| 日曰骚久久精品| 大香蕉综合网| 五十路三区在线| 97香蕉人人乳| 精品一区二区在线针对华人免费观看这里只有精品免费观看 | 欧美性爱另类综合| 哈哈操电影| 久久免费老司机精品| 久久久久亚洲熟妇熟女| 97精品97| 你懂得91| 精品三级在线专区| 啊啊啊啊啊啊好湿好爽视频| 91成人在线免费视频| 97在线视频观看免费| AV中文在线可看| 伊人网免费视频| 91亚洲丝袜| 激情五月综合网| 亚欧免费观看视频| 成人久久久精品| 俺去也婷婷| 久久黄片国产一区二区| 国产粉嫩出水在线播放| 精品久久久久综合无码| 超碰激情808| 亚洲精品一区二区三区在线播放| 老司机香蕉久久久久| 色 婷97| 激情接吻视频久久久久久| 亚洲97精品| 啊啊啊好舒服好爽啊啊啊视频| 亚洲最大的综合性av| 国内一区二区免费| A男人的天堂| 日日干日日| 人人操人人摸人人看人人干| 欧美激情 一区| 久久久久久久久久久999| 狠狠干,狠狠操| 亚洲国产ⅴ高清在线观看| 成年在线视频日本亚洲在线视频区精品江靖宇公司 | 日本免费一级AAA大片器| 欧美伊人电影| 青青伊人久久| 91老司机在线视频免费观看 | 天天综合91入口| 先锋音影AV| 久久手机好看网站| 国产精品一区二区黄片| 2018天天干在线视频| 精品国产乱码久久久久久蜜臀| 中文字幕伊人| 91精品成人| 白嫩嫩一区| 超碰在线人妻| 玖玖玖玖精品国产剧情| 亚洲 日本 国产 综合| 亚洲国产97| 91久热| 伊人久久亚洲色欲综合网站| 一区 欧美 日韩 麻豆| 亚欧精品久久久久久久久久久| 干婷婷综合网| 大香蕉黄色一级片免费看| 97综合| 2017天天操| 漂亮人妻被强中文字幕hd| AV久日| 人妻无码视频一区二区三区久久| 欧亚久久偷拍视频| 日本97久久久精品| 91色碰| 啊啊啊 在线观看| 婷色五月| 色色激情五月天| 91粉嫩萝控精品福利网站_精品影音先锋国 | 精品亚洲国产成人AV制服丝袜| 国产精品亚洲无码| 成人精品久久久午夜福利| 精品久久久久久中文字幕视频免费| 久草电影网| 久久久月天| 久久风骚城市| 日韩青久久| 大干人妻| 欧美,日韩,中文,另类| 欧美淫乱视频| 国产嫩草精品A88AV| 欧美色97| 亚洲天堂男人网| 欧美97| 人人么人人操| 欧美激情视频在线一区| 亚洲国产欧美一区二区潘金莲| 日韩无码视频黄色| 成人97人人超碰人人| 久久国产免费激情视频| 中文字幕国产| 成人乱码一区二区三少妇| 欧美视频边做饭边橾| 怡红院一区二区熟女人妻| 91超碰人人操| 色欧美天天| 又大又长又爽| 青女在线| 97伊人超碰| 97AV在线观看| 无码高清少妇久久| 国产福利在线视频网站| 在线人人人人人人精品超 | 高颜值美女口爆高潮浪叫| 中文乱码字幕观看视频| av网站在线看| 国产AV精久久| 97久久超碰| 91暧暧| 美女黄码视频午夜| 欧中美三级一区二区三区| 国产91精品在线免费| 1人人看人人摸人人操| 尤物一级在线免费观看| 2020视频1区2区3区| 97国产天堂岛| 午夜亚洲| 国产午夜福利电影免费在线观看 | 操老熟女AV| 久久超碰网| 日本成人A片网站| 91粉嫩萝控精品福利网站_精品影音先锋国 | 99日免费视频中文字幕| 99999久久精| 一本精品日本在线视频精品| 人人色人人操在线| 亚洲色图20p| 亚欧洲日韩国产精品| 欧美真人抽搐一进一出gif| 伊人久操| 国产农村妇女精品1区二区| 九色 蝌蚪 熟女自| 翔田千里A片一区二区| 日日碰狠狠添天天爽超| 高清不卡一二三区视频......| 亚洲国产丝袜在线观看| 97干97色| 国产99999久久精品| 电家庭影院午夜69久久夜色精品国产69乱| 园内精品自拍视频在线播放| 大香蕉宗合网在线| 蜜桃狠狠色伊人亚洲综合 | 亚洲日韩美国人妻| 国产亚洲 中文欧美久久| 久久视频,这里只有精品| 亚洲97成人在线观看| 五月天婷婷影院| 成人在线午夜视频一区| 亚洲一区日韩精品| 欧美亚洲综合色| 国产suv精品一区| 亚洲国产尤物yw在线观看| 国产精品情侣啪啪| 99国产女人| 欧美v亚洲v日韩v最新在线二区 | 日本影视久久免费| 在线日韩视频| 性欧美| 男女激情黄色网址| 亚洲情色图片区| 视频一区二区三区精品| 夜夜爽77777| 国产成人五月天丁香花| 1769精品一区二区三区| 在线情色电影 91大| 黄色人人| 精品乱子一区二区三区99| 又大又大又大又粗爽高潮观看| 超碰在线99| aV中文麻| 日本午夜久久电影| 欧美日韩97在线| 岛国AB视频| 国产第11页| www.黄色在线| 欧美 日韩 婷婷 五月| 亚洲无无码αⅴ每日更新| 中文字幕一区二区三区人妻少妇在线| 东京热男人天堂| 人人摸人人干| 男人天堂东京热| 大香蕉伊人色偷偷在线| 精品国产乱子伦一区二区三区,精品一| 抽插无码高清一区| 亚洲激情欧美色图 | 九九九九精品一区| 在线国产福利网址导航| 狠色婷婷久久一区二区三区_| 国产亚洲精品美女久久久| 久久一二三四不卡| 影音先锋日本一区二区| 极品后入免费视频| av在线免费一区二区| 91AV天美在线视频| 久久精视频美日韩在线视频| AV在线播放网址| 99热91| 黄骗免费网站| 久久仑合| 国产三级中文有码在线视频| 久热精品在线| 色综合98| 亚洲国产欧美另类自拍| AV天黑人| 国产精品一区二区在钱播放| 久久天天艹| 午夜九九| 久久色一区| 美國A片| 欧色网址| 天天弄欧美| 日韩亚洲国产视频| 9美女超碰在线免费观看| 91久久国产综合久久| 欧美自拍偷拍综合图片| 久久亚洲天堂| 920日本午夜免费| {男男暴菊gay无套网站| 夜夜免费视频| 亚洲欧美激情另类色图| 国产亚洲深夜激情| 久草老司机| 后X久久| 免费精品人妻一区二区三| 亚洲色图片区| 天美一二三在线观看Av| 国产av美女被艹的乱叫| 精品国产Av无码久久久伦古装| 色偷偷色偷偷欧美日韩| 丁香五月综合| 黄色片A级一区二区三区| 97在线观看免费| 动漫片子网站3黄| 成人性爱电影网| 伊人久久综合影院精品久久久| 久久久久久久久国产| 久久免费老司机精品| 日本激情免费大片| 91亚洲人| 麻豆黄站| 国产精品久久久蜜臀| 国产精品熟女乱伦| 国内精品a| 俞拍久久国应视频| 加勒比伊人影院| 欧美色图片91| 色色激情五月天| 中文字幕交换人妻| 亚洲欧美日韩免费观看| 亚洲欧美激情小说| 一区二区蜜臀| 五月天色图影视| 伊人久久大香大香线蕉中文| 人人操人人舒服| 午夜男人的天堂| 亚洲丝袜二区在线| 国产欧美后入| 香蕉久久精品| 大香蕉手机在线视频| 秋霞一级鲁丝片A片| 欧美探花网| 国产传媒日韩| 久久精品操| 色哟哟av网址| 人妻精品一区二区全免费| 亚洲 日本 一 二 三| 久久99午夜精品一区人妻| 无码高清操逼网址| 国产无码成人无码| 久一区久久蜜桃| 久久黄黄黄| 中文字幕av片| 96精品一区| 91无码人妻| 91国精产品| 新精精品久久精品| 欧美猛交黑寡妇中文字幕| 91亚洲影院综合| 中文字幕一二三区| 天天综合精品| 97久久资源| 久久婷婷色综合一区二区三区| 狠狠干,狠狠操| 五月丁香六月| 久久国产视频性吧| 亚洲中文字幕97久久精品少妇| 任你爽视频| 99色在线| 国产欧美日韩在线观看麻豆传媒公司 | 郑州宾馆老熟女露脸啪啪| 人人操人人干网页| 曰本人妻人人澡人人夹| 国产精品制服丝袜清纯唯美| 99久久久无码国产精品性男| 国内精品伊人久久久久影院会| 日本三级韩三级99久久| 狠狠干综合|