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

ARTICLE DETAIL

資訊詳情

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

YOLOv8+ByteTrack+TensorRT:C++實(shí)現(xiàn)實(shí)時(shí)目標(biāo)檢測(cè)與跟蹤部署

YOLOv8+ByteTrack+TensorRT:C++實(shí)現(xiàn)實(shí)時(shí)目標(biāo)檢測(cè)與跟蹤部署 簡(jiǎn)介面向需要在Jetson或Linux x86_64平臺(tái)落地實(shí)時(shí)目標(biāo)跟蹤的開發(fā)者這套項(xiàng)目基于TensorRT C API部署YOLOv8檢測(cè)器與ByteTrack跟蹤器覆蓋從PyTorch權(quán)重轉(zhuǎn)換engine、CUDA預(yù)處理/后處理到兩類動(dòng)態(tài)鏈接庫(kù)封裝的全流程并支持在main.cpp中按需過(guò)濾跟蹤類別。壓縮包共64個(gè)文件、約25.16MB包含27個(gè)頭文件與14個(gè)cpp實(shí)現(xiàn)核心接口另有5個(gè)cu文件負(fù)責(zé)GPU加速、4個(gè)md文檔說(shuō)明編譯部署、5個(gè)txt配置文件及2個(gè)py腳本輔助權(quán)重轉(zhuǎn)換目錄按yolo和bytetrack分模塊組織便于解耦復(fù)用。目前已有163人學(xué)習(xí)下載適合具備一定C基礎(chǔ)、希望跳過(guò)重復(fù)造輪子直接集成目標(biāo)檢測(cè)與多目標(biāo)跟蹤的開發(fā)者。資源附帶效果動(dòng)圖、演示視頻和標(biāo)簽文件可快速驗(yàn)證跟蹤效果對(duì)Jetson嵌入式設(shè)備性能調(diào)優(yōu)也有直接參考價(jià)值。1. 這包資源解決什么問(wèn)題YOLOv8 檢測(cè)、ByteTrack 跟蹤、C 推理一張鏈條打通做目標(biāo)檢測(cè)部署的人都知道一個(gè)尷尬Python 里調(diào) ultralytics 跑 YOLOv8FPS 很好看但一旦要求「把檢測(cè)結(jié)果跟上 ID、跨幀跟蹤、還要在邊緣設(shè)備上實(shí)時(shí)跑」原來(lái)那套代碼就碎了。你需要一個(gè)不止會(huì)畫框還會(huì)數(shù)得清「這是第幾個(gè)進(jìn)入畫面的人」的系統(tǒng)。這份 C TensorRT 加速的 YOLOv8 ByteTrack 對(duì)象跟蹤工程包解決的就是這條鏈路YOLOv8 負(fù)責(zé)每幀檢測(cè)ByteTrack 把檢測(cè)框關(guān)聯(lián)成穩(wěn)定軌跡TensorRT 負(fù)責(zé)讓這一切在 GPU 上以可用速度跑起來(lái)而不是停留在演示階段。適合正在做安防、交通、工業(yè)視覺(jué)或者想把檢測(cè)模型落地成跟蹤應(yīng)用的算法工程師和部署工程師。2. 為什么是 YOLOv8、ByteTrack、TensorRT 這三樣選型理由與銜接邏輯2.1 YOLOv8 在跟蹤鏈路里承擔(dān)的職責(zé)一個(gè) anchor-free 檢測(cè)底座的輸出形態(tài)跟蹤的前提是檢測(cè)。ByteTrack 本身不產(chǎn)生目標(biāo)框它消費(fèi)的是檢測(cè)器輸出的每一幀結(jié)果。YOLOv8 之所以適合做這個(gè)底座核心在于它的輸出設(shè)計(jì)很規(guī)整網(wǎng)絡(luò)結(jié)構(gòu)采用 anchor-free 分支分類頭和回歸頭解耦不需要像 YOLOv5 那樣維護(hù)一堆 anchor 先驗(yàn)。對(duì)部署來(lái)說(shuō)這意味著后處理邏輯簡(jiǎn)單、張量形狀固定容易在 TensorRT 里做層融合。以 COCO 80 類模型為例輸入 640×640 的圖YOLOv8 輸出的特征張量形狀是 1×84×8400。其中 84 是 4 個(gè)邊框坐標(biāo)加 80 個(gè)類別分?jǐn)?shù)8400 是三個(gè)尺度特征圖展平后的候選框總數(shù)6400 1600 400。這里要注意YOLOv8 在導(dǎo)出 ONNX 時(shí)默認(rèn)不帶 NMS也就是說(shuō)框架只負(fù)責(zé)吐出原始預(yù)測(cè)非極大值抑制要拿到 C 里自己做。很多新手在這里翻車拿 TensorRT 直接推理得到 1×84×8400不知道如何解析成框也不知道為什么跟 Python 里看到的結(jié)果對(duì)不上。我一般習(xí)慣在 C 側(cè)把后處理拆成三步先按置信度閾值過(guò)濾低分框再做坐標(biāo)解碼最后按類別做 NMS。這個(gè)順序不要亂否則漏檢率和重復(fù)框會(huì)同時(shí)失控。2.2 ByteTrack 的 BYTE 關(guān)聯(lián)為什么低分框反而是跟蹤穩(wěn)定的關(guān)鍵ByteTrack 跟 SORT、DeepSORT 的核心差別在于它的名字本身BYTE。傳統(tǒng)做法只保留置信度高于閾值的檢測(cè)框去做軌跡關(guān)聯(lián)低于閾值的框直接丟棄。ByteTrack 反其道而行把檢測(cè)框分成高分?jǐn)?shù)和低分?jǐn)?shù)兩撥先拿高分?jǐn)?shù)框跟已有軌跡做第一輪匈牙利匹配未匹配上的軌跡再拿低分?jǐn)?shù)框去補(bǔ)匹配。這套思路解決了一個(gè)非常實(shí)際的痛點(diǎn)目標(biāo)被遮擋或者運(yùn)動(dòng)模糊時(shí)檢測(cè)器的置信度會(huì)驟降框還在但分?jǐn)?shù)低了。如果直接把低分框扔掉跟蹤 ID 就會(huì)斷。ByteTrack 把這些低分框當(dāng)作「補(bǔ)位候選」可以顯著減少 ID Switch。代價(jià)也很明顯它比純 SORT 多了一次匹配計(jì)算量略漲而且低分框本身質(zhì)量參差如果匹配閾值設(shè)得太松軌跡會(huì)被垃圾框帶偏。后面第 4 章我會(huì)給一組能直接抄的參數(shù)。2.3 TensorRT 在這一層扮演的角色Python 里不會(huì)遇到的顯存和 CUDA 問(wèn)題TensorRT 是把 PyTorch 模型變成部署用引擎的標(biāo)準(zhǔn)路徑。它做的事情包括把 ONNX 解析成計(jì)算圖做層融合比如 ConvBiasReLU 合并成一條按 GPU 架構(gòu)選擇 kernel以及把精度降到 FP16 甚至 INT8。這里的取舍要清楚FP16 一般可以把推理速度拉到 FP32 的 1.5 到 2 倍顯存占用也減半但個(gè)別算子在低精度下會(huì)出現(xiàn)可感知的精度損失。INT8 更快但需要校準(zhǔn)集去算 scale工程復(fù)雜度高一截。這個(gè)工程包默認(rèn)走 FP16我建議不要在最初階段碰 INT8除非你已經(jīng)有穩(wěn)定的標(biāo)定數(shù)據(jù)管線。還有一個(gè)部署特有的問(wèn)題Python 里的 PyTorch 推理自帶動(dòng)態(tài) shape而 TensorRT 引擎需要顯式聲明 optimize profile。你輸入的是 640×640但如果想支持 batch size 可變就必須在構(gòu)建引擎時(shí)配置好最小、最優(yōu)、最大三個(gè)維度。C 側(cè)改 batch 比 Python 側(cè)麻煩得多C 里多一個(gè)維度意味著所有綁定 buffer 都要重新分配顯存。2.4 三個(gè)組件拼成一條流水線從 camera 到畫框的完整數(shù)據(jù)流把整條鏈路拆開看實(shí)際運(yùn)行時(shí)是這樣一個(gè)循環(huán)讀幀 → letterbox 預(yù)處理 → 拷貝到 GPU → TensorRT 推理 → 從 GPU 拷回結(jié)果 → 后處理解析框 → 交給 ByteTrack 更新軌跡 → 按 track_id 畫框并顯示或推流。這個(gè)流程里最容易忽視的是 letterbox 的縮放信息。TensorRT 吃進(jìn)去的是 640×640原始畫面通常不是正方形預(yù)處理時(shí)會(huì)在邊緣填充灰邊。后處理階段要把框坐標(biāo)還原回原圖必須知道縮放比例和填充偏移量。如果只存了縮放比例忘了偏移檢測(cè)框在畫面下方會(huì)整體偏。C 里我習(xí)慣把這兩個(gè)值存在一個(gè)結(jié)構(gòu)體里跟推理結(jié)果一起傳遞而不是用全局變量避免多線程調(diào)用時(shí)串?dāng)?shù)據(jù)。另一個(gè)要注意的階段是 ByteTrack 的輸入輸出。它吃的是一個(gè) vector 的檢測(cè)框結(jié)構(gòu)體包含 x1、y1、x2、y2、score、class_id輸出的是帶 track_id 的同樣結(jié)構(gòu)體。所以后處理和跟蹤之間的接口應(yīng)當(dāng)定義成一個(gè)統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)不要在兩處各寫一套框的表示方法否則改到后面你自己都分不清坐標(biāo)是原圖坐標(biāo)還是 letterbox 坐標(biāo)。3. 環(huán)境與編譯TensorRT 版本、CUDA 與依賴讓工程先跑起來(lái)3.1 先對(duì)齊版本CUDA、cuDNN、TensorRT 三者必須匹配這套工程是用 C 寫的意味著你繞不開本機(jī)環(huán)境的 CUDA 和 TensorRT。第一個(gè)要命的點(diǎn)是三者版本必須匹配。TensorRT 發(fā)布時(shí)是針對(duì)特定 CUDA 和 cuDNN 版本編譯的你用 CUDA 12.4 配 TensorRT 8.5 大概率能跑但如果你用老顯卡比如 GTX 1070就得看看自己卡的算力夠不夠。GTX 10 系列是 Pascal 架構(gòu)FP16 支持沒(méi)問(wèn)題但性能和 Turing 之后的卡有明顯差距。網(wǎng)絡(luò)熱詞里有個(gè)高頻問(wèn)題「tensorrt 版本如果是 10.x 是否支持 gtx1070」這里我要說(shuō)清楚TensorRT 10.x 本身支持 Pascal 架構(gòu)但 10.x 把大量 C API 標(biāo)記為 deprecated比如 enqueueV2 被 enqueueV3 取代destroy 不再顯式調(diào)用。工程的 CMakeLists 里如果寫的是老 API在 10.x 上編譯會(huì)直接報(bào)錯(cuò)。我建議先確定你手頭的 TensorRT 版本再選 API 風(fēng)格不要盲目追新。3.2 編譯前的清單你需要準(zhǔn)備哪些東西打開終端前先按下面這份清單核對(duì)環(huán)境。缺一項(xiàng)都會(huì)卡在編譯期或者運(yùn)行期而這兩類的報(bào)錯(cuò)信息完全不一樣。依賴項(xiàng)推薦版本區(qū)間作用常見坑CUDA Toolkit11.x / 12.xGPU 計(jì)算庫(kù)驅(qū)動(dòng)版本要配套cuDNN與 CUDA 配套深度網(wǎng)絡(luò)加速忘記設(shè)置 LD_LIBRARY_PATHTensorRT8.5 ~ 10.xONNX 解析、推理引擎版本間 API 差異大OpenCV4.x圖像讀取、預(yù)處理、畫框4.1 和 4.5 的 API 有小變化CMake3.16構(gòu)建系統(tǒng)需要能找到 TensorRT 的安裝路徑在 Ubuntu 20.04 上搭這套環(huán)境最省心配合 vscode 的 C/C 插件調(diào)試也比較順。裝完 TensorRT 之后馬上檢查環(huán)境變量export LD_LIBRARY_PATH/path/to/TensorRT/lib:$LD_LIBRARY_PATH export CUDA_HOME/usr/local/cuda ldconfig環(huán)境變量這塊最容易被忽略。TensorRT 的 .so 庫(kù)如果找不到編譯能過(guò)但運(yùn)行直接報(bào) libnvinfer.so.10: cannot open shared object file。我一般會(huì)在跑程序前先執(zhí) ldd 確認(rèn)依賴鏈完整而不是到運(yùn)行失敗才開始排查。3.3 CMakeLists.txt 寫法和編譯命令工程的構(gòu)建文件通常會(huì)把 OpenCV、CUDA、TensorRT 串起來(lái)。一個(gè)能跑的 CMakeLists 核心長(zhǎng)這樣cmake_minimum_required(VERSION 3.16) project(yolo_tensorrt_bytetrack) set(CMAKE_CUDA_STANDARD 14) find_package(CUDA REQUIRED) find_package(OpenCV REQUIRED) set(TENSORRT_ROOT /path/to/TensorRT) include_directories(${TENSORRT_ROOT}/include) link_directories(${TENSORRT_ROOT}/lib) add_executable(run_tracker src/main.cpp src/preprocess.cpp src/postprocess.cpp src/bytetrack.cpp) target_link_libraries(run_tracker nvinfer nvparsers nvinfer_plugin cudart ${OpenCV_LIBS})注意 find_package 的位置。TensorRT 官方不提供 CMake module所以要用 include_directories 和 link_directories 手動(dòng)指路徑。如果你用的是 TensorRT 9 以上還要額外鏈接 nvonnxparser 庫(kù)否則 ONNX 解析器會(huì)報(bào)符號(hào)找不到。編譯命令很常規(guī)mkdir build cd build cmake .. -DTENSORRT_ROOT/path/to/TensorRT make -j$(nproc)編譯報(bào)錯(cuò)大多集中在頭文件路徑不對(duì)、-l 庫(kù)名拼寫不一致這兩個(gè)地方。我踩過(guò)一次坑是 OpenCV 4.5 之后 imgcodecs 庫(kù)被拆分畫框要用到 imgproc鏈接時(shí)漏了它原圖顯示功能就起不來(lái)。3.4 工程包的文件布局長(zhǎng)什么樣拿到手先看哪幾個(gè)文件這類 C 工程包的目錄結(jié)構(gòu)高度相似拿到手先別急著編譯按下面順序核一遍project_root/ ├── CMakeLists.txt # 構(gòu)建入口先看 TensorRT 路徑是否指向你的安裝位置 ├── README.md # 一般會(huì)寫清版本號(hào)和構(gòu)建順序 ├── src/ │ ├── main.cpp # 主循環(huán)讀幀推理畫框 │ ├── preprocess.cpp # letterbox 和歸一化 │ ├── postprocess.cpp # decode NMS │ └── bytetrack.cpp # 跟蹤器封裝 ├── include/ │ ├── trt_model.h # TensorRT 引擎加載與推理類 │ └── bytetrack.h # 跟蹤器接口定義 ├── models/ │ └── yolov8n.engine # 轉(zhuǎn)換好的引擎文件沒(méi)有就自己轉(zhuǎn) └── configs/ └── track_params.json # 跟蹤參數(shù)最關(guān)鍵的是 CMakeLists.txt 里的 TensorRT 路徑和 models 目錄下的 engine 文件。如果包沒(méi)帶 engine你得按第 4 章的流程從 pt 自己轉(zhuǎn)。配置文件里的 track_thresh 和 match_thresh 決定了跟蹤表現(xiàn)先別動(dòng)用默認(rèn)值跑通再調(diào)。4. 從 pt 到 engine 再到 ByteTrack核心流程與可抄的參數(shù)配置4.1 模型導(dǎo)出用 YOLOv8 官方方式把 pt 寫成 ONNXYOLOv8 的模型導(dǎo)出比 YOLOv5 省事直接用 ultralytics 庫(kù)的 export 接口。我實(shí)際在命令行里用的方式是這樣yolo export modelyolov8n.pt formatonnx dynamicTrue opset12 simplifyTrue如果你的環(huán)境裝的是 ultralytics 的 Python 包也可以寫成腳本from ultralytics import YOLO model YOLO(yolov8n.pt) success model.export(formatonnx, dynamicTrue, opset12, simplifyTrue) print(export onnx:, success)這里幾個(gè)參數(shù)含義要說(shuō)清楚dynamicTrue生成的 ONNX 允許 batch size 或輸入尺寸可變后面用 TensorRT 構(gòu)建引擎時(shí)可以指定動(dòng)態(tài) shape。opset12ONNX 算子集版本。opset 太低TensorRT 解析某些算子會(huì)失敗opset 太高老版本 TensorRT 認(rèn)不出。12 是在兼容性和算子支持上的平衡點(diǎn)。simplifyTrue讓 onnx-simplifier 把計(jì)算圖做一輪精簡(jiǎn)去掉冗余 reshape 和 transposeTensorRT 解析會(huì)更容易。導(dǎo)出后建議先用 onnxruntime 驗(yàn)證一遍輸出再進(jìn)入 TensorRT 環(huán)節(jié)。很多人上來(lái)直接轉(zhuǎn)引擎結(jié)果發(fā)現(xiàn)跟蹤框亂飄回頭排查到是導(dǎo)出環(huán)節(jié)的問(wèn)題。4.2 ONNX 到 engine用 trtexec 構(gòu)建 FP16 引擎TensorRT 提供了 trtexec 命令行工具可以直接把 ONNX 轉(zhuǎn)成序列化的 engine 文件我在構(gòu)建階段一直用它比寫 C builder 代碼快得多trtexec --onnxyolov8n.onnx \ --saveEngineyolov8n_fp16.engine \ --fp16 \ --minShapesimages:1x3x640x640 \ --optShapesimages:1x3x640x640 \ --maxShapesimages:4x3x640x640 \ --workspace4096這個(gè)命令的對(duì)應(yīng)參數(shù)含義--fp16開啟半精度。默認(rèn)是 FP32不開啟加速效果就出不來(lái)。--minShapes / --optShapes / --maxShapes這三組必須同時(shí)給TensorRT 用它們構(gòu)建優(yōu)化 profile。如果你之后要在 C 端用 batch4 推理maxShapes 至少要寫到 4只有 1 的話運(yùn)行時(shí)一旦改成 2 就會(huì)報(bào) invalid binding shape。--workspace4096構(gòu)建時(shí)允許使用的顯存上限單位 MB。解析大模型時(shí)給太小白報(bào) workSpace exhausted。轉(zhuǎn)完看到類似 Engine built in x seconds 的日志就說(shuō)明成功。我習(xí)慣把轉(zhuǎn)好的 .engine 文件記錄一個(gè)校驗(yàn)信息比如拿 md5sum 記一下因?yàn)閾Q一次 TensorRT 版本同樣的命令生成的文件內(nèi)容會(huì)不同。程序運(yùn)行異常時(shí)可以快速排除是不是引擎文件跟運(yùn)行庫(kù)版本不匹配。4.3 C 側(cè)推理封裝加載引擎、分配顯存、執(zhí)行推理engine 文件準(zhǔn)備好后C 端要做的事就是把引擎加載進(jìn) runtime創(chuàng)建 execution context分配輸入輸出 buffer然后跑推理。核心代碼長(zhǎng)這樣// 加載序列化引擎 std::ifstream file(yolov8n_fp16.engine, std::ios::binary); std::vectorchar data((std::istreambuf_iteratorchar(file)), std::istreambuf_iteratorchar()); nvinfer1::IRuntime* runtime nvinfer1::createInferRuntime(logger); nvinfer1::ICudaEngine* engine runtime-deserializeCudaEngine(data.data(), data.size()); nvinfer1::IExecutionContext* context engine-createExecutionContext(); // 分配顯存 —— 輸入輸出各一塊 void* buffers[2]; cudaMalloc(buffers[0], batch * 3 * 640 * 640 * sizeof(float)); // 輸入 cudaMalloc(buffers[1], batch * 84 * 8400 * sizeof(float)); // 輸出 // 推理 context-setTensorAddress(images, buffers[0]); context-setTensorAddress(output0, buffers[1]); context-enqueueV2(buffers, 0, nullptr, nullptr); cudaDeviceSynchronize();幾個(gè)容易出問(wèn)題的點(diǎn)buffer 大小要和引擎的 binding 維度一致。TensorRT 在 deserialize 時(shí)有自己的對(duì)齊規(guī)則如果顯存分配小了推理時(shí)直接越界輕則打出亂碼重則顯存報(bào)錯(cuò)。enqueueV2 是舊版 API 風(fēng)格TensorRT 10.x 推薦用 enqueueV3 加 stream 的方式但舊代碼里如果綁定名稱跟 ONNX 輸出名不一致setTensorAddress 會(huì)報(bào)錯(cuò)你需要在第一次運(yùn)行前打印 context-getEngine()-getBindingName(i) 確認(rèn)名字。推理輸出是一維 1×84×8400 的浮點(diǎn)數(shù)組。每 8400 個(gè)元素對(duì)應(yīng)一個(gè)位置的坐標(biāo)或者一個(gè)類別的分?jǐn)?shù)內(nèi)存布局是 [x1, y1, x2, y2, class0_score, class1_score, ...]理解這個(gè)之后才好在代碼里做解析。4.4 后處理置信度過(guò)濾、坐標(biāo)解碼與 NMS后處理是檢測(cè)環(huán)節(jié)的最后一步。代碼里我會(huì)寫成三個(gè)獨(dú)立函數(shù)方便單測(cè)struct Detection { float x1, y1, x2, y2, score; int class_id; }; std::vectorDetection decode_and_nms(float* raw_output, float conf_thres, float iou_thres) { std::vectorDetection detections; const int num_candidates 8400; const int num_classes 80; const int stride 84; for (int i 0; i num_candidates; i) { float max_score 0.0f; int max_class -1; for (int j 0; j num_classes; j) { float score raw_output[4 j i * stride]; if (score max_score) { max_score score; max_class j; } } if (max_score conf_thres) continue; float x1 raw_output[i * stride]; float y1 raw_output[i * stride 1]; float x2 raw_output[i * stride 2]; float y2 raw_output[i * stride 3]; detections.push_back({x1, y1, x2, y2, max_score, max_class}); } // 類別內(nèi) NMS按 score 降序 std::sort(detections.begin(), detections.end(), [](const Detection a, const Detection b) { return a.score b.score; }); std::vectorbool removed(detections.size(), false); // IoU 計(jì)算省略標(biāo)準(zhǔn)實(shí)現(xiàn) return detections; }邏輯說(shuō)明第一步先找每個(gè)候選框分?jǐn)?shù)最高的類別并以這個(gè)分?jǐn)?shù)做閾值過(guò)濾相當(dāng)于把 80 類分?jǐn)?shù)壓縮成一個(gè)最大值。第二步做 NMS 時(shí)我只在同一 class_id 內(nèi)做不同類別的框允許重疊這是 YOLO 系列默認(rèn)處理邏輯。參數(shù)上conf_thres 我建議設(shè) 0.25 起步這個(gè)值對(duì)應(yīng) ByteTrack 輸入的高分框定義。如果設(shè)成 0.5跟蹤時(shí)的低分框匹配階段就基本失效ByteTrack 退化成普通 SORT。iou_thres 設(shè) 0.7這是檢測(cè)標(biāo)準(zhǔn)值改大會(huì)出現(xiàn)多個(gè)框重疊同一目標(biāo)改小會(huì)漏框。4.5 對(duì)接 ByteTrack參數(shù)配置表和第一個(gè)跟蹤結(jié)果后處理得到的 Detection 列表直接喂給 ByteTrack 的 update 方法得到帶 track_id 的結(jié)果。ByteTrack 的 C 實(shí)現(xiàn)參數(shù)一般集中在頭文件里配置含義如下表參數(shù)建議值含義調(diào)高 / 調(diào)低的影響track_thresh0.5高分框閾值調(diào)高則跟蹤更保守目標(biāo)反應(yīng)慢match_thresh0.8關(guān)聯(lián)匹配閾值調(diào)高則容易切換 ID調(diào)低則容易保持舊 IDframe_rate30輸入視頻幀率影響卡爾曼濾波運(yùn)動(dòng)預(yù)測(cè)的補(bǔ)償min_box_area20忽略過(guò)小框過(guò)濾遠(yuǎn)處噪聲框調(diào)大會(huì)漏小目標(biāo)我第一次跑通時(shí)用的就是這組值track_thresh0.5、match_thresh0.8、frame_rate30、min_box_area20。跟蹤結(jié)果會(huì)在控制臺(tái)打印 track_id 和坐標(biāo)同時(shí)在窗口里用不同顏色標(biāo)出每個(gè) ID 的框和編號(hào)??吹?ID 穩(wěn)定不跳這一步就算成了。5. 避坑與排查四個(gè)最容易翻車的現(xiàn)場(chǎng)和對(duì)應(yīng)處理5.1 現(xiàn)象、原因、解決我把最常見的四類問(wèn)題拆開講這一章寫的是我自己在部署過(guò)程中反復(fù)踩過(guò)的坑每一條都是「現(xiàn)象 → 原因 → 解決」三段式建議你遇到異常時(shí)按這個(gè)順序排查比在網(wǎng)上搜報(bào)錯(cuò)快得多??右怀绦蚓幾g通過(guò)但運(yùn)行報(bào) libnvinfer.so.10 找不到現(xiàn)象cmake 構(gòu)建成功make 也成功一運(yùn)行就報(bào) cannot open shared object file。原因TensorRT 的 lib 目錄沒(méi)有加進(jìn) LD_LIBRARY_PATH或者路徑寫的是老版本號(hào)。解決在編譯前先 export LD_LIBRARY_PATH并檢查 TensorRT/lib 下實(shí)際的 .so 文件名。血淚經(jīng)驗(yàn)TensorRT 從 8.x 升到 10.x.so 后綴名變了所有硬編碼路徑都白搭最后必須用通配符或環(huán)境變量??佣櫩虮饶繕?biāo)框大一圈而且越靠畫面邊緣偏差越大現(xiàn)象檢測(cè)框套在目標(biāo)外圍偏移量隨目標(biāo)在畫面中的位置變化。原因letterbox 填充偏移量 x_offset 和 y_offset 沒(méi)有傳到還原函數(shù)里后處理按原圖尺寸直接縮放坐標(biāo)。解決確認(rèn)預(yù)處理階段記錄了填充寬高還原坐標(biāo)時(shí)用公式 x (x1 - x_offset) / scaley (y1 - y_offset) / scale。我自己在這上面栽過(guò)一次原因是把 letterbox 參數(shù)放進(jìn)了全局變量多線程下一幀的偏移覆蓋了上一幀??尤?ID 頻繁跳變同一目標(biāo)來(lái)回變號(hào)現(xiàn)象目標(biāo)直線行走track_id 從 3 跳到 8 又跳回 3。原因有兩種可能一是 track_thresh 設(shè)太高導(dǎo)致低分框全部被丟棄二幀率參數(shù)與視頻實(shí)際幀率不一致卡爾曼濾波的運(yùn)動(dòng)預(yù)測(cè)節(jié)奏亂了。解決先把 track_thresh 降到 0.4 試一輪再看 match_thresh 是否低于 0.7。ByteTrack 對(duì)幀率很敏感frame_rate 設(shè)置成 25 但實(shí)際視頻是 30運(yùn)動(dòng)補(bǔ)償就會(huì)偏??铀腡ensorRT 10.x 下編譯報(bào)錯(cuò)函數(shù)名對(duì)不上現(xiàn)象enqueueV2 未定義或者 destroy 方法不存在。原因TensorRT 10.x 把舊版 API 移除了。解決要么鎖定 TensorRT 8.x 版本編譯要么改寫成新 API。我一般推薦先按包內(nèi)帶的 CMakeLists 鎖定版本不要用系統(tǒng)里最新的 TensorRT 去編老工程。這里有個(gè)玄學(xué)現(xiàn)象同一份 ONNX不同 TensorRT 版本生成的 engine 文件的數(shù)值結(jié)果會(huì)有極小差異但足以影響跟蹤的穩(wěn)定性判斷。5.2 排查順序從哪個(gè)環(huán)節(jié)入手定位問(wèn)題當(dāng)你發(fā)現(xiàn)跟蹤結(jié)果不對(duì)先不要急著調(diào)參數(shù)。按下面順序排查效率最高確認(rèn)檢測(cè)沒(méi)問(wèn)題把跟蹤器停用單獨(dú)輸出檢測(cè)框看單幀結(jié)果是否正常。確認(rèn)推理沒(méi)問(wèn)題用 trtexec 跑同一張圖對(duì)比輸出和 onnxruntime 的一致性。確認(rèn)后處理沒(méi)問(wèn)題把解析出的框畫到圖上檢查坐標(biāo)是否貼合目標(biāo)。最后才是跟蹤器問(wèn)題對(duì)比不同 track_thresh 下的 ID 穩(wěn)定性。這個(gè)順序背后的邏輯是鏈路越靠前的問(wèn)題影響越大。檢測(cè)框本身偏了跟蹤器再準(zhǔn)也沒(méi)用。我見過(guò)有人花兩天調(diào) match_thresh最后發(fā)現(xiàn)是 TensorRT 輸出布局解析錯(cuò)了坐標(biāo)順序反了跟蹤器拿到的框全是亂的。不要跳過(guò)前幾步直接調(diào)參。6. 進(jìn)階調(diào)優(yōu)驗(yàn)證跟蹤效果的三個(gè)習(xí)慣和一個(gè)讓結(jié)果更穩(wěn)的關(guān)鍵動(dòng)作6.1 用可視化驗(yàn)證替代盯著控制臺(tái)數(shù)字盯到懷疑人生跟蹤器的輸出不能只看 FPS也不能只看不報(bào)錯(cuò)。我建議用 OpenCV 把每一幀畫上 track_id 和檢測(cè)置信度保存成視頻然后慢速播放。重點(diǎn)看三個(gè)地方目標(biāo)交叉時(shí) ID 是否會(huì)互換、目標(biāo)短暫出畫再回來(lái)能否找回原 ID、遠(yuǎn)處小目標(biāo)是否有軌跡抖動(dòng)。C 里畫框很簡(jiǎn)單cv::rectangle(frame, cv::Rect(det.x1, det.y1, det.x2 - det.x1, det.y2 - det.y1), cv::Scalar((det.track_id * 50) % 255, 128, 255), 2); cv::putText(frame, std::to_string(det.track_id), cv::Point(det.x1, det.y1 - 5), cv::FONT_HERSHEY_SIMPLEX, 0.6, cv::Scalar(0, 255, 0), 2);ID 號(hào)按取模方式映射成顏色同一個(gè)目標(biāo)前后幀顏色應(yīng)該一致。如果顏色閃來(lái)閃去說(shuō)明 ID 不穩(wěn)定這時(shí)候要看的是目標(biāo)交互場(chǎng)景而不是畫面整體。6.2 每次換模型都強(qiáng)制走一遍的驗(yàn)證流程換檢測(cè)器、換數(shù)據(jù)集、換 TensorRT 版本之后我每次都強(qiáng)制按同一套流程走先跑單幀靜態(tài)圖再跑一段 30 秒真實(shí)視頻最后統(tǒng)計(jì) ID Switch 次數(shù)。單幀保證檢測(cè)正確視頻保證跟蹤穩(wěn)定統(tǒng)計(jì)保證改進(jìn)可量化。這算是從多次翻車?yán)飺Q來(lái)的習(xí)慣現(xiàn)在每拿到一個(gè)新模型我都先忍住不調(diào)參數(shù)把基線跑出來(lái)再說(shuō)。希望這套習(xí)慣能幫你在部署 YOLOv8 ByteTrack 時(shí)少走幾趟彎路。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
沈娜娜av| 91婷婷丁香| 天天天天做夜夜夜夜做| 亚洲人妻AV| 99年操人人爽| 婷婷五月av| AV五月丁香| 丁香五月婷婷久久久| 五月丁香性爱| 婷婷开心五月| 婷婷丁香基地在线| 丁香五月婷婷亚洲人| 五月丁香欧美综合| 日操| 婷婷色情网| 67194中文在线| 超碰AV在线| 丁香五月婷婷激情中文| 亚洲国产成人裸舞| 丁香五月亚洲无码| 国产精品五月丁香| 色婷婷精品小视频| 99热国内| 婷婷伊人激情婷婷| 狠狠狠狠狠狠狠狠狠狠狠色宗合图片| 一级片sese片.COM| 99热精品在线播放| 伊人久久婷婷| 天天日天天舔天天摸| 久人人操| 丁香婷婷五月综合影院| 色激情五月| 超碰只有精品在线| 国精产品一区一区三区免费视频| 天天爽人人综合免费7799| 久久美女五月天| 色欲五月婷婷| 国产乱妇乱子伦| 五月丁香六月婷婷啪啪综合 | 久在线88综合| 欧美日韩成卜| 波多野结衣不卡AV| 亚洲影院婷婷色| 4399无码视频| 婷婷色狠狠| 成人无码精品1区2区3区免费看| 五月婷婷性爱| 色五月在线播放| 久久久久婷| 综合五月网| 五月丁香六月婷婷免费视频| 五月婷导航| 五月婷婷影视| www.婷婷五月天.com| 九九亚洲视频| 97狠狠色| 亚洲乱码日产精品BD| 丁香五月天堂| 婷婷丁香色五月天| 国产精品丝| www激情网站| 操人精品| 97色色-99久久| 在线,国产,色,热视频| 丁香五月综合高清在线| 思思热在线免费视频| 男女久久婷婷五月天| 综合狠狠五月婷婷| 激情五月天开心总和网| 91久久久久久久久18| 色九九综合| 亚州色色色| 另类在线| 久久日婷婷| 91怕怕网| 五月丁香综合网色欲| 激情综合五月激情XXXX| 五月草影视| 六月丁香VA| 五月丁香五月综合欧美| 五月天精品| http://www.com久久久精品一区| 婷婷色色欧美| 婷婷黄色五月天在线视频| 丁香婷婷五月天色播| 婷婷五月综合在线视频| 色婷婷a v| 五月婷婷久久综合| 9热久久| 欧美大香蕉视频| 91久久婷婷| 伊人婷婷激情| 激情综合婷婷| 丁香五月 无码| 久99久在线| 亚洲精品乱码久久久久久综合| 天天操夜夜夜拍拍拍| 精品无码99| 婷婷色片| 大鸡巴伊人网| 色爱99| 婷婷五月丁香网| 99九九在线观看免费| 午夜一区| 午夜爱插插| 婷婷亚洲丁香五月| 99热精品无码| 欧美日韩国产一区| 99热无码首页| 激情5月婷婷| 人人综合久| 99色色| 九九视频在线观看视频6| 免费成人网在线观看| 狠狠香婷婷五月| 999热在线视频| 丁香九月婷| seuuu婷婷| www.久久久.com| 亚洲爱爱无码婷婷色五月| 人人草人人视| 90色免费视频| 欧洲激情五月天| 婷婷欧美综合| 精品牛仔裤超碰| 婷婷色色播五月天| 最新高清无码专区| 五月天色五月天| 亚洲超碰在线| 婷婷五月亚洲综合| 91久久五月天| 99热综合色图| 色色色婷婷| 五月婷婷综合天天操| 狠狠色综合网| 婷婷丁五月| 五月婷婷av| 超pen个人视频97| 色五月成人| 五月天婷婷激情在线色图| 国产做A爰片毛片A片美国| 伊人婷婷大香蕉| 天天插天天| 丁香六月综合激情| 伊人久久婷婷五月天激情四射| 综合AV在线| 九月色婷婷综合| 伊人久久五月天| 国产亚洲精品AAAAAAA片| 婷婷涩五月| 婷婷丁香五月色| 碰人人97| 欧美丁香五月夫妻天| 岛囯综合激情网| 开心五激情网| 丁香五月婷婷老师网站| 色五月婷婷亚洲| 97操碰免费视频| 婷婷色情小说| 91丨九色丨老农村| 五月婷久久| 亚洲愉拍99热成人精品| 日韩成人电影AV| 久久五月丁香| 色婷婷五月综合在线| 五月婷婷综合在线| 久久精品亚洲一级牲爱综合| av操一操| 丁香五月影院| 五月丁香婷庭在线| 色婷婷AV在线| 另类天堂| 九热视频| 激情六| 泰州成人视频| 色爱终和网| 丁香五月婷婷久久久| 天天插天天日| 综合久久婷婷五月丁香| 丁香五月婷婷图片综合| 日本美女五月天| 久久婷婷五月综合成人d啪| 新激情五月天天在线网| 日韩砖区| 五月丁香偷拍| 99热综合| 婷婷五月天成人网| 婷婷五月天综合蜜桃| 琪琪色综合网站| 五月天天爱| 大香蕉婷婷五月天| 波多婷婷久久| 久久久久人妻精品| 五月婷婷婷婷网| 原琪琪色影院| 精品婷婷丁香五| 影音先锋天天日| 99久久久国产大片区| 五月天久久色| 亚洲色网址| 思99热精品久久只有精品| 五月伊人91| 超碰在线综合| 五月停停丁香| 五月丁香六月激情综合网| 中文字幕人妻熟女在线| 激情丁香五月| 丁香五月五月婷婷五月天激情四射| 色情五月婷| 精品夜夜澡人妻无码AV| 色婷婷欧美| 五月婷婷免费| 天天天操天天天爰| 五月婷婷99热| 久久青青日本视频| 九色综合网| 国产成人在线精品| 99热综合网| 五月天激情网图片 - 百度| 五月丁香婷婷激情爱爱| 亚洲激情四射色| 中文字幕综合网| 婷婷丁香五月综合激情小说| 婷婷综合成人五月天| 视频一二区| 亚洲亚洲人成综合网络| 中文av网| 性爱综合网| 九九精品网| 五月停停直播| 99在线免费视| 十月丁香婷婷| 99久热在线精品| 伊人影院久久网| 国产亚洲精品AAAA片APP| 久久在线大香蕉| 色综合综合网| 新伍月婷婷| 亚洲日韩人妻操逼| 天天做天天爱天天爽在| 五月香蕉综合| 久久亚洲色导航| 久久Xx| 97成人在线视频| 亚洲无AV在线中文字幕| 国产精品第一国产精品| 秋霞av吧| 一区二区你懂的| 五月天婷婷综合色| 日比视频91| 精品一二三区久久AAA片| 五月丁香影视| 国产精品第一国产精品| 久久婷婷丁香花综合网| 国产av第一专区| 精品少妇人妻AV无码专区偷人| 五月婷婷久久综合| 成熟妇人A片免费看网站| 国产成人网站在线观看| 五月天电影网| 色婷婷91激情小说| 怡春院久操| 黑人熟妇一区二区三区| 91精品久久久久久| 日韩欧美一区二区三区四区| 日日操夜夜爽天天天| 婷婷五月天天| 天天做天天爱天天综合网| 婷婷五月丁香综合人妻| 九九在线视频| 久久五月天婷婷| 91精品久久久久久77777| 99热这里有精品| 天天日天天插| 九月色婷婷综合亚洲| 91热久| 色婷婷情片| 日韩在线观看亚洲| 婷婷五月天成人动漫| 女人天堂av| 久久这里只有精品16| 日本激情五月天‘| 久9热视频| 99热99色| 97超碰色| 久久只有精| 狠狠干在线视频| 色婷婷影音| 涩涩涩五月天| 婷婷五月色天| www.久操| 精品无码av丁香五月激情| 激情五月婷婷啪啪| 五月天婷婷免费| 色99视频| 2015超碰| 天天狠狠色| 99久在线精品99re8热| 午夜天堂啪啪| 中文av在线观看| 91九色国产| 欧美综合婷婷欧美综| 亚洲成人黄色网| 久久hd| 日本猛少妇色XXXXX猛叫| 99精品久久久久久| 五月激情丁香久久综合网| 天天插天天干天天舔| 欧美乱码国产一级A片| 亚洲欧美成人在线| 99riAV国产精品视频| 日韩一66精品| 三级三久久线久久99久目本WW| 欧美顶级少妇做爰HD| 日韩AV在线免费观看| 丁香六月婷婷一区| 九九热自拍| 超碰成人黄色网| 91精品又长又大又粗又爽又猛| 亚洲婷婷月丁香五月| 色五月激情五月| 天天干天天拍| 久久亚洲婷婷| 伊人久久大香蕉网| 密视AV综合在线| 99这里只有免费的精品| 亚洲精品午夜国产va久久成人| www狠狠爱com| 丁香五月六月激情| 欧美性生交XXXXX无码小说| 热九九九九| 色综合久久天天综合网| 久操操| 丁香婷婷超碰| 天天插天天日| 五月婷免费视频| 99热这里有精品| 黄网免费观看| 久久久激情视频| 在线观看日韩12345区| 99亚洲综合| 久久99婷婷| 超碰丁香五月| 激情五月丁香亭亭| 欧美婷婷丁香五月| 亚洲成人五月天| 九九热123| 色婷婷4| 99热8| 色婷天天| 激情五月综合网最新| 天天色99| 99热综合网| 人人插9| 天天狠狠干| 亚洲综合婷婷五月| 日本久久综合| 97影院一级片| 激情五月天色网站| 久久丝丝热| 婷婷五月丁香久久| 五月天丁香六月综合| 91碰| www.粉嫩av.com| 午夜丁香婷婷| 精品爱欲五| 开心 五月 综合| 能看的AV| 婷婷六月天激情影院| 99原创自拍视频在线观看| 亚洲激情免费久久| 欧美成人AAA片一区国产精品| 丁香六月 婷婷六月| 天天插综合网| 69婷婷丁香午夜| AⅤ网站在线看| 六月婷婷亚洲| 久婷久婷激情肉| 五月天狠狠色| 五月天婷综合网站| 97超美国视频在线观看| 亚洲国产99| 99热最新精品| 亚洲中文字幕在线观看| 91精品综合久久久久久五月丁香 | 日本久久高清| 五月色导航| 婷婷伊人久久无码色五月| 永久AⅤ1| 丁香五月婷婷激情网| 99成人| 亚洲天天免费| 人人爽欧美婷婷久久久五月丁香 | 99久久综合网| 99在线精品免费视频| 丁香色情五月综合网站| 丁香婷婷六月天| 日韩无码成人电影| 日日天天干| 色情五月丁香| 亚洲色频| 五月天激情小说| 五月丁香AV在线| AA久久| 婷婷成人基地| 色丁香五月天| 狠狠草综合网| 热的五码久久精品| 婷婷五月天首页激情| 99九九久久| 久久66精品| 激情图片99| 国产FREESEXVIDEOS性中国| 直接看的AV| 欧亚洲在线高清视频| 色五月丁香com| 色婷婷婷婷| 五月婷婷深爱六月| 久久视网36| 九九综合88| 天天操婷婷| 夜夜干夜夜操| 五月四色婷婷| 影音先锋色色色资源色资源色| 就爱日五月天| 中字幕视频在线永久在线观看免费| 丁香婷婷六月男男| 26uuu另类亚洲欧美日本一| 激情视频婷婷五月花| 丁香五月婷婷久久久| 99热久| 婷婷射图| www.天天日| 九九视频热| 婷婷五月天国产精品| 日韩xx在线| 九九日伊人| 成人丁香五月天| 26uuu国产| www.sezonghe| 综合激情综合啪啪| 热99热| 色色色色综合网| 99日在线观看视频| 久久婷婷综合拍| 久777| 亚洲精品又粗又大又爽A片| 91色综合| 日韩亚洲视频| 久久久久9| 丁香五月先锋| 99男人的天堂| 狼人婷婷综合| 丁香五月日韩| 超碰AV在线| 午夜婷婷久久 | 五月婷婷亞洲中文| 中文字幕色色色| 第四色婷婷最爱| 亚洲小视频免费看| 免费精品66| 五月丁香日本在线视频观看| 婷婷久久国产视频| 丁香激激情网| 婷婷丁香色无五月| 停婷丁五月在线| 少妇综合网| 九九热最新| 少妇综合网| 五月天婷婷基地| 囯产精品久久欠久久久久久九大| 激情五月综合亚洲另类| 超碰人人干| 1024人妻| 免费无码毛片一区二区A片 | 丁香五月婷婷影院| 另类亚洲视频| 99亚洲精品视频在线观看| 天天狠狠婷婷在线| www.思思99热| 五月激情婷婷在线| 综合大香蕉| 久热只有精品| 色婷婷伊人激情在线观看| 99人人爽| 国产ava| 69热在线| 99日韩网站| 久久性爱视频网站| 丁香午夜天| 欧美经典片免费观看大全| 久久97久久99久久综合欧美| 亚洲AV另类| 亚洲婷婷丁香| 六月伊人婷婷| 狠狠狠狠狠| 亚洲综合激情五月久久| 99日热在线视频| 婷婷爱五月| 亚洲sesesese| 欧美丁香五月| 色五月av| 婷婷丁香视频| 亚洲天堂亚洲色色色| 日本性激情色播| 亚洲婷婷激情综合激情999精品| 九九黄色网| 95精品区一区二| 综合伊人久久| 九九热99精品| 五月婷婷丁香| 婷婷五月欧美| 青草视频在线蜜臀| 久9久9热久热| 天色综合网站| 99热日本| www.爱婷婷.com| 激情丁香五月天综合| 综合网五月天123| 超碰日日操| 日韩乱轮AV| 在线观看的av| 终合激情网| 99九九久久| 大香蕉75线| 亚洲欧洲自拍图片专区五月天| 六月天婷婷| 亚洲第一成人无码A片| 1024操逼视频| 亚洲va欧洲va国产va不卡| 天天干,夜夜爽| 综合激情在线观看| 婷婷色网站| 五月天啪啪啪| 任你爽精品免费视频6| 五月天激情无码高清| www.婷婷| 99九九在线| 婷婷五月激情丁香| 狠狠色婷婷综合开心影视| 亚洲精品色色| 欧美精品99久久久| 182TV亚洲| 日韩视频99| 熟女人妻视频| 六月婷五月丁香| 日日撸夜夜操| 婷婷操逼| 久久婷婷影院| 色吧五月婷婷| 9久久久久久久久久久| 另类综合婷婷五月天欧美视频| 99国产精品久久久久久久久久久| 丁香五月天AV在线| 成人视屏在线观看| 99 re视频一区| 色婷婷久久综合中文久久一本| 中文字幕婷婷9月天| 丁香女人五月天| 九九久久精品| 亚洲区,视频区,视频区免费| 色99视频| 婷婷激情伍月网| 五月丁香六月婷综合成人综合| 伊人久久综合| 久久性刺激| 婷婷综合色网| 亚洲色图五月丁香| 色欲婷婷五月天| 97视频久久| 欧美色宗和激情| www.99热视频| 婷婷色在线| 丝袜大香蕉| 婷婷五月丁香久久| 成人精品在线| 五月丁香六月婷婷综合网| 无码日本精品XXXXXXXXX| 综合色天天| 九九综合九| www.亚洲激情| 午夜婷婷久久| 精品久久艹| 色色亚洲无码| 中文字幕成人网站| 色五月天综合网| 久婷婷五月综合欧美| 色婷婷免费视频| 操一区| 噼里啪啦在线观看免费完整版视频 | 五月开心啪啪| www久久久久久| 碰97久久| 五月激激网w'w'w| 免费色婷婷| 殴美综合激情五月天免费视频| 99riAV国产精品视频| 五月天国产| 激情婷婷狠狠干| 久久天堂色| 久碰视频| 婷婷五月天综合色| 超碰超碰在线| 日韩成人不卡| 99a级片| 五月天激情站| 亚洲色图啪啪| 99热在线观看免费精品| 婷婷激情5月| 99热99| 激情六月婷婷| 色色AV色色色东莞| 天天搞夜夜叫| 97在线/日本| 九九热只有精品| 青青草原99热| 婷婷激情小说网| 玖玖91| 狼人久草| 婷婷色五月在线视频| 色狠狠五月天| 美国不卡视频| 日韩AV无码影片| 青青草轻轻操| 婷婷五月中文字幕国产| 色婷婷香蕉| 色天使久久综合| 任你草| 婷婷丁香在线播放| 99视频精品视频| 婷婷五月天午夜激情影院| 深爱五月天| 五月婷婷五月| 激情六月一二| 色综合久久88色综合天天人守婷| 婷婷五月激情图片| 97操碰在线97| 大地资源色婷婷视频在线 | 色婷婷中文在线| 婷婷五月天第四色| 日本的α片xxxwww| 亚洲色情久久| 午夜激情综合| 五月停停色| 抽插特写| 婷婷影院A成人| 免费亚洲婷婷| 六月激情婷婷| 五月婷六月| 狠狠草狠狠草| 精品亚洲VA网站| 操逼在线视频| 日日干夜夜撸夜夜骑| 久久大香蕉| 婷婷射图五月天| 激情九九九九| 婷综合六月| 91蝌蚪窝视频在线| 亚洲妇女熟BBW| 丁香五月天综合| 久久久中文| 色热久| 六月丁香色色| 久久99久久99精品免观看粉嫩| 婷婷五月丁香五月综合网| 天堂AV在线看| 婷婷开心六月| 国产无套精品一区二区| 五月天网站亭亭| 思思re99视频在线观看| www.com五月天| 天天爽天天爽视频| 色香欲综合| 久久激情五月| 9有码中文| 日韩另类在线观看| 武则天精品久久| 日韩操人| 日本九九九九| 天天碰夜夜操| www.99热精品99.com| 五月丁香六月婷婷的女人| 99视频在线观看视频| 天天综合五月天| 丁香五月网址| 中文网AV| 丁香五月在线视频黑人| 五月激情久久综合网| 亚洲日韩欧美综合VA| 综合激情视频| 丁香色色网| 九九成人| 91免费试看| 色爱99| 热99国产精品| 精品无码人妻一区| 天天日,天天插| 欧美综合123区| 成人片在线播放| 亚洲精品a成人在线播放| 五月丁香A片| 欧美人久久| 五月婷婷 欧美| 久久99这里只有精品视频| 久久久精品色| 日本三级中国三级99人妇网站| 婷婷伊人| 去色色五月天| 99热99ai| 天天做好综合色| 狠狠操综合| 成人五月丁香花| se99热久久一本| 色婷婷丁香五月天| 激情五月婷婷综合色播小说| 久草A片| 色天堂婷婷| 玖玖爱导航| 五月综合视频在线| 色五月天成人| 欧美成人精品A片免费一区99| 狠狠色噜噜狠狠狠狠狠色综合久久| 啪啪 综合网| 婷婷激情六月综合| 波多野结衣AV无码Porn| 丰满老熟妇BBBBB搡BBB| 五月丁香色婷婷久久| 天天日夜夜草进麻麻的子宫| 五月婷婷天堂| 综合色五月亭亭| 成人 在线 日韩| 婷婷射婷婷舔| 亚洲色五月| 啪啪 综合网| 97好吊操| 五月激情在线| 97操在线视频| 色五月亚洲| 亚洲狠狠色丁香婷婷综合久久| AV在线大香蕉| 激情五月丁香亭亭| 五月丁香婷婷钟和色图| 色婷婷五月影视| 亚洲六月婷婷| 激情婷婷五月在线合集| 一个色的综合| 天天插天天日| 日良久久| 天堂久久性| 超碰2021| 日韩综合大黄| 欧美大片| wwxx日本| 五月丁香啪| 色999五月色| 9l视频自拍九色9l视频在线观看| 九九久99免费视频| 99精品久久久久久久婷婷久久| 99热最新| 少妇丁香婷婷| 人人爱操| 另类图片天天影视在线观看| 91九色在线视频| 9久9久| av狠狠操| 国精产品一区二区三区| 99爱在线精品视频免费观看| 亚韩精品视频1区| 青青草六月丁香| 中文字幕按摩做爰| 婷婷五月激情基地| 亚洲V国产V欧美V久久久久久| 婷婷丁香色五月亚洲| 色综合久久888| 午夜成人网站在线观看| 欧美大香蕉视频| 亚洲性爱电影| 97碰久久| 99色在线视频观看| 色五月激情综合网| 国产99精品免费视频| 丁香九月激情| 五月天婷婷激情干干| 国产日韩精品SUV| 五月丁香六月婷婷免费| 免费无码毛片一区二区A片| 色五月aV| 中文超碰视在线| 久久99热久久99精品| 久久区区一二三av| 天天天在线观看| 日本色99| 91一起操| 99福利视频| 亚洲av成人一区二区电影在线| 色色亚洲五月天| 99在线免费视频| 婷婷丁香18| 五月丁香视频在线观看| 婷婷五月丁香综合网| 久久色这里只有精品| 婷婷99丁香| 级情九色| 99热这里只有精品33| 色婷婷亚洲综合网站| 五月丁香综合网| 丁香五月婷婷啪啪啪| 国产毛片精品一区二区色欲黄A片| 久久伊人日日夜夜| 我想看国产大学生口爆吞精的视频| 日本色婷婷| 五月丁香啪啪啪| 超碰日韩人妻在线| 色婷婷亚洲婷婷| 激情五月天婷婷直播| 九九99九九精品免费| 婷婷性色| 狠狠操之狠狠操| 人妻在线观看视频| 九九色热| 亚洲丁香五月| 色五月激情综合网| 99热8在线| 91超碰在线观看| 激情影院免费视频婷婷五月天| 日都一级A片| 成功精品影院| 五月婷婷亚洲| 99热成人精品| 影音先锋天天日| 高清无码网址| 超碰资源在线| 狠狠干狠狠干狠狠干狠狠干| 9l视频自拍9l九色9l成人| 精品国产AV色一区二区深夜久久| 色屌丝中文字幕| 在线,国产,色,热视频| 免费看片操逼| 欧类av怡春院| 人妻综合网| 久草xx性爱视频| 天天日天天舔天天摸| 丁香五月成人自拍| 精品一二三区久久AAA片| 色色99| 亚洲激情五月丁香久久久久| 免费黄色视频网址| 久热re在线视频| 亚洲精品白浆高清久久久久久 | 婷婷五月花西瓜| 婷色人人狠| 五月天天综合| 91九九九九九九| www99热| 超碰超碰在线| 99re这里| 欧美丁香五月天| 天天综合亚洲综合网天天αⅴ| 97碰人人操| 丁香五月 性爱| 少妇真实被内射视频三四区| 五月婷婷啪| 大婷婷色呦呦噜噜色呦呦噜噜| 色天天综合成人网| 久久小视频免费| 色五月综合在线| 97操碰在线视频| 青青久久91| 欧美五月停| 最新日韩久热免费视频看看| 这里只有精品日韩| av无码电影| 日本在线观看aaa 99| 办公室少妇激情呻吟A片在线观看| 五月天堂色| 色私五月婷婷| 天天插天天插| 五月天久久91| 色情五月婷婷| 夜夜操天天干| 天天色综网| www天天爽| 五月色天情| 婷婷五月天色综合| 婷婷五月中文字幕国产| 这里只有国产精品在线| 日日干日日s| 婷婷激情六月综合| 午夜青草资源| 六月丁香综合网| 五月丁香综合久久| 亚州日本欧州韩美高青高潮一| oVV4WIB3vFi8D| 午夜丁香六月婷| 青青草深爱激情网| 日日噜狠狠色综合久久| 久久这里只有精品无码| 操一操插一插| 五月婷婷第四色| 天天做夜夜爽| www.久久99热地址发布| 97影院一级片| 狠狠插狠狠插| 国产毛片精品一区二区色欲黄A片 极品人妻VIDEOSSS人妻 | 婷婷九月激情网| 久久草婷婷丁香网站| 99热在线观看这里只有精品| 欧美色爱五月天| 五月婷婷啪啪综合网| 久久九九@| 婷婷综合在线| 婷婷五月成人| 热久综合| 看全色黄大色大片| 97操在线视频| 思思99热在线| 五月天深爱激情网| 无码色| 激情五月小说婷婷| 亚洲乱码日产精品BD| 日韩AV成人电影| 9久热在线视频精品| 六月婷婷天天操夜夜爽视频| 夜夜做天天爽| 欧美综合激情丁香五月六月婷| 日本WWW九九九| 天天插综合| 五月丁香六月片| 婷婷色中文| 狠狠狠婷婷五月综合| 特级片神马电影| 91丨九色丨熟女| 免费AV播放| 婷婷情色五月| 婷婷久久五月丁香| 精品99爱免费视频在线观看| 99热精品无码| 久操热| 亚洲黄色av网站| 婷婷偷拍网| 激情五婷网| 婷婷五月天精品| 青青草原亚洲久| 91久久| 天天做 天天爱| 99久在线精品99re8| 九七色色六月丁香| 久99久在线| 伊大人久久| 日日噜狠狠| 操逼棍操逼| 人妻AV在线| tingtingseav| 美女天天久久| 久热这里| 影音先锋91网站在线观看| 大香蕉99热| 国产色五月婷婷| 涩五月婷婷| 欧美日韩成人在线免费| 五月天色婷婷av| 激情久久久久久| 超碰妻人人| 天天日夜夜高潮| 婷婷久久五月天丁香| 4399无码视频二区| 欧美大奶熟女噜噜噜噜| 天天日天天色| 色色9 9| 小视频aaa久久久| 婷婷丁香九月| 日笨久久网| 久久五月天激情视频| 99天堂网| 五月丁香激情综合啪啪| 婷婷五月骚厕所| 熟女人妻一区二区三区免费看| 久超超碰| 亚洲精品大片| A片天天| 插插网爽妇五月丁香| 六月丁香五月天| 日本97在线视频| 久久人妻久久| 女同在线9| 六月婷婷日| 99热这里是精品| 丁香六月色婷婷| 1024操逼视频| 97碰成超视频免费视频| 79色色色色| 五月丁小婷婷激情四射| 天天色伊人| 91丨九色丨熟女高潮| 99热啪啪| 99综合视频一体| 中文字幕av在线| 超碰在线精品| 婷婷五月丁香啪啪| 伊久久婷婷| 香蕉久久六月| 久99久在线观看| 丁香婷婷91在线观看视频| 思思热在线精品视频| 99视频在线看| 五月综合婷婷五月| 久久九九婷婷| 天天插天天爽| 婷婷伊人75| 久久综合影院 | 超碰av在| 天天日夜夜爽。| 欧美A片在线视频免费观看| 爱婷婷五月| avh片在线观看| 99色色色色| 91丨九色丨老农村| 午夜丁香综合婷婷| 天天搡日日搡aaaaⅩ| 中文字幕在线免费观看视频| 99热精品在线观看| 亚州日本欧州韩美高青高潮一| 97碰碰碰免费公开在线视频| 狠狠干在线视频| 丁香五月激情综合久久| 色五月六月| 91精品又长又大又粗又爽又猛| 97人妻碰碰碰久久香蕉| 99视频自拍| 色婷婷电影| 久久这里都是精品视频| 大香蕉婷婷婷| 丁香五月婷婷AV在线| 激情五月婷| 啪啪一区| 九月丁香五月婷婷| 婷婷五月18永久免费网站| 中文字幕人妻在线| 久久最新色色色| 亚洲黄色网址| 五月丁香婷婷综合网| 伊人婷婷综合| 亚洲视频在线观看| 丁香五月激情综合啪啪| 久久国产高清| 五月丁香天堂网| 丁香六月婷婷高清| 操操操91| www.超碰| 日日日影院| 久久久久亚洲AV成人无码电影| 97久久超碰| 丁香六月婷婷综合在线| 久热黄色| 610018岁成人视频| 色色99| 日韩成人网站精品久久大全| 婷婷综合国产| 九九色逼| 秋霞三及片| 日韩亚洲视频| 五月天婷婷狂暴白浆| 182TV大香蕉| 亚洲色婷婷99一9|| 久久999久久999久久999久久| 丁香五月香蕉| 91wwmm导航| 丁香色情五月综合激情| 超级碰碰一区| 色婷婷激情| 日日.c| 天天搞夜夜六| www.久久9| 年轻的妺妺伦理HD中文| 婷婷六月综合基地| 777精品成人a v久久| 丁香五月手机在线| 超碰婷婷五月| 99热97| 婷婷五月婷婷| 久久视9精| 成人版视频在线观看| 日逼免费视频 | 丁香六月 婷婷六月| 婷婷五月激情五月丁香五月| 八戒青柠影视剧在线观看| 啪啪操超碰| 激情综合色| 人人爱干人人爱草| 婷婷五月天黄色网址| 综合狠久久| 97精品综合久久| 站长推荐无码播放| www.五月天激情| 婷婷五月天,影院| 97人人操人人爽| 五月天怕怕| 超碰在线50| 91超碰人人操| 色噜噜狠狠色综合成人99| 色婷婷色人人射| 欧洲激情五月天婷婷| 97资源碰碰| 日韩美女羞羞网站在线观看| 96丁香婷婷九月蜜桃综合久久| 五月婷婷色五月| 91人人网| 九九热最新| 99热无码首页| 99热这里只有精品一区| 99热这只有| 亚洲小视频免费看| 色玖玖综合网| 久久精品99久久久久久| 国产综合丁香五月天| 久操香蕉| 婷婷五月花| 久久精品99国产精品日本| 精品人妻一区二区三区四区不卡在| 五月天婷婷激情| 久色资源| 色综合激情| 色婷婷狠狠18| 天天综合社区| www.色色色色| 色婷婷色五月天| 亚洲A色| 久久人妻视步| 99爱视频在线播放| 日日夜夜狠狠干| 伊人五月天婷婷| 天天做天天爱天天玩夜夜爽 | www.五月天婷婷| 精品99在线观看| 激情五月婷黄版| 综合一区二区三区| 天天搡日日搡aaaaⅩ| 九九色综合网| 久久新地址| 婷婷香五月天| 九九黄色网| 国产欧美精品AAAAAA片| 激情内射人妻1区2区3区| 黄网在线免费| 97涩婷婷婷婷基地| 性爱七区| 在线成人网址| 99亚色色色| 婷婷丁香五月激情图片| 六月丁香婷婷在线波多| jiqingliuyuetian| 激情六月色| 九九五月天| 国产激情久久久| 五月日韩中文字幕| 激情婷婷五月在线合集| 97五月综合网| 午夜成人天堂久久无码日韩久久| 激情五月综合| 99A片| 亚洲AV成人无码电影| 亚洲不卡欧洲| 夜夜躁狠狠 | 操日挥操日日| 伊人五月综合网| 久久久久久人妻| 婷婷91视频| 丁香五月婷婷欧美成人色图| 97视频.干com| 日韩成人网站精品久久大全| 另类图片婷婷五月天| 丁香激情网| 丁香啪啪| 超碰啪啪网| 9操在线| 色五月丁香激情视频| www天天色天天射| 91久久久久久久| 成人在线观看精品| 天天综合久久| 天天激情视频| 五月天伊人网| 天天日夜夜爽| 91怕怕网| 丁香五月激情宗合网| 9999热这里只有精品| 丁香婷婷五月色成人网站| 极品少妇高潮啪啪AV无码| 99久久高清视频| 亚洲欧洲99| 夜夜夜夜夜骑撸| 99热亚洲| 在线91日韩| 综合激情网五月激情| 久久婷婷五月天蜜桃| 久久久人妻| 婷婷五月天毛片| 丁香五月婷婷动漫视频| 婷婷五月激情网| 亚州美女| 99色热视频| 深爱激情六月| www.婷婷| 日韩视频女神99| 五月婷婷中文网| 97人人操人人爽| www.com在线操视频免费观看| 秋霞三级色戒| 丁香五月成人| 激情综合网激情五月俺也去| 天天色播| 丁香婷婷月| 丁香五月影| 做爱夜夜干天天操| 狠狠色丁香婷婷久久综合| 伊人爱爱日本| 98毛片| 亚洲综合久| av五月丁香| 天天干天天干天天干天天干天天| 婷婷伊人綜合中文字幕小说| 日本视频不卡123区| 色色五月天婷婷丁香| 91人人人人人| 天天人人综合| 激情五月丁香六月综合AVXXXX| 99久久九九视频| 久久久妻人人人| 91色在线/日韩| 97久久五月丁香婷婷| 开心五月天激情网站| 成 人片 黄 色 大 片| 久久久精品视频79| 久久婷婷色色| 亚洲AV另类| 婷婷丁香久久网| 色五月开心五月激情五月| 天天综合在线网| 啪啪激情综合| 日韩另类在线观看| 久久99精品久久久| 综合五月天完整| 日本三级99人妇网站| 先锋男人99资源| 性一交一乱一交A片久| 天天色情站| 色婷婷综合网| 热99国产精品| 色五月六月| 五月婷婷啪啪| 婷婷久久综合| 妇激情基地| 91狠狠综合久久久久久| 亚洲五月天婷婷| 婷婷五月天奸女| 一起草无码| www.91.com黄| 激情五婷网| 日本人妻A片成人免费看片| 五月婷婷狠狠干| 精品激情| 激情五月综合网| 久久性爱视频网站| tingtingjiqingwuyue| 成人做爰高潮A片免费视频| 天天操天天操综合|