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

ARTICLE DETAIL

資訊詳情

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

血細(xì)胞檢測(cè)數(shù)據(jù)集實(shí)戰(zhàn):從YOLOv8訓(xùn)練到密集小目標(biāo)切片推理

血細(xì)胞檢測(cè)數(shù)據(jù)集實(shí)戰(zhàn):從YOLOv8訓(xùn)練到密集小目標(biāo)切片推理 簡(jiǎn)介這是一份專(zhuān)為計(jì)算機(jī)視覺(jué)與醫(yī)學(xué)圖像分析場(chǎng)景準(zhǔn)備的血細(xì)胞檢測(cè)數(shù)據(jù)集面向算法工程師、研究人員及醫(yī)學(xué)生用于訓(xùn)練目標(biāo)檢測(cè)與分類(lèi)模型。壓縮包共1753個(gè)文件其中876個(gè)txt標(biāo)簽文件與874張jpg圖像一一對(duì)應(yīng)另含yaml配置、license許可說(shuō)明及md文檔整體大小約11.81MB結(jié)構(gòu)清晰便于快速上手。數(shù)據(jù)集已按train、valid、test劃分可直接用于構(gòu)建卷積神經(jīng)網(wǎng)絡(luò)在TensorFlow或PyTorch等框架下訓(xùn)練識(shí)別紅細(xì)胞、白細(xì)胞、血小板等血細(xì)胞類(lèi)型并完成模型調(diào)參與泛化評(píng)估。已有150人學(xué)習(xí)下載適合在血細(xì)胞自動(dòng)識(shí)別、異常檢測(cè)及醫(yī)療影像輔助診斷等課題中作為基準(zhǔn)數(shù)據(jù)借助配套的README等說(shuō)明文檔還可降低理解數(shù)據(jù)格式與標(biāo)注規(guī)則的門(mén)檻對(duì)貧血、白血病等疾病的早期篩查研究具有參考價(jià)值。整體來(lái)看這份數(shù)據(jù)集的目錄組織與配套文檔也為入門(mén)者提供了低成本實(shí)踐醫(yī)學(xué)圖像識(shí)別項(xiàng)目的良好起點(diǎn)。1. 血細(xì)胞檢測(cè)數(shù)據(jù)集.zip醫(yī)學(xué)影像目標(biāo)檢測(cè)里最典型的密集小目標(biāo)考題你從同事手里接過(guò)來(lái)一個(gè)血細(xì)胞檢測(cè)數(shù)據(jù)集.zip解壓后不是現(xiàn)成的紅色圖片文件夾而是幾十張血涂片顯微圖像和同樣多的XML標(biāo)注。這正是醫(yī)學(xué)影像自動(dòng)化檢驗(yàn)最常見(jiàn)的起點(diǎn)用目標(biāo)檢測(cè)模型把白細(xì)胞、紅細(xì)胞、血小板的位置和類(lèi)別找出來(lái)替代人工鏡檢計(jì)數(shù)。它解決的是血常規(guī)檢驗(yàn)中的識(shí)別與定位問(wèn)題適合做醫(yī)學(xué)影像算法、檢驗(yàn)科自動(dòng)化和醫(yī)療AI落地的人。反直覺(jué)的地方在于這類(lèi)數(shù)據(jù)集里模型結(jié)構(gòu)反而不是瓶頸密集的小目標(biāo)和極度失衡的類(lèi)別分布才是真正決定你能不能跑通的因素。2. 解壓血細(xì)胞檢測(cè)數(shù)據(jù)集之前先搞清楚格式、規(guī)模和標(biāo)注可信度拿到血細(xì)胞檢測(cè)數(shù)據(jù)集.zip之后我建議你先別急著 unzip 然后直接訓(xùn)練。這個(gè)任務(wù)和你平時(shí)接觸的車(chē)輛檢測(cè)、行人檢測(cè)差別很大血涂片里單個(gè)目標(biāo)很小類(lèi)別分布極度不均衡標(biāo)注是否可靠直接決定后面所有工作的價(jià)值。我見(jiàn)過(guò)不少團(tuán)隊(duì)在數(shù)據(jù)集上跑通了 YOLOv8卻在換一個(gè)染色批次后全線翻車(chē)問(wèn)題大多出在數(shù)據(jù)準(zhǔn)備階段。這一章先講清楚怎么判斷一個(gè)血細(xì)胞數(shù)據(jù)集能不能用、用什么姿勢(shì)解壓、解壓之后應(yīng)該先檢查什么。2.1 血細(xì)胞檢測(cè)為什么不能拿通用數(shù)據(jù)集直接練血細(xì)胞檢測(cè)的典型輸入是血涂片在顯微鏡高倍鏡下的圖像一個(gè)視野里幾十到幾百個(gè)細(xì)胞紅細(xì)胞呈雙凹圓盤(pán)狀白細(xì)胞帶核血小板尺寸更小。目標(biāo)檢測(cè)模型本身不挑領(lǐng)域COCO 預(yù)訓(xùn)練權(quán)重也能遷移過(guò)來(lái)但關(guān)鍵差異在目標(biāo)和分布。COCO 里最常見(jiàn)的 person 占幾百像素而血涂片單個(gè)紅細(xì)胞在 4000×3000 原圖里可能只有 30×30 像素血小板更小常常只有十幾個(gè)像素。直接套用通用目標(biāo)檢測(cè)流程第一輪訓(xùn)練出來(lái)的模型幾乎只會(huì)把大片紅色區(qū)域當(dāng)成紅細(xì)胞對(duì)白細(xì)胞則完全無(wú)視。另一個(gè)問(wèn)題是類(lèi)別比例。血液中白細(xì)胞、紅細(xì)胞、血小板的數(shù)量相差幾個(gè)數(shù)量級(jí)反映到標(biāo)注文件里可能就是 RBC 有幾千個(gè)框WBC 只有二十幾個(gè)框。如果你不干預(yù)采樣模型在損失函數(shù)里就會(huì)被紅細(xì)胞統(tǒng)治WBC 的召回率趨近于 0。這也是為什么拿到血細(xì)胞檢測(cè)數(shù)據(jù)集.zip后最先做的是統(tǒng)計(jì)類(lèi)別分布而不是馬上訓(xùn)練。我把這類(lèi)檢查叫“數(shù)據(jù)體檢”30 秒就能發(fā)現(xiàn)后面可能翻車(chē)的地方。在 BDD100K 這類(lèi)駕駛數(shù)據(jù)集上成立的訓(xùn)練流程到了血細(xì)胞檢測(cè)上往往要改的不只是路徑還有整套采樣策略。2.2 一個(gè)血細(xì)胞數(shù)據(jù)集 zip 解壓后通常有什么常見(jiàn)做法是解壓到獨(dú)立目錄我一般先把壓縮包重命名成英文小寫(xiě)路徑避免后面 Shell 和 Python 在處理中文路徑時(shí)出問(wèn)題。如果你接觸過(guò) COCO2017 數(shù)據(jù)集的結(jié)構(gòu)會(huì)對(duì) images 與 annotations 的分離模式很熟悉但血細(xì)胞檢測(cè)數(shù)據(jù)集更常見(jiàn)的是 VOC 風(fēng)格少量是 YOLO 風(fēng)格或 COCO 風(fēng)格。解壓命令很簡(jiǎn)單# Linux 下解壓血細(xì)胞檢測(cè)數(shù)據(jù)集.zip-d 指定解壓目錄 unzip blood_cell_dataset.zip -d blood_cell_dataset # 如果解壓出來(lái)的文件名是亂碼說(shuō)明壓縮包在 Windows 下用 GBK 編碼打包 unzip -O CP936 blood_cell_dataset.zip -d blood_cell_dataset解壓之后目錄結(jié)構(gòu)通常是這幾種之一。VOC 風(fēng)格有 JPEGImages、Annotations、ImageSetsCOCO 風(fēng)格只有 images 和一個(gè) annotations.jsonYOLO 風(fēng)格已經(jīng)處理好 images 和 labels。血細(xì)胞數(shù)據(jù)集中用 LabelImg 標(biāo)注的 VOC 風(fēng)格最常見(jiàn)因?yàn)闃?biāo)注工具默認(rèn)就是導(dǎo)出 XML。三種格式各有特點(diǎn)直接影響后續(xù)轉(zhuǎn)換腳本怎么寫(xiě)。格式文件組織常見(jiàn)配套文件你需要注意的地方VOC XML一張圖對(duì)應(yīng)一個(gè) XMLImageSets/Main/train.txt、val.txt檢查是否有缺失 XML 或多余 XMLCOCO JSON一個(gè) JSON 索引所有圖instances_train.json、instances_val.json確認(rèn)類(lèi)別 id 是否連續(xù)YOLO txt一張圖對(duì)應(yīng)一個(gè) txtimages/ 與 labels/ 同名檢查是否存在沒(méi)標(biāo)注的圖如果你看到 ImageSets/Main 里有 train.txt 和 val.txt說(shuō)明作者已經(jīng)幫你劃分過(guò)數(shù)據(jù)集如果沒(méi)有就得自己做劃分。VOC 的每個(gè) XML 獨(dú)立描述一張圖腳本處理起來(lái)方便但也更容易出現(xiàn)標(biāo)注缺失和格式不一致所以解壓后我第一件事是檢查是不是每個(gè) XML 都有對(duì)應(yīng)的圖片。這一步不需要訓(xùn)練寫(xiě)個(gè)小循環(huán)掃一遍就行。2.3 跑一個(gè)體檢腳本30 秒知道數(shù)據(jù)集能不能用這里給一個(gè)我常用的體檢腳本只讀 XML不做任何修改。你要改的只有路徑變量# inspect_blood_cell.py # 不要急著訓(xùn)練先統(tǒng)計(jì)類(lèi)別數(shù)、框數(shù)和圖像尺寸 import glob import xml.etree.ElementTree as ET from collections import Counter annotations glob.glob(annotations/*.xml) class_counter Counter() box_count 0 image_sizes [] for ann in annotations: tree ET.parse(ann) root tree.getroot() # 部分?jǐn)?shù)據(jù)集的 XML 里沒(méi)有 size 節(jié)點(diǎn)這里做一層保護(hù) if root.find(size) is not None: w int(root.findtext(size/width)) h int(root.findtext(size/height)) image_sizes.append((w, h)) for obj in root.iter(object): name obj.findtext(name) if name is not None: class_counter[name] 1 box_count 1 print(樣本圖像數(shù):, len(annotations)) print(標(biāo)注框總數(shù):, box_count) print(類(lèi)別分布:, dict(class_counter)) if image_sizes: widths [s[0] for s in image_sizes] heights [s[1] for s in image_sizes] print(圖像寬度范圍:, min(widths), -, max(widths)) print(圖像高度范圍:, min(heights), -, max(heights))這段腳本輸出三件事樣本圖像數(shù)、標(biāo)注框總數(shù)、各類(lèi)別數(shù)量。如果某類(lèi)別占比低于 1%后面訓(xùn)練時(shí)必須做采樣干預(yù)。如果圖像寬度從 640 到 4000 都覆蓋說(shuō)明數(shù)據(jù)集來(lái)自不同采集設(shè)備訓(xùn)練時(shí)要考慮尺度變化。如果你發(fā)現(xiàn)統(tǒng)計(jì)出的類(lèi)別名稱(chēng)不統(tǒng)一比如 WBC、Leukocyte、白細(xì)胞混著出現(xiàn)先合并再訓(xùn)練否則模型會(huì)把這些都當(dāng)成不同類(lèi)別導(dǎo)致同一類(lèi)細(xì)胞被拆成多類(lèi)訓(xùn)練和驗(yàn)證都會(huì)亂掉。2.4 類(lèi)別命名不統(tǒng)一先合并再訓(xùn)練我遇到過(guò)標(biāo)注里 WBC 寫(xiě)成 WbC、RBC 寫(xiě)成 Red Blood Cell 的情況直接在轉(zhuǎn)換腳本里加一層歸一化即可。常見(jiàn)做法是維護(hù)一個(gè)別名表把每個(gè) object 的 name 先映射到標(biāo)準(zhǔn)類(lèi)別再映射到類(lèi)別 ID。這樣即使數(shù)據(jù)集內(nèi)部標(biāo)注不一致訓(xùn)練時(shí)也不會(huì)憑空多出幾個(gè)類(lèi)別。和 CCPD 車(chē)牌數(shù)據(jù)集、HRSC2016 遙感艦船數(shù)據(jù)集一樣領(lǐng)域數(shù)據(jù)集的標(biāo)注字典經(jīng)常帶著作者的個(gè)人習(xí)慣不能拿到手就當(dāng)標(biāo)準(zhǔn)。類(lèi)別名合并這件事越早做越好晚了等你訓(xùn)練完看結(jié)果再回頭改標(biāo)簽等于重來(lái)一遍。3. 把血細(xì)胞數(shù)據(jù)集轉(zhuǎn)成 YOLO 格式并跑起來(lái)轉(zhuǎn)換腳本、YAML 和訓(xùn)練參數(shù)的取舍血細(xì)胞檢測(cè)數(shù)據(jù)集.zip 里的原始標(biāo)注無(wú)論是什么格式最終喂給 YOLO 系列模型的都是歸一化坐標(biāo)的 txt 文件。用 YOLOv8 訓(xùn)練自己的數(shù)據(jù)集最常卡住的不是模型結(jié)構(gòu)而是格式轉(zhuǎn)換和路徑配置。這一章給出從 VOC XML 到 YOLO txt 的轉(zhuǎn)換腳本再講訓(xùn)練配置文件怎么寫(xiě)最后給出血細(xì)胞場(chǎng)景下幾個(gè)關(guān)鍵訓(xùn)練參數(shù)的取舍。3.1 VOC XML 轉(zhuǎn) YOLO txt轉(zhuǎn)換腳本與越界處理YOLO 格式每行五個(gè)值類(lèi)別 ID、歸一化中心點(diǎn) x、歸一化中心點(diǎn) y、歸一化寬 w、歸一化高 h。轉(zhuǎn)換的核心是把像素坐標(biāo)除以原圖寬高。聽(tīng)起來(lái)簡(jiǎn)單但血細(xì)胞標(biāo)注里經(jīng)常出現(xiàn)框超出圖像邊界的情況細(xì)胞被涂片邊緣截?cái)鄷r(shí)標(biāo)注工具的矩形框甚至?xí)由斓綀D外。下面的腳本做了 clamp 處理# convert_voc_to_yolo.py # 把 VOC XML 轉(zhuǎn)成 YOLO txt并在寫(xiě)文件前把越界框裁剪回圖像范圍 import glob import os import xml.etree.ElementTree as ET # 類(lèi)別映射必須和之后 blood_cell.yaml 里的 names 保持一致 CLASS_MAP {WBC: 0, RBC: 1, Platelets: 2} def convert(xml_dirannotations, out_dirlabels): os.makedirs(out_dir, exist_okTrue) for xml_file in sorted(glob.glob(os.path.join(xml_dir, *.xml))): root ET.parse(xml_file).getroot() w int(root.findtext(size/width)) h int(root.findtext(size/height)) stem os.path.splitext(os.path.basename(xml_file))[0] lines [] for obj in root.iter(object): cls_name obj.findtext(name) if cls_name not in CLASS_MAP: print(f跳過(guò)未知類(lèi)別: {cls_name} {stem}) continue box obj.find(bndbox) x1 float(box.findtext(xmin)) y1 float(box.findtext(ymin)) x2 float(box.findtext(xmax)) y2 float(box.findtext(ymax)) # 先把坐標(biāo)限制到圖片范圍內(nèi)防止 YOLO 訓(xùn)練時(shí)報(bào)標(biāo)簽越界 x1 max(0, min(x1, w)) y1 max(0, min(y1, h)) x2 max(0, min(x2, w)) y2 max(0, min(y2, h)) # 再計(jì)算歸一化的中心點(diǎn)和寬高保留 6 位小數(shù) cx (x1 x2) / 2.0 / w cy (y1 y2) / 2.0 / h bw (x2 - x1) / w bh (y2 - y1) / h lines.append( f{CLASS_MAP[cls_name]} {cx:.6f} {cy:.6f} f{bw:.6f} {bh:.6f}\n ) with open(os.path.join(out_dir, stem .txt), w) as f: f.writelines(lines) if __name__ __main__: convert()這里有一個(gè)參數(shù)需要根據(jù)你的數(shù)據(jù)集改CLASS_MAP。統(tǒng)計(jì)腳本輸出的類(lèi)別名稱(chēng)是什么就映射什么。如果統(tǒng)計(jì)里有 Three 大類(lèi)但你想合并成 WBC、RBC、Platelets 三類(lèi)就在這一層做收斂。腳本跳過(guò)未知類(lèi)別是為了避免訓(xùn)練時(shí)類(lèi)別 ID 對(duì)不上導(dǎo)致 loss 異常。還有一點(diǎn)要說(shuō)明如果數(shù)據(jù)集是 COCO JSON 格式你需要先解析 JSON 而不是 XML常見(jiàn)做法是先把 JSON 轉(zhuǎn)成 VOC 再跑這個(gè)腳本或者直接用 json 庫(kù)解析后生成 txt邏輯一樣只是數(shù)據(jù)源換了。越界 clamp 是容易忽略的坑。你以為加了 clamp 就安全了但 clamp 之后如果框?qū)捀咦兂?0比如 x1 和 x2 都被 clamp 到同一個(gè)值這行標(biāo)注就廢了。我在后續(xù)巡檢里會(huì)再加一層過(guò)濾把寬高小于 1 像素的框直接丟掉后面章節(jié)會(huì)講。3.2 劃分?jǐn)?shù)據(jù)集并編寫(xiě) blood_cell.yaml轉(zhuǎn)換完標(biāo)注文件后需要把圖片和對(duì)應(yīng)的 txt 按比例分成訓(xùn)練集和驗(yàn)證集。血細(xì)胞數(shù)據(jù)集規(guī)模不大用 shell 腳本就能完成。以下命令在 blood_cell_dataset 目錄下執(zhí)行# 先把所有圖片路徑打亂再按 8:2 劃分訓(xùn)練集和驗(yàn)證集 find images -name *.jpg | shuf all_files.txt total$(wc -l all_files.txt) head -n $((total * 8 / 10)) all_files.txt | while read img; do stem$(basename $img .jpg) mv $img images/train/ mv labels/$stem.txt labels/train/ done # 剩余圖片進(jìn)入驗(yàn)證集 tail -n $((total * 8 / 10 1)) all_files.txt | while read img; do stem$(basename $img .jpg) mv $img images/val/ mv labels/$stem.txt labels/val/ done這種 shell 方式適合百?gòu)堃詢(xún)?nèi)的數(shù)據(jù)集幾分鐘能搞定。如果數(shù)據(jù)集上千張建議用 Python 腳本做分層劃分先把按類(lèi)別分布排序確保驗(yàn)證集里每一種細(xì)胞都有一定樣本否則驗(yàn)證集的 mAP 會(huì)失真。劃分完成后在項(xiàng)目根目錄寫(xiě)一個(gè) blood_cell.yaml# blood_cell.yaml # train 和 val 指向圖片目錄YOLO 會(huì)在同目錄下找同名 txt train: /data/blood_cell_dataset/images/train val: /data/blood_cell_dataset/images/val nc: 3 names: [WBC, RBC, Platelets]這個(gè)配置文件的關(guān)鍵是 names 的順序和 CLASS_MAP 里類(lèi)別 ID 必須一致。如果 WBC 在 CLASS_MAP 里是 0在 yaml 里也必須排第 0 位否則模型訓(xùn)練時(shí)會(huì)把白細(xì)胞學(xué)成紅細(xì)胞。路徑建議用絕對(duì)路徑省得每次訓(xùn)練前 cd 半天。如果你用的數(shù)據(jù)集本來(lái)就有 ImageSets/Main/train.txt也可以直接讀取那個(gè)列表去復(fù)制文件不用重新 find。3.3 血細(xì)胞訓(xùn)練的參數(shù)經(jīng)驗(yàn)值準(zhǔn)備好數(shù)據(jù)和配置文件后訓(xùn)練命令本身不復(fù)雜# 安裝 ultralytics 運(yùn)行環(huán)境 pip install ultralytics # 開(kāi)始訓(xùn)練參數(shù)順序不影響YOLO CLI 會(huì)解析 yolo detect train \ datablood_cell.yaml \ modelyolov8n.pt \ imgsz640 \ epochs100 \ batch16 \ patience20 \ ampFalse參數(shù)上我一般會(huì)針對(duì)血細(xì)胞場(chǎng)景做幾個(gè)調(diào)整。imgsz640 是速度優(yōu)先但如果原圖是 2000 像素以上640 下單個(gè)白細(xì)胞可能只剩不到 20 像素模型很難學(xué)到細(xì)節(jié)。建議第一輪用 640 跑通流程看 mAP 值再?zèng)Q定要不要上 1280。batch 大小完全看顯存16 在 12G 左右卡上比較安全顯存不夠就降到 8。ampFalse 是我在醫(yī)學(xué)影像上的習(xí)慣部分血細(xì)胞數(shù)據(jù)集在混合精度下會(huì)出現(xiàn) loss 變成 NaN 的情況關(guān)掉省心。epochs 和 patience 也要看數(shù)據(jù)規(guī)模。血細(xì)胞數(shù)據(jù)集的樣本數(shù)少模型可能到第 40 個(gè) epoch 還在漲patience20 意味著 20 個(gè) epoch 不漲就早停可能提前切斷訓(xùn)練。我會(huì)把 patience 放到 30 到 50讓它多跑一會(huì)兒。如果你發(fā)現(xiàn)訓(xùn)練曲線一直在抖先把驗(yàn)證集確認(rèn)一遍而不是急著調(diào)學(xué)習(xí)率。訓(xùn)練完成后權(quán)重在 runs/detect/train 目錄下best.pt 是按驗(yàn)證集 mAP 保存的最佳權(quán)重后續(xù)推理都用它。4. 訓(xùn)練前的標(biāo)注質(zhì)量巡檢框不靠譜mAP 就是自欺欺人血細(xì)胞檢測(cè)數(shù)據(jù)集.zip 里的標(biāo)注不一定是高質(zhì)量的。很多開(kāi)源數(shù)據(jù)集的標(biāo)注來(lái)自半自動(dòng)標(biāo)注工具紅細(xì)胞密密麻麻時(shí)標(biāo)注員會(huì)漏點(diǎn)白細(xì)胞偶爾標(biāo)錯(cuò)類(lèi)別血小板經(jīng)常畫(huà)出一個(gè)過(guò)大的框把周?chē)t細(xì)胞也包進(jìn)去。這些問(wèn)題如果不處理訓(xùn)練出來(lái)的模型 mAP 會(huì)虛高換一張真實(shí)涂片就露餡。這一章講怎么在訓(xùn)練前把標(biāo)注質(zhì)量查一遍以及怎么處理類(lèi)別不平衡和增強(qiáng)的邊界。4.1 把標(biāo)注畫(huà)到圖上最笨但最有效的檢查方式判斷標(biāo)注質(zhì)量最簡(jiǎn)單的方法是把標(biāo)注框畫(huà)回原圖肉眼掃一遍。血細(xì)胞框數(shù)量大不需要一張張全看隨機(jī)抽 30 到 50 張重點(diǎn)看白細(xì)胞和血小板的框。下面的腳本會(huì)把訓(xùn)練集里的每張圖和它的 YOLO txt 標(biāo)注重疊輸出到 vis 目錄# draw_boxes.py import os import glob import cv2 def draw_label(img_path, label_path, out_dirvis): os.makedirs(out_dir, exist_okTrue) img cv2.imread(img_path) if img is None: print(f圖片讀不到: {img_path}) return if not os.path.exists(label_path): print(f漏標(biāo)文件: {img_path}) return h, w img.shape[:2] with open(label_path) as f: for line in f: parts line.strip().split() if len(parts) ! 5: print(f格式異常: {label_path}) continue cls, cx, cy, bw, bh map(float, parts) # YOLO txt 是歸一化坐標(biāo)還原時(shí)要乘回原圖寬高 x1 int((cx - bw / 2) * w) y1 int((cy - bh / 2) * h) x2 int((cx bw / 2) * w) y2 int((cy bh / 2) * h) color (0, 0, 255) if cls 0 else (0, 255, 0) cv2.rectangle(img, (x1, y1), (x2, y2), color, 2) cv2.imwrite(os.path.join(out_dir, os.path.basename(img_path)), img) for img_path in glob.glob(images/train/*.jpg): label_path labels/train/ os.path.basename(img_path).replace(.jpg, .txt) draw_label(img_path, label_path)這段腳本里有個(gè)細(xì)節(jié)容易出錯(cuò)還原框坐標(biāo)時(shí)用的是原圖寬高不是訓(xùn)練時(shí)的 imgsz。如果你把圖 resize 到 640 再還原坐標(biāo)畫(huà)出來(lái)的框和細(xì)胞位置是對(duì)不上的。另外腳本會(huì)打印兩類(lèi)問(wèn)題讀不到的圖片和缺失的標(biāo)注文件。讀不到的圖片說(shuō)明圖片路徑和標(biāo)注文件名對(duì)不上常見(jiàn)原因是圖片是 png 而腳本在找 jpg或者文件名里有多余空格。缺失標(biāo)注文件說(shuō)明這張圖被劃分進(jìn)了訓(xùn)練集但作者沒(méi)標(biāo)訓(xùn)練時(shí) YOLO 會(huì)跳過(guò)它但會(huì)影響訓(xùn)練集規(guī)模和類(lèi)別分布。提示巡檢的目的不是把每一張圖都畫(huà)出來(lái)看而是抽出最可能出現(xiàn)問(wèn)題的類(lèi)別重點(diǎn)看。血細(xì)胞數(shù)據(jù)集里紅細(xì)胞框偏大、血小板框重疊是最常見(jiàn)的兩類(lèi)問(wèn)題。4.2 類(lèi)別不平衡當(dāng)白細(xì)胞只有 20 個(gè)框統(tǒng)計(jì)腳本如果告訴你 WBC 占比不到 1%你有兩個(gè)選擇一是換 dataset二是做采樣干預(yù)。真實(shí)項(xiàng)目中能換數(shù)據(jù)集的場(chǎng)景很少大多數(shù)人只能硬著頭皮做。我一般會(huì)先做一次過(guò)采樣把白細(xì)胞樣本所在圖片在訓(xùn)練列表里重復(fù) 3 到 5 遍讓模型在每個(gè) epoch 里有更多機(jī)會(huì)看到白細(xì)胞。訓(xùn)練列表就是 images/train 目錄下的文件你可以人工把 WBC 樣本多的圖片復(fù)制到另一個(gè)臨時(shí)目錄再軟鏈接回訓(xùn)練集也可以直接在數(shù)據(jù)增強(qiáng)配置里動(dòng)手腳。更好的方式是做細(xì)胞級(jí)裁剪。既然白細(xì)胞框那么少干脆把每個(gè)標(biāo)注框裁出來(lái)縮放到固定尺寸單獨(dú)做分類(lèi)或檢測(cè)。這種方式適合那種“檢測(cè)少、分類(lèi)難”的場(chǎng)景比如白細(xì)胞五分類(lèi)你先用檢測(cè)網(wǎng)絡(luò)把所有有核細(xì)胞找出來(lái)再做分類(lèi)。缺點(diǎn)是脫離了檢測(cè)任務(wù)的端到端流程但實(shí)際效果往往比硬訓(xùn)練一個(gè)大模型好。另一個(gè)思路是負(fù)采樣。紅細(xì)胞框太多模型訓(xùn)練時(shí)正負(fù)樣本比例嚴(yán)重失衡可以隨機(jī)丟棄一部分紅細(xì)胞框。但 YOLO 的 txt 是按圖組織的你沒(méi)法只刪一部分框而不影響同一張圖里的其他類(lèi)別。所以常見(jiàn)的做法是挑出“只有紅細(xì)胞、沒(méi)有白細(xì)胞/血小板”的圖直接從訓(xùn)練集里挪出去一部分。這個(gè)操作要小心如果挪得太多模型對(duì)紅細(xì)胞的泛化能力也會(huì)下降。我一般先把紅細(xì)胞占比壓到 70% 以下再看 WBC 和 Platelets 的 AP 有沒(méi)有起來(lái)。4.3 數(shù)據(jù)增強(qiáng)的邊界染色是醫(yī)學(xué)圖像的敏感信號(hào)血涂片里有大量臨床信息藏在顏色里染料的濃度、染色時(shí)間、顯微鏡光源色溫都會(huì)讓同一類(lèi)細(xì)胞呈現(xiàn)不同顏色。你想用數(shù)據(jù)增強(qiáng)提升泛化能力但用力過(guò)猛會(huì)讓模型學(xué)到不真實(shí)顏色導(dǎo)致?lián)Q一臺(tái)顯微鏡就翻車(chē)。YOLOv8 的數(shù)據(jù)增強(qiáng)可以在 yaml 里覆蓋默認(rèn)參數(shù)血細(xì)胞場(chǎng)景我通常這樣調(diào)# blood_cell_aug.yaml # 在訓(xùn)練時(shí)通過(guò)超參數(shù)覆蓋默認(rèn)增強(qiáng) mosaic: 0.5 hsv_h: 0.02 hsv_s: 0.3 hsv_v: 0.3 degrees: 10 translate: 0.1 scale: 0.3mosaic 從默認(rèn)的 1.0 降到 0.5是因?yàn)?mosaic 會(huì)把四張圖拼在一起細(xì)胞會(huì)被拼接縫截?cái)嘌?xì)胞這種密集小目標(biāo)對(duì)象容易學(xué)到半截特征。hsv_h 只給 0.02色調(diào)不要亂動(dòng)飽和度和亮度可以稍大一點(diǎn)模擬不同染色深淺。degrees10 表示最多旋轉(zhuǎn) 10 度血細(xì)胞本身是圓的旋轉(zhuǎn)多一點(diǎn)問(wèn)題不大但對(duì)方向敏感的細(xì)胞形態(tài)如血小板聚集會(huì)有影響。translate 和 scale 保持適中保證細(xì)胞不會(huì)被裁掉太多。如果你發(fā)現(xiàn)模型在驗(yàn)證集上 mAP 不錯(cuò)但換一個(gè)實(shí)驗(yàn)室的數(shù)據(jù)集就掉點(diǎn)優(yōu)先檢查顏色增強(qiáng)是否過(guò)硬。有個(gè)土辦法把訓(xùn)練時(shí)的增強(qiáng)可視化出來(lái)看增強(qiáng)后的圖是不是已經(jīng)偏綠偏紫。如果肉眼都看出來(lái)顏色不對(duì)勁模型也不可能學(xué)到靠譜的顏色特征。醫(yī)學(xué)圖像的數(shù)據(jù)增強(qiáng)邊界在于“不能改變?cè)\斷特征”你增強(qiáng)出來(lái)的圖要能讓一個(gè)檢驗(yàn)科醫(yī)生認(rèn)可它仍然是正常的血涂片。5. 血細(xì)胞檢測(cè)訓(xùn)練與推理的常見(jiàn)問(wèn)題排查這一章把我在血細(xì)胞檢測(cè)訓(xùn)練和推理里踩過(guò)的一些問(wèn)題列出來(lái)每條都按現(xiàn)象到原因到解決辦法來(lái)講。這些問(wèn)題不會(huì)同時(shí)出現(xiàn)但如果你照著前面的步驟做還翻車(chē)先來(lái)這里對(duì)對(duì)癥狀。5.1 解壓后文件名亂碼和中文路徑導(dǎo)致訓(xùn)練中斷現(xiàn)象解壓血細(xì)胞檢測(cè)數(shù)據(jù)集.zip 后文件列表里是一串亂碼訓(xùn)練時(shí)提示 FileNotFoundError 或 NotADirectoryError圖片讀不到標(biāo)注文件也對(duì)不上。原因zip 包在 Windows 下打包時(shí)使用 GBK 編碼Linux 下 unzip 默認(rèn)按 UTF-8 解壓中文文件名和目錄名就會(huì)變成亂碼。另一個(gè)隱性問(wèn)題是路徑本身含中文Python 的 glob 和 OpenCV 的 imread 在部分系統(tǒng)上對(duì)中文路徑兼容不好報(bào)錯(cuò)還特別隱晦。解決Linux 下用unzip -O CP936 blood_cell_dataset.zip -d blood_cell_dataset指定編碼解壓macOS 的 unzip 可能不帶 -O 參數(shù)可以用 Python 的 zipfile 庫(kù)在解壓時(shí)手動(dòng)用 errorsignore 重命名。解壓后我習(xí)慣先把目錄重命名為英文mv 血細(xì)胞檢測(cè)數(shù)據(jù)集 blood_cell_dataset。所有后續(xù)腳本和訓(xùn)練命令都不要出現(xiàn)中文路徑這是給自己省時(shí)間。5.2 白細(xì)胞類(lèi)別 AP 一直是 0現(xiàn)象訓(xùn)練跑完驗(yàn)證集上 RBC 和 Platelets 的 mAP 都有 0.8 以上WBC 的 AP 始終是 0.000預(yù)測(cè)結(jié)果里一張白細(xì)胞都沒(méi)框出來(lái)。原因不是模型壞了而是白細(xì)胞在訓(xùn)練數(shù)據(jù)里占比太低。一個(gè)典型血涂片視野里紅細(xì)胞上萬(wàn)白細(xì)胞只有幾個(gè)標(biāo)注框數(shù)量相差幾個(gè)數(shù)量級(jí)。模型從隨機(jī)權(quán)重開(kāi)始訓(xùn)練時(shí)幾乎每個(gè) batch 里都沒(méi)有白細(xì)胞樣本梯度完全被紅細(xì)胞主導(dǎo)。解決先跑第 2 章的統(tǒng)計(jì)腳本確認(rèn) WBC 框數(shù)量。如果確實(shí)不到 1%做過(guò)采樣把包含 WBC 的圖片復(fù)制到訓(xùn)練列表 3 到 5 遍或者把這些圖片單獨(dú)放進(jìn)一個(gè)目錄在 yaml 里多加一個(gè)數(shù)據(jù)源。還有一種做法是降低紅細(xì)胞樣本比例把只有紅細(xì)胞的圖片從訓(xùn)練集里挑出一部分挪走讓 WBC 的相對(duì)占比從 0.5% 提高到 5% 左右。訓(xùn)練完再看 WBC 的 AP如果還是 0檢查類(lèi)別 ID 是否映射錯(cuò)了。5.3 驗(yàn)證集 mAP 高但實(shí)際場(chǎng)景翻車(chē)現(xiàn)象在數(shù)據(jù)集劃分的驗(yàn)證集上 mAP0.5 到 0.97拿一張其他實(shí)驗(yàn)室采的血涂片來(lái)測(cè)白細(xì)胞召回率直接掉一半邊界框松松垮垮。原因這是典型的域偏移。同一個(gè)數(shù)據(jù)集里的訓(xùn)練圖和驗(yàn)證圖來(lái)自同一臺(tái)顯微鏡、同一個(gè)染色批次模型學(xué)到的是那套顏色和光照分布。血涂片染色深淺、顯微鏡白平衡、相機(jī)型號(hào)一變模型就懵了。這不是過(guò)擬合是數(shù)據(jù)本身就太單一。解決訓(xùn)練前把一部分來(lái)自不同條件下的圖像單獨(dú)留出來(lái)做測(cè)試集不要參與劃分。如果數(shù)據(jù)集里沒(méi)有外部圖像就在訓(xùn)練時(shí)故意增強(qiáng)亮度飽和度的擾動(dòng)模擬不同染色條件。更專(zhuān)業(yè)的做法是做染色歸一化比如用 Reinhard 方法把每張圖的顏色分布對(duì)齊到標(biāo)準(zhǔn)涂片在訓(xùn)練前預(yù)處理一遍。這個(gè)操作對(duì)血細(xì)胞檢測(cè)的泛化提升非常明顯但要注意別在驗(yàn)證集上也用訓(xùn)練集的統(tǒng)計(jì)參數(shù)來(lái)歸一化否則數(shù)據(jù)泄漏。5.4 Loss 為 NaN 或 CUDA OOM現(xiàn)象訓(xùn)練到第幾個(gè) epoch 時(shí) loss 突然變成 nan命令行直接報(bào)錯(cuò)或者剛開(kāi)始訓(xùn)練就提示 CUDA out of memorybatch 怎么降都不太對(duì)。原因loss 變成 nan 最常見(jiàn)的是三個(gè)來(lái)源一是訓(xùn)練數(shù)據(jù)里有坐標(biāo)越界的標(biāo)注轉(zhuǎn)換時(shí)沒(méi) clamp歸一化后出現(xiàn)負(fù)值或極大值二是混合精度訓(xùn)練下某些算子的梯度異常尤其在醫(yī)學(xué)圖像的半精度情況下更容易出現(xiàn)三是學(xué)習(xí)率太大優(yōu)化器發(fā)散。CUDA OOM 則經(jīng)常和高分辨率 imgsz 疊加了大 batch 有關(guān)血細(xì)胞數(shù)據(jù)集如果你想用 imgsz1280batch16 在 24G 卡上都會(huì)爆。解決先用第 4 章的巡檢腳本把訓(xùn)練集里的越界框全部過(guò)濾掉確保 txt 里所有坐標(biāo)都在 [0,1] 區(qū)間。然后在訓(xùn)練命令里加 ampFalse再不行把學(xué)習(xí)率從默認(rèn) 0.01 降到 0.001在 yaml 里覆蓋 lr0。OOM 的解決不是一味降 batch可以先降 batch 到 8 或 4如果還爆再把 imgsz 從 1280 降到 960 或 640。血細(xì)胞的檢測(cè)精度和分辨率相關(guān)但模型訓(xùn)練不出來(lái)更虧。6. 用切片推理處理高分辨率血涂片一個(gè)讓 mAP 變實(shí)用的技巧前面訓(xùn)練時(shí)你可能為了顯存把 imgsz 設(shè)成了 640模型在驗(yàn)證集上表現(xiàn)不錯(cuò)但拿去推理一張 4000×3000 的血涂片直接把整圖 resize 成 640 再預(yù)測(cè)很多小細(xì)胞會(huì)消失。這里有一個(gè)我習(xí)慣用的技巧切片推理把大圖切成 640×640 的小窗逐個(gè)預(yù)測(cè)再把框映射回原圖坐標(biāo)。# 高分辨率血涂片切片推理stride 小于 window 保證窗口有重疊 import cv2 from ultralytics import YOLO model YOLO(runs/detect/train/weights/best.pt) img cv2.imread(full_slide.jpg) H, W img.shape[:2] window, stride 640, 512 all_boxes [] for y in range(0, H, stride): for x in range(0, W, stride): crop img[y:ywindow, x:xwindow] results model(crop, conf0.25, imgsz640, verboseFalse) for box in results[0].boxes.data.tolist(): x1, y1, x2, y2, conf, cls box # 小窗坐標(biāo)加上窗口偏移量映射回原圖坐標(biāo) all_boxes.append((x1 x, y1 y, x2 x, y2 y, conf, cls))這段腳本的思路很簡(jiǎn)單滑動(dòng)窗口推理重疊部分用后續(xù) NMS 合并。stride512 小于 window640同一個(gè)細(xì)胞會(huì)在相鄰窗口里出現(xiàn)兩次預(yù)測(cè)出來(lái)的兩個(gè)框位置相同需要做一次 NMS 去重。直接用 cv2.dnn.NMSBoxes 處理 all_boxes 就行或者換成 SAHI 庫(kù)它把切片、后處理都封裝好了支持 YOLOv8 接口。切片推理的關(guān)鍵參數(shù)是 window 和 stridewindow 越大單窗看到的上下文越多但也不能超過(guò)模型訓(xùn)練時(shí)的 imgsz 太多stride 越小重疊越多檢測(cè)越穩(wěn)但耗時(shí)越長(zhǎng)。我一般先用 window640、stride512 起看漏檢情況再把 stride 降到 384。我最早做血細(xì)胞檢測(cè)時(shí)直接把 4000 像素的涂片 resize 到 640 去推理結(jié)果一個(gè)白細(xì)胞都找不到。后來(lái)翻車(chē)翻多了才意識(shí)到不是模型不行是目標(biāo)在 resize 過(guò)程中被抹掉了。從那以后凡是單邊超過(guò) 1500 像素的醫(yī)學(xué)圖像我都默認(rèn)走切片推理寧可多花幾秒也不再迷信強(qiáng)制縮放。希望這個(gè)習(xí)慣能幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
色综合五月| 97午夜一区二区| 婷婷日| 影院久久久| 五月综合视频| 人妻AV在线观看| 极品 少妇 内射| 大香蕉九九热| 色五月97| 欧美三级大片AA在线看| 99免费视频网| 色月视频| 韩国情人在线电视剧免费观看高清版全集 | 久久六月天| 久久激情综合| 有码人妻久久| 激情小说五月天社区丁香| 996re热精品视频| 色偷偷综合| 2025天天日爽| 99热97| 亚洲第一色网站| 91色吧网| 狠狠爱婷婷丁香| 玖玖九九超碰| 国产精品久久久久久久久久久久 | 色五月色五天色情网| 99久久玖玖| www.色五月| 色噜噜狠狠色综合网| 久久成人性爱| 538在线| 影音先锋 一区| 亚洲深喉aV| 97综合在线| 激情五月天www| 嫩草AV久久伊人妇女超级A| 婷婷五月在线播放| 九九色综合视频| 丁香五月婷婷动漫视频| 亚洲人人96@| 9l视频自拍九色9l黑人| 中文字幕中文有码在线| 久久99热免费| 亚洲精品99| 奇米影视在线视频| 日本一区二区三区精品视频| 久热精彩视频98| 91九九| 91精品久久久久久77777| 五月天开心激情综合网| 五月丁香亚洲婷婷| 亚洲五月停停| av在线中文| 337午夜福利| WWW夜夜| 99综合久久| yellow视频在线观看91| 九九aV| 色色色五月婷| 国产片天天爽夜夜爽| 天天操,夜夜骑| 日韩成人av在线| 超碰日日操| 99久在线精品99re5热视频| 1级欧美日韩| 六月色丁香婷婷| 精品一二三区久久AAA片| 五月天婷婷在线视频| 99自拍视频| 操一区| 日韩色五月| 激情小说之五月| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | www99热| 伍月激情天| 色欲久久综合| 青青草国产亚洲精品久久| 99热这里只有精品中文字幕| 欧美性猛交99久久久久99按摩 | 国产裸舞福利资源在线视频| 久色中文| 丁香六月综合激情| 久青操| av在线中文| 99热日| 色五月综合在线| 久久婷婷色| 久久XX| 99在线精品视频| 国产精品色色| 美国天天操无码| 91九色在线视频| 亚洲综合五月天婷婷丁香| 五月丁香A片| 久久婷婷六月天| 天天网站天天爽| 色欲香综合网| 五月婷婷六月色| 久操b网| 伊人大香五月天| 伊人9999| 婷婷五月天伊人| A片试看120分钟做受图片| 99热国产在线| 色情五月综合婷婷| 色婷婷影音| 亚艹艹| 丁香在线视频| 激情综合五| 亚洲综合五月天婷婷| 五月丁香六月婷婷的女人| 天天操中文字幕| 亚洲五月婷婷在线| 亚洲啪啪网| 色综合色色| 激情五月天天狠狠久久| 九九久久视频| 久久99久久99精品免观看粉嫩| 五月天成人在线| 久久综合五月天| 97婷婷狠狠| 国产视频婷婷| 亚洲中文字幕在线观看| 午夜免费高清AV片| 色婷婷视频| 干婷婷五月天| 婷婷综合五月| 国产婷婷婷| 丁香五月婷婷国产在线| 亚洲丁香婷婷五月天综合色| 丁香五月婷婷视频| 中文字幕日本最新乱码视频| 啪啪激情网| 激情五月天色婷婷综合| www.色婷婷| 免费看片在线观看| 色五月婷激情| 一点色成人网| 99人妻碰碰碰久久久久禁片| 婷婷国产成人| 婷婷五月激情小说| AⅤ色区| 97碰碰在线观看视频| 国产精品人人做人人爽人人添| 婷婷亚洲久久| 五月婷导航| 国产精品在线视频| 九九热99视频| 婷婷丁香视频| 婷婷五月激情视频在线| 久久91久久精品久久| 爱射综合| AV在线免费网站| 欧美黄色一级录像| 亚洲AV无码久久精品色欲| 99精品自拍视频| 草久私拍| 欧美日韩一区二区三区四区| 操日本99| 色婷婷丁香五月天| 亲子乱AV-区二区三区| 噜综合| 久热99热| 大香蕉五月天婷婷丁香91| 五月婷婷六月丁香激情| www.色五月| www.91在线观看| 久热a| 97在线精品视频| 色约约视频一区二区三区四区五区 | 99re6在线视频精品免费| 五月婷激情影院| 亚洲婷婷免费| 美女伊人久久| 久久伦乱| 激情综合五月丁香| 97色在线观看视频| 色丁香久久| 97干婷婷| 五月玖玖| 99色在线| 日韩婷婷五月天| 五月天婷婷丁香| 婷婷九月| 国产精自产拍久久久久久蜜| 五月丁香六月婷婷综合网| 五月天桃色深爱网| 五月婷婷综合网在线播放| 色五月婷婷网| 综合五月天天天天天五月| 极品人妻VIDEOSSS人妻| 五月丁香五月天现场视频| 搡BBBB搡BBB搡18| 丁香五月婷婷啪啪视频| 久久色情综合免费网站| 九九人人精品| 婷婷五月天激情网| 五月丁香在线国产| 超碰A V在线| 99这里只有精品在线| 国产午夜精品一区二区三区四区| 婷婷六月激情小说网| 亚洲操精品| 精品婷婷| 五月丁香婷婷伊人| 九九亚洲| 亚洲丁香五月天在线视频| 久热免费视频| 精品亚洲VA网站| WWW·色色色·COM| 久久九九综合| 婷婷五月视屏| 五月丁香六月激情综合网| 久久婷婷热| 玖热精品综合视频| 五月丁香婷婷五月色| 久久色五月天综合网| 中文字幕亚洲-区久久99婷婷| 五月丁香大相交| 激情五月丁香五月| 国产成人va在线| 操比激情五月| 丁香婷婷色情| 狠狠干在线视频| 青草视频在线播放| 色综合九九| 精品一区二区三区木瓜| 99热热这里只精品996小说| 亚洲欧洲国产精品| 青青草视频福利| 亚洲黄色av网站| 久久99久久99久久99人受| 丁香综合网| 日韩成人无码| 五月婷婷天堂| 99re在线这里只有精品视频首页| 欧美三级欧美一级| 一级黄色片看看| 97热精品| 夜夜操天天爽| 久久亚洲A| 夜色爱爱亚洲| 色九区| 婷婷,五月天,丁香,第一| 五月综合激情婷婷六月色窝| www天天色天天射| 色婷五月| 婷婷99丁香| 色99网| 亚洲国产va| 大香蕉啪啪| 激情四射亚洲| 丁香婷婷影院| 婷婷伊人中文字幕| 无码色综合| 97视频久久| 六月天丁婷婷| 日日色五月天| 另类专区在线| 97丁香视频| 国产成人网| 亚洲婷婷五月天| 丁香五月视频在线观看| 国产亚洲99| 色爱综合五月| 99热综合在线观看| 日本精品人妻无码77777| 亚洲综合视频网| 婷婷精品性性性性性性性| 色五月激情网| 丁香婷婷色色| 超碰网站在线观看| 久久一操| 日本道久久91| 在线超碰免费| 97luluse| 欧洲MV日韩MV国产| 国自产拍偷拍精品啪啪一区二区| 五月激情影视| 色久天| 操97免费超级视频| 成人网站在线观看视频| www.91AV.com| 天天综合色| 在线观看亚洲AV| 日日夜夜婷婷| 欧美色爱五月天| 日日操日日干| 色五月五月丁香| 九九热只有这里精品| 淫视馆AV在线| 色哟哟精品| 久久婷婷五月激情综合| www.cao.com久久| 婷婷综合久久| 91碰碰| 99色在线| 五月天激情综合| 99精品自拍视频| 九九热婷婷| 婷婷激情六月| 五月好婷婷| 99久久精品网| 五月丁香六月综合激情无码软件亮点| 草婷婷在线| 人人爱天天摸摸天天爱| 丁香婷婷偷拍| 思思色综合网站| 天天做天天双| 婷婷色成人| 久久这里有精品视频| 五月丁香花激情综合网| 色五月综合在线| 色婷婷超碰| 五月天婷婷Av| 97日本在线| 日韩大片艹艹| 日日噜噜夜夜狠狠久久丁香六月| AV伊人青草丁香六月| 久9久9久9久9久9久9| 99在线视频精品| 色综合综合色| 五月婷婷就去色| 婷婷六月开心网| 四虎婷婷五月天| 色婷婷五月婷婷五月婷婷五月| 五月丁香av在线| 综合色色婷婷| 9热在线观看| 亚洲另类噜噜| 亚洲性爱电影| 久久精彩视频| 97伦乱| 伊人综合网站| 日本欧美啪啪| 色999亚洲人成色| 色色影院aaaav| 天天舔天天| 99r这里| 丁香五月天堂网| www久久99| 色五月AV| 午夜激情四射影院| 99热欧美| 九九热视频免费| 超碰自拍天堂| 久久永久网址| 日日爱699| 玖玖婷婷五月| 不卡在线视频| 五月婷免费视频| 异能之下短剧免费观看全集| 五月婷婷丁香五月婷婷| 99热久草| 人碰人人人玩91| 婷婷五月综激情| 午夜成人AV在线| 无码毛片992367| 亚洲操b| 丝袜大香蕉| 免费无码毛片一区二区A片| 五月天婷婷Av| 人人人操Av| 天天天天天天噜| 九九热这里只有精品6| 色婷婷基地| 亚洲综合色色色| 在线观看免费视频| 国产成人av在线播放| 五月五丁香婷婷| 可以看的AV| 婷婷五月天激情小说| 嫩草视频。| 思思热这里只有精品视频666| 激情综合亚洲色婷婷五月| 极品另类| 色婷婷在线视频观看| 就是色婷婷五月亚洲色| 天天综合网在线| 开心五月激情网| 婷婷五月中文字幕| 欧美天天综合网站上去吧| 婷婷色五月婷| 丁香五月天日韩无码| 另类天堂| 色五月婷婷91| 大香伊人婷婷| 色五月综合婷婷| 亚洲日日日| 亚洲成人九九九| 日逼免费视频| 人妻丰满精品一区二区A片| 狠狠色噜噜狠狠| 激情综合另类| 亚洲无码99| 亚洲熟女色| 美女丁香五婷婷| 亚洲亚洲人成综合网络| 丁香六月AV| 色婷婷综合视频| 麻豆AV一区二区三区| 97人人草| 大香蕉久久| 久久9久久| 五月天色婷婷激情| 婷婷五月综合免费在线| 激情五月婷婷色| 97香蕉碰碰人妻国产欧美| 葵花AV在线| A A色色| 欧美三级A做爰在线观看| 99色综合网| 丁香美女五月天婷婷| 五月婷婷综合在线视频| 五月婷婷久草在线视频综合| yirenjiqingshiping| 狠狠肏综合网| 日本强伦片中文字幕免费看 | 五月天激情国产综合婷婷| 成人免费黄色短视频| 91操色| 亚洲激情另类| 蜜臀A∨在线水帘洞| 色欲色香综合网| 婷婷射丁香| 亚洲不卡| jiujiu热在线视频| 色情婷婷五月天| 久久激情五月| 婷婷社区五月天| 涩综合网| 另类小说色婷婷| 丁香5月激情网| 激情久久久| 97色婷| 热99这就是精品视频| 久艹久| 啪啪小说五月天| 青青艹b| 色五月婷婷亚洲最大| 色综合久网| 五月丁香六月香综合激情| 国产露脸150部国语对白| 少妇激情五月婷婷| www.99操.com| 夜夜爱伊人| 色婷婷六月天| 色婷婷亚洲| 97福利视频| 日韩色久| 92国产福利| www.婷婷五月天| 台湾无码A片一区二区| 五月婷婷影院| 99 r热| 亚州美女| 五月丁花六月丁香综合| YJLZZJLZZ亚洲乱熟无码| 五月天丁香网| 99日这里只有精品| 色琪琪一综合久久激情五月视频| 中字幕视频在线永久在线观看免费| 69婷婷丁香午夜| 色情婷婷久久五月天| 激情五月色婷婷| 97久久久| 天天婬色综合| 五月激情六月综合| 五月久久丁香| 婷婷五月av| 国自产拍偷拍精品啪啪一区二区| 久久丁香五月天| 色综合99| 婷婷五月综合丁香久久| 丁香五月电影| 五月婷婷六月丁香激情| 久久婷婷五月综合97色一本| 成人免费120分钟啪啪| 少妇丁香婷婷| www,奇米影视| 天天肏视频| 激情久久天天| 91婷婷在线| 婷婷丁香熟女| 开心激情网在线| 人妻尝试久久久久久久久久久久| 97人人做| 丁香五月玖玖| 婷婷香蕉| 超碰免费大香蕉| 欧美韩日AAA网站| 久久婷婷五月综合啪| 久久激情网| 思思热热久久| 五月丁香久人妻中文| 日本熟妇乱妇熟色A片蜜桃| 婷婷五月在线视频| 天天色官网| 色婷婷免费视频| 久九男女天堂| 丁香六月婷婷综合| 丁香五月人妻| 激情六月综合| 婷婷色丁香五月| 超碰在线观看成人视| 性综合网| 五月丁香免费视频| 丁香婷婷激情六月五月开心| 99色天堂| 亲子乱AV-区二区三区| 美女激情综合| 色五月视频,小说| 久久五月网| 激情九九九九| 亚洲成人av中文| 性色做爰片在线观看WW| 这里只有精品免费视频| 99综合一区| 妻久久人久久| 成人电影丁香六月天| 色综合色五月| 操九色| 婷婷伊人五月丁香天堂网| 99热国品| 色五月激情五月| 精品久久久人妻| 这里只有精品视频免费在线观看| 激情五月少妇| 亚洲色亚洲精品| 激情黄色五月天| 五月丁香爱婷婷深深| 91玖玖| 色婷婷丁香九月| 成人超碰网| 五月天婷婷色色| 99热亚洲| 亚洲免费看片| 五月丁香色情| 日日干日日| 俺去也在线视频| 欧美婷| 综合狠狠干| 六月成人网| 五月天另类激情在线| 激情久久丁香| 婷婷综合五月天| 99啪啪网| 六月丁香色色| 九九热av| 久久婷婷五月天| 久久思思热| 色婷婷九月| AVDV久久| 少妇伦子伦精品无吗| 五月婷婷基地| 日日舔夜夜操| 婷婷五月天色播| 综合啪啪| 99在线精品观看99| 99热这里都是精品| 成人超碰网| 9九九久久精品无码专区| 9色91视频| 久久五月丁香综合| 大香蕉在线99热| 综合五月激情| 热久久这里只有三级视频| 婷婷六月爽| 色婷婷丁香六月| 任你搞网站| 99久久九九| 26uuu色噜噜精品一区| 婷婷丁香五月激情图片| 99思思| 99久久激情视频| 无套内射极品大美女| 2020日日干| 精品久热| 日本操天堂| 欧美超碰亚洲| 久久婷五月天| 五月天婷婷五月| 91婷婷五月天嫩女| 五月天综合视频| 99在线精品免费视频| 果冻传媒A片一二三区| 色婷婷亚洲在线观看| 久久久99视频| 91婷婷五月天综合视频| 久久ab| 97色在线视频| 日本二级毛片二级毛片| 久激情| 九九九色综合| ji'qing'luan'ren'lun| 无码区婷婷五月花开| 五月天社区| 色综合99无码 | 99色视频| 色亭亭九月| 思思干精品| 色色色综合色| 99精品无码网站| 99热免费| ..真实国产乱子伦对白在线_欧 | 久久人妻乱| 亚洲无码99| 免费视频无码| 99久久久久久www| 亚洲精品电影| 激情五月色在线播放| 99久久久| 99ri视频在线观看| 激情综合五月色在线| 天天爽夜夜操| 日韩黄在免| 久热 91| 偷拍视频五月天| 久九色| 五月精品99综合| 五月婷婷免费在线| 五月婷婷视频在线观看| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 亚洲成人黄色网| 婷婷激情六月| 婷婷五月激情综合啪啪| 五月天婷婷爱丁香中文字幕| 五月丁香激情四射| 一婬一伦一区二区三区| 亚洲Av入口| 91九九| 婷婷综合丁香| 久久九九怡红院| 2020日日干| 青青久在线视频免费观看| www.99久久久| 99ri精品在线| 97狠狠碰| 婷婷丁香色五月久久88| 国产精品人人做人人爽人人添 | 99精品热| 涩五月婷婷| 五月综合色| 日本丰满久久| 亚洲婷婷激情888精品久| 九九这里都是精品| 天堂久久精品| 婷婷五月丁香六月天亚洲综合| 亚洲色婷婷五月天| 男女99免费视频| 婷婷激情五月| www.久久久久久久久久久| 狠色狠色综合久久| 嫩草极品| 丁香花五月天| 久久激情五月网| 国产精品美女久久久久AV超清| 婷婷酒色网| 操操操操操操婷婷五月天| 六月婷婷五月丁香| 色色三级视频| 激情网战码亚洲A| 91操碰| 91ncom.色| AV操逼网| 1024国产| 高清视频一区| 婷婷五月av| 99人人干| 色婷婷综合综合网| 六月丁香色色| 色欲婷婷五月天| 久久HD| 亚洲中文av| 欧美狠狠色| 爆乳熟女一区二区三区爆乳| 成人永久免费视频在线观看| 91婷婷色 | 屁股翘好撅高迎合跪趴| www.五月天婷婷姐姐| 无码成人AAAAA毛片AI换脸| 综合久色五月| 六月成人网| 天天综合亚洲综合| 99A片| 骚。com| 97香蕉人人在线观看| 欧美狠狠色| 久色88| 啪啪婷婷五月天激情| 99热免费精品| 五月激情在线| 中文字幕成人| 国产乱子轮XXX农村| 操比激情五月| 丁香五月婷婷亚洲色图| 伊人综合婷婷| 美女五月狠狠| 9久久久| 天天色综网| 97色色综合| 日日爽夜夜爽| 伊人深爱综合| 99热www| 五月天综合久久| 色波激情五月天| 五月婷婷很很色| 亚洲色视频| 色丁香久久| 精国产品一区二区三区A片| 精久久色| 亚洲网站999| 激情五月丁香五月| renrencaoav| 9久久网| 色色色色色色网站| 日本AAAAAAAAAAAAAA片| 伊人大香蕉毛片| 婷婷涩五月| www.色窝| 五月天综合久久丁香91| 九九99热| 操笔无码| 成人色图情色成人网 www.5b5b5bcom 五月天 | 在线看九一V图片| www夜夜操| 99re思思热在线视频| 天天日色情| 亚洲黄色影视| 99热这里只有精品在线播放 | 亚洲日韩一页精品发布| 人人操av| 九九爱看亚洲| 亚洲AV综合在线观看| 丁香久久在线| 九九性视频| 99热只有精品在线播放| 操逼综合网| 国产成人网址| 五月激情网站| 婷婷丁香五月,狠狠综合| 曰曰久久| 97sese婷婷| 九九综合精品| 欧美婷婷成人| 99久在线精品99re8热| 热99玖玖99玖玖99九九| 思思热视频在线观看| 五月婷av| 最新精品视频99| 99热伊人| 精品操逼一区二区| 激情丁香五月| 亚洲愉拍99热成人精品| 五月婷婷官网色| 日日天天操| 五月婷婷性爱| 91久久久久久久91| 天天久久婷婷| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 五月婷婷无码| 五月丁香激情综合| 五月综合777| 中文精品在| 久草九一| 丁香五月成人婷婷| 涩五月色婷婷| 五月综合激情综合久| A一级操| 久久新地址| 五月婷免费视频| 1024成人免费看| 777影视理论片大全在线观看| 91超级碰碰碰| 超碰成人在线观看| 综合久久高清| 51avj视频大全| 综合网五月天123| 天天摸,天天爽| 在线观看熟女少妇| 中文字幕av在线| 五月天婷婷情色| 久久综合五月| 狠狠爱深色婷婷综合| 国产美女无遮挡裸体毛片A片| 久热9| 国产在线黄色| 殴美日比视频| 五月天激情视频| 99视频这里有精品免费观看| 91热er| 激情丁香淫荡婷婷| 99人这里只有精品| 色天天久婷婷| 婷婷五月天亚洲激情戏精品| 五月激情另类| 五月丁香激情五月天| 在线播放成人网站| 色五月大香蕉| 综久久久| 百度4399有码精品V在线观看| 婷婷五月激情综合啪啪| 婷婷第一页| 亚洲午夜Av| 亚洲激情综| 另类图片色五月| 国产a视频| www.com亚洲网站在线免费| 极品另类| 嫩草视频在线观看| 怡红院 久久| 婷婷六月丁香在线| 五月婷婷丁香| 久热黄色| 狠狠五月激情在线| 伊人久久婷婷| 天天色综合色| 九九这里只这里只有精品| 就爱日五月天| av操B网站| 嫩草视频。| 日亚二欧美| av色婷婷| 色国产五月| 婷婷五月激情欧美大胆视频| 欧美成人A片AAA片在线播放| 亚洲精品在线视频| 色综合五月天| 亚洲乱码日产精品BD| 99热99日天天干| 操逼三区| 《诡秘之主》在线观看| 久久五月网| 久热伊人9| 99热综合| 五月天久久www| 直接看的av| 五月丁香啪啪啪| 激情内射人妻1区2区3区| 97碰碰草| 久久作爱| 五月天久久www| 99只有这里有精品在线视频| 丁香五月婷婷在线| 伊人喵咪a V| 操比激情五月| 五月丁香视频色色| 五月开心婷婷中文字幕| 天天开心婷婷丁香五月| 人妻精品久久久久久| 婷婷五月色综合| 欧美搡BBBBB摔BBBBB| av在线观看网址| 人妻av在线| 激情五月,深深爱五月| 超碰人人91| 亚洲AV网站| 久久五月婷天天干| 另类综合激情| 激情五月天免费视频| 丁香激情四射| 精品9197碰| 182TV亚洲| 96人人操人人操人人| 六月婷婷在线视频| 日韩成人免费电影| 色综合77777| 玖玖爱资源站| 操啊操av| 99re最新地址| 五月婷婷激情中文字幕| 国产欧美性成人精品午夜| 色色色在线观看| 丁香六月毛片| 久久亚洲婷婷| 婷婷五月天桃花网| 日本三级中文字幕| 这里只有精品视频一区| 色99在线视频| 亚洲视频1区| 欧美日韓成人亚洲精品另类| 五月天久久综合| 日日夜夜天天| 欧美精品99| 天天激情| 婷婷色色综合| 色婷婷五月天天天天天| 久热一本| 激情五月婷婷啪啪| 婷婷五月天日本无码| 99久久久99久久91熟女| 五月婷婷丁香综合| 天天干天天干天天干天天干天天干| 丁香六月激情| 欧美99视频| 五月天亚洲色| 97婷婷五月| 五月婷婷久久爱| 99视频在线| 欧美色色色色色| 97在线视频观看| 久久婷婷五月天| 久热视频97AV在线观看| 狠狠色丁香婷婷综合久久97AV| 国产.亚洲.欧洲视频在线| 超碰永久在线| 婷婷五月综合啪| 亚洲V国产V欧美V久久久久久| 91ncm视频| 五月天国产| 不卡的AV网站| 五月婷婷熟女| 丁香五月激情五月| 五月丁香六月在线欧美| AV在线观看网站| 五月天激情四射网站| 五月婷综合| 综合日本婷婷| 色婷婷六月丁香综合欲精品| 最新无码专区| 五月成人网天天| 天天爽天天| 全亚洲最大的婷婷五月天网站COM| 五月色综合网| WWW.国产| 久er免费视频| 久色激情| www色婷婷久久综合久色| 天天色天天日| 国产精品久久99| 五月婷婷六月丁香在线| 婷婷丁香五月天哟啪| 天天天操天天天日| 91主播在线| 五月婷婷啪啪啪啪| 综合欧美五月婷婷| 天天日天天做天天操| 超碰99热精品在线| 欧美婷婷色五月| 日韩 mm 不卡| 97色色色色色| 欧美婷婷精品激| 99热亚洲| 97干欧美| 五月丁香成人网| 99久久国产宗和精品1上映| 免费观看全黄做爰的视频| 99久久综合网| 9久热在线视频| 草五月| 亚洲人成网站999久久久综合| 激情综合激情综合| 亚洲在线操| 99热这里只有精品首页| 97碰碰人人| 超碰在线国产| 亚洲六月婷| 五月婷婷丁香五月| 91丨九色丨白浆秘| 人人干人人干骚美女| 天天操夜夜操| 中文字幕婷婷五月天在线观看| 996黄色片| 日本色99| 梁铮版《蜘蛛女侠》在线 | 超热久碰.com| 五月久久婷婷丁香| 色五月婷婷狠狠撸| 热99在线| 五月婷婷中文网| www.91AV.com| 五月激情综合网| 99re这里只有精品视频6| 亚洲精品国产熟女久久久| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 激情文学五月丁香六月婷婷| av国产精品偷| 欧美日朝成人| 99在线观看视频免费| 思思热这里只有精品| 思思热热久久| 欧美性爱中文字幕| 久久综合九九| 婷婷五月天成人小说| 粉嫩av蜜桃av蜜臀av| 五月婷婷六月色| 色色综合网络| 97婷婷丁香五月天激情图片| 人人爱人人草| 九伊人网| 天天干,夜夜爽| 婷婷五月18永久免费视频| 五月丁香大相交| jiZZdr| 色青青视频| 天天综合网~91综合网| 99在线精品免费视频| 五月天综合| 婷婷五月天AV激情| 狠狠 久久| 9 1超碰九色| 日日夜夜天天爽| 日本熟妇精品99| 超碰2021| 五月天综合视频| 日本在线视频手机播放五月婷| 九九色婷婷五月天| 婷婷五月激情综合| 丁香六月伊人| wuyuedingxiang99| 五月丁香六月综合图| 欧美婷婷综合| 亚洲XX日本| 久久综合性| 1囯产午夜仑鲁鲁| 五月婷婷,六月丁香| 亚洲热久久| 婷婷五月天 偷拍| 欧美色色色色色色| 激情五月成年| 99爱在线视频| 99精品视频在线观看| 日逼免费视频| 激情小说婷婷小说| 狠狠爱婷婷五月天| 久草热久草在线视频| 婷婷久久色| 色情激情五月| 丁香婷婷精品视频| www.婷婷,com| 在线播放 精品| 成人做爰A片免费看视频| ww久久| 六月五月久久丁香| 久久99免费视屏| 99久精品视频| 丁香五月天社区婷婷| 91紱請| 99精品在线播放| 久久五月婷婷丁香| 99色亚洲| 婷五月天在线草| 久久色五月| www.久久99精品| 九九九激情综合| 99操视频| 五月丁香免费看| 日韩狠狠色| 99色综合| 六月激情久久| 五月天婷婷婷| 亚洲无码www| 九九伦子片| 精品一区久热| 综合欧美五月婷婷| 五月丁香欧美综合| 久久婷婷在线| 91啪级电影| 丁香婷婷免费| 婷婷成人综合免费视频| 色情五月天小说| 亚洲AV无码影院| 日本在线观看99| 国产99久久久国产精品免费看| 婷婷丁香五月综合| 婷婷亚洲天堂| 激情五月天色色网| 婷婷五月天社区| 天天射影院| 六月综合婷婷开心伊人| 91啪啪| 丁香桃色网| 五月婷婷无码专区| 婷婷丁香五月视频| www.狠狠狠.com| 情婷婷五月天在线| 婷婷综合成人五月天| 偷偷狠狠久久婷婷五月天| 日本妈妈乱| 亚洲色激婷| 色久五月| 五月天播播综合| 久久久久久久久99精品| 丁香婷婷久久综合在线| 欧美熟妇一区二区三区| 九九热婷婷| 久艹伊| 久色激情| 中文字幕在线免费观看视频| 人人操97| 色五月婷婷 成人| 天天综合插插| 婷婷色天香| 色之综合网| 丁香涩涩五月天| 亚洲第精品| 99热这里只有免费精品| 五月天色婷婷伊人网| 丁香五月Av| 成人av在线电影| 欧美99热| 激情五月天婷婷播播久久综合91 | 六月丁香婷婷色狠狠久久| 外国碰视频网站97| 婷婷五月亚洲激情| 亚洲色色色色| 久久爱婷婷| 欧美丁香五月97色| 色色无码| 欧在线一区| 超级碰碰视频无码| 人人搡人人| 99国产小视频2013| 欧美性爱5月天天天看| 五月天婷婷小说| 青草五月天| 熟妇高潮一区av| 99人人操人人操人人精| 九九热a| 久久久久亚洲AV无码网影音先锋| 96精品久久久久久久久| 另类的婷婷| 99热日本| 色狠狠999综合网| 这里只有精彩亚洲视频推荐| 狠狠狠狠青草| 欧美va视频| 九九国产精视频| www色综合| 美国十月色婷婷在线观看| 99综合网| 成人视频免费观看高清完整版在线观看| 丁香婷婷婷婷十二月在线观看视频| 九九综合伊人| 色 五月俺去也| www.婷婷| 国产乱子轮XXX农村| 国产肏屄大片| 五月天久久婷婷婷| 少妇综合网| 人妻体体内射精一区二区| 国外亚洲成AV人片在线观看| 99久久综合狠狠综合久久| 亚洲天堂爱爱| 五月天色视频| 色五月人妻| 狠狠色噜噜色狠狠狠综合色 | 激情五月婷婷| 久久99大全| 婷婷中文字幕版| 久操人妻| 婷婷婷久久| 91精品91久久久中77777久久玖玖九九 | 婷婷综合在线播放| 综合激情五月丁香9999久久精| www.天天日| 国产精品久久久久久久久久 | 九九久久这里只有精品XB| 九九干视频| 亚洲日比视频| 五月丁香日本在线视频观看| 五月天婷婷综合| wwwav大香蕉| 激情欧美婷婷| 婷婷五月天综合网| 97自拍视频在线| 久久91久久91色欲精品| 五月天激情日色在线| WWW,五月| 久久久欧美精品sm网站| 天天做天天爱天天爽在| 色色综合网站| 欧美A A A A A| 五月丁香六月激情综合网| 五月婷六月天| 婷婷五月在线视频| 91夫妻网站九色| 婷婷五月丁香综合| 成人羞羞啪啪 全 视频| 久久久久婷婷| Www.久久| 99热在线中文字幕| 开心五月深爱激情| AA片在线观看视频在线播放| 婷婷五月大香蕉| 婷婷五月天激情五月天| 大香蕉久操| Av在线资源| 狠狠干激情五月| 色噜噜狠狠色综无码久久合欧美| 精品成人久久久久久久_一二三四视| www.五月天婷婷姐姐| 色色色网站| 99热9| 91精品婷婷国产综合久久| 五月婷婷色啪| 免费视频99| 久久天堂色| 亚洲操b| www久视频com| 丁香五月影院| 深爱五月最新网址| 99热66| 天天射影| 亚洲av网站| 激情婷婷五月| 日韩色色色色色| 六月丁香婷婷开心综合基地| 色噜噜狠狠色综合日日| 开心久久xxx色| 丁香色成人| 国产精品视频| 99精品一二三四视频| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 色综合色色| 99精品热视频只有精品10| 丁香五月天激情视频| 日本久久人| 岛国AV网| 五月综合激情久久| 先锋av性爱成人电影| 国产午夜精品一区二区三区四区| 亚洲AV日韩在线观看| 夫妻超碰在线| 丁香六月婷月91婷月| 人人爱人人添| 久久99综合| 欧洲亚洲午夜| 人人爽亚洲| 99热在线播放| 亚洲区,视频区,视频区免费| 桃色激情婷婷伊人网| 精品久热69| 五月天偷拍| 51成人| 婷婷噜噜| 激情内射人妻1区2区3区| 91九九热| 日日想日日夜日日操| 日日操日日撸| 琪琪色综合网站| 婷婷,五月天,丁香,第一| 99热在线观看| 任我干视频在线观看| 久热婷婷| 看片视频在线免费日产在线看| 久99| 色九月欧美| 婷婷五月亚洲一本在线丁香| 9久久久久久久久久久| 五月色婷丁香| 天天干、天天日日| 丁香在线视频| 丁香五月熟女| 26uuu91| 六月丁香网| 色视频2025| 综合在线色婷婷| 五月丁了香蕉综合| 久久婷婷五月天综合| 久久久av久av久片一区二区| 99热这只有| 五月婷婷色影院| 丁香五月社区| 久9久9久9久9久9久9|