亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

人流量檢測(cè)系統(tǒng)實(shí)戰(zhàn):YOLO跟蹤計(jì)數(shù)與部署避坑指南

人流量檢測(cè)系統(tǒng)實(shí)戰(zhàn):YOLO跟蹤計(jì)數(shù)與部署避坑指南 簡(jiǎn)介這是一份基于深度學(xué)習(xí)的人流量檢測(cè)系統(tǒng)畢業(yè)設(shè)計(jì)項(xiàng)目包含 Python 源碼與項(xiàng)目說(shuō)明文檔面向計(jì)算機(jī)相關(guān)專(zhuān)業(yè)正在準(zhǔn)備畢業(yè)設(shè)計(jì)的學(xué)生也適合需要項(xiàng)目實(shí)戰(zhàn)練習(xí)的學(xué)習(xí)者可用于課程設(shè)計(jì)或期末大作業(yè)。項(xiàng)目經(jīng)嚴(yán)格調(diào)試后可穩(wěn)定運(yùn)行作為導(dǎo)師認(rèn)可的高分畢業(yè)設(shè)計(jì)從模型搭建、訓(xùn)練到前端檢測(cè)展示均有完整代碼目錄結(jié)構(gòu)清晰便于對(duì)照說(shuō)明理解整套人流量檢測(cè)流程。資源包共 1235 個(gè)文件約 61.54MB其中 76 個(gè) Python 文件構(gòu)成核心檢測(cè)邏輯配合 382 個(gè) HTML 頁(yè)面、194 個(gè) JS 腳本、51 個(gè) CSS 樣式搭建可視化界面208 張 PNG 圖片與 186 張 GIF 動(dòng)圖用于界面元素和過(guò)程演示另有 ipynb 筆記、配置文件與模型資源方便復(fù)現(xiàn)訓(xùn)練與推理過(guò)程。該資源已有 264 人學(xué)習(xí)使用適合在已有項(xiàng)目上快速上手、二次開(kāi)發(fā)也可用于學(xué)習(xí)深度學(xué)習(xí)檢測(cè)項(xiàng)目的工程組織方式。1. 人流量檢測(cè)別急著訓(xùn)模型拿到這個(gè)標(biāo)題你第一反應(yīng)多半是找個(gè)人體檢測(cè)模型數(shù)畫(huà)面里有幾個(gè)人。但我做下來(lái)的感受是人流量檢測(cè)真正難的不是檢測(cè)而是數(shù)得穩(wěn)——跨攝像頭、跨時(shí)段、有遮擋、有透視畸變時(shí)同一個(gè)人在不同幀里既可能被漏檢也可能被重復(fù)計(jì)數(shù)準(zhǔn)確率浮動(dòng)非常大。這個(gè)畢業(yè)設(shè)計(jì)項(xiàng)目的核心并不在于用深度學(xué)習(xí)框出人而在于把檢測(cè)結(jié)果、追蹤邏輯和業(yè)務(wù)口徑什么才算通過(guò)一次拼成一套能自洽的計(jì)數(shù)系統(tǒng)。適合正在做畢設(shè)或課設(shè)、想拿一個(gè)完整可演示項(xiàng)目的同學(xué)也適合剛?cè)腴T(mén)目標(biāo)檢測(cè)、想看看工程約束怎么倒逼模型選型的開(kāi)發(fā)者。下面我把整套方案的選型、數(shù)據(jù)準(zhǔn)備、源碼結(jié)構(gòu)和踩坑點(diǎn)按實(shí)際開(kāi)發(fā)順序拆給你。2. 檢測(cè) vs 計(jì)數(shù)兩條技術(shù)路線與選型判斷2.1 為什么單張圖檢測(cè)不夠用計(jì)數(shù)口徑才是系統(tǒng)的靈魂人流量檢測(cè)系統(tǒng)如果只做每幀輸出若干框站在答辯或驗(yàn)收視角是站不住的——演示時(shí)隨便有人交錯(cuò)走過(guò)人數(shù)就亂了。真正的流量指標(biāo)是單位時(shí)間內(nèi)有多少人穿過(guò)某個(gè)斷面這要求系統(tǒng)能區(qū)分這是剛才那個(gè)人走過(guò)去了還是新來(lái)一個(gè)人。常見(jiàn)做法是引入跟蹤Track來(lái)給檢測(cè)框分配 ID再配合一條虛擬計(jì)數(shù)線或區(qū)域判斷來(lái)完成計(jì)數(shù)。也就是說(shuō)模型只是上游Tracking 和計(jì)數(shù)邏輯才是中游和下游三者缺一不可。我一般會(huì)把技術(shù)選型分成兩類(lèi)一類(lèi)是檢測(cè)類(lèi)方案即 YOLO 系模型檢出人框再配 IoU 匹配做跟蹤另一類(lèi)是密度回歸類(lèi)方案即 CSRNet 這類(lèi)網(wǎng)絡(luò)直接回歸人群密度圖再積分求人數(shù)。前者對(duì)個(gè)體定位清晰、可解釋性強(qiáng)、單人場(chǎng)景精度高但遮擋嚴(yán)重時(shí)漏檢率會(huì)陡升后者在密集人群場(chǎng)景更有優(yōu)勢(shì)但無(wú)法給出每個(gè)人在哪的框而且訓(xùn)練密度圖標(biāo)注成本極高。2.2 畢設(shè)場(chǎng)景選 YOLO 系模型的四個(gè)理由如果你的場(chǎng)景是教室門(mén)口、走廊、超市出入口這類(lèi)半密集場(chǎng)景我會(huì)優(yōu)先選 YOLO 系檢測(cè)模型理由很直接預(yù)訓(xùn)練權(quán)重成熟公開(kāi)數(shù)據(jù)集多換到自己場(chǎng)景只需要微調(diào)推理速度快普通 GPU 上輕松跑實(shí)時(shí)可視化效果好畫(huà)框標(biāo) ID 一眼就能看懂答辯時(shí)演示性強(qiáng)生態(tài)完善從標(biāo)注格式轉(zhuǎn)換到部署都有大量現(xiàn)成代碼可參考。相比之下CSRNet 這類(lèi)密度回歸模型在 50 人以上的密集場(chǎng)景確實(shí)更強(qiáng)但標(biāo)注密度圖是逐點(diǎn)標(biāo)注人頭的工作量比畫(huà)框還大而且視覺(jué)反饋弱演示效果不容易討喜。選型還要考慮運(yùn)行環(huán)境。大部分畢設(shè)項(xiàng)目會(huì)在自己的筆記本上演示因此我建議優(yōu)先考慮 YOLOv5s 或 YOLOv8n 這類(lèi)小體量版本而不是 YOLOv8x 這種重模型。同樣的訓(xùn)練設(shè)備和推理設(shè)備n/s 級(jí)別模型能保證在 CPU 上也有可接受的推理幀率這對(duì)演示現(xiàn)場(chǎng)沒(méi)有 GPU 的情況非常關(guān)鍵。如果你的機(jī)器配置好再考慮大模型。2.3 完整系統(tǒng)的最小功能骨架一個(gè)能交付的人流量檢測(cè)系統(tǒng)至少要包含五個(gè)模塊目標(biāo)檢測(cè)模塊負(fù)責(zé)從畫(huà)面中檢出人跟蹤模塊負(fù)責(zé)分配并維護(hù) ID計(jì)數(shù)邏輯模塊負(fù)責(zé)定義穿越規(guī)則并累計(jì)結(jié)果可視化模塊負(fù)責(zé)實(shí)時(shí)畫(huà)框、畫(huà)計(jì)數(shù)線和顯示人數(shù)曲線數(shù)據(jù)記錄模塊負(fù)責(zé)把計(jì)數(shù)結(jié)果落到 CSV 或數(shù)據(jù)庫(kù)里供后續(xù)分析或答辯展示。標(biāo)題里源碼項(xiàng)目說(shuō)明正常情況下就應(yīng)包含這些模塊對(duì)應(yīng)的代碼文件和說(shuō)明文檔。項(xiàng)目結(jié)構(gòu)我一般會(huì)這樣組織people_flow/ ├── checkpoints/ # 模型權(quán)重存放目錄 ├── configs/ # 配置文件路徑、閾值、計(jì)數(shù)線位置等 ├── data/ │ ├── dataset/ # 標(biāo)注數(shù)據(jù)與圖片 │ ├── processed/ # 轉(zhuǎn)換后的 YOLO 格式標(biāo)注 │ └── videos/ # 測(cè)試視頻 ├── scripts/ │ ├── convert_labels.py # 標(biāo)注格式轉(zhuǎn)換腳本 │ └── train.py # 訓(xùn)練入口 ├── src/ │ ├── detector.py # 檢測(cè)封裝 │ ├── tracker.py # 跟蹤封裝 │ ├── counter.py # 計(jì)數(shù)邏輯 │ ├── visualizer.py # 可視化 │ └── main.py # 主入口 └── requirements.txt為什么要拆這么細(xì)因?yàn)楫呍O(shè)答辯會(huì)問(wèn)你每個(gè)文件是干什么的如果全部邏輯堆在一個(gè) main.py 里提問(wèn)時(shí)很難講清楚模塊劃分。按功能拆出獨(dú)立模塊既能體現(xiàn)工程能力也方便單獨(dú)測(cè)試某一個(gè)環(huán)節(jié)比如單獨(dú)跑 detector 看檢測(cè)效果單獨(dú)跑 counter 看計(jì)數(shù)邏輯。3. 訓(xùn)練數(shù)據(jù)準(zhǔn)備從 VOC 到 YOLO 格式的轉(zhuǎn)換腳本與四個(gè)邊界坑3.1 優(yōu)先用公開(kāi)數(shù)據(jù)集做遷移學(xué)習(xí)自定義數(shù)據(jù)只做微調(diào)流量檢測(cè)的數(shù)據(jù)集準(zhǔn)備有一個(gè)原則不要從零標(biāo)注幾千張圖。公開(kāi)數(shù)據(jù)集里COCO 的 person 類(lèi)別、CrowdHuman、MOT Challenge 系列都可以直接用來(lái)做預(yù)訓(xùn)練或微調(diào)。其中 CrowdHuman 對(duì)人群遮擋場(chǎng)景標(biāo)注比較充分MOT16/17 帶跟蹤標(biāo)注適合順帶做跟蹤評(píng)估。畢設(shè)項(xiàng)目一般不需要自己從零采集大量數(shù)據(jù)常見(jiàn)做法是先用公開(kāi)數(shù)據(jù)訓(xùn)練一個(gè)可用的檢測(cè)器再采集一小部分目標(biāo)場(chǎng)景數(shù)據(jù)比如自己教室門(mén)口、實(shí)驗(yàn)室走廊的視頻做微調(diào)讓模型適應(yīng)當(dāng)前攝像頭的視角和光照。這樣能明顯減少標(biāo)注工作量訓(xùn)練數(shù)據(jù)量在幾百?gòu)埣?jí)別就夠了。需要提醒的是即便用了遷移學(xué)習(xí)標(biāo)注格式依然是最容易被絆倒的環(huán)節(jié)。假如你找到的公開(kāi)數(shù)據(jù)集是 COCO 格式JSON而訓(xùn)練代碼用的是 YOLO 格式TXT中間必須寫(xiě)轉(zhuǎn)換腳本。很多學(xué)生在網(wǎng)上找的代碼只支持一種格式數(shù)據(jù)喂進(jìn)去報(bào)錯(cuò)半天才發(fā)現(xiàn)是格式問(wèn)題這個(gè)我深有體會(huì)。因此第一步先確認(rèn)你的訓(xùn)練代碼吃的是什么格式再寫(xiě)轉(zhuǎn)換腳本而不是先轉(zhuǎn)完再回頭看代碼。3.2 標(biāo)注格式轉(zhuǎn)換腳本XML/TXT 與 JSON 的互相轉(zhuǎn)換這里給出一個(gè)從 COCO JSON 轉(zhuǎn) YOLO TXT 的腳本。它是整套數(shù)據(jù)流程中最常被復(fù)用的工具后續(xù)你換數(shù)據(jù)集、換場(chǎng)景大概率還要改它來(lái)適配。import json import os # COCO 數(shù)據(jù)集的 person 類(lèi)別 id 通常是 1需按實(shí)際數(shù)據(jù)集確認(rèn) PERSON_CATEGORY_ID 1 def convert_coco_json_to_yolo_txt(coco_json_path, output_dir): with open(coco_json_path, r, encodingutf-8) as f: coco json.load(f) # 建立 image_id - 圖片文件名的映射 images {img[id]: img for img in coco[images]} os.makedirs(output_dir, exist_okTrue) for ann in coco[annotations]: if ann[category_id] ! PERSON_CATEGORY_ID: continue image_info images[ann[image_id]] img_w, img_h image_info[width], image_info[height] # COCO 的 bbox 是 [x, y, width, height]YOLO 需要的是歸一化中心點(diǎn)和寬高 x, y, w, h ann[bbox] cx (x w / 2) / img_w cy (y h / 2) / img_h w_norm w / img_w h_norm h / img_h # 一個(gè)圖片對(duì)應(yīng)一個(gè) txt 文件多個(gè)標(biāo)注就追加多行 txt_path os.path.join( output_dir, os.path.splitext(image_info[file_name])[0] .txt ) with open(txt_path, a, encodingutf-8) as out: out.write(f0 {cx:.6f} {cy:.6f} {w_norm:.6f} {h_norm:.6f}\n) print(f轉(zhuǎn)換完成標(biāo)注文件輸出到: {output_dir})這段腳本的邏輯不復(fù)雜對(duì)每一條 category 為 person 的標(biāo)注取出 bbox將左上角坐標(biāo)格式轉(zhuǎn)成歸一化的中心點(diǎn)加寬高格式寫(xiě)入同名 TXT。注意它是按行追加寫(xiě)入的所以同一個(gè)圖片有多個(gè)人時(shí)會(huì)產(chǎn)生多行標(biāo)注。如果你拿到的數(shù)據(jù)本身就是 VOC 的 XML 格式也是同樣的邏輯只是解析標(biāo)簽從 JSON 字段換成 XML 的 object/bndbox 節(jié)點(diǎn)。3.3 四個(gè)邊界坑坐標(biāo)裁剪、空標(biāo)注、類(lèi)別編號(hào)、數(shù)據(jù)集劃分第一個(gè)坑是 bbox 出界。攝像頭畫(huà)面邊緣的人往往只露出一半身體標(biāo)注框的坐標(biāo)可能落在圖像邊界之外。YOLO 訓(xùn)練時(shí)若不對(duì)坐標(biāo)做 clip裁剪會(huì)算出負(fù)的寬高或超出 1 的歸一化值輕則警告重則訓(xùn)練 loss 變成 NaN。因此轉(zhuǎn)換時(shí)務(wù)必加一步x max(0, x)、x w min(img_w, x w)之類(lèi)的邊界處理。第二個(gè)坑是空標(biāo)注文件。如果某張圖只標(biāo)了 person 類(lèi)而實(shí)際畫(huà)面有大量人沒(méi)被標(biāo)注轉(zhuǎn)換后會(huì)生成空 TXT。把這些空文件直接丟給訓(xùn)練腳本有些框架會(huì)報(bào)no labels錯(cuò)。我的建議是轉(zhuǎn)換腳本里統(tǒng)計(jì)每個(gè) TXT 的行數(shù)自動(dòng)列出空文件讓你人工確認(rèn)是漏標(biāo)還是確實(shí)無(wú)人。第三個(gè)坑是類(lèi)別編號(hào)一致性。YOLO 訓(xùn)練配置里 class 編號(hào)從 0 開(kāi)始很多人從網(wǎng)上下載的標(biāo)注里 person 編號(hào)是 0但換一個(gè)數(shù)據(jù)集可能變成 1 或 15訓(xùn)練時(shí)如果不改配置文件模型會(huì)把人學(xué)成背景精度一塌糊涂。第四個(gè)坑是數(shù)據(jù)集劃分。訓(xùn)練、驗(yàn)證、測(cè)試三個(gè)集合之間不能有圖片重疊而且同一個(gè)人在不同幀里的畫(huà)面不要被分到訓(xùn)練和驗(yàn)證兩個(gè)集合里否則驗(yàn)證指標(biāo)虛高。這一點(diǎn)在按幀抽幀做人流數(shù)據(jù)時(shí)特別容易犯——視頻連續(xù)幀高度相似隨機(jī)劃分會(huì)導(dǎo)致驗(yàn)證集泄露。提示轉(zhuǎn)換腳本里建議把類(lèi)別編號(hào)做成可配置參數(shù)不要寫(xiě)死。你在換數(shù)據(jù)集時(shí)只需改一個(gè)變量的值而不是去代碼里到處找數(shù)字。3.4 數(shù)據(jù)增強(qiáng)怎么做才不偏離流量場(chǎng)景數(shù)據(jù)增強(qiáng)方面人流場(chǎng)景我最常用的組合是HSV 色域擾動(dòng)、隨機(jī)平移與縮放、馬賽克增強(qiáng)。HSV 擾動(dòng)可以提高不同光照下的泛化能力因?yàn)槟阌?xùn)練的可能是白天采集的視頻而實(shí)際部署可能要面對(duì)傍晚光線馬賽克增強(qiáng)則把四張圖拼成一張?zhí)嵘四P驮谌巳赫趽鯃?chǎng)景下的魯棒性。需要謹(jǐn)慎的是大角度旋轉(zhuǎn)和上下翻轉(zhuǎn)。上下翻轉(zhuǎn)在人流場(chǎng)景是禁忌因?yàn)楸O(jiān)控?cái)z像頭一般是固定的不可能出現(xiàn)倒立的人大角度旋轉(zhuǎn)也會(huì)產(chǎn)生大量現(xiàn)實(shí)中不存在的姿態(tài)。合理的增強(qiáng)策略應(yīng)該是模擬攝像頭可能遇到的真實(shí)變化而不是無(wú)腦堆疊所有增強(qiáng)手段。4. 源碼拆解與二次開(kāi)發(fā)模型定義、推理主循環(huán)和評(píng)估指標(biāo)4.1 模型結(jié)構(gòu)選擇與參數(shù)設(shè)定從 YOLOv5s 到 YOLOv8n 的取舍到了源碼層面首先面對(duì)的是模型怎么定義。如果你拿到的項(xiàng)目說(shuō)明基于 YOLOv5那它大概率用 yaml 文件描述網(wǎng)絡(luò)結(jié)構(gòu)如果是 YOLOv8結(jié)構(gòu)定義則內(nèi)聚在 Python 類(lèi)中。兩種寫(xiě)法本質(zhì)一樣都包含 Backbone、Neck、Head 三部分。畢設(shè)項(xiàng)目里我建議優(yōu)先讀 YOLOv8n 的源碼因?yàn)樗慕Y(jié)構(gòu)更清晰、接口更簡(jiǎn)潔而且文檔和示例更豐富。# yolo_v8_n.yaml 的核心結(jié)構(gòu)說(shuō)明用實(shí)際文件由 ultralytics 包自動(dòng)加載 backbone: - [-1, 1, Conv, [64, 3, 2]] # 下采樣輸出 1/2 分辨率特征圖 - [-1, 1, Conv, [128, 3, 2]] # 下采樣輸出 1/4 分辨率特征圖 - [-1, 3, C2f, [128, True]] # C2f 模塊特征提取 - [-1, 1, Conv, [256, 3, 2]] # 下采樣輸出 1/8 分辨率特征圖 - [-1, 6, C2f, [256, True]] # ... 后續(xù)為 1/16、1/32 分辨率層級(jí) head: - [-1, 1, Detect, [nc]] # nc 是類(lèi)別數(shù)這里固定為 1person這段描述里每一行的[-1, 1, Conv, [64, 3, 2]]含義是從上一層輸入-1 表示上一層、1 個(gè)該模塊、Conv 卷積模塊、輸出通道 64、卷積核 3x3、步長(zhǎng) 2。C2f 是 YOLOv8 的核心殘差模塊兼顧速度和精度。修改結(jié)構(gòu)時(shí)你只需要關(guān)注兩個(gè)參數(shù)depth_multiple 和 width_multiple分別控制網(wǎng)絡(luò)深度和寬度調(diào)小它們就能得到更輕量的模型調(diào)大則更準(zhǔn)但更慢。4.2 推理主循環(huán)幀讀取、檢測(cè)、跟蹤、計(jì)數(shù)如何串起來(lái)在線推理主循環(huán)是系統(tǒng)運(yùn)行的核心。下面給出一個(gè)簡(jiǎn)化但完整的推理循環(huán)骨架展示了檢測(cè)與跟蹤是如何銜接的import cv2 import torch from ultralytics import YOLO model YOLO(checkpoints/yolov8n_person.pt) tracker cv2.legacy.TrackerKCF_create() # 用 KCF 做簡(jiǎn)單兜底跟蹤 count_line_y 240 # 計(jì)數(shù)線位置需按實(shí)際畫(huà)面標(biāo)定 up_count 0 down_count 0 tracked_positions {} cap cv2.VideoCapture(data/videos/test.mp4) while cap.isOpened(): ret, frame cap.read() if not ret: break # 檢測(cè)conf 閾值控制誤檢與漏檢的平衡 results model(frame, conf0.4, iou0.5, classes[0]) boxes results[0].boxes.xyxy.cpu().numpy() for box in boxes: x1, y1, x2, y2 box[:4].astype(int) cx, cy (x1 x2) // 2, (y1 y2) // 2 # 框底部中心點(diǎn)更穩(wěn)定 # 判斷是否穿越計(jì)數(shù)線 if cy count_line_y: down_count 1 else: up_count 1 # 可視化 frame cv2.line(frame, (0, count_line_y), (frame.shape[1], count_line_y), (0, 255, 0), 2) cv2.imshow(people_flow, frame) if cv2.waitKey(1) 0xFF ord(q): break cap.release() cv2.destroyAllWindows()這段代碼的邏輯是每讀一幀送進(jìn) YOLO 檢測(cè)人框取框的底邊中心點(diǎn)作為人的落腳點(diǎn)當(dāng)落腳點(diǎn)跨過(guò)計(jì)數(shù)線時(shí)上/下行計(jì)數(shù)加一。為什么用底邊中心而不是框中心因?yàn)榭蛑行臅?huì)隨人體姿態(tài)變化而上下浮動(dòng)在彎腰、坐下等動(dòng)作下容易誤判跨越方向而底邊中心貼近地面幾何上更穩(wěn)定。注意上面這個(gè)循環(huán)為了展示骨架省略了跟蹤模塊。實(shí)際項(xiàng)目中直接用逐幀檢測(cè)做計(jì)數(shù)會(huì)產(chǎn)生嚴(yán)重重復(fù)計(jì)數(shù)——同一個(gè)停留的人會(huì)被反復(fù)累加。至少需要加一層簡(jiǎn)單的目標(biāo) ID 去重判斷當(dāng)前檢測(cè)框是否已關(guān)聯(lián)到某個(gè)已有 ID如果關(guān)聯(lián)到則只更新位置、不重復(fù)計(jì)數(shù)。4.3 項(xiàng)目說(shuō)明通常包含哪些內(nèi)容評(píng)估指標(biāo)與可視化輸出項(xiàng)目說(shuō)明在畢設(shè)項(xiàng)目里通常不只是代碼注釋它要包含數(shù)據(jù)集介紹、模型結(jié)構(gòu)說(shuō)明、訓(xùn)練參數(shù)表、評(píng)估指標(biāo)和運(yùn)行步驟。評(píng)估指標(biāo)方面人流檢測(cè)系統(tǒng)建議至少報(bào)告三個(gè)檢測(cè)精度的 mAP0.5計(jì)數(shù)精度的 MAE平均絕對(duì)誤差和 RMSE均方根誤差。MAE 的計(jì)算很簡(jiǎn)單逐幀把預(yù)測(cè)人數(shù)與人工標(biāo)注人數(shù)做差的絕對(duì)值再取平均。在答辯時(shí)給出 mAP 只能證明你檢測(cè)得準(zhǔn)給出 MAE 才能證明你數(shù)得準(zhǔn)后者才是人流量檢測(cè)系統(tǒng)區(qū)別于普通目標(biāo)檢測(cè)項(xiàng)目的核心。def compute_mae(pred_counts, gt_counts): assert len(pred_counts) len(gt_counts) errors [abs(p - g) for p, g in zip(pred_counts, gt_counts)] return sum(errors) / len(errors) pred [3, 4, 5, 6] # 模型每幀計(jì)數(shù) gt [3, 5, 4, 6] # 人工標(biāo)注 print(compute_mae(pred, gt)) # 輸出 0.75這個(gè)函數(shù)看起來(lái)簡(jiǎn)單但在畢設(shè)項(xiàng)目中幾乎是必不可少的。因?yàn)槿肆髁繖z測(cè)的項(xiàng)目說(shuō)明文檔里需要你給出本系統(tǒng)計(jì)數(shù)精度達(dá)到 MAE0.75這樣的結(jié)論性數(shù)據(jù)而不是只寫(xiě)模型效果不錯(cuò)。我建議你在項(xiàng)目說(shuō)明中附上逐幀的預(yù)測(cè)值和真實(shí)值對(duì)比表格再畫(huà)出變化曲線圖這種量化的呈現(xiàn)方式在答辯時(shí)非常加分。5. 部署避坑白天黑夜漂移卡頓和這些常見(jiàn)問(wèn)題5.1 模型在白天效果好、傍晚效果差的玄學(xué)多時(shí)段數(shù)據(jù)微調(diào)我做流量檢測(cè)遇到的第一個(gè)大坑就是白天能用傍晚翻車(chē)。原因不復(fù)雜訓(xùn)練數(shù)據(jù)基本來(lái)自白天光線充足的場(chǎng)景模型學(xué)到的是亮環(huán)境下的行人外觀。到了傍晚暗光加路燈的混合光源下人臉和衣服的顏色細(xì)節(jié)都變了檢測(cè)置信度直線下降漏檢率飆升。解決思路不是加多少數(shù)據(jù)增強(qiáng)就能搞定的最有效的做法是采集目標(biāo)場(chǎng)景下多個(gè)時(shí)段早、中、晚各 10~20 分鐘視頻抽幀后做半自動(dòng)標(biāo)注再加入訓(xùn)練集微調(diào)。注意微調(diào)時(shí)不要只用傍晚數(shù)據(jù)要混合原有數(shù)據(jù)否則模型會(huì)對(duì)傍晚過(guò)擬合、白天精度反而下降。5.2 視頻里人一多就掉幀推理速度優(yōu)化三件套人流檢測(cè)最容易在演示時(shí)暴露的問(wèn)題是卡頓——人一多幀率降到 15 以下畫(huà)面肉眼可見(jiàn)地不流暢。性能瓶頸通常在檢測(cè)模型而不在跟蹤和計(jì)數(shù)邏輯。優(yōu)化手段按性價(jià)比排序第一換小模型YOLOv8x 換成 YOLOv8n精度可能只降 2~3 個(gè)點(diǎn)速度翻倍第二輸入分辨率從 1280 降到 640這是最直接的加速方式第三打開(kāi) TensorRT 或 ONNX 導(dǎo)出做推理加速用 GPU 的話能再快不少。在這三招之后才考慮改跟蹤策略、跳幀檢測(cè)這類(lèi)工程技巧因?yàn)樘鴰瑱z測(cè)會(huì)犧牲計(jì)數(shù)實(shí)時(shí)性很容易被答辯老師看穿。# 用半精度推理加速GPU 可用時(shí)能明顯提升幀率 model YOLO(checkpoints/yolov8n_person.pt) results model(frame, conf0.4, imgsz640, halfTrue)這段代碼的關(guān)鍵參數(shù)有兩個(gè)imgsz640直接降低輸入分辨率halfTrue啟用 FP16 半精度推理。如果目標(biāo)機(jī)器是 GPU這兩個(gè)參數(shù)疊加通常能把 1080p 視頻的推理幀率拉到可用水平。CPU 機(jī)器上則不建議開(kāi) half部分 CPU 對(duì) FP16 支持不好反而更慢。5.3 重復(fù)計(jì)數(shù)沒(méi)有跟蹤模塊時(shí)的經(jīng)典翻車(chē)現(xiàn)場(chǎng)重復(fù)計(jì)數(shù)是人流量檢測(cè)里最經(jīng)典也最丟分的 bug?,F(xiàn)象是一個(gè)人站在鏡頭前不動(dòng)計(jì)數(shù)數(shù)字卻不斷上漲。原因前面提過(guò)——逐幀檢測(cè)沒(méi)有去重。解決思路是引入跟蹤給每個(gè)檢測(cè)框分配穩(wěn)定的 ID。實(shí)現(xiàn)方案很多OpenCV 自帶 sort 或 BoT-SORT 都是可以選的前者輕量、適合畢設(shè)后者精度更穩(wěn)、但依賴(lài)更多。# 一個(gè)極簡(jiǎn)的基于位置去重方案當(dāng)前框的中心點(diǎn) # 若與上一幀某個(gè)已跟蹤目標(biāo)距離小于閾值則視為同一人 import math tracked_targets {} # id - (cx, cy) NEXT_ID 0 DIST_THRESH 50 # 單位像素需按實(shí)際畫(huà)面尺寸調(diào)整 for box in boxes: x1, y1, x2, y2 box[:4].astype(int) cx, cy (x1 x2) // 2, (y1 y2) // 2 matched_id None for tid, (tx, ty) in tracked_targets.items(): if math.hypot(cx - tx, cy - ty) DIST_THRESH: matched_id tid break if matched_id is None: tracked_targets[NEXT_ID] (cx, cy) NEXT_ID 1 else: tracked_targets[matched_id] (cx, cy)這個(gè)方案只能算最簡(jiǎn)單的距離匹配真實(shí)項(xiàng)目中它扛不住目標(biāo)交錯(cuò)和短暫遮擋。但作為畢設(shè)項(xiàng)目的起步它能立刻解決重復(fù)計(jì)數(shù)問(wèn)題而且代碼量極小、容易講清楚。DIST_THRESH 這個(gè)參數(shù)需要按畫(huà)面里人的移動(dòng)速度調(diào)如果人走得快、兩幀之間位移大閾值小了就會(huì)把同一人判成不同人如果畫(huà)面高糊、噪聲多閾值大了又容易把兩個(gè)人合并成一個(gè) ID。5.4 計(jì)數(shù)線位置和方向設(shè)定幾何標(biāo)定的細(xì)節(jié)計(jì)數(shù)線的位置看起來(lái)是隨手畫(huà)一條線實(shí)際調(diào)參時(shí)很講究。如果線畫(huà)得太靠近畫(huà)面上邊緣人在遠(yuǎn)處尺寸很小、檢測(cè)框不穩(wěn)定容易來(lái)回橫跳導(dǎo)致重復(fù)計(jì)數(shù)如果畫(huà)得太靠下人已經(jīng)走到鏡頭正下方框的底邊中點(diǎn)受遮擋影響大。常見(jiàn)做法是選擇畫(huà)面中行人走動(dòng)的必經(jīng)斷面且在檢測(cè)框高度約為整幅畫(huà)面高度 1/4 的位置。線方向的選擇也影響左右計(jì)數(shù)映射要明確好畫(huà)面上方向下走對(duì)應(yīng)的是進(jìn)入還是離開(kāi)一旦映射反了統(tǒng)計(jì)出的進(jìn)出人數(shù)就是反的。這個(gè)問(wèn)題在評(píng)估時(shí)很容易被忽略等看數(shù)據(jù)才發(fā)現(xiàn)進(jìn)的人數(shù)比出的還少。5.5 模型權(quán)重文件的坑訓(xùn)練了一個(gè)類(lèi)別的模型部署時(shí)類(lèi)別過(guò)濾最后一條常見(jiàn)的坑是類(lèi)別編號(hào)在部署時(shí)不匹配。訓(xùn)練時(shí)候如果你改成了nc1只有 person 一類(lèi)那么模型的輸出類(lèi)別編號(hào)就是 0推理時(shí)直接全部框都可以接受。但如果你的權(quán)重是從 YOLOv8 官方 COCO 預(yù)訓(xùn)練權(quán)重繼續(xù)微調(diào)的它的類(lèi)別編號(hào) 0 仍然是 person那就沒(méi)問(wèn)題。最怕的是從別人項(xiàng)目里拿的權(quán)重文件類(lèi)別列表可能被改過(guò)部署時(shí)沒(méi)有檢查 classes 參數(shù)結(jié)果模型把貓、狗、車(chē)都當(dāng)成目標(biāo)框出來(lái)計(jì)數(shù)直接崩。解決方案只有一個(gè)拿到任何權(quán)重文件第一件事是用一張包含行人和非行人的測(cè)試圖跑一次推理查看輸出的類(lèi)別 ID 和置信度確認(rèn)類(lèi)別含義再投入使用。6. 讓準(zhǔn)確率再進(jìn)一步透視校正、區(qū)域計(jì)數(shù)與卡爾曼濾波的配合6.1 為什么要做透視校正等大的人在畫(huà)面遠(yuǎn)處更小流量檢測(cè)系統(tǒng)到了能用階段你還是會(huì)發(fā)現(xiàn)一個(gè)視覺(jué)上很明顯、數(shù)據(jù)上也很明顯的問(wèn)題同一段真實(shí)人流在畫(huà)面遠(yuǎn)處檢測(cè)到的框小、漏檢多近處的框大、誤檢也多。這是因?yàn)閿z像頭是透視成像遠(yuǎn)處的人所占像素面積本來(lái)就小小目標(biāo)檢測(cè)能力就成了瓶頸。一個(gè)務(wù)實(shí)的做法是引入透視校正在畫(huà)面中選幾個(gè)參考點(diǎn)標(biāo)出實(shí)際距離的比例關(guān)系將遠(yuǎn)處目標(biāo)按比例放大后再送進(jìn)檢測(cè)器。這樣可以讓整幅畫(huà)面中人的尺寸大致與真實(shí)物理尺寸成比例提升遠(yuǎn)處小目標(biāo)的召回率。import numpy as np # 在畫(huà)面中選擇 4 個(gè)點(diǎn)對(duì)應(yīng)于地面一個(gè)矩形的 4 個(gè)角 # src 是畫(huà)面中的像素坐標(biāo)dst 是物理平面上的坐標(biāo)映射 src np.array([[200, 300], [600, 300], [900, 450], [100, 450]], dtypenp.float32) dst np.array([[0, 0], [400, 0], [400, 300], [0, 300]], dtypenp.float32) matrix cv2.getPerspectiveTransform(src, dst) warped cv2.warpPerspective(frame, matrix, (400, 300))透視校正的本質(zhì)是把斜視角的監(jiān)控畫(huà)面攤平成俯視視角。應(yīng)用這個(gè)變換后再對(duì) warped 圖像做檢測(cè)遠(yuǎn)處小目標(biāo)的像素尺寸會(huì)被放大檢測(cè)置信度會(huì)明顯提升。這個(gè)方案有兩個(gè)限制一是只能校正地面平面人站立時(shí)的高度信息無(wú)法恢復(fù)二是變換后畫(huà)面四周會(huì)產(chǎn)生黑邊或拉伸失真需要裁剪。因此實(shí)際部署中我一般只對(duì)計(jì)數(shù)線附近區(qū)域做透視校正而不是整幅畫(huà)面。6.2 區(qū)域計(jì)數(shù)進(jìn)入/離開(kāi)判定比線計(jì)數(shù)更穩(wěn)用一條虛擬計(jì)數(shù)線做穿越判定雖然直觀但在多人并肩行走、來(lái)回走動(dòng)頻繁的場(chǎng)景里誤差很大。更穩(wěn)的做法是用區(qū)域計(jì)數(shù)劃定兩個(gè)相鄰的區(qū)域比如 A 區(qū)和 B 區(qū)當(dāng)某個(gè)目標(biāo)的軌跡從 A 區(qū)中心進(jìn)入 B 區(qū)中心時(shí)才判定為一次穿越。區(qū)域計(jì)數(shù)天然能過(guò)濾掉只在計(jì)數(shù)線附近來(lái)回試探的情況因?yàn)槟阈枰氖峭暾目鐓^(qū)軌跡而不是某一幀的跨越。實(shí)現(xiàn)上區(qū)域計(jì)數(shù)的核心是一個(gè)狀態(tài)機(jī)對(duì)每個(gè)跟蹤 ID記錄它上一次所在的區(qū)域當(dāng)檢測(cè)到區(qū)域從 A 變?yōu)?B就認(rèn)為發(fā)生了一次 A→B 的穿越。這樣對(duì)同一個(gè)人往返走也能正確記錄為兩次穿越。相比單線計(jì)數(shù)區(qū)域計(jì)數(shù)的優(yōu)點(diǎn)是對(duì)檢測(cè)框抖動(dòng)不那么敏感缺點(diǎn)是邏輯稍復(fù)雜、需要維護(hù)每個(gè) ID 的區(qū)域狀態(tài)。6.3 卡爾曼濾波讓軌跡平滑計(jì)數(shù)更準(zhǔn)確最后一個(gè)提升準(zhǔn)確率的常用技巧是卡爾曼濾波。它解決的是檢測(cè)框抖動(dòng)問(wèn)題YOLO 在連續(xù)幀中對(duì)同一個(gè)人的框會(huì)有幾個(gè)像素的無(wú)規(guī)律抖動(dòng)這種抖動(dòng)疊加到計(jì)數(shù)線上就會(huì)造成重復(fù)跨越。卡爾曼濾波的基本思想是用上一幀的預(yù)測(cè)位置和當(dāng)前幀的觀測(cè)位置做一個(gè)加權(quán)融合讓軌跡更平滑。OpenCV 中可以用cv2.KalmanFilter實(shí)現(xiàn)。kf cv2.KalmanFilter(4, 2) # 狀態(tài) [x, y, vx, vy]觀測(cè) [x, y] kf.measurementMatrix np.array([[1, 0, 0, 0], [0, 1, 0, 0]], dtypenp.float32) kf.transitionMatrix np.array([[1, 0, 1, 0], [0, 1, 0, 1], [0, 0, 1, 0], [0, 0, 0, 1]], dtypenp.float32) def filter_update(cx, cy): prediction kf.predict() measured np.array([[np.float32(cx)], [np.float32(cy)]]) filtered kf.correct(measured) return filtered[0, 0], filtered[1, 0]卡爾曼濾波在這里不是必須的如果用了區(qū)域計(jì)數(shù)通常不需要它。但如果你做的是單線計(jì)數(shù)且畫(huà)面有輕微抖動(dòng)加上它會(huì)讓計(jì)數(shù)曲線平滑很多。一個(gè)多年調(diào)參的教訓(xùn)是卡爾曼濾波的噪聲參數(shù)measurementNoiseCov、processNoiseCov對(duì)結(jié)果影響極大噪聲協(xié)方差設(shè)得太大濾波結(jié)果基本等于觀測(cè)值失去濾波意義設(shè)得太小軌跡會(huì)變得非常鈍、跟不上快速移動(dòng)的人。我通常從measurementNoiseCov1e-1、processNoiseCov1e-3開(kāi)始調(diào)再根據(jù)畫(huà)面中人的移動(dòng)速度做微調(diào)。有時(shí)候現(xiàn)場(chǎng)演示時(shí)畫(huà)面上有樹(shù)葉搖晃、燈光閃爍這些干擾濾波器反而可以幫你把誤檢帶來(lái)的跳變吸收掉。這個(gè)技巧在你做項(xiàng)目效果對(duì)比時(shí)很有用——同一段視頻加不加濾波計(jì)數(shù)曲線會(huì)明顯差一個(gè)級(jí)別拿來(lái)作為優(yōu)化前后對(duì)比展示在項(xiàng)目說(shuō)明里說(shuō)服力很強(qiáng)。希望這些踩過(guò)的坑和調(diào)過(guò)的參數(shù)能幫你在畢設(shè)或項(xiàng)目里少走一段彎路。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
9 7超碰在线免费观看| 中文字幕无码不卡啪啪| 大香蕉一线视频| 青青草久草| 青青草久久| 欧洲无码一区二区| 99热啪啪| 欧美熟女操屄| 亚洲欧美在线观看2021| 国产偷拍网站| 天天操人人操骚逼网站| 欧美爆操91| 亚洲 一区二区 自拍| 亚洲久9| 欧美亚洲厕所精品偷拍91| 亚殴在线| 97久久精品亚洲| 少妇人妻太紧太深av| 啊啊啊想要| 91亚洲黄色网| 影音先锋日本一区二区| 超碰超碰超碰超碰的大鸡吧操黑丝袜| 麻豆 亚洲 97| 玖玖蜜臀资源网| 91久久精品蜜臀| 欧美视频在线视频免费va| 人妻一二三区| 男人的天堂午夜av| 伊人久久在线视频观看| 亚洲乱码国产乱码精网站| 翔田千里Av在线| 97干97色| 黑人精品XXX一区一二区| 丁香婷婷五月| 国产免费黄色一级大片| 亚洲网站一区二区在线| 色综合一区二区三区| 国产精品日日摸天天碰| 东北熟女91| 亚洲久草AV色图| 久久精品99久久久久久| 亚洲,欧美,综合网| 清纯唯美第一页| 无码九九| 日韩av在线精品观看| 国产一区在线播放| 九九九久久久| 人妻无一区二区三区| 秋霞一级鲁丝片A片| av激情亚洲五月天| 日韩av电影成人在线| 性夜影院爽黄A爽免费动漫| 色婷婷丁香五月| 久久激情综合| 国色天香av| 日韩精品一区二区三区四虎影视| 淮穴色AV| 欧美亚洲影视| 欧美高清色| 日韩欧美加勒比| 精品国模无码| 日韩中文字幕人妻视频| 日韩一级片| 色色色欧美| 丁香五月偷拍| wwe 天天干.com| 五月婷婷hd| 校园春色家庭伦理欧美激情| 夜夜爽夜夜操| 亚洲AV操| 日本裸体久久色噜噜| 97精品久久久久久久| 久久夜精品一区二区三区| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 欧美天天搞| 午夜国产综合视频在线观看| 国产精品999zyz| 立川理惠无码一区二区| 青娱乐av在线| 桑老女人九区| 亚欧免费| 亚洲揄拍网| 碰人碰碰人人开房人肉| 九九九精品| 亚洲国产精品9999在线观看| 狠狠干狠狠色| 九九热精彩视频| 亚洲男人综合网| 青青青在线高清视频在线一二三四区| 91人妻做a观看视频| 丁香六月综合激情| 亚洲成人色情五月天丁香花| 91殴美| 无色无码| 高清不卡 中文 人妻| 欧美日韩97| 凹凸视频特色日本特黄| 操老熟女AV| AV乱伦专区| 夜夜操二区| 欧美精品欧美精品系列| 亚洲免费在线探花| 精品一区二区麻豆| 伊人热综合| 九九久久综合| 日日骚av| 91精品伊人久久久大香线蕉91| 久久国产精品91| 乱色老一区二区三区的观看方式| 三级AV入口| 啊a一区在线| av影院十区| 美女写真| 欧美丝袜亚洲| 免费毛片在线播放| 天天综合网合集91| Blackedraw视频一区二区| 伊人久久久日韩一区| 放黄片放3级黄片没穿衣服| 97在线视频观看| 天天综合网亚洲综合网| 探花激情视频| 日1区2区3区2020| 十八禁成人网站在线观看| 亚洲国产成人精品久久久国产成人一区二区 | 色哟哟av| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 极品色| 99色在线| 亚洲无 码A片在线观看麻豆| 久久免费中文字幕在线观看| 日本操逼无码| 爱干爱射网啊啊啊| 亚洲日韩视频二区| 天天干人妻| 日夜尻逼网| 男人的天堂2019| 亚洲另类小说卡通动漫| 爱妃国产亚洲视频中文字幕| 欧洲无码一区二区| 天天干天天操天天操夜夜操天天操 | 欧美日韩青操| 亚洲精品a人片在线观看视| 亚洲图片欧美另类综合免费视频大大香| 亚洲 自拍偷拍 欧美| 在线亚洲丝袜视频网站| 欧洲乱码一区二区| 一本一道波多野毛片中文在线| 秋霞鲁丝午夜无码一区二区三| 国产精品999zyz| 欧美淫乱视频| 亚洲一区中文字幕久久,果冻传媒一区二区天美传媒 | 激情文学小说一区二区| 色色色热| 性videos欧美熟妇hdx| 人人妻人人色| 色5月婷婷| 久久久96| 亚州九九九精品视频| 精品国产精品一区二区| 久久久久久网址| 狠狠躁天天躁日日躁97| 99黄页网站| 女人午夜视频777| 大色综合| 欧美日韩欧美| 亚洲 欧美 另类 日韩 人妻一区| 色噜噜狠狠色综无码久久合欧美| 亚洲h片在线免费观看| 啊啊啊骚| 天天射夜夜| 欧美 亚洲 制服 精品| 亚洲免费成人在线高清无码视频 | 91天天综合日韩欧美| 天天弄欧美| 大地资源在线观看中文第二页| 色吧 综合| 男人的天堂99| 人妻丰满熟妇av无码区蜜桃| 二对二中文字幕。| 九九热免费国产视频婷婷伊人五月 | 青青草在线视频播放器| 伦理弟一页| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 1禁看欧美黄片免费看| 激情一区二区| 国模91| 欧美另类色图片| 亚洲中文日韩欧美大香蕉视频| 中文字幕第2页| 亚欧操逼片在线观看 | 69精品人人人人| 日韩三级一区| 天天色播| 欧美成人都市人妻| 麻豆60秒| 精品区9| 亚洲AV永久无码一区仙野| 一区二区三区在线美女| 明星性猛交ⅹxxx乱大交| 骚日日av| 91精品婷婷国产综合久久| 欧美日韩国产电影| 另类图片五月天| 欧美成人综合| 99国产精品自在自在| 日夜干射色啊| ...日韩成人一区二区三区字幕| 中文字幕视频2区| 中文字幕老熟妇黄色视频| 色色五月天婷婷| 九九色综合| 狠狠操夜夜操蜜桃视频三区| 超碰99在线| 久久ww| 蜜桃无码AV一区二区| 国产精品一区二区三区,亚洲综合| 黄片视频,下载| 亚洲AV成人无码一二三久久| 日韩字幕一区| 91香蕉视频在线观看免费| 亚洲国产一区二区日韩专区| AA特级绝黄| 国产92麻豆天美精品色欲5| 樱花蜜乳av| 久久伊人亚洲AV无码网站| 台湾一区国产高清在线| 牛牛操视频逼| 国产亚洲日韩在线三区黑人| 亚洲AV无码久久久国产精品| 嗯啊免费视频| 区自美91| 久久啊啊| 色欲三区| 亚洲综合色男人网| 亚洲视频一二区| 色拍偷亚洲| 天天综合网视频91| 91久久精品国产| 91人人爽人人爽人人人,gav福利视频导航,日韩欧美亚洲国产字幕四区 | 欧洲亚洲综合| 9 1果冻精品视频| 久久久久久久久久9| 国内偷拍精品一区二区| 另类 日韩 熟女| 国模精品娜娜一二三区| 伊人影院在线理论播放| 亚洲精品不卡一二三区| 屁股久久久久久| 人人干黄色| 国产精品久久成人免费| 色超碰综合| 天堂亚洲精品| 成人免费在线网站| a人欧美综合天堂麻豆| 亚洲图片欧美另类综合免费视频大大香| 欧美日本不卡在线| 天天综合网在线观看| 五月丁香黄色网| 8050无码八戒| 一二三四日本视频高清| 99re在线视频| 日韩在线一区高清在线| 欧美黄页在线| 久久精品国产亚洲粉嫩| 另类小色呦| 欧美激情一区二区| 久久国产AⅤ| 亚洲综合九九| 天堂综合| 九九精品99| 欧美v日韩欧亚洲电影天堂色诱,国产传媒| 天天射天天色成人| 亚洲日韩美国人妻| 色盈盈影院| 97在线视频观看| 久草视频分类在线| 国产成人精品一区| 99久久久无码精品国产人| 人妻熟女一区在| 激情小说亚洲视频| 久久精品亚洲成a人天堂| 丝袜美女诱惑 91 视频| 一级性爱啪啪视频| 国产中文福利| 翔田千里无码中出中文字幕| 国产性刺激| 日韩欧美女求操每天更新| 日韩午夜精品一区二区三区电影| 色哟哟1区2区| 无码精品一区二区三区潘金莲| 人人摸人人干| 蜜乳成人AV| 97国伦国色| 国产午夜精品理论片a大结局| 五月天伊人| 后入合集| 婷婷五月天丁香花| 亚洲天堂一区| 国产精品九9| 91人妻在线视频| 91视频国品一二三区| 久久久偷拍| 很很干很很操| 男女性无套 免费九一| 美女露胸露屁股| 五月黑AⅤ| 精品视频一区二区| 国产精品久久久久久夜夜夜| 亚洲av综合色区图片亚洲| 男人网站婷婷| 激情久久av一区av二区av| 婷婷探花久久精品一区| 很很干很很操| 亚洲图片激情综合另类| 亚洲综合图片在线| 国产精品老师| 亚洲成人激情小说视频| 女一区二区| 国产女同视频在线播放| 久久女女| 日韩精品第3页| 国产女人成人精品视频| 亚洲AV成人精品网站在AV| 女人一区| 激情综合久久| 亚洲高清无毛一区二区| Aa东京男人的天堂| 加勒比大香蕉视频在线| 日本精品网站在线中文| 中文字幕无码不卡啪啪| 日韩亚洲美州欧洲综三区一品在线| 伊人天天久久动态图| 天天爽夜夜欢视| 国产剧情AV不卡在线观看| 天天夜夜rb| 亚州成人A√| 少妇高潮对白在线观看| 国内毛片热久久思思热| 一二三四区操操Av| 极品粉嫩一区二区| 久操热线| 国产懂色精品国产av| 在线97视频| 97热视频在线观看| 成人日韩中文字幕| 丁香六月天| 无码操逼网| 女人综合网| 热久久无毒不卡| 青青草原狼av| 久久人妻视频网| 国产欧美精选自拍一区| 欧美v日韩v亚洲v最新在线| 中文字幕精品专区搜索结果91| 久久大香蕉手机高清视频| 日本激情免费大片| 亚洲日韩精品久久久久一区壹牛 | 少妇久久久久久久久| 久久婷婷欧美| 99青青草国产视频| 伊人青青一区成人视频在线观看区| 黄片免费久久久久久久| 日韩性爱免费观看视频| 蜜臀在线视频| 97精| 亚洲加勒比久久日本道| 大香蕉性欧美| 少妇精品| 国产一二三福利视频网| 天天欧美97| 久久久久久久久久久久九| 精品久久久av| 96AV久久久| 少妇高潮99p| 五月色丁香| 熟女突然公开看18禁影片| 亚洲国产一区二区入口| 天天搞在线综合网| 亚洲欧美在线观看2021| 蜜臀操逼黄色视频操的好爽| 91粉嫩萝控精品福利网站_精品影音先锋国| 蜜乳AV.COM| 日本一区二区三区午夜观看| 免费福利视频中文字幕| 操人人| 亚洲天堂五月天国产| 日韩性爱小视频| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 99re在线观看| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 黄页视频网站野外| 围产精品一区二区三区视频播放| 人妻81p| 亚洲色图日韩精品| 综合欧美日本三级| 一块操欧美| 丁香五月成人| 欧美色一二三| 亚洲AV不卡在线观看| 国产精品久久久久久夜夜夜夜| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 亚洲熟伦熟妇AV无码春色| 国产成人亚洲精品无码最新在线| 亚洲成人黄色在线观看| 午夜视频久久久久一区| 老熟妇一区二区三区…| 欧美亚洲日本激情在线| 婷婷色综合| 花野真衣| 国产欧美成人精品| 天天天干977| 91色综合| 8050午夜少妇无码| 成 人 影视 一区 二区 三区 四区| 色老汉色| 亚洲综合色在线| 中出欧美| 丁香六月激情| 天天综合精品| 欧美青青视频| 欧美97色| 免费精品中文字幕| 可以免费观看的av| 精品人妻一区二区三区夜夜| 天堂综合网| 中文字幕五月婷婷免费| 日本高清电影欧美色图| 超碰在线97国产| www欧美91| 金莲网址| 日本不卡卡一区| 超碰欧美97资源| 久久AV无码AV| 色婷婷丁香| 999综合色| 国产精品久久久久久久久久久久久久吹| 熟女乱3伦999| 色色综合网站| 亚欧美色图| 综合av社区| 亚洲五月丁香花狠狠干一区二区三区 | 开心五月深爱五月| 色69大色97香蕉| 一级人妻性爱视频| ss久久| 91丝袜在线播放| 亚洲欧美日韩精品久| 97免费视频网| 日韩免费高清大片在线| 亚 欧 美 综合| 青青草色AV| 色久桃花影院在线观看| 北条麻妃99精品青青久久| 久9综合在线| 黄片免费久久久久久久| 操亚州| 精品美女久久久久| 夜夜操老骚逼视频网站| 日韩猛交| 青青草日韩无码| 欧美亚洲系列| 婷婷久久五月天| 97资源站国产精品| 激情四射五月天| 久久久91福利姬| 粉嫩不卡一区二区性爱| 欧美性五月| 特级丰满少妇一级AAAA爱毛片| 91五月天| 日韩欧美字幕亚洲一区二区 | 先锋影音av先锋一区| 男人天堂.AB| 99无码狠狠久久| 欧美 亚洲 制服 精品| 日本一二区不卡| 国产原创自拍| 欧美亚洲| 国产人妻一区二区三区欧美毛片| 国产99精品一区二区三区免费| 久久精品老司| 白嫩国模丰满一二三区| 欧美大的香蕉有线电视视频| 亚洲,欧美,春色,另类| 久久久96| 骚逼一区二区| 婷婷丁香五月天综合东京热| 另类图片五月天| 五月天婷婷基地| 91伊人| 亚洲人在线| 黄色电影在线播放综合网站| 智利AV在线网| 亚州国产精品乱| 国产欧美在线观看免费观看| 欧美亚洲厕所精品偷拍91| 免费啪啪一级视频| 91啪啪| 黄色不卡视频| 五月丁香激情综合| 国产在线综合福利网站| 亚洲综合情色| 色婷婷亚洲婷婷| 亚洲欧美日韩制服另类| 天欧美在线| 亚洲91极品| 性爱免费视频成人| 97超碰香蕉| 超碰1997| 欧美熟女少妇| www成人啪啪18秘 免费| 精品国产Av无码久久久伦古装| 九九九九日本 | 久久视网78| 成人午夜小视频手机在线看| 天天综合91| 操淫穴亚洲五月丁香| 992这里有精品| 亚洲天天做日日做天天谢日日| 亚洲性综合11| 白丝jkav| 大香蕉碰碰| 欧美强奸乱能| 国产精品久久妻无码网站| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 淮穴色AV| 日韩99神马视频播放| 91制服丝袜| 色嘟嘟人妻天堂网| 中文字幕日本久久| 成人小说视频在线精品欧美| 日逼97| 91日产欧美| 久久色人体| 国产一级黄色片在线观看| 日本在线观看网址| 人妻丝袜一区二区三区在线| 国产后入清纯| 一区二区 电影 亚洲| 亚洲五月丁香花狠狠干一区二区三区| 亚洲国产精品无码AV在线| 国内偷拍精品一区二区| 精品久9| 五月天人妻综合| 涩涩久久精品| 欧美少妇高潮久久91| 亚洲一二三四区机械| 精品一区二区三区蜜桃臀赵总| 5278欧美一区二区三区| 91在线视频观看国产| 日韩免费三级黄片电影| 肉动漫无遮挡h在线观看| 欧美精品激情| 91熟女网| 热99re69精品8在线播放| 婷婷人妻激情| 十八禁黄色| 91痴汉| 少妇特黄一区二区三区| 天天草AV| 骚妻少妇精品性色无码四色A V| 蜜乳av一区二区三区四区不卡| 你草精品在线视频| 夜草欧美| 伦理日韩国产久久| 快播久久人人aV| 成人九九| 91亚洲网| 欧美一二三级精品在线| 国产精品亚洲天堂网址| 日韩视频啪啪| 天天插天天操| 9九九九九视频在线观看| 天堂蜜桃无码视频一区二区| 熟妇高潮一区二区免费视频| 青青操少妇| 久久99精品九九久久久婷婷| av线电影| 国产精品久久久久9999小说| 综合欧美亚洲| 九月激情婷婷| 久操热| 久久9精品视频| 在线视频一区二区传媒| 在线情色电影 91大 | 熟妇视频一区二区三区在线| 日本一区二区中文字幕久久| 成人无码在线超碰网| 福利视频一区二区微拍| 亚洲欧美大香蕉| 精品99999久久久久久| 91在线丝袜视频| 色99久草| 夜夜草天天| 在线v中文字幕一区二区三区| 91chinese在线| 九九热超碰97亚洲最新香蕉 | 中国操逼无码| 强奸a片网| 91久热这里只有精品| 青青草成人视频在线观看二区 | 欧美日韩 强奸乱伦| 五月天激情小说| 美骚妇av高清在线| 狠狠爱夜夜| 粉嫩av久久一区二区三区| 女人高潮大叫一级毛片| 欧美狠狠弄| 五月天日日操夜夜操| 99re免费视频精品全部| 五月婷婷丁香六月| 学生妹天天看| 欧美一二三级精品在线| 久久99热这里只频精品6学生| 精产国品一区二三产品| 欧美日韩亚洲天堂| 日操粉逼逼| 一区久久久二区| 农村少妇久久久久久久| 日韩色| 91欧美长吊| 老熟女91视频| 欧美性生活综合| 综合视频91| 欧美欧美啪啪视频| 天天舔天天 | 日韩传媒在线| 亚洲欧美人妻| 大香樵伊人网| 蜜桃久久一区| 女人双腿搬开让男人桶| 欧洲精品一二三在线| 在线毛片片免费观看| 亚洲日本成人动漫| 欧美综合色图网| 免费操逼视频下载| 操死我了啊啊啊| 欧美成人四级在线播放| 午夜啊啊啊| 亚洲**2021在线观看| 欧美美女啪啪视频| 97干97色| 偷拍 精品 另类 四区| 欧美美女视频| 中文字幕在线播放2中文字幕在线观看2| 夜夜嗨免费视频| 无码人妻丰满热妇又大又粗| 天天插天天操天天摸天天射天天看| 操www| 欧美 亚洲 另类 综合| 国产成人无码a| 1204av韩国| 久久亚洲欧美中文字幕国语| 国产十八禁视频| 3d成人精品一区二区| 东京热99999| 国产福利影视| 色图四区| 男人天堂站| 日本高清免费一本视频在线观看| 欧美性暴力猛交XXXX| 亚洲密乳AV| 无码人妻精品一区二区三区九九| 精品久久久久av影院| 亚洲素人综合| 人人天天欧洲| 在线观看不卡一区二区三区| 欧美性爱网97| 亚洲精品日日夜夜52| 无码粉嫩白虎一线天b区| 一区二区三区精品黑丝白丝酒店对鸡 | 激情六月天| 国产精品人妻免费精品| 歐美性天天| 国产懂色精品国产av| 97资源亚洲| 午夜成人福利影视| 日操粉逼逼| 久久久91| 老鸭窝黄色视频网站| 久久人人爽人人爽人人片Ⅴ| 亚洲情欲| 欧美国产操逼| 亚洲 欧美 中文 日韩超碰| 天天视频网站黄| 亚州精品人妻一二三区| 九九热九九热| 日本Xx性爱| 久久少妇| 久9爱经典视频| 素人播放一区| 伊人五月天激情| 九九久久久| 裸体1区| 盗摄 精品 另类 一区| 性爱视频啪啪啪啪| 亚洲久9| 久久6热精品99视频| 激激五月| 怡红院一区二区熟女人妻| 欧美色999| 大香蕉92| 老熟妇综合| 嗯嗯嗯好爽| 在线无码操| 秋霞免费无码视频日韩A片| 99精品无码| 亚州中文字幕超碰97| 一区二区 韩日AV| 福利伊人玖玖国产| 亚洲av国产av综合av卡| 中文字幕精品码亚洲| 91丝袜美腿片| 成人色女网| 天天综合网国产| 中文久久爆乳| 日本三级网页| 欧美十八禁视频| 色欧洲| 色网亚洲人| 日产123区精品免费观看| 久久25| 黄色网址久久精品欧美喷水| 国产高清无码一区二区三区四区皇冠| 国产精品探花色| 国产精品九九九| 亚洲欧美伦综合| 97人人夜| 88在线一区二区三区| 亚洲宗合网| 91精品婷婷国产综合久久竹菊| 精品人妻1237| 天天添天天干电影| 亚州色图第三区| 五月天婷婷久久| 91九九| 五月婷婷无码| 久久久久久久人妻| 色婷婷影院| 婷婷五月天社区| 日韩一级片| 操操啪| 激情久久久| 天天干天天干天天干| 色婷视频| 日本免费中文一区二区三区四区| 综合色图区| 丁香五月色| 色婷婷电影网| 97九色人妻| 天天摸夜夜摸| 10000部十八禁看电影| 青娱乐蜜桃臀AV色婷| 亚洲欧美一区二区不卡视频播放| 先锋音影AV| 国产和美国毛片| 久久r精品| JuliaAnn丝袜熟女系列| 日本一级特级毛片视频| 69av一区二区三区| 亚洲乱伦图片视频| 一块操欧美| 91婷婷伊人狠人| 免费人人搞97| 99爱爱| 精品国产乱码久久久A| 超碰免费人妻在线| 国产无码精品高清| 亚洲性爱无码乱伦av| 色香蕉影院| caopeng97| 福利天堂| 9久久久久久| yw尤物av无码点击进入麻豆| 日韩亚洲中文有码视频| 国产无套粉嫩白浆在| 99青草| 精品久久艹| 四虎精品一区二区| 日韩亚洲中文有码视频| 日本综合久久| 欧美色997| 色欲久久99精品久久| 亚洲国产熟妇综合色专区| 日本精品中文字幕视频| 色伊人91| 久久综合18p| 亚洲综合草草| 蜜乳中文字幕a在线| 激情啪啪拍91| 九九英色视频| 啊啊啊啊啊啊在线| 2019天天干天天操| 亚洲美乱| 久久激情视频| 熟妇xxxxx性春色| 日本福利社| 91激情综合| 亚洲中文字幕在现观看| 免费精品福利在线观看| 亚洲视频,小说| 精品999999| 亚洲欧洲国产综合av| 物尤视频一区二区| 伊人骚琪琪亚洲天堂网站| 无码操逼网| 射欧美综合| 久这精品中文在线观看视频| 永久免费发布性爱网| 色91综合网| 日本加勒比无码专区| 无码乱人伦中文视频| 性欧美天天| 亚洲图片欧美| 六月激情网| 欧美丰满少妇交换91欧美精品| 黄色av网站在线播放| 日本人妻一区二区| 在线欧美亚洲| 任你爽视频| 大香交| 婷婷激情五月天小说网| 欧美激情久| 日韩天美| 亚洲熟女诱惑| 色综合色| 日本二三四区| 五月天激情四射| 97操综合| 综合欧美日本三级| 国内外毛片在线观看| 亚洲精品国产熟女久久久久久| 欧美熟妇乱码在线一区| 翔田千里AV无码秘 三区| 色综合色| 久久中文字幕在线观看| 思思热在线视频精品| 超碰超碰超碰超碰的大鸡吧操黑丝袜 | 欧美亚洲中文字幕| 婷婷五月天色色| 97在线/亚洲| 在线播放成人网站| 狠狠躁伊人中文字幕| 五月天婷婷基地| 极品色综合| 大香蕉碰碰| 福利视频香蕉免费一区二区在线| 伊人大香蕉在线| 欧美日韩大香蕉| 亚洲中文电影| 久久精品国产亚洲AV片多多| 亚欧操逼片在线观看 | 欧美操人视频| 亚洲自拍一区夜夜操| 欧美一级久久久久久久大片动画| 亚洲爱爱视频一区二区| 日韩亚洲Av人人夜夜澡人人爽| 大干人妻| 日韩一级二级| 成人午夜高潮av猛片| 欧美精品 - 91爱爱| 可能人人看人人摸| 又黄又硬又粗又长国产视频| 性爱久久| 亚洲无码太久| 国产乱不卡| 日韩人妻精品久久久久| J?P?NESEHD熟女熟妇伦| 怡红院成人av| 啊v视频在线观看| 四虎免费在线观看| 亚洲免费日韩在线一区二区| 国产成人精品无码久久| 国产丁香精品露脸视频| 蜜色网色哟哟| 激情无码日韩| 性色综合网| 久久国产对白激情浪潮| 日韩一级欧美一级在线观看| 天美传媒婬乱在| 九一精品牛牛一区二区| 狠狠爱综合| 国产福利视频精品视频| 男人天堂最新手机版在线青青草| 亚州情色j区| 岛国激情视频软件| 亚洲欧洲综合| 美女AV一区二区| 99综合网| 97人妻免费中文字幕| 亚洲图片另类| 久久一本大香蕉 | 国产一线二线三线av| 神马午夜久久久| 中文字幕日本久久| 大学生口爆吞精| 懂色Av一区二区三区| 日韩美女高潮喷水视频| 欧美天天插| 国产剧情AV不卡在线观看| 韩国一级做a久久久久| 欧美日日人人天天| 欧美在线啊啊啊 | 日韩一级二级三级免费看完整版| 超碰伊人在线| 屌妞视频久久久久久久 | 综合色91| 婷婷激情五月综合| 久久夜嗨| 无码人妻一区二区一牛影视| 亚洲欧美国产其他二区| www.91人妻.com| 色五月激情网| 久操网视频| 干我久操| 欧美色综合| 老司机香蕉久久久久| 国产精品九九| 午夜福利在线视频1000| 亚洲精品久| 日日狠狠久久偷偷色综合免费| 播播亚洲小说亚洲| 色天使亚洲综合在线观看| 成年无码动漫av片无尽在线| 国产在线激情| 99精品无码| 欧美女同在线| 麻豆a'v电影| 欧美日韩人妻少妇 一区二区三区| 亚洲91网。| 色呦呦、国产精品| 麻豆视频test| 九九热九九热| 欧美熟妇视频| 91女在线观看| 18一区二区三区| 欧美AB在线观看| 久久女人视频| 亚洲AV乱码专区国产噜噜亚洲 | 国产情色第一第二页在线观看| 2019AV天堂| 大香蕉在线免| 日本最新免费韩国1区2区视频播放| 97超碰热线| 久久久久久91香蕉国产| 亚州色图欧美| 综合网97| 欧美三四五区| 九热久| 超碰免费97| 国产亚洲精品一区二区三区| 美国黄片aaa| 手机在线中文字幕国产| 久久久免费的精品| 日本精品成人无码| 四虎AV在线观看| 久久精品免费| 久久神马影院| 欧洲亚洲综合| 老熟女天天操| 欧美91在线| 国内精品久久人妻性色av| 人妻 丝袜美腿 中文字幕| 玖玖爱免费观看视频| 99热伊人| 日韩二级| 97爱碰| juliaann丝袜| 日本一区二区三区免费观看| 自拍偷拍 高清无码| 欧美一区二区亚洲天堂| 天天综合网~69| 99re99视频在线免费观看| 夜夜做夜夜爽精品视频| 日少妇视频| 岛国激情视频在线观看| 亚洲免费人妻在| 亚洲欧洲小说图片视频| 欧美成人色| 91精品国产91熟女| 国产无吗在线播放| 免费综合亚洲中文| 亚洲一二三精品久久网| 亚洲一区制服诱惑| 91精品91久久久久77777俄罗斯老妇姓x| 蜜乳AV免费观看| 岛国片在线观看视频亚洲| 亚洲最大的黄色电影网站。| 屁股久久久久久久久| 校园春色亚洲| 午夜精品探花| 中美日韩毛片| 天天影视综合色| 国模私拍一区二区三区神乳| 激情视频网址| 热久日综合| 好爽视频在线观看视频| 欧美 传媒 麻豆 日韩 偷拍| 操逼无毒无码免费视频| 中英熟女操女| 综合激情五月丁香| 熟女高潮合集-永久久久-成人AV| 国产综合久久久麻桃个| 人人操人人搞人人草| 亚洲国产精品乱码在线观看| 呦女网站| 99亚洲精品| 粉嫩国产精品久久粉嫩| 久久久久久裸体| 成人自拍三级在线观看| 五月丁香影院| 亚洲欧美天| 久久精品中文字幕观看| 亚洲情色1区| 亚洲小说视频| 日本三级R| 青青三级视频| 免费αV在线视频| 国产欧美精品日韩区二区麻豆天美| 欧美在线干| 天天激情干| 久久超碰、| 国产精品精品系列在线观看| 五月综合视频| 亚洲资源吧| 免费中文在线| 狠狠躁日日躁夜夜躁A| 国产精品免费1区2区视频| 亚洲色天堂日韩中| 国产白丝AV| 五月色综合| 国产精品久久久亚洲第一牛牛_在线观看| 国产亚洲精品玖玖玖在线观看| 欧美aⅴ99久久黑人专区| 东京热视频网| 欧美A√综合网| 久久久久久久久久久免费精品| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 天天情欲宗合网| 免费观看的黄色的网站| 久久草视频污视频| 激情网色| 蜜臀th| 欧美性爱视频免费一区一A| 丝袜狂射91| 久久精品国产亚洲AV片多多| 亚洲一区制服诱惑| 深夜激情无码| 欧美激情 亚洲色图| 婷婷五月天成人| 麻豆精品.欧美精品.日韩精品.| 成人AV在线电影| 狠狠爱夜夜| 啊好大好舒服| 日熟女| 大乔未久88一区| 日韩乱伦视频| 另类小说欧美激情校园春色| 色九九九九久| 人人爱人人乐人人操| 亚洲激情 欧美色图| 日韩av不卡在线看| 天天情欲宗合网| 婷婷五月天基地| 亚洲在线网站| 91精品婷婷国产综合久久竹菊| 日韩人妻播放| 蜜汁欧美| 久久久亚洲精品电影免费看| 人人操我人人干| 色香欲天天天天综合色| 深爱五月婷婷| 蜜乳成人AV| 天天影视之亚洲综合网| 五月丁香| 第四色奇米影视777| 99热线麻豆| 91丝袜在线观看视频在线观看| 一本精品日本在线视频精品| 伊人网一本| 久久久99久9| 中文字幕一区二区韩| 天天综合网在线91| 99re95| 丁香六月啪| 91精品无码久久久久久久 | a天堂视频| 超碰97护士| 亚洲熟女偷拍在线观看| 婷婷五月花| 日本免费中文字幕在线| 97这里有精品| 91五月天| 久久五月份| 日韩丰满熟妇| 国产主播福利| 久热这里| 天天澡天天爽日日av| 天天欧美欧美亚洲网| 乱伦AVxx| 日本国产亚洲一区在线观看| 亚洲一区中文字幕| 东京热av男人的天堂| 天堂蜜桃无码视频一区二区| 免费作爱一级视频| yaouchengrenav| 亚洲黄色电影| 天综合网欧美| 超碰99热中文字幕| 国产在线76页| 国产一区二区三区精品观看啪| 九九视频黄色片| 国产乱子伦一区二区三区在线观看| 黄色十八禁| 国产天天看| 人人爽天天爽| 大香蕉伊人久久| 黄色欧美性爱视频| 人妻一二三区| 国产偷拍网站| 久草在线| 99re这里只有| 亚洲影视第一页| 丝袜美腿射精91| 97超碰逼| www.操| 国色天香av| 92福利社视频| 99热最新| 日本三级R| 国产97视频免费观看| 亚欧视频在线| 成全在线观看免费观看| 波多野结衣之双飞调教在线播放| 欧美+日产+中文| 天天操妹子| 97超级久久| 激情综合 婷婷五月 红杏| 51一区二区三区| 色天使AV天堂| 亚洲脚交| 91麻豆天美国产欧美高潮| 天天热精品| 亚洲AV不卡在线观看| 五月天亚洲网| 2020中文字幕在线| 人人妻人人色一区二区三区| 夜夜嗨老熟女AV一区二区三区| 蜜桃精品一区二区三区久在线| 久久草视频污视频| 天天激色| 九九亚洲色在线观看| asc国产精品| 久热精品在线| 殴美性天天| 国产精品视屏| 国产精品视频91久久| 国产精品成人久久一区二区三区 | 欧美日韩亚洲五月天婷婷| 综合97亚洲|