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

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
返回資訊列表
五月天色婷婷小说| 婷婷香五月天| 亚洲婷婷婷| 在线1青婷| 3p九色在线| 人人舔天天| 亚洲综合婷婷| 热99久久这里只有精品| 婷婷六月偷拍| 色婷婷激情四射视频| 99免费青青蜜臀| 色婷成人狠干| 五月丁香激情四射| 国产99美少妇| 碰超亚洲| 一级精品999WWW| 欧美日韩五月婷婷| 色婷婷五月综合| 如何安全看伊人婷婷| 久婷婷| yellow视频在线观看91| 久久久五月天| 99久久玖玖| 99热精品超碰| 午夜婷婷久久| 伦乱美欧| 香蕉中文在线| 九九热最新地址| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 久久9视频欧美| 操一区| 九九热在线观看视频| 久久狠狠欧美| 一级黄在线| 五月丁香婷爱在线| 久久久人妻人伦| 久热这里| 天天噜| 亚洲欧美成人在线| 99爱在线观看视频| 99在线观看视频免费| 丁香五月激情综合| 视频一二区| 五月天激情综合网俺也去| 激情五月天综合网| 丁香六月婷婷综合缴| 综合色色婷婷| 久久香视频| 亚洲AV网址| 天天爽—爽| 99精品九九| 婷婷五月香蕉| 五月婷婷人妻| 99久在线视频| 91干99| 五月天久久综合| 久久伊人大香蕉| 中文字幕1区2区。| 97婷婷五月| 啪啪婷婷五月天激情| 激情五月丁香五月| 日本婷婷| 婷婷综合网在线| 久久久精品99| 五月天成人免费视频| 五月丁香狠狠地噜噜噜噜| 草草影院爱爱| 亚洲视频图片婷婷五月| 精品九九视频| 五月天五月色婷婷综合| 色婷婷AⅤ| 色情综合| 综合婷婷| 99亚洲精品| 狠狠狠狠狠狠草| 亚州婷婷五月激情综合| 亚洲最大成人综合网720P| 91男人资源站| 草做免费在线观看| 激情播丁香| 干一干xxxx| 丁香五月婷婷免费视频| 亚洲黄色影视| 九九av| 五月丁香婷婷潮喷中文字幕| 五月天伊人日日噜影片AV| 久Se视频在线观看| 日韩无码人妻一区二区| 丁香婷婷五月综合欧美另类| 偷偷与邻居做爰完整视频| 久久六月天| 天天干天天射综合网| 激情婷婷丁香五月天小说| 久久一品区| 91激情五月开心| 色色性爱视频| 日韩操人| 国产人人操| 五月天婷婷青青草| 射满了还射免费在线观看 -午夜版全集-新视觉影院 | 欧美性猛交 XXXX 乱大交| 超碰只有精品在线| 99热这里只有精品1025| 色综合色综合网| 激情五月婷婷开心网| www色五月| 色色综合网站| 97干婷婷| 天天擼久久擼在线| 大香蕉AV在线| 九九九九九九综合| 久久人妻情侣| 亚洲精品成人| 色婷婷情片| 国产激情视频在线观看| 俺也去在线视频| 久久99操| 五月丁香888| 五月婷婷啪| 丁香五月激情宗合网| 色五月婷婷五月久久| 狠狠干婷婷| 色播丁香| 天天综合网在线| 九月丁香| 色A网| 九九黄色网| 日韩不卡DvD| 欧美三级欧美一级| 五月丁香网视频| 五月婷婷久久综合| 98毛片| 五月丁香婷成人网| 五月天成人网婷婷| 色色色.COM| 九九免费精品| 五月天丁香| 丝袜大香蕉| 五月天婷婷影院影院| 亚洲精品久久久久久久久久飞鱼 | 开心五月六月婷婷| 婷婷狠狠色| 婷婷五月色| 大香蕉娱乐| 夜夜天天天天天干天天爽| 在线另类视频| 五月丁香色婷婷色| 99色在线| 婷婷久久18| 激情久久五月网| 99久久久免费| 久久五月天视频| 五月激情网站| 婷婷94s| 成人无码精品1区2区3区免费看| 欧美色必爱| 五月丁香六月婷婷啪啪综合| 欧美婷婷综合| 99这里是99在线视频| 99这里只有精品| 婷婷操无码| 五月丁香怕啪啪| www.五月婷婷.com| 色婷婷久久综合久色综| 天天肏高清在线| 97操碰免费视频| 深爱激情九九五月天 | 九九热视频精品2| 久色大| 五月天大香焦| 毛片色五月| 丁香性爱在线视频| 区区欧美你爱| 成人在线观看一区| 久久精品五月天| 久久宗合影| 五月婷亚洲精品| 天堂久久久久天堂网| hd五月婷婷在线| 亚洲精品字幕在线观看| 婷婷成人丁香色情基地30 | 色色五月天网站| 天天综合五月天| 五月婷av| 色播播之激情五月婷婷| 久久这里有精品视频在线免费观看| 久久爱婷婷| 激情九月婷婷| 六月五月天婷婷涩播在线| 九九色天堂| 激情视频网址| 丁香六月婷婷一区二区三区| 六月丁香啪啪| 99热天堂| 青草激情在线| 五月丁香啪啪啪| 国产人妻777人伦精品HD| 综合日本婷婷| 婷婷美女精品视频| 青青草五月天| 日本99热| 久久人妻在线| 五月天成人综合| 停停色综合伊人| 99免费在线| 丁香五月色| 伊人婷婷五月天| 色五月av伊人| AV六月丁香| 婷婷综合五月色播| 狠狠色色综合| 精品人妻伦九区久久AAA片| 99热骚货| 91综合色| 午夜成人片400| 人人人操97| 欧美丁香五月| 免费精品66| 婷婷五月天免费99| 亚洲综合视频网| 丁香亭亭久久| 激情婷婷网| 久久婷狠狠色| 欧美综合五月丁香五月天| 五月婷丁香久久综合| 婷婷五月天综合AV| 久久99久久99精品免视看婷婷| 婷婷丁香五月社区亚洲| 97精品综合| 色综合五月在线| 亚洲天堂青草| 色狠狠色噜噜AV天堂五区| 久久亚洲激情五码| 五月色综合| 五月激情在线| 婷婷综合视频| www激情网| 在线成人视频免费| 婷婷99视频在线| 中文成人在线| 丁香色综合| 婷婷精品在线| 天天日P天天射P| 人妻内射视频| 欧美大道不卡| 欧美成人精品老美女噜噜噜| 九九国产视频| 9超碰在线| 婷婷五月av| 婷婷九月色| 欧美日韩国产一二区| 色五月丁香一区在线| 婷婷香五月天| 蜜乳9188| 在线播放成人网站| 99热99热在线观看| 老美AA片| 巴基斯坦粉嫩无码视频| 丁香花狠狠婷婷亚洲中文字幕| 丁香婷五月| 久热99| www.激情.com.| 超碰在线人妻| 色之综合网| Av狠狠色丁香婷| 日韩在线一级| 亚洲色综久久五月| 婷婷五月在线观看| 婷婷五月天性色| 第六色在线| 丁香五月天堂网| 五月花婷婷在线精品视频| 激情综合网五月激情| 天天综合情| 亭亭五月色男人| 五月天大香蕉| 色情成人五月天| 五月婷无码| 性爱综合网| 五月激情另类| 五月婷婷色欲| www.思思99热| 色护士综合| 婷婷狠狠色| 色99无码| 四色永久成人网站| 丁香五月婷婷六月婷| 色999;丁香五月| 另类色网| 97啪在线观看视频| www.夜夜操.com| 成人综合AV| 色99在线观看| 内射激情在线| AV免费在线网站| 色五月婷婷影院| 色狠狠色综合久久久绯色AⅤ影视| 六月99天天婷婷激情综合| 日韩无码专区| 小香蕉av| 少妇人妻人伦A片| 五月婷婷啪啪网| 一起草性爱不卡视频| 丁香五月天激情五月天激情五月天激情网| 丁香婷婷激情| 99re在线这里只有精品视频首页| 4399在线观看免费高清黄色视频| 五月天激情图片| 亚洲99手机免费看视频| 大香蕉人人人| 成人精品视频99在线观看免费| 五区毛片七区毛片| 激情综合网五月丁香| 人妻av在线| 色噜噜在线| 国产婷婷久久| 丁香五月激情啪啪| 99久久婷婷国产综合精品青桔| 99色在线观看| 亚州视频九九99| 久热这里只有精品66| 色婷婷香蕉丁丁网| 激情五月小说婷婷| 亚洲AV成人在线| 婷婷伊人五月天| 亚洲综合婷婷| 美女被操一区二区| 九九婷婷综合| 就爱干 在线| 丁香五月 六月婷婷首页| 九色色| 色 色 色综合com| 久久婷婷五月天综合| www.minyis.com【JT】实力收量可预付QQ2101460746 | 色色亚洲| 色婷婷九月| 国产真人做爰视频免费| WWW·色色色·COM| WWW.夜夜操.com| a69在线视频| 色爱终和网| www.狠狠| 在线看的免费网站| 婷婷玖玖丁香| 这里只有精品99视频| 色5月婷婷| 久久草中文日韩欧美| 天天干天天插| 亚洲AV永久无码影院黑人 | 五月天播播中文字幕| 久操热| 色www久视频| 色噜久| 色五月婷婷 成人| 国产精品色一哟哟| 日韩成人网址| 丁香五月 性爱| 96精品久久久久久久久| 婷婷五月激情在线| 狠狠色综合网| 野外99热| 亚洲九九九九| 1024日韩| 五月丁香六月婷婷综合| 婷婷五月天,影院| 直接看的AV| 色999;丁香五月| 色停停影院五月天| 天天 日综合| 五月天婷婷影院| 狠狠干狠狠干| 亚洲视频五区| 噜噜网免费视频| 中文AV网站| 91色色五月天| 天天肏在线观看| 丁香婷停五月激情综合深爱| 日韩色色视频| 91人人操人人爱| 五月天激情婷婷丁香| 91avse| 色色色色色九九九九九| 亚色网站小视频| 国产成人高清| 丁香五月婷婷欧美成人色图| 五月天激情Av| 国产69久久久欧美黑人A片| 婷婷99丁香| 国产精品久久久60086| 亚洲天堂热| 男人天堂AV在线一区二区| AV美美午夜| 久久99热这里只有精品| 五月婷婷婷色| 这里只有精品在线看| 日本天天色| 久久久999精品| 99A片| 久久se 综合网 | 久久九色| 天天综合色丁香| 爱草人视频| 五月天国产婷婷精品视频在线| 伊人网色婷婷五月天| 五月丁香色五月| 婷婷丁香五月天欧美| 人人澡玖玖一| 九九综合色| 99久久综合网| 成人操呦av| 99色综合网| 狠狠色丁香五月婷巨| 色狠狠五月天| 亚洲色婷婷激情| 九九热视频首页/这里只有精品| 色情婷婷| 五月丁香WWW| 日本不卡高字幕在线2019| 久超超碰| 一本色道久久综合狠狠躁一二三| 风流少妇A片一区二区蜜桃 | 欧美va在线| 亚洲黄色av网站| 色99欧洲色19| 婷婷丁香五月天熟女丝袜| 九九亚洲视频| 九九视屏| 人妻熟妇国产精品| 亚洲在线综合| 五月停停999| 日本欧美999久久久三级片| 色色 9| 狠狠狠狠青草| 性天堂久久| 91人操| 成人午夜无码视频| 五月婷婷综合网在线播放| 激情丁香五月| 亚洲第一精品成人999久久精品| 日操熟女| 丁香五月激情网| 天天日夜夜欢| 丁香激情网| 人人舔人人色人人高潮| 六月婷综合| 五月丁查人人| 超碰免费成人| 国产古装妇女野外A片| 婷婷五月天激情视频| 亚洲99精品九九在线| 97五月天婷婷| 婷婷综合色| 丁香六月综合激情| 五月丁香激情婷婷综合| 久久色五月天| 五月天婷婷综合| 色婷婷丁香特级性爱视频| 婷色综合| 五月天大香蕉| 99久久久国产精品免费蜜乳tv| 婷婷狠狠爱| 综合久久影院| 色色aⅤ網| 艹色18p| 五月停亭六月,六月停亭的英语| 婷婷五月色花丁香社区| 日韩成人影片在线观看| 成人在线视频网| 伍月激情天| 国产婷婷久久| 伊人无码高清| 婷婷情色五月天| 天天爽夜夜爽夜夜爽精| 99热精品网| 99色婷婷| 亚洲精品激情| 狠狠色狠狠干| 99热久97| 91久久精品国产91性色TV| 五月婷婷在线视频观看| 五月情婷婷五月| 丁香综合久久| 激情五月综合色婷婷| 性爱技巧五月| 日本婷婷| 亚洲五月婷婷| 五月婷婷免费在线观看| 久操人妻| 9婷婷内射| 99精品偷自拍| 久久HD| 亚洲人妻一区二区 | 888久久久| 精品九九在线观看视频| 五月婷婷成人| 天堂网亚洲色图| Xx色综合| 国产成人综合在线| 久久久九九视频精品18| 中文字幕簧片| 五月天激情影院| 国产AV一区二区三区最新精品 | 色五月天丁香婷婷| 色婷视频| 激情综合色婷婷啪啪五月天| 中文字幕婷婷五月天| 婷婷性色| 婷婷激情六月中文| 青青草原爱爱网| 操91| 成人丁香色| 新激情五月开心五月婷婷五月丁香五月| 丁香五月成人社区| 日本三级第一页| 九九机热| 激情综合丁| 九九热只有这里精品| 2016日日夜夜操| 亚洲AV日韩在线观看| 激情五月综合网| 久热九九| 成人av免费观看| 五月丁香六月婷婷欧美综合| 欧美大片免费观看| 丁香六月婷婷综合麻豆| 色区久久| 婷婷色五月综合丁香| 婷婷精品在线| 影音先锋色婷婷| 九九热婷婷| 国产色丁香| 99热综合| 九九色逼| 九九av| 婷婷激情综合网| 成人婷99最新| 99爽视频| 久久网日本| 久久最新色| 99亚洲色| 99成人精品视频| 婷婷爱五月天人人爱| 欧美亚洲婷婷五月| 婷婷五月天激情影片| 天天插轮理| 高清无码 一区 二区 三区| 五月天激情Av| 中国女人做爰A片| 久热这里只有精品在线观看 | 伊人婷婷五月天| 亚洲色综合色网| 久久婷婷东京热大香樵| www超碰com| 五月婷狠狠| 91干99| 婷婷久久婷婷| www.五月天色色.com| 91AV婷婷| 中文字幕丰满乱孑伦无码专区| 色九月| 亚洲色婷婷色| 丁香五月天啪啪激情综合网| 日本色色色| 日本色五月婷婷| 综合色影院| 婷婷大香蕉| 五月综合色| 国产无套精品一区二区| 九九九AAA热视频| 亚洲成人九九九| 激情婷婷五月综合| 婷婷丁香五月色| www.91婷婷| 色婷婷av在线观看| 欧美色六月婷婷| 九九精品9| rr天天操| 碰碰91| 丁香六月婷婷社区| 久久婷婷内射| 一本久久亚洲五月婷婷| 五月天伊人综合| 丁香婷婷色九月| 丁香五月婷婷五月| 免费在线观看av网站| 婷婷五月丁香香蕉| 丁香五月天激情五月天激情五月天激情网 | 特黄三级片| 色婷婷成人在线| 亚洲激情免费视频观看| 99精品在这里| 色婷婷激情视频| www.五月天色色.com| 丁香五月婷婷呀| 亚洲视频99| www.五月天婷婷| 色呦呦在线| 久久er+| 久久婷鲁| 婷香五月激情视频| 亚洲激情免费视频| 天天久久狠狠色综合| 在线观看免费人成视频无码| 六月婷婷五月丁香| 亚洲精品视频在线播放| 婷婷桃色网| 久久综合99| 久久久久人妻中文| 97色啪| 99色色热热| 激情综合文学| 操操天堂| 五月WWW| 久久HD| 超碰熟女农村在线69| 久久久999精品| 色综合久久久久久久久五月| 色播综合| 婷婷久久在线| 久久精品一区二区三区四区| 欧美精品99| 天天摸天天高潮天天爽| 青青热视频| 久久99免费视频| 思思热在线视频精品| 狠狠五月天婷婷激情网。| 另类专区在线观看| 青青艹b| 精品一二三区久久AAA片| 激情五月天久久丁香| 亚洲mm色| www.色婷婷.com| 超碰在线人人| 色五月综合激情网| 成人片在线播放| 五月份婷婷| 五月婷婷在线综合| 五月天丁香婷婷视频网址 | 色播婷婷五月天| AV网址大全在| 五月丁香亭亭天天舔| 亭亭玉月丁香| 1024日韩| 变天就操逼婷婷五月| 狠狠色综合网| 亚洲操逼片| 激情综合网五月婷婷| 亚洲性爱99| 99操碰| 在线观看亚洲AV| 婷婷激情六月中文| 亚洲无码另类| 久久婷婷影院| 欧亚洲在线高清视频| 情色婷婷五月天| 国产成人AV在线播放| 开心五月网| 五月丁香A片| 丁香六月婷婷综合在线| 亚洲av另类在线观看| 3p日韩网站视频| 亚洲操操操| 人妻久久做| 人人干av| 综合亚洲五月天| 午夜丁香| 色婷婷五月天天天做| 亚洲综合在线视频| 综合五月亭亭9| 无码激情AAAAA片-区区| 这里只有精品在线播放| 丁香情色五月| 色婷婷激情五月天| 成人五月天。COM| 五月伊人婷婷| 色蜜婷婷| 亚洲超碰在线| 99热香港| 超碰婷婷色| 丁香综合网| 色约约视频一区二区三区四区五区| 婷婷激情六月天视频| 九九艹女| 天天日天天爽| 在线色色| 疯狂做受XXXX高潮A片| 色小说婷婷五月天天天| 99色色最新视频| 99在线视频网址在线观看| 五月婷婷伊人在线| 91视频人人做97| 婷婷色在线观看| 婷婷五月丁香五月丁香| 久久大香蕉丁香| 色色色色色网站| 中文字幕av在线播放| 五月婷婷,六月丁香| 婷婷激情五月| 激情内射人妻1区2区3区| 国产精品婷婷午夜在线观看| 嫩草视频观看| 欧美成人精品A片免费一区99| 丁香色啪综合| 丁香五月天堂网AV| 日日操日日撸| 这里只有精品视频一区| 国产综合婷婷| 色婷婷在线视频| www.狠狠色.com| 在线sebiav精品视频| AV在线观看网站| 天天草天天爱| 色色五月丁香婷婷综合| 人人摸人人摸| 五月丁香婷婷激激激综合网色播| 蜜桃婷婷狠狠久久| 1024人妻| 激情网综合| 人人人人人人人草| 天天视频亚洲| 超碰99热精品| 大香蕉久操| 99热综合| 九九综合视频在线观看| 丁香婷婷五月天成人| 九热视频| 丁香六月伊人| 婷婷精品在线| 欧日美女Va| 俺去也在线www色官网| 五月天婷婷青青草| 五月婷六月| 91 九色 入口| 国外亚洲成AV人片在线观看| 91超碰在线播放| 伊人久久五月天| 国产色香蕉精品五夜婷| 亚洲AV另类| 久久草人妻| 天天色激情| 日本一道久久| 六月色丁香婷婷| 久久总和99| 久婷婷久草| 色综合天天| 色婷婷丁香五月| 婷婷五月六月| 多精窝99在线视频| 99精品视频网| 99热的无码| 黄色五月婷婷| 国产肥白大熟妇BBBB视频| 五月丁香偷拍| 婷婷丁香成人在线视频| 99视频激情四射| 免费看欧美成人A片无码| 99内射视频| 加勒比色色| 夜色综合网| 在线看的免费网站| 色婷婷婷婷| 成人婷99最新| 人妻丰满精品一区二区A片| 99精品国产热久久91色欲| 婷婷五月激情视频在线| 久久久999精品| 性爱激情久久| 色五月婷婷狠狠撸| 久久五月婷婷电影| 六月丁香婷婷综合影院| 狠狠色婷婷综合开心影视| 色婷婷基地 | 天天色粽合合合合合合合| 激情性爱五月天| 99操免费视频| 深爱激情五月天| 激情VA视频| 天天操天天日天天操| 激情网 五月天| 蜜臀av无码久久久久久久久 | 91dy.av| 日韩黄黄| 日本精品。999| 色欲操| 六月婷婷六月天天在线免费| 丁香5月激情网| 亚洲激情视频在线观看| 97AV在线视频| 东京热免费视频| 婷婷丁香五月91| 五月丁香色综合| 色婷婷激情四射视频| 五月天激情图片网| 91chinese 在线| 天天操天天曰天天射| 日韩高清久久| 99re热99| 99综合| 这里只有精品视频222| 色色综合成人网| 干亚洲天堂| www.狠狠操.com| 色 五月俺去也| 人妻操操色| 九九综合久久| 久久婷婷亚洲无码一起| 久久婷中文字幕| 欧美日本99| 久色五月天| 任我肏| 人人草成人视频| 五月情四婷婷| 婷婷五月六月丁香综合| AV性爱在线| 26.uuu丁香五月婷婷| 色综合婷婷| Av九九| 99精品免费| 四川女人毛多水多A片| 人妻丰满精品一区二区A片| 久久激情天堂| 婷婷开心激情| 极品人妻VIDEOSSS人妻| 中文AⅤ大全| 日本色久| 婷婷欧美综合| 五月天天综合| 天天狠天天叉| 噜噜噜精品欧美成人在线观看| 这里只有精品在线看| 久青草影院| 色婷婷操逼| 色婷婷操逼| 日日夜夜婷婷| 久鲁鲁色网| 丁香婷婷久久 | 99热99天堂| 九色啦蜜臀| 九九人人精品| 来吧亚洲综合网| 六月色激情| 在线超碰91| 色色色色色色色色五月先| 都市激情五月婷婷综合| 五月丁香六月婷婷欧美综合| 99热综合| 日韩五月婷婷久久| 超碰在线免费| 日日狠夜夜狠| 九色91视频| 五月丁香六月激情综合| 久久这里只精品66| 少妇水多A片太爽了| 亚州日本欧州韩美高青高潮一| 万月丁香狠狠爱| 婷婷五月天激情网站| 成人网站高清无码| 激情综合网址| 人人澡天天色天天做| 午夜天堂一区人妻| 天天爽日日爽夜夜爽| 在线一起草av| 亚洲无码成人| 综合五月草| 亚洲视频综合网| 久久99三级在线视频| 91大神操美女| 26uuu淫色| 综合久久十三| 久久只有18视频| 91九色中文字幕女在线观看| 精品乱码久久久久| 五月天婷婷伊人| 婷婷日本色| 五月婷婷丁香综合| 婷婷丁香五月天欧美| 久草免费福利视频| 91碰超| 99re免费精品视频| 99这里只有| 99re这里| 玖玖婷婷色五月| 伊人五月天婷婷| 国自产拍偷拍精品啪啪一区二区| 色综合久久天天综合网| 五月丁了香蕉综合| 99视频精品在线| 中文不卡一二区| 另类激情四射| 播五月婷婷开心| 色丁香婷婷| 亚洲综合网在线| 成人五月天色天堂| 激情九月婷婷| 欧美性久| www.99热视频| 色色色色色色色五月| 激情亚洲五月| 激情综合久久| 69热在线| 色狠狠综合网| 亚洲色色五月天| 久 久9 9 热 视 频| 久久激情中文| 婷婷区日本| 天天综合色| 久久视频婷婷| 色色亚洲视频| 丁香久久九九99| 亚洲日日操| 久久丁香综合精品综合| 九九色99| 五月婷婷综合激情小说| 国产日日夜夜操| 六月婷婷中文字幕| 九九热超碰| 大香蕉综合网| 日韩成人av在线| 婷婷色丁香五月| 色婷婷综合综合网| 大香蕉久久婷婷| 一片AV片免费播放| 欧美啄木乌丝袜人妻系列| 99视频综合| 五月综合精品| 日本在线观看aaa 99| 日韩精品无码99| 超碰免费观看| 天天撸夜夜爽| 狠狠干五月| 五月六月激情| 五月天激情国产综合婷婷| 日本nghangse中文字幕| 丁香婷婷视频| 久久99精品久久久久久三级| 激情五月婷婷综合色播小说| 五月天色软件| 色爱亚洲| 婷婷久久性爱| 9l视频自拍9l九色成人| 久久激情视频99| 激情综合久久| 亚洲久久婷婷丁香五月天| 69凹凸成人综合网| 99思思| 色99在线看| 思思热视频| 91青娱乐青青草| 欧美成人A片AAA片在线播放| 天天综合久久| 免费看欧美成人A片无码| A A色色| 热996精品在线观看| 秋霞AV淫| 精a品a视a频| 三级黄色大片视频| 91精品久久久久久综合五月天| 成人网页在线观看| 五月天色色网站| 婷婷丁香五月视频| 91 久热| 91久久综合亚洲鲁鲁五月天| 久思思热视频在线观看| 成人.在线日韩| 亚洲视频99| 91丨九色丨高潮丰满日本| 日韩精品999| 99这里只有精品视频在线| 九九色网专区| 亚洲99在线| 日日干五月天婷婷| 91视频综合网| 狠狠色婷婷7777久综合| 亚洲无码免费看| 亚洲AV无码电影| 久久婷婷超碰| 夜夜嗨一区二区三区直播内容 | 久久se 综合网| 国产成人AV| 免费观看全黄做爰的视频| 六月 丁香 视频| 日本91在线| 丁香六月色婷婷| 99热这里只有精品1025| 成人网站免费在线播放| 丁香五月Av| 狠狠色综合精品视频在线| www色婷婷com| WWW,五月| 天天爱综合网| 思思热AV| 五月丁香六月玩女人| 五月天色小说| 激情久久综合| 亚洲激情精品| 色色色国产| 超碰免费人人肏| 色色五月婷| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 五月香婷婷| 婷婷五月丁香网| 久久九九综合| 秋霞网在线免费基地五月婷婷丁香| 五月天婷婷色综合| 夜夜撸天天操| 欧美激情五月天在线观看| 欧美激情久| 中文毛片无遮挡高潮免费| 亚洲秘 无码一区二区三区妃光/1| 五月丁香六月婷婷不卡免费无码 | 狠狠色综合精品视频在线| www.激情在线| 九月激情综合| 亚洲精品**不卡在线播he| 五月天久久婷婷| 五月天六月色| 思思w99| 色五月天.con| 综合伊人久久| 婷婷99狠| 婷婷精品| AV电影在线播放| 九九99久久| 久久这里99| 婷婷五月天最新综合你懂的 | 激情床戏| 亚洲热热视频| 日日夜夜噜噜爽爽| 激情综合青草| 国产激情AV| 99视频日韩| 国产精自产拍久久久久久蜜| 99re在线观看| 五月丁香久人妻中文| 天天色综网| 激情五月丁香激情综合网| 99惹在线精品免费观看| 色婷婷色情| 色噜噜五月丁香婷婷| 五月久久丁香| 成人精品视频99在线观看免费| www久久久| 婷久久| 婷婷五月天激情在线| 亚洲综合色丁香婷婷六月| 丁香五月网络网络| 久久婷婷亚洲| www.色9| 婷婷丁香成人五月天| 超碰在线资源| 亚洲精品另类| 九九伦子片| 五月天婷婷激情四射综合| 婷婷色综合网日韩国产| 久草婷妨| 婷婷久久在线| 狠狠爱五月婷婷| WWW.婷婷五月天.COM| 九九99九九99九九99视频网| 久久久噜噜噜久久人妻| 综合激情五月丁香| 99爱视频在线| 色优久久| 岛国在线观看91| 1024AV视频| 日本黄色精品| 婷婷五月电影| 五月丁香综合激情| 91啪啪视频| 超碰99在线| 天天色综合天天| 丁香婷婷五月天校园春色| 99综合视频在线| Av性爱网站| 丁香五月婷婷成人综合| 五月总合激情网| 深爱丁香网| 色天天综合色| 天天狠狠色综合| 亚洲AV色婷婷人禽五月天| 九九免费视频| 人人摸人人干| 天堂A∨在线| www.minyis.com【JT】实力收量可预付QQ2101460746 | 激情淫乱男女| 色在线99| 中文字幕在线免费观看视频| 97色色色色| 久久视这里只有精品| 亚洲天天免费| 五月天黄色激情小说| 精品九九视频| 五月开行婷婷色五月| 色欲一二三| 久久婷婷五月丁香网| 欧美va在线| 97色色色| 黄网在线免费| 男女啪啪视频久 9| 91色干| www超碰| 91啪级电影| 日婷婷久久开心| AV在线中文| 日本天天色| 青青久久五月天丁香婷婷| avv在线| 天天综合天天做天天综合| 人人爱国产| 91人人超碰在线| 亚洲精品大片| 婷婷不卡基地| 96性爱视频| 亚洲综合成人网| 综合色吧| www.狠狠艹| 97精品人人A片免费看| 思思热闹这里只有精品| 九九热视频99| 91九色欧美| WWW,五月| 内射在线CHINESE| 丁香婷婷六月婷婷六月婷婷六月婷婷| 99久久精品国产色欲| 五月天激情日色在线| 精品久久久久久久久久久久人妻| 亚洲综合另类| 91人人人人人| 丁香花五月天| 99色爱| www.五月激情红色| 影音先锋日本三级资源| 森林影视大全,最好看的2019年视频 | 99久久久久久久| 开心婷婷五月| 99热销国产这里有精品| 激情丁香五月| 国产成人AV在线播放| 五月婷婷激情网| 综合性爱网| 亚洲在线资源| 婷婷五月天影院| 丁香六月激情国产| 亚洲色五月天是什么| 亚洲熟女色| 99久久婷婷国产综合亚洲| 丁香综合伊人| 伊人久久大香网| 丁香婷婷久久综合在线| 丁香五月天人体| 99这里有精品| 婷婷97碰碰| 老司机伊人| 久久激情综合| 激情5月婷婷| 五月婷婷六月丁香色| 五月丁香毛片| 大香蕉婷婷五月天| 九九99在线观看视频| 极品人妻VIDEOSSS人妻| 开心五月综合激情综合五月| 丁香婷婷浪潮AV久久综合| 99这里只有精品视频| 伊人网碰碰| 天天插天天爽| 日逼影音先锋AV男人资源站| 色99在线观看| 久久网日本| 日本三级日本三级99| 丁香六月无码播放| 国产成人综合亚洲| 婷婷五月天激情在线观看 | 成人色站,在线视频,看片-SS1AV| 亚洲精品亚洲人成人网| 五月丁香网站| 可以免费观看的AV| 色五月综合97| av性爱网站| 色吧网综合| 欧美啄木乌丝袜人妻系列| 亚洲视频在线网站| 天天综合.com| 中文字幕欧美日韩VA免费视频| 丁香五月婷婷六月婷婷| 婷婷操逼| 激情五婷网| 国产精品久久..4399| 热五月婷婷| 色婷婷9| 久久综合丁香| 五月丁香久久网| 五月丁香色| 9l视频自拍9l九色成人| 六月丁香久久| 丁香六月欧美| 思思99热热热99| 六月婷婷五月丁香| 99思思在线视频| A久久| 91啪级电影| 在线综合亚洲欧美65| 色色cOm| 九九久久污| 久久思思热| 九九热10| 久久99热这里只有精品| 五月花综合网| 福利视频在线播放| 99热99这里有免费的精品| 97午夜一区二区| 激情伊人五月天| 天堂五月婷婷| 久久婷婷网站| 亚洲 综合中文| 少妇水多A片太爽了| 亚洲综合色五月| 综合色天天| 一区二区三区四区五区| 99热自拍| 九九久久99| 日韩啪啪视品| 天天做天天爱| 综合色色婷婷| 色99视频| 中文字幕久久一区二区三区 | 伊人干练久| 日本nghangse中文字幕| 五月丁香六月婷婷激情网| 91美女被操| 在线只有精品| 91久久婷婷人人澡草 | 激情综合网婷婷五夜| 日日爽日日| 人人97碰| 五月婷婷深深爱| 丁香激情综合| 亚洲综合1024| 青青草国产亚洲精品久久| 79色色色色| 色九月婷婷综合| 婷婷色综合| 看久久性爱视频| 亚洲最大在线| 97精品人人A片免费看| 九九九九这里只有精品| 天天综合网91| 久久久国产精品黄毛片| www,天天干| 性韩日色婷婷五月天激情啪啪XXX| 天堂成人A片永久免费网站| 五月婷婷在线免费| 国产激情综合五月久久| 婷婷99综合| 婷婷五月综合社区| 嫩草AV久久伊人妇女超级A| 五月综合婷婷久久在线| 日韩日比视频| 成人无码髙潮喷水A片| 婷婷五月天色| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 五月婷丁香久久久| 神马欧美精| 极品人妻VIDEOSSS人妻| 超碰在线9| 五月丁香狠狠地噜噜噜噜| 九色PORNY自拍成人精彩视频|