日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

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

SAM-Med 2D脊椎分割數(shù)據(jù)集構(gòu)建與微調(diào)實(shí)戰(zhàn)指南

SAM-Med 2D脊椎分割數(shù)據(jù)集構(gòu)建與微調(diào)實(shí)戰(zhàn)指南 簡(jiǎn)介本資源是一份面向醫(yī)學(xué)圖像分析方向研究者與AI醫(yī)療開(kāi)發(fā)者的技術(shù)實(shí)踐指南聚焦SAM-Med 2D視覺(jué)大模型在脊椎影像分割任務(wù)中的完整復(fù)現(xiàn)與定制化訓(xùn)練流程。資源涵蓋模型結(jié)構(gòu)解析、RawData原始數(shù)據(jù)組織規(guī)范、process數(shù)據(jù)預(yù)處理腳本、train端到端訓(xùn)練腳本及評(píng)估結(jié)果可視化方案有效解決醫(yī)療小樣本場(chǎng)景下大模型適配難、數(shù)據(jù)格式轉(zhuǎn)換繁瑣、訓(xùn)練配置不透明等核心問(wèn)題。壓縮包共2000個(gè)文件主體為1948張脊椎標(biāo)注PNG圖像含訓(xùn)練/測(cè)試分割掩膜、27個(gè)Python訓(xùn)練與工具腳本含Jupyter Notebook交互示例、14個(gè)編譯緩存文件輔以JSON映射文件、Markdown說(shuō)明文檔及LICENSE協(xié)議總大小243.76MB。目前已有107人學(xué)習(xí)下載讀者可直接獲取開(kāi)箱即用的數(shù)據(jù)處理流水線、可調(diào)試的訓(xùn)練框架、標(biāo)準(zhǔn)化評(píng)估指標(biāo)Dice系數(shù)等實(shí)現(xiàn)邏輯以及微信技術(shù)交流群入口等實(shí)戰(zhàn)支持信息。1. 項(xiàng)目概述為什么需要為SAM-Med 2D訓(xùn)練脊椎分割數(shù)據(jù)集在醫(yī)學(xué)影像分析領(lǐng)域尤其是骨科和神經(jīng)外科脊椎結(jié)構(gòu)的精確分割是進(jìn)行疾病診斷、手術(shù)規(guī)劃、三維重建和生物力學(xué)分析的基礎(chǔ)。傳統(tǒng)的分割方法無(wú)論是基于閾值、區(qū)域生長(zhǎng)還是早期的卷積神經(jīng)網(wǎng)絡(luò)CNN在面對(duì)脊椎CT或MRI圖像時(shí)常常受限于椎體形狀的多樣性、圖像對(duì)比度的差異以及相鄰椎體間的粘連問(wèn)題需要大量的人工后處理和調(diào)參泛化能力有限。近年來(lái)以SAMSegment Anything Model為代表的視覺(jué)基礎(chǔ)模型憑借其強(qiáng)大的零樣本泛化能力和對(duì)任意對(duì)象的提示式分割潛力為醫(yī)學(xué)圖像分析帶來(lái)了新的范式。然而原始的SAM模型是在自然圖像上訓(xùn)練的直接應(yīng)用于醫(yī)學(xué)影像尤其是結(jié)構(gòu)復(fù)雜、邊界模糊的脊椎效果往往不盡如人意存在分割不完整、邊界粗糙、無(wú)法區(qū)分相鄰椎體等問(wèn)題。這就催生了針對(duì)特定醫(yī)學(xué)任務(wù)的微調(diào)需求SAM-Med 2D正是這樣一個(gè)在大量醫(yī)學(xué)影像上進(jìn)一步預(yù)訓(xùn)練或微調(diào)的模型變體旨在更好地理解醫(yī)學(xué)圖像的語(yǔ)義和結(jié)構(gòu)。但是一個(gè)強(qiáng)大的模型離不開(kāi)高質(zhì)量、針對(duì)性的數(shù)據(jù)。為SAM-Med 2D訓(xùn)練一個(gè)專(zhuān)用的脊椎分割數(shù)據(jù)集其核心價(jià)值在于“專(zhuān)業(yè)化”和“場(chǎng)景化”。這不僅僅是提供一些帶標(biāo)注的圖片而是構(gòu)建一個(gè)能夠教會(huì)模型理解脊椎解剖學(xué)特性、成像偽影、病理變化以及不同掃描協(xié)議下圖像表現(xiàn)的系統(tǒng)工程。通過(guò)這個(gè)數(shù)據(jù)集我們可以讓SAM-Med 2D學(xué)會(huì)精準(zhǔn)識(shí)別單個(gè)椎體從C1到骶骨清晰區(qū)分每一個(gè)椎體即使它們緊密相鄰。魯棒的邊界劃分即使在骨皮質(zhì)邊緣模糊、有骨質(zhì)疏松或椎體骨折的情況下也能準(zhǔn)確勾勒出椎體輪廓。適應(yīng)多模態(tài)影像能夠處理CT高對(duì)比度清晰顯示骨結(jié)構(gòu)和MRI軟組織對(duì)比度高骨邊界相對(duì)模糊等不同成像設(shè)備產(chǎn)生的數(shù)據(jù)。理解病理狀態(tài)對(duì)存在骨贅、壓縮性骨折、椎間盤(pán)突出壓迫等常見(jiàn)病理改變的椎體也能進(jìn)行有效分割。因此構(gòu)建這樣一個(gè)數(shù)據(jù)集是將前沿大模型能力真正落地到臨床輔助診斷的關(guān)鍵一步。它決定了模型性能的上限也是后續(xù)所有應(yīng)用如自動(dòng)測(cè)量Cobb角、椎管狹窄評(píng)估的基石。本指南將詳細(xì)拆解從數(shù)據(jù)準(zhǔn)備、標(biāo)注、預(yù)處理到最終數(shù)據(jù)集構(gòu)建的全流程分享我們?cè)诖诉^(guò)程中積累的實(shí)戰(zhàn)經(jīng)驗(yàn)與避坑技巧。2. 數(shù)據(jù)集構(gòu)建的核心思路與設(shè)計(jì)考量構(gòu)建一個(gè)適用于大模型微調(diào)的醫(yī)學(xué)影像數(shù)據(jù)集絕非簡(jiǎn)單地將圖片和標(biāo)注文件打包。它需要一套完整的設(shè)計(jì)哲學(xué)以確保數(shù)據(jù)能高效地“教”會(huì)模型我們想要的知識(shí)。我們的核心思路圍繞“多樣性”、“一致性”、“可擴(kuò)展性”三大原則展開(kāi)。2.1 數(shù)據(jù)來(lái)源的多樣性與質(zhì)量控制數(shù)據(jù)多樣性是模型泛化能力的保障。對(duì)于脊椎分割我們主要從以下幾個(gè)維度考慮多樣性影像模態(tài)必須同時(shí)包含CT和MRI數(shù)據(jù)。CT數(shù)據(jù)尤其是骨窗能提供最清晰的骨皮質(zhì)邊界是學(xué)習(xí)椎體幾何形狀的“黃金標(biāo)準(zhǔn)”。MRI數(shù)據(jù)如T1、T2加權(quán)像則能提供在軟組織環(huán)境下的椎體表現(xiàn)并包含更多病理信息。理想的比例可以根據(jù)目標(biāo)應(yīng)用調(diào)整例如側(cè)重于骨科手術(shù)規(guī)劃可能CT占比更高如7:3側(cè)重于神經(jīng)壓迫評(píng)估則可能需要更多MRI數(shù)據(jù)如5:5。掃描設(shè)備與協(xié)議收集來(lái)自不同廠商如GE、Siemens、Philips、不同型號(hào)掃描儀的數(shù)據(jù)。掃描參數(shù)如層厚、間距、kVp、磁場(chǎng)強(qiáng)度的差異會(huì)導(dǎo)致圖像分辨率、噪聲水平和對(duì)比度的變化。這能迫使模型學(xué)習(xí)到更本質(zhì)的特征而非某個(gè)特定設(shè)備的成像風(fēng)格?;颊呷后w與病理狀態(tài)數(shù)據(jù)應(yīng)涵蓋不同年齡、性別、體型的患者。更重要的是必須包含各種常見(jiàn)的脊椎病理狀態(tài)退行性變骨質(zhì)增生骨贅、終板硬化。外傷各種類(lèi)型的椎體骨折壓縮性、爆裂性?;渭怪鶄?cè)彎、后凸。術(shù)后狀態(tài)內(nèi)含內(nèi)固定物如螺釘、鋼板、融合器的椎體。其他骨質(zhì)疏松、轉(zhuǎn)移瘤等。 包含病理數(shù)據(jù)至關(guān)重要它能讓模型學(xué)會(huì)在“非標(biāo)準(zhǔn)”情況下依然能工作這是臨床實(shí)用性的關(guān)鍵。注意數(shù)據(jù)獲取必須嚴(yán)格遵守醫(yī)學(xué)倫理和患者隱私保護(hù)法規(guī)如HIPAA GDPR。所有數(shù)據(jù)需經(jīng)過(guò)徹底的匿名化處理去除DICOM文件頭中的所有個(gè)人信息并確保擁有合規(guī)的數(shù)據(jù)使用授權(quán)。通常這項(xiàng)工作需要在醫(yī)院信息科或倫理委員會(huì)的支持下進(jìn)行。解剖覆蓋范圍數(shù)據(jù)集應(yīng)覆蓋全脊柱頸椎、胸椎、腰椎、骶尾椎并且確保每個(gè)椎體都有足夠的樣本。避免出現(xiàn)某個(gè)椎體如T4、T5樣本過(guò)少的情況。2.2 標(biāo)注策略與一致性規(guī)范標(biāo)注質(zhì)量直接決定模型學(xué)習(xí)的上限。對(duì)于脊椎分割我們采用“實(shí)例分割”標(biāo)注即每個(gè)椎體都是一個(gè)獨(dú)立的、互不重疊的掩碼Mask。標(biāo)注工具選擇推薦使用專(zhuān)業(yè)的醫(yī)學(xué)圖像標(biāo)注軟件如ITK-SNAP、3D Slicer或MITK。這些工具支持DICOM格式直接讀取、多平面重建MPR并能高效處理三維體數(shù)據(jù)。對(duì)于大規(guī)模標(biāo)注可以考慮CVAT、Labelbox等支持協(xié)作和項(xiàng)目管理的平臺(tái)但其對(duì)三維醫(yī)學(xué)影像的原生支持可能不如專(zhuān)業(yè)醫(yī)學(xué)軟件。標(biāo)注細(xì)則制定關(guān)鍵邊界定義明確標(biāo)注的邊界是骨皮質(zhì)的外緣。在CT上這通常是高亮信號(hào)的邊緣。在MRI上由于骨皮質(zhì)呈低信號(hào)邊界可能較模糊需要參考相鄰的椎間盤(pán)和韌帶結(jié)構(gòu)進(jìn)行判斷。病理區(qū)域處理對(duì)于骨折椎體標(biāo)注其變形后的輪廓包括可能存在的骨碎片如果屬于同一椎體。對(duì)于大的骨贅如果與椎體主體相連且屬于骨質(zhì)增生一般納入該椎體掩碼。內(nèi)固定物處理這是一個(gè)難點(diǎn)。螺釘、鋼板等金屬植入物會(huì)產(chǎn)生嚴(yán)重的射線硬化偽影CT或磁敏感偽影MRI完全遮擋解剖結(jié)構(gòu)。我們的策略是標(biāo)注可見(jiàn)的、未被偽影完全破壞的椎體部分。對(duì)于完全被偽影覆蓋的區(qū)域標(biāo)注員需基于上下相鄰層面和先驗(yàn)解剖知識(shí)進(jìn)行“合理推斷”勾勒并在標(biāo)注記錄中標(biāo)記該區(qū)域?yàn)椤巴茢鄻?biāo)注”。這能幫助模型學(xué)習(xí)在偽影干擾下進(jìn)行“腦補(bǔ)”的能力。標(biāo)注一致性會(huì)議在標(biāo)注開(kāi)始前必須組織所有標(biāo)注員通常是放射科醫(yī)師或經(jīng)驗(yàn)豐富的影像科研究生進(jìn)行培訓(xùn)使用一批樣例圖像共同標(biāo)注討論并統(tǒng)一上述所有模糊情況的處理標(biāo)準(zhǔn)。過(guò)程中定期進(jìn)行交叉校驗(yàn)和一致性評(píng)估如計(jì)算Dice系數(shù)對(duì)差異大的案例進(jìn)行復(fù)盤(pán)討論。2.3 數(shù)據(jù)集格式設(shè)計(jì)與可擴(kuò)展性為了適配SAM-Med 2D的微調(diào)流程并方便未來(lái)擴(kuò)展我們需要設(shè)計(jì)一個(gè)清晰的數(shù)據(jù)目錄結(jié)構(gòu)和數(shù)據(jù)格式。原始數(shù)據(jù)層保留原始的DICOM序列或NIfTI文件。按患者ID或研究ID組織文件夾。這是數(shù)據(jù)的源頭不可更改。預(yù)處理數(shù)據(jù)層存儲(chǔ)經(jīng)過(guò)預(yù)處理如重采樣、歸一化、裁剪后的圖像文件通常轉(zhuǎn)換為.npy或.png格式。同時(shí)保存對(duì)應(yīng)的預(yù)處理參數(shù)如重采樣率、裁剪范圍以便反向映射。標(biāo)注數(shù)據(jù)層這是核心。我們采用與SAM系列模型訓(xùn)練常用的格式。每個(gè)樣本對(duì)應(yīng)一個(gè)JSON文件結(jié)構(gòu)如下{ “image”: “preprocessed/patient_001_slice_50.png”, // 預(yù)處理后的圖像路徑 “image_id”: “patient_001_50”, “annotations”: [ { “id”: 1, “category_id”: 21, // 類(lèi)別ID如21代表C3椎體 “segmentation”: { // RLE編碼或多邊形坐標(biāo)點(diǎn)列表 “size”: [512, 512], “counts”: “...” }, “bbox”: [x, y, width, height], // 包圍框 “area”: 12050 }, { “id”: 2, “category_id”: 22, // 22代表C4椎體 “segmentation”: { ... }, “bbox”: [ ... ], “area”: 11800 } // ... 更多椎體 ] }為什么用JSON和RLEJSON結(jié)構(gòu)清晰易于解析和擴(kuò)展。RLERun-Length Encoding是一種高效的二值掩碼編碼方式相比存儲(chǔ)整個(gè)二維數(shù)組能極大節(jié)省磁盤(pán)空間尤其適合大尺寸醫(yī)學(xué)圖像。數(shù)據(jù)集劃分按照患者ID劃分訓(xùn)練集、驗(yàn)證集和測(cè)試集絕不能按切片隨機(jī)劃分。因?yàn)橥粋€(gè)患者的不同切片之間存在強(qiáng)相關(guān)性按切片隨機(jī)劃分會(huì)導(dǎo)致數(shù)據(jù)泄露使模型在測(cè)試集上獲得虛高的性能。通常采用7:2:1或8:1:1的比例。確保每個(gè)集合中患者的人口學(xué)特征和病理類(lèi)型分布大致均衡。元數(shù)據(jù)文件創(chuàng)建一個(gè)dataset_meta.json文件記錄數(shù)據(jù)集的整體信息如類(lèi)別列表從C1到骶骨每個(gè)椎體對(duì)應(yīng)的ID和名稱(chēng)、數(shù)據(jù)統(tǒng)計(jì)各模態(tài)數(shù)量、各椎體實(shí)例數(shù)、標(biāo)注規(guī)范版本、預(yù)處理方法等。這為數(shù)據(jù)集的維護(hù)和使用提供了清晰的“說(shuō)明書(shū)”。3. 數(shù)據(jù)預(yù)處理與標(biāo)注實(shí)戰(zhàn)詳解有了設(shè)計(jì)思路接下來(lái)就是具體的實(shí)施。這一步是數(shù)據(jù)質(zhì)量的核心鍛造環(huán)節(jié)直接關(guān)系到模型訓(xùn)練的穩(wěn)定性和最終效果。3.1 醫(yī)學(xué)影像預(yù)處理標(biāo)準(zhǔn)化流程原始DICOM數(shù)據(jù)不能直接用于訓(xùn)練必須經(jīng)過(guò)一系列標(biāo)準(zhǔn)化預(yù)處理。讀取與方向校正使用pydicom或SimpleITK讀取DICOM文件。醫(yī)學(xué)影像的坐標(biāo)系左右、前后、頭足可能因掃描設(shè)備和患者體位而異。必須使用SimpleITK的GetDirection()和SetDirection()等功能將所有圖像統(tǒng)一到標(biāo)準(zhǔn)的RAI右前上坐標(biāo)系。這是后續(xù)所有處理的基礎(chǔ)否則裁剪、重采樣都會(huì)錯(cuò)亂。窗寬窗位調(diào)整僅CTCT值的原始單位是HUHounsfield Unit。為了突出骨組織我們需要應(yīng)用“骨窗”。通常將窗寬設(shè)為2000HU窗位設(shè)為500HU然后將線性映射到[0, 255]的灰度范圍。這能極大增強(qiáng)椎體與周?chē)浗M織的對(duì)比度。import numpy as np def apply_window(image_array, window_width, window_center): 應(yīng)用窗寬窗位 img_min window_center - window_width // 2 img_max window_center window_width // 2 windowed np.clip(image_array, img_min, img_max) windowed (windowed - img_min) / (img_max - img_min) * 255.0 return windowed.astype(np.uint8)重采樣不同掃描的層厚和像素間距不同。為了給模型提供空間尺度一致的輸入需要將所有樣本重采樣到相同的各向同性分辨率例如1.0mm x 1.0mm x 1.0mm。使用SimpleITK的Resample函數(shù)并選擇sitk.sitkLinear插值方式。實(shí)操心得重采樣會(huì)輕微模糊圖像。如果原始數(shù)據(jù)分辨率已經(jīng)很高如0.5mm層厚重采樣到1.0mm會(huì)丟失細(xì)節(jié)。因此目標(biāo)分辨率的選擇需要權(quán)衡分辨率太高增加計(jì)算負(fù)擔(dān)且可能引入更多噪聲分辨率太低丟失關(guān)鍵解剖細(xì)節(jié)。對(duì)于脊椎分割1.0mm各向同性是一個(gè)經(jīng)驗(yàn)上較好的平衡點(diǎn)。強(qiáng)度歸一化將圖像像素值歸一化到固定的范圍如[0, 1]或[-1, 1]。對(duì)于CT已窗寬窗位調(diào)整和MRI可以統(tǒng)一使用(img - mean) / std的方式進(jìn)行標(biāo)準(zhǔn)化其中mean和std在訓(xùn)練集上計(jì)算然后同樣應(yīng)用于驗(yàn)證集和測(cè)試集。這有助于模型收斂。切片與裁剪切片將三維體數(shù)據(jù)沿軸狀面Axial逐層切片得到二維圖像。這是SAM-Med 2D模型的輸入格式。裁剪脊椎通常只占據(jù)圖像中心的一部分。為了減少無(wú)關(guān)背景并增大感興趣區(qū)域ROI的占比可以圍繞脊椎區(qū)域進(jìn)行裁剪。一個(gè)自動(dòng)化的方法是先用一個(gè)簡(jiǎn)單的閾值分割或預(yù)訓(xùn)練模型檢測(cè)出包含脊椎的大致區(qū)域計(jì)算其邊界框然后向外擴(kuò)展一定像素如50px作為裁剪區(qū)域。手動(dòng)指定一個(gè)固定的中心區(qū)域裁剪也是一種可行的簡(jiǎn)化方案。3.2 精細(xì)化標(biāo)注操作指南與質(zhì)量控制預(yù)處理后的圖像就可以導(dǎo)入標(biāo)注工具進(jìn)行精細(xì)標(biāo)注了。標(biāo)注流程粗定位標(biāo)注員首先在矢狀面Sagittal或冠狀面Coronal上快速瀏覽確定脊柱的大致走向和范圍。逐層精標(biāo)在軸狀面Axial上從椎體最上端開(kāi)始逐層向下標(biāo)注。利用軟件的“畫(huà)筆”和“橡皮擦”工具仔細(xì)勾勒每個(gè)椎體的邊界。對(duì)于形狀規(guī)則的中間層面可以使用“多邊形”工具快速框選。三維校驗(yàn)與修補(bǔ)完成所有軸狀面切片標(biāo)注后必須在三維視圖下進(jìn)行渲染檢查。查看每個(gè)椎體的三維掩碼是否連續(xù)、光滑是否存在明顯的“階梯”狀偽影這是逐層標(biāo)注不一致的典型表現(xiàn)或空洞。在此視圖下進(jìn)行最后的修補(bǔ)和光滑處理。質(zhì)量控制QC步驟一級(jí)QC標(biāo)注員自檢標(biāo)注完成后標(biāo)注員自己需要從三維和三個(gè)二維切面視角反復(fù)檢查確保無(wú)誤。二級(jí)QC資深員復(fù)核由一名更資深的標(biāo)注員或放射科醫(yī)生對(duì)隨機(jī)抽取的至少30%的案例進(jìn)行復(fù)核重點(diǎn)檢查復(fù)雜病例骨折、術(shù)后、嚴(yán)重畸形和隨機(jī)抽查的普通病例。一致性度量定期如每標(biāo)注完20個(gè)病例讓所有標(biāo)注員對(duì)同一個(gè)“測(cè)試案例”進(jìn)行獨(dú)立標(biāo)注計(jì)算他們之間標(biāo)注結(jié)果的Dice相似系數(shù)DSC或Hausdorff距離。DSC一般要求達(dá)到0.85以上。通過(guò)分析不一致的區(qū)域可以發(fā)現(xiàn)并統(tǒng)一標(biāo)注標(biāo)準(zhǔn)中的模糊點(diǎn)。標(biāo)注格式轉(zhuǎn)換標(biāo)注工具如ITK-SNAP通常輸出.nrrd或.nii.gz格式的標(biāo)注文件其中每個(gè)椎體用一個(gè)不同的整數(shù)標(biāo)簽值表示。我們需要編寫(xiě)腳本將這些三維標(biāo)注文件按切片提取并將每個(gè)椎體的掩碼轉(zhuǎn)換為RLE編碼并生成前文所述的JSON標(biāo)注文件。import numpy as np import json from pycocotools import mask as mask_util def convert_mask_to_rle(mask_array): 將二值掩碼0/1轉(zhuǎn)換為RLE編碼 # mask_array 是二維 numpy 數(shù)組 dtypenp.uint8 rle mask_util.encode(np.asfortranarray(mask_array)) rle[‘counts’] rle[‘counts’].decode(‘utf-8’) # 將bytes轉(zhuǎn)為string以便JSON序列化 return rle # 假設(shè) label_volume 是三維標(biāo)注體數(shù)據(jù) slice_idx 是當(dāng)前切片索引 slice_label label_volume[:, :, slice_idx] unique_labels np.unique(slice_label) unique_labels unique_labels[unique_labels ! 0] # 去掉背景0 annotations [] for label_val in unique_labels: binary_mask (slice_label label_val).astype(np.uint8) rle_obj convert_mask_to_rle(binary_mask) bbox mask_util.toBbox(rle_obj).tolist() # 計(jì)算包圍框 area mask_util.area(rle_obj).item() annotation { “id”: int(label_val), “category_id”: int(label_val), # 這里假設(shè)標(biāo)簽值就是類(lèi)別ID “segmentation”: rle_obj, “bbox”: bbox, “area”: area } annotations.append(annotation)4. 適配SAM-Med 2D訓(xùn)練的數(shù)據(jù)集封裝數(shù)據(jù)準(zhǔn)備好后我們需要將其封裝成SAM-Med 2D模型訓(xùn)練代碼能夠直接讀取的格式。這通常意味著創(chuàng)建一個(gè)繼承自torch.utils.data.Dataset的自定義數(shù)據(jù)集類(lèi)。4.1 自定義Dataset類(lèi)的實(shí)現(xiàn)要點(diǎn)import torch from torch.utils.data import Dataset import cv2 import json from pycocotools import mask as mask_util import numpy as np class SpineSegDataset(Dataset): def __init__(self, annotation_file, img_dir, transformNone): annotation_file: 包含所有標(biāo)注信息的JSON文件路徑 img_dir: 預(yù)處理后圖像存放的根目錄 transform: 數(shù)據(jù)增強(qiáng)變換 with open(annotation_file, ‘r’) as f: self.data json.load(f) # 假設(shè)data是一個(gè)列表每個(gè)元素是一個(gè)樣本的字典 self.img_dir img_dir self.transform transform # 可以在這里加載類(lèi)別映射關(guān)系 self.cat_id_to_name {21: ‘C3’, 22: ‘C4’, ...} def __len__(self): return len(self.data) def __getitem__(self, idx): sample self.data[idx] img_path os.path.join(self.img_dir, sample[‘image’]) # 讀取圖像假設(shè)是灰度圖 image cv2.imread(img_path, cv2.IMREAD_GRAYSCALE) image image[:, :, np.newaxis] # 增加通道維度 (H, W, 1) image image.astype(np.float32) / 255.0 # 歸一化到[0,1] annotations sample[‘a(chǎn)nnotations’] masks [] bboxes [] labels [] for ann in annotations: # 將RLE解碼為二值掩碼 rle ann[‘segmentation’] rle[‘counts’] rle[‘counts’].encode(‘utf-8’) # 轉(zhuǎn)回bytes mask mask_util.decode(rle) # (H, W) 0/1 masks.append(mask) bboxes.append(ann[‘bbox’]) # [x, y, w, h] labels.append(ann[‘category_id’]) # 將列表轉(zhuǎn)換為數(shù)組 masks np.stack(masks, axis0) if masks else np.zeros((0, image.shape[0], image.shape[1])) bboxes np.array(bboxes) if bboxes else np.zeros((0, 4)) labels np.array(labels) if labels else np.zeros((0,)) # 應(yīng)用數(shù)據(jù)增強(qiáng)同時(shí)增強(qiáng)圖像和掩碼 if self.transform: transformed self.transform(imageimage, masksmasks, bboxesbboxes, category_idslabels) image transformed[‘image’] masks transformed[‘masks’] bboxes transformed[‘bboxes’] labels transformed[‘category_ids’] # 轉(zhuǎn)換為PyTorch Tensor并調(diào)整圖像通道順序?yàn)?(C, H, W) image torch.from_numpy(image).permute(2, 0, 1).float() masks torch.from_numpy(masks).float() bboxes torch.from_numpy(bboxes).float() labels torch.from_numpy(labels).long() return { “image”: image, “masks”: masks, “boxes”: bboxes, “l(fā)abels”: labels, “image_id”: sample[‘image_id’] }4.2 針對(duì)醫(yī)學(xué)圖像的數(shù)據(jù)增強(qiáng)策略數(shù)據(jù)增強(qiáng)是提升模型魯棒性的關(guān)鍵。對(duì)于醫(yī)學(xué)圖像尤其是分割任務(wù)增強(qiáng)必須保持圖像與掩碼的空間對(duì)應(yīng)關(guān)系。我們使用albumentations庫(kù)它完美支持圖像和掩碼的同步變換。import albumentations as A from albumentations.pytorch import ToTensorV2 def get_train_transform(): return A.Compose([ A.HorizontalFlip(p0.5), # 水平翻轉(zhuǎn)對(duì)于脊椎是合理的 A.VerticalFlip(p0.0), # 垂直翻轉(zhuǎn)通常不用于軸狀面因?yàn)樯舷虏粚?duì)稱(chēng) A.Rotate(limit15, p0.5, border_modecv2.BORDER_CONSTANT, value0), # 小幅旋轉(zhuǎn) A.RandomBrightnessContrast(brightness_limit0.1, contrast_limit0.1, p0.3), A.GaussNoise(var_limit(5.0, 20.0), p0.2), # 添加高斯噪聲模擬圖像噪聲 A.ElasticTransform(alpha1, sigma50, alpha_affine50, p0.1), # 彈性形變模擬軟組織形變 A.Resize(height512, width512, p1.0), # 統(tǒng)一縮放到模型輸入尺寸 ToTensorV2(), # 轉(zhuǎn)換為T(mén)ensor并歸一化到[0,1]如果圖像是0-255 ], bbox_paramsA.BboxParams(format‘coco’, label_fields[‘category_ids’])) def get_val_transform(): # 驗(yàn)證/測(cè)試集只需要Resize和ToTensor return A.Compose([ A.Resize(height512, width512, p1.0), ToTensorV2(), ])注意事項(xiàng)醫(yī)學(xué)圖像增強(qiáng)需要謹(jǐn)慎。過(guò)度的幾何形變?nèi)绱蠼嵌刃D(zhuǎn)、縮放可能破壞解剖結(jié)構(gòu)的合理性。亮度對(duì)比度調(diào)整的幅度也應(yīng)較小以保持CT/MRI的視覺(jué)真實(shí)性。ElasticTransform彈性形變對(duì)模擬軟組織形變很有用但不宜過(guò)度使用。4.3 類(lèi)別不平衡與難樣本挖掘脊椎數(shù)據(jù)集中不同椎體的實(shí)例數(shù)量可能不均如腰椎樣本可能多于胸椎且背景像素遠(yuǎn)多于前景像素。此外一些難分的樣本如骨折椎體、邊緣模糊的椎體對(duì)模型性能提升至關(guān)重要。類(lèi)別權(quán)重在損失函數(shù)中為不同類(lèi)別的分割損失賦予權(quán)重。權(quán)重通常與類(lèi)別頻率成反比??梢栽贒ataLoader中計(jì)算或在損失函數(shù)如CrossEntropyLoss中設(shè)置weight參數(shù)。難樣本挖掘Hard Example Mining在訓(xùn)練過(guò)程中不是所有樣本或像素對(duì)損失的貢獻(xiàn)都一樣。我們可以讓模型更關(guān)注那些它當(dāng)前分錯(cuò)的“難樣本”。一種實(shí)踐是在計(jì)算損失時(shí)選擇損失值最高的前K%的像素或樣本進(jìn)行反向傳播而不是全部。這需要自定義損失函數(shù)或在訓(xùn)練循環(huán)中實(shí)現(xiàn)。在線難樣本挖掘OHEM這是一個(gè)經(jīng)典策略。在訓(xùn)練時(shí)前向傳播計(jì)算所有像素的損失然后只對(duì)損失最大的那一部分像素例如損失最高的25%計(jì)算梯度進(jìn)行更新。這迫使模型集中精力解決最難的問(wèn)題。許多分割框架如MMSegmentation都內(nèi)置了OHEM損失函數(shù)。5. 訓(xùn)練流程中的關(guān)鍵配置與調(diào)試經(jīng)驗(yàn)數(shù)據(jù)集準(zhǔn)備就緒后就可以啟動(dòng)SAM-Med 2D的微調(diào)訓(xùn)練了。這里分享一些關(guān)鍵的配置經(jīng)驗(yàn)和調(diào)試技巧。5.1 模型加載與參數(shù)初始化SAM-Med 2D通?;陬A(yù)訓(xùn)練權(quán)重進(jìn)行微調(diào)。關(guān)鍵是要正確加載預(yù)訓(xùn)練權(quán)重并合理設(shè)置哪些層需要更新。import torch from sam_med_2d_model import SamMed2D # 假設(shè)這是模型類(lèi) model SamMed2D(...) pretrained_weights torch.load(‘path/to/sam_med_2d_pretrained.pth’) # 方式一嚴(yán)格匹配加載推薦 model.load_state_dict(pretrained_weights, strictTrue) # 如果strictTrue報(bào)錯(cuò)比如你的分類(lèi)頭類(lèi)別數(shù)改了可以嘗試strictFalse但需謹(jǐn)慎 # 方式二部分加載凍結(jié)骨干網(wǎng)絡(luò) model.load_state_dict(pretrained_weights, strictFalse) # 凍結(jié)圖像編碼器骨干網(wǎng)絡(luò)的前幾層或全部 for name, param in model.image_encoder.named_parameters(): if ‘block’ in name: # 凍結(jié)特定塊 param.requires_grad False # 或者全部?jī)鼋Y(jié) # for param in model.image_encoder.parameters(): # param.requires_grad False # 提示微調(diào)Prompt Encoder和掩碼解碼器Mask Decoder通常需要訓(xùn)練 for param in model.prompt_encoder.parameters(): param.requires_grad True for param in model.mask_decoder.parameters(): param.requires_grad True5.2 損失函數(shù)選擇與組合SAM-Med 2D原生的訓(xùn)練可能使用多種損失的組合。對(duì)于我們的脊椎實(shí)例分割任務(wù)一個(gè)有效的組合是Dice Loss非常適用于前景-背景像素極度不平衡的分割任務(wù)直接優(yōu)化分割區(qū)域的重疊度。Focal Loss是交叉熵?fù)p失的變體通過(guò)降低易分樣本的權(quán)重讓模型更關(guān)注難分的樣本如椎體邊緣、小椎體緩解類(lèi)別不平衡。L1/L2 Regression Loss如果任務(wù)還需要預(yù)測(cè)包圍框BBox可以加上一個(gè)回歸損失。通常將Dice Loss和Focal Loss加權(quán)求和比例可以是1:1。import torch.nn as nn import torch.nn.functional as F class DiceFocalLoss(nn.Module): def __init__(self, alpha0.25, gamma2.0, smooth1e-6): super().__init__() self.alpha alpha self.gamma gamma self.smooth smooth def forward(self, pred, target): # pred: (B, C, H, W) after softmax # target: (B, H, W) with class indices num_classes pred.shape[1] # 將target轉(zhuǎn)換為one-hot target_one_hot F.one_hot(target, num_classes).permute(0, 3, 1, 2).float() # Dice Loss pred_flat pred.reshape(pred.shape[0], num_classes, -1) target_flat target_one_hot.reshape(target_one_hot.shape[0], num_classes, -1) intersection (pred_flat * target_flat).sum(dim-1) union pred_flat.sum(dim-1) target_flat.sum(dim-1) dice_loss 1 - (2. * intersection self.smooth) / (union self.smooth) dice_loss dice_loss.mean() # Focal Loss ce_loss F.cross_entropy(pred, target, reduction‘none’) pt torch.exp(-ce_loss) focal_loss self.alpha * (1-pt)**self.gamma * ce_loss focal_loss focal_loss.mean() return dice_loss focal_loss5.3 優(yōu)化器與學(xué)習(xí)率調(diào)度策略優(yōu)化器AdamW是目前視覺(jué)任務(wù)的主流選擇它比標(biāo)準(zhǔn)的Adam帶有解耦的權(quán)重衰減通常能獲得更好的泛化性能。optimizer torch.optim.AdamW(model.parameters(), lr1e-4, weight_decay0.01)學(xué)習(xí)率調(diào)度采用Warmup學(xué)習(xí)率預(yù)熱和余弦退火Cosine Annealing的組合是常見(jiàn)且有效的策略。Warmup在訓(xùn)練初期如前500個(gè)iteration或1個(gè)epoch學(xué)習(xí)率從0線性增長(zhǎng)到初始學(xué)習(xí)率。這有助于穩(wěn)定訓(xùn)練初期防止梯度爆炸。余弦退火在Warmup之后學(xué)習(xí)率按照余弦函數(shù)從初始值衰減到接近0。這能讓模型在后期更精細(xì)地收斂。from torch.optim.lr_scheduler import CosineAnnealingLR, LinearLR warmup_epochs 1 total_epochs 100 warmup_scheduler LinearLR(optimizer, start_factor0.01, total_iterswarmup_epochs * iterations_per_epoch) cosine_scheduler CosineAnnealingLR(optimizer, T_max(total_epochs - warmup_epochs) * iterations_per_epoch) # 在訓(xùn)練循環(huán)中 for epoch in range(total_epochs): for i, batch in enumerate(train_loader): # ... 訓(xùn)練步驟 ... optimizer.step() if epoch warmup_epochs: warmup_scheduler.step() else: cosine_scheduler.step()5.4 訓(xùn)練監(jiān)控與早停策略僅僅看訓(xùn)練損失下降是不夠的必須緊密監(jiān)控驗(yàn)證集上的性能。監(jiān)控指標(biāo)除了損失必須計(jì)算驗(yàn)證集上的Dice相似系數(shù)DSC和95%豪斯多夫距離95% HD。DSC衡量重疊度HD衡量邊界匹配度兩者結(jié)合能全面評(píng)估分割質(zhì)量。早停Early Stopping當(dāng)驗(yàn)證集DSC在連續(xù)N個(gè)epoch如10或15內(nèi)不再提升時(shí)就停止訓(xùn)練并回滾到驗(yàn)證集性能最好的那個(gè)epoch的模型權(quán)重。這能有效防止過(guò)擬合。可視化定期如每個(gè)epoch將驗(yàn)證集上的一些樣例分割結(jié)果原圖、真值、預(yù)測(cè)保存為圖片直觀地觀察模型是在進(jìn)步還是在“跑偏”。6. 常見(jiàn)問(wèn)題排查與性能優(yōu)化技巧在實(shí)際訓(xùn)練中你一定會(huì)遇到各種問(wèn)題。這里匯總了一些典型問(wèn)題及其排查思路。6.1 訓(xùn)練過(guò)程不穩(wěn)定或損失震蕩現(xiàn)象損失值上下跳動(dòng)很大不收斂或收斂緩慢。排查與解決檢查數(shù)據(jù)首先檢查數(shù)據(jù)加載是否正確??梢暬瘞讉€(gè)批次Batch的圖像和標(biāo)注看是否對(duì)齊標(biāo)注是否存在異常值如全0或全1。一個(gè)常見(jiàn)的錯(cuò)誤是圖像歸一化出錯(cuò)導(dǎo)致像素值范圍異常。降低學(xué)習(xí)率過(guò)大的學(xué)習(xí)率是導(dǎo)致震蕩的首要原因。嘗試將學(xué)習(xí)率降低一個(gè)數(shù)量級(jí)如從1e-4降到1e-5。啟用梯度裁剪Gradient Clipping在反向傳播后、優(yōu)化器更新前對(duì)梯度范數(shù)進(jìn)行裁剪防止梯度爆炸。torch.nn.utils.clip_grad_norm_(model.parameters(), max_norm1.0)檢查損失函數(shù)確認(rèn)損失函數(shù)的輸入預(yù)測(cè)和真值形狀、數(shù)據(jù)類(lèi)型是否正確。特別是自定義損失函數(shù)容易在這里出錯(cuò)。調(diào)整Batch SizeBatch Size過(guò)小可能導(dǎo)致梯度估計(jì)噪聲大。在顯存允許的情況下適當(dāng)增大Batch Size。6.2 模型過(guò)擬合訓(xùn)練集表現(xiàn)好驗(yàn)證集差現(xiàn)象訓(xùn)練損失持續(xù)下降訓(xùn)練集DSC很高但驗(yàn)證集損失早早就開(kāi)始上升DSC停滯不前。排查與解決加強(qiáng)數(shù)據(jù)增強(qiáng)這是最直接有效的方法。增加更多樣化的、符合醫(yī)學(xué)圖像特性的數(shù)據(jù)增強(qiáng)如之前提到的彈性形變、噪聲添加等??梢試L試albumentations的CoarseDropout模擬圖像局部遮擋。增加正則化權(quán)重衰減Weight Decay確保優(yōu)化器中的weight_decay參數(shù)已設(shè)置如0.01或0.05。Dropout在模型的掩碼解碼器等全連接層后添加Dropout層。Stochastic Depth如果模型是類(lèi)似Transformer的結(jié)構(gòu)可以隨機(jī)丟棄一些層這是一種非常強(qiáng)的正則化。減少模型容量或凍結(jié)更多層如果數(shù)據(jù)集不大而模型非常大如SAM-Med 2D的ViT-Huge可以考慮凍結(jié)圖像編碼器的全部或大部分層只微調(diào)提示編碼器和掩碼解碼器。早停嚴(yán)格實(shí)施早停策略防止模型在訓(xùn)練集上“鉆牛角尖”。6.3 模型欠擬合訓(xùn)練集和驗(yàn)證集表現(xiàn)都差現(xiàn)象訓(xùn)練損失下降很慢最終停留在較高水平訓(xùn)練集和驗(yàn)證集的DSC都很低。排查與解決檢查任務(wù)可行性首先用簡(jiǎn)單的模型如U-Net或甚至固定規(guī)則閾值分割在你的數(shù)據(jù)集上測(cè)試看是否能得到一個(gè)baseline結(jié)果。如果baseline都極差可能是數(shù)據(jù)標(biāo)注質(zhì)量有問(wèn)題或任務(wù)本身定義不清。增大模型容量/解凍層如果凍結(jié)了太多層嘗試解凍更多層讓模型有更強(qiáng)的擬合能力。提高學(xué)習(xí)率/延長(zhǎng)訓(xùn)練時(shí)間學(xué)習(xí)率可能太小或者訓(xùn)練周期epoch不夠。嘗試使用學(xué)習(xí)率查找器LR Finder找到一個(gè)合適的初始學(xué)習(xí)率。檢查數(shù)據(jù)泄露確認(rèn)訓(xùn)練集和驗(yàn)證集是否嚴(yán)格按患者劃分。如果存在泄露驗(yàn)證集性能會(huì)虛高而實(shí)際是欠擬合的。簡(jiǎn)化問(wèn)題先嘗試一個(gè)更簡(jiǎn)單的任務(wù)比如只分割腰椎L1-L5看模型是否能學(xué)好。如果能再逐步增加復(fù)雜度。6.4 顯存不足OOM問(wèn)題微調(diào)大模型最常遇到的就是“爆顯存”。梯度累積Gradient Accumulation這是解決OOM的利器。假設(shè)你希望的有效Batch Size是8但單卡只能放下Batch Size為2的數(shù)據(jù)。你可以設(shè)置accumulation_steps4讓模型連續(xù)進(jìn)行4次前向傳播和反向傳播不更新參數(shù)累積梯度然后再進(jìn)行一次參數(shù)更新。這樣在效果上等價(jià)于Batch Size8。accumulation_steps 4 optimizer.zero_grad() for i, batch in enumerate(train_loader): loss model(batch) loss loss / accumulation_steps # 損失按累積步數(shù)平均 loss.backward() if (i1) % accumulation_steps 0: optimizer.step() optimizer.zero_grad()混合精度訓(xùn)練AMP使用torch.cuda.amp進(jìn)行自動(dòng)混合精度訓(xùn)練可以顯著減少顯存占用并加速訓(xùn)練。from torch.cuda.amp import autocast, GradScaler scaler GradScaler() for data in train_loader: optimizer.zero_grad() with autocast(): loss model(data) scaler.scale(loss).backward() scaler.step(optimizer) scaler.update()檢查點(diǎn)激活Gradient Checkpointing對(duì)于極其龐大的模型可以以時(shí)間換空間只保存部分層的激活值在反向傳播時(shí)重新計(jì)算其余層的激活。PyTorch提供了torch.utils.checkpoint功能。減小輸入圖像尺寸將輸入圖像從512x512降到256x256可以大幅減少顯存消耗但可能會(huì)損失分割精度需要權(quán)衡。構(gòu)建一個(gè)高質(zhì)量的脊椎分割數(shù)據(jù)集并成功微調(diào)SAM-Med 2D模型是一個(gè)涉及數(shù)據(jù)科學(xué)、醫(yī)學(xué)知識(shí)和工程實(shí)踐的綜合性項(xiàng)目。整個(gè)過(guò)程就像訓(xùn)練一位專(zhuān)注的“實(shí)習(xí)醫(yī)生”你需要用高質(zhì)量、多樣化的“病例”數(shù)據(jù)去教導(dǎo)它用清晰的“診斷標(biāo)準(zhǔn)”標(biāo)注規(guī)范去規(guī)范它并在“實(shí)踐考核”驗(yàn)證測(cè)試中不斷糾正它。其中最大的體會(huì)是數(shù)據(jù)的質(zhì)量、一致性和多樣性其重要性遠(yuǎn)超過(guò)模型架構(gòu)的微小調(diào)整?;ㄔ跀?shù)據(jù)清洗、標(biāo)注質(zhì)檢和預(yù)處理上的時(shí)間最終都會(huì)在模型性能上得到回報(bào)。另一個(gè)關(guān)鍵點(diǎn)是迭代思維不要期望一次性就做出完美的數(shù)據(jù)集和模型。應(yīng)該構(gòu)建一個(gè)最小可行產(chǎn)品MVP流程用小批量數(shù)據(jù)快速跑通從數(shù)據(jù)到訓(xùn)練、評(píng)估的整個(gè)pipeline然后基于初步結(jié)果有針對(duì)性地去補(bǔ)充某類(lèi)稀缺數(shù)據(jù)、修正某類(lèi)標(biāo)注錯(cuò)誤、調(diào)整某個(gè)增強(qiáng)參數(shù)如此循環(huán)逐步提升。最后別忘了保存好每一輪實(shí)驗(yàn)的完整配置、日志和模型權(quán)重詳細(xì)的實(shí)驗(yàn)記錄是復(fù)盤(pán)和提升的寶貴財(cái)富。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
操逼视频国产无套| 国产亚州精品美女久久久免费| 精品久久視頻在线| 91人妻视频| 欧美成人A√在线一区二区| 91美女高潮| 啊啊啊好湿久久| 丁香九月激情| 国产精品无码论坛| av天堂精品久久| 高清无码91| 色九九九综合| 蜜臀亚洲中文| 亚洲综合贴图91| 精品视频123区小说区| 免费精品人妻一区二区三| 亚州欧美色图| 欧美天天| 成人麻豆av电影网站| 色香AV| 人妻无码一区二区三区久久99| 无码99| 成人AV在线电影| 日本操逼视频导航| 凹凸久久人人| 日韩欧美aⅴ综合网站发布| 一级人妻性爱视频| 都市久久精品激情亚洲| 天天干天天燥| 国产AV色黄看到爽| 国产中文字幕在线点播| 国产精品成人AV片免费看网站| aV中文麻| 色逼综合| 婷婷久久五月综合激情| 亚洲国产午夜真人一级片中文字幕精品黄网站| 噜噜在线| 四虎永久在线精品免费网址 | 亚洲乱色视频一区、二区在线| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 亚州色图片在线色| 欧美性五月| 嫩草黄页| 日本久久久久久久久久| 春色91| 蜜臀久久99精品久久久久久成人小说| 97资源站日韩| 2017av无码免费无线播| 免费精品国偷自产在线在线| 园内精品自拍视频在线播放| 亚洲国产精品成人无码久久久| 岛国黄| 日本免费专区| 国产成人+综合亚洲+天堂| 99久久99九九99九九九| 亚洲不卡av在线| 日韩激情视频| 神马久久免费电影观看| 综合久久少妇中文字幕| 欧美一区二区三区互相| 精品国产片亚洲一区| 97色色色| 白嫩白嫩的午夜九久久久久久久久久久久成人剧场| 亚州色图欧美色图| 精品人妻一二三| 日本成人免费一区二区三区| 日韩探花精品在线视频| 五月天激情国产综合婷婷婷| 亚洲永久AV无码精品秋霞| 亚洲性少妇| 黑人性欧美| 操一操摸一摸| 99久久久久久久久| 亚洲欧洲小说图片视频 | 色y情视频免费看| 成年女人黄网站| 国产欧美日韩在线不卡第一页| 六月婷婷激情| 久操 高清| 98福利在线视频| 午夜啊啊| 午夜福利精品| 98精品国产乱码久久久久久| 麻豆国产视频精品观看| 色婷婷影院| 91天天爱| 国产精品4p在线观看| 亚洲无码久久久久久久| 69精品人人人人| 欧美少妇高潮视频| 亚洲一级性爱视频免费看| 这里只有精品视频| 后入式视频国产自| 性爱免费视频成人| 91丝袜在线视频| 黄骗免费网站| 久久久久无码| 91亚洲网站| 3p国产欧美99热| 射丝袜大香蕉| 都市久久精品激情亚洲| 蜜奶av| 国产精品天堂| 国产精品老熟女一区二区| 91国产丝袜美女| 国产福利合集| caorenqi shipin| 久久久一二三四区| 天天天天天干夜夜夜夜夜操| 九九免费影片| 国产黄色 A 片免费看| 91人人看| 一级乱伦网站| 用力操死我| 午夜毛片亚洲精品片国产久久久| 国模吧 一区二区三区| 女人的天堂大香蕉网| 五月丁香黄色网| 欧美国产日韩清纯唯美| 欧美黑人熟妇精品91| 日韩免费性爱视频在线观看| 性欧美999| 国产AV久久久蜜爱影集| 香蕉视频精品亚洲一区二区三区在线播| 久久久精品国产亚洲AV无码| 美女网站黄页| 性爱av网站| 久九九九九九九九热| 欧美日韩999| 99精品九九九九九九| 久色网| 国产精品久久久久久久久久久久久久吹| 五月丁香色情| 国产精品爆乳懂色蜜乳| 久久久久久九九九九-美女久久久久久久-成人AV | 日本一区二区中文字幕久久| 中文字幕在线观看网页| 一二三四视频中文字幕在线看| 色婷婷综合久久久久中文一区二区| 免费操逼91| av优播| 亚洲av噜噜噜噜噜噜| 欧美五区| 欧美刺激色黄片免费看| 蜜臀视频网站| 97精品第3页| 免费簧片在线观看| 理论久久婷婷网8| 99色视频| 午夜电影在线观看无码专区| 欧美丝袜中文字幕07在线| 欧美成va视频网站| 思思热在线视频免费| 性爱AV天堂| 在线观看黄色电话| 日本久久女同性恋视频| 九九av| 国产黄a三级三级三级av在线看| 26uuu最新| 后入福利| 日韩久久超碰色| 综合久久欧美| 国产一区二区在线播放量| 91麻豆一二三区| 丁香六月激情| 爱媛媛久久国产福利| 97免费在线观看| 久啪| 欧美人妻色| 天天综合色| 国产精品一区av在线| 97人人夜| 91在线观看,天天综合| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 欧美色日本| 久久99综合| A级片日韩欧美国产欧美视频精选观看 | 中文字幕乱妇免费视频| 亚洲涩涩| 9超碰免费| www.色五月| 乳欲人妻办公室奶水| 天美91| 伊人嫩草| 少妇色欲综合网2| 欧美狠狠操| 99综合视频| 日韩性爱电影一区| 69精品久久久久中文字幕| 国产自制av蜜乳| 亚洲欧美校园| 啊啊啊轻点在线观看| 欧美国产一区二区三区麻豆传媒| 亚洲天堂女优在线| 久jiu久神马影院| 亚洲精品亚洲人成人网| 精品久久久亚洲AV成人网站| 思思性爱| 乱伦AVxx| 亚洲无码久久久久久久| 91粉嫩萝控精品福利网站_精品影音先锋国 | 东京热男人天堂| 色路综合| 白丝被操91| 色99999| 国产熟女精品一区二区| 国产丝袜欧美在线视频| 精品人妻免费观看| 国产成年免费大片黄在线观看| 干我久操| 天天综合网日韩7799| 亚洲色图尤物视频 | 日本孕妇孕交| 久久后入制服| 日本福利二区视频| 日韩av不卡在线观看| 深夜国产一区二区三区在线看| www.99视频| 国产一区二区三区精品观看啪| 久久久久9久久久久| 人人摸人人舔一区二区| 强奸乱伦动态污图免费| 明星性猛交ⅹxxx乱大交| 蜜区区视频79 | 欧美v亚洲v综合v国产v妖精| 国产精品国产自产高清AV| 久久久久九九九| 色噜噜狠狠色综无码久久合欧美| 色综合国产在线观看| 日本精品中文字幕视频| 中文字幕,人妻,日韩| 97超碰人人操人人操| 巨爆乳一区二区爆乳区| av一区二区三区 中文| 四色永久成人网站| 超碰爽人妻熟女Av| 熟女网站最新| 日本不卡一二区| 国产精品精品系列在线观看| 久久久97| 精品然女一区二区| 日韩射图| 久草精品国产99| 日本高清_区二区三区| 久久久久久AⅤ无码免费肉站| 9l视频自拍9l九色成人| 老熟女区| 色爱天堂| 九九色婷婷| 91女网站| 黄站在线免费观看| 日韩性爱一级片| 免费看A片毛毛片在线播| 亚洲综合色网| 中亚黄色三级大片| 蜜桃狠狠色伊人亚洲综合网站| 嫩草美女久久| 91国产精品熟女| 青青操视频在线| 欧美亚洲小说| 无码乱人伦中文视频| 亚洲综合小说另类图欧美视频激情小说色五月天 | 偷窥自拍亚洲天堂网爆| 91国产美女丝袜足交精品视频| 9久9久| 亚洲āv网址在线观看| WWW黄片COM| 欧亚第一综合网| 免费视频观看60秒| 97香蕉碰碰人妻国产欧美| 国产视频一区二区在线观看| 黄色成年| 人人干人人搞人人摸| 嗯嗯嗯啊啊啊操的我好爽| 人妖欧美一区二区| 性爱边摸边日免费AV| 免费视频在线观看啊啊啊啊啊| 极品AV网站在线观看| 欧美色综合| 婷婷丁香六月| 偷拍亚洲情色| 亚洲免费人妻在| 性性久久| 国产成人www免费人成看片| 亚洲精品天天影视综合网 | 五月综合久久| 91天天爽| 99ri在线视频| 91痴汉| 在线观看av区| 中文无线日韩一区| www.久久| 国产亚洲色婷婷久久99精品91 - 百度| 抽插无码高清一区| 欧美色图在线视频少妇| 久久‘黄片视频| 国产成人主播| 国产福利在线视频网站| 亚洲影视高清第一页| 操www| 亚洲第91页| 欧美一区二区三区四区综合| 久久九七| 乱伦1色页| 殴洲老熟女| 综合久久久久久久综合网| 色色99| 亚洲 日本 国产 综合| 久久久性爱视频| 国产福利视频精品视频| 日日日日做夜夜夜夜做无码97| 综合久久久久久久综合网| 久久精品国产精品| 99热超碰| 第四色奇米影视777| 亚洲第一二区另类图| 成人日韩3| 精品九九淫乱男| 伊人黄色视频免费观看| 亚洲人妻五月丁香婷婷| 97色插| 强奸乱伦免费网站| 欧亚日韩综合精品国产| 99国产精品人妻人伦| 26uuu最新| 免费成人在线熟妇网| 免费人成?大片在线播放| 婷婷五月天激情四射| 二区熟妇韩日| 成人免费不卡在线视频| 偷拍精品一区二区三区| 97久久国产亚洲精品超碰热| 99re6久热只有精品6在线直播| 国产 亚洲 一二三四| 色男人色天堂东京热| a网站免费观看| 亚洲男人综合| 美女十八禁| 欧美激情视频一区二区三区不卡| 在线观看黄色电话| 亚洲精品国语在线播放| 天天天堂影视日韩亚洲91| 久热免费视频| 美女极品一区二区三区| 麻豆久久精品亚洲精品88| 色色综合97| 九九热九九热| 国产综合操逼高清| 99re免费视频精品全部| 99久在线精品99re8蜜桃| 日韩人妻网站| 91人妻爽爽人人做人人澡| av天堂精品久久| 久艹日日日| 日本一久是| 97干色天堂| 可以免费观看的AV| 手机看片1024你懂的国产| 婷婷色色五月天福利| 欧美天天综合网版| 在线啊啊啊| 91九九九小逼| 一区二区三区成人 | 无码精品久久久久久亚洲| 情色五月天就去干| 97超碰人妻| 亚洲熟妇白浆无码AV| a人欧美综合天堂麻豆| 日韩欧美女优电影| 六月婷婷色综合| 人人干人人操人人..com| 欧美人人操人人插| 12一15性XXXX粉嫩国产| 亚洲欧美黄| 91老司机精品| 女人久久久| 骚货操死你| 91网站18+| 婷婷久草| 九色 蝌蚪 熟女自| 黄站在线免费观看| 亚洲高清欧美总合| 人妻熟女一区二区在线视频| 国产精品9999| 1000部熟女视频在线观看| 欧美亚洲图片| 国产精品第一区第一页| 秋霞免费无码视频日韩A片| 99精品国产户外露出| 国产色产精品在线观看| 久久国产AⅤ| 日本孕妇一区二区视频操逼免费看 | 久热伊人| 在线a亚洲视频播放在线| 青娱乐淫乱1314| 亚洲影院无码在线| 久久青青草原免费视频| 亚洲成人日韩小说| 欧美黄片视频在线观看免费 | 亚洲有薄码区日本系列中文字幕| 嗯嗯啊啊啊好舒服| 中文字幕乱偷人妻久久艾草网| 自拍亚洲综合| 综合网亚洲| 日韩熟女操逼| 亚洲色图亚洲无码强奸乱伦| 视频二区美腿丝袜制服人妻欧美 | 亚洲欧美日韩激情不卡| 黑人精品XXX一区一二区| 人人干黄色| 郑州宾馆老熟女露脸啪啪| 欧美日本一区二区a人| 91啪啪视频| 色呦呦、国产精品| 亚洲熟女偷拍在线观看| 亚洲欧美日韩中文播放| 温婉少妇玩3p| 亚洲 91 在线| 九九九九精品一区| 亚洲熟女综合一区二区| 久操网线| 欧美大香蕉在线观看| 少妇色综合| 97超碰9| 国产在线观看91精品一区| 国内自拍 日韩激情 99| 激情图片亚洲色图| 78操B| 国产多人在线观看视频| 婷婷五月天AV| 蜜桃丰满熟妇av无码区不卡| 久操精品| 色五月激情综合网| 欧美午夜视频| 乱伦熟妇一区二区| 日韩性爱再线视频| 亚熟在线| 综合 亚洲 欧美| 国产对白刺激视频| 色妹子A V| 一区二区不卡免费| 久久久亚洲Av| 国产13区| 欧美不卡五十路| 欧美日韩性爱视屏免费看了| 韩国国产欧美情侣视频在线| 欧州一区二区三区四区| 人妻AV在线| 狠狠干妹子| 免费看黄片现成| 国产精品一二三区福利| 久艹视频在线| 无码乱人伦中文视频| 夜夜夜久久| 日韩有码专区| 婷婷伊人| 久超碰这里只有精品| 久久av一级av少妇av高潮| 99re这里只有精品中心播放 | 丁香五月av| 亚洲交换| 黄网在线播放| 四虎精品亚洲| 亚洲欧美中文日韩视频中国语| 一区二区三区成人 | 日韩欧美偷拍美女视频| 国产日逼视频| 久久网亚洲| 熟女五十路一区二区三| 欧美一品道| 日本一区二区不卡精品| 日本三级韩国三级美三级91| 精品亚洲黄色片 国产精品导航一区二区| 久久99九九九九6666免费观看软件| 成年人性爱日韩| 啊啊啊啊啊舒服| 无码乱人伦中文视频| 亚洲色图综合网| 黑人操一区二区| 天天干人妻| 亚洲操逼无码| 久久久久久人体| 日韩精品一区的| 亚洲综合在线91| 96精品在线| 国产女同在线观看视频| 欧美中文狠| 日韩精品黄片免费观看| 成人无码欧美一级A片狼牙直播| 婷婷99| 五月丁香激情四射| 夜夜嗷嗷一区二区| 凸凹视频在线观看| 91 丝袜在线播放| 色五月69夫妻| 乱伦av.com| 蜜臀99久| 18岁禁 茉莉成人久久| 三级特黄60分钟播放| av草草在线电影| 激情综合色| 男女日B国产| 91嫩草在线| 天天爽天天爽| 91丨九色丨国产丨人妻在线 | 久操视频资源站公开| 国内精品99999| 日韩熟女精品无码专区一区二区| 欧美精品xxxwww| 9 1果冻精品视频| 啊嗯好大视频在线观看| 福利在线黄片| 韩国免费播放一级毛片| 果冻传媒A片一二三区| 97精品国产97久久久| www.久久制服糖| 91天堂| 久久宗合亚洲| 久久人妻视频网| 亚洲字幕一区二区| 91黑丝在线| 91伊人久久在线| 很黄很污的免费网站| 亚洲精品乱码久久久久久蜜桃麻豆| 欧美日韩中文字幕人妻| 欧美激情黑人| 嗯嗯啊好大| 欧美色棕合| 手机看片1024你懂的国产| 少妇厨房愉情理伦片bd在线观看| 大逼色网站| 老熟妇一区二区三区啪啪| 久久天堂婷婷网| 超碰人人超在线观看| 国模无码人体一区二区三| 人妻久久| 精品人妻一区二区蜜桃视频| 北京美女一区二区| 蜜臀精品1区2区| 九九色影院| 强奸乱伦av电影| 精品毛片av一区二区| 91综合网| 少妇久久久| 熟女熟妇一区二区三四区| 欧洲精品欧洲精品| 性性欧美| 人妻 欧美 中文| 中日韩久久人妻一区二区| 爱爱60秒免费视频| 99色在线视频| 六月丁香网| 综合激情五月天| 欧美性爱在线无码| 日本熟妇人妻中出视频| 99精品久久久久久久婷婷| 久久五月天婷婷丁香中文字幕| 中国操逼无码| 亚洲欧洲自拍图片专区满春格| 欧美夜夜| 亚洲97成人在线观看| 日韩兔费看黄片| 国产美女高潮| 国产在线综合福利网站| 超碰精品日韩欧美国产| 国产 亚洲 一二三四| 日本潮催一卡操| 乱伦a片视频| 国产一区二区三区久久久精品| 国产精品盗摄 偷窥盗摄| 亚洲性爱成人| av绯色| 人妻中文字幕日韩电影| www.人人cao| 被体育老师抱着c到高潮| 亚洲色欲天天人妻无码系列专区| 日本在线不卡一二区| 91丝袜美女国产| 成人贴图日韩欧美| 操学生天天| 日韩综合97P| 精品人妻一区二区三区蜜桃视频| 久久久久久综合久久伊人蜜月| 欧美激情精品| 亚洲成人在线高清| 九九黄色视频在线观看| 91爽啪| 激情文学欧美| 免费公开人人操| a级理论午夜日本| 狠狠穞A片一區二區三區| 国产少妇与亚洲av| 欧美影音在线| 夜夜欢天天干| 九九干| 五月激情天| 久久av网| 欧美春色| 青椒国产97在线熟女| av资源在线观看少妇| 日韩中文字幕熟妇人妻| 日韩av电影网站| 久久老女人| 在线看片国产精品每日更新| 啪啪91| 97久久国产亚洲精品超碰热| 热99这里有精品综合久久| 国产h片在线观看视频| 床上啊啊啊一区二区三区| 日日摸天天爽夜夜欢| 日韩性爱人人爱人人操| 久久久久久夜夜夜夜夜| 少妇蹲下买菜露大唇0| 男女啪啪啪18禁网站| 自拍大香蕉乱插| 黄色成品网站| 97chaopengongkai| 久久久无码av精| 99青青草国产视频| 夫妻天天操岛国视频| 久久精品中文字幕无码l| 国产自产91区13区| 97天天操| 午夜高清成人在线视频| 国产和美国毛片| .精品人妻一区二区三| 天天干美少妇一区| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 69人妻精品丰满熟女区| 欧美天天综合网| 久久久久国产无av| 蜜桃精品视频一区二区三区| 小视频国产| 麻豆区99999| 欧美宗合网| 9l视频自拍9l九色成人| 久艹视频在线| 亚洲欧美在线观看2021 | 国产美女mm131爽爽爽爽| 91日日| 一中国女人毛片水真多| 中文字幕一二三区| 欧美激情激情xxxx欧美专区| 天天干天天做| 国产精品诱惑| 亚码激情| 91精品国产91综合久久蜜臀| www.夜夜| 蜜臀久久99精品久久久| 日韩乱码Av| 69一区二区三区 | 大香蕉啪啪啪啪在线| 9色国产精品一区粉嫩| 色婷婷aV一区二区三区麻豆综合| 亚洲人妻久久| 免费看美国人人爽,人人操 | 操B久久| 视频黄站| 免费家庭乱伦视频| 黄色乱论网站| 成年人网站在线免费观看| 五月婷婷激情综合| 欧美se综合| 超碰免费在线| 91精品91久久久中77777| 亚洲综合另类| 欧美综合另类| 中文字幕片| 情趣丝袜无码操逼视频| 久草男人天堂| 国产 日韩 另类 视频一区爱| 嫩草 我啊~嗯~在线| 五月丁香社区婷婷日韩欧美精品影院| 五十路成人在线视频二区三区| 国产97色在线| 97超碰超碰| AV丝袜少妇| 亚洲精品啪视频| 亚洲清纯综合| 久操高青| 亚洲最新中文字幕免费| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 日韩欧美大力操| 蜜臀久久久| 欧美极度丰满熟妇hd| 色欧美亚洲| 男人的天堂欧美| 国产一区二区视频在线播放| 性天堂| av一区二区三区四区五区久草臀| 操逼视频免费日韩无码| 精品无码久久久久久久久果冻糖心| 99re不伦| 手机看av网站在线看| 91东北熟女| 欧美一品道| 你操综合| 午夜黄色免费在线观看| 国产成人在线观看网址| 国产精品一区二区后入| 熟妇熟女亚洲天堂网| 97人人操人人摸| 日韩97P| 亚洲男人天堂视频| 欧美最婬乱婬爆婬性视频| 日韩欧美中文| 丁香婷婷五月| 97精品全部| 牛牛久久国产精品视频一二三 | 日韩大香蕉AV影片| 色妇91| 久久久精久久久| 国产97视频免费观看| 日韩电影在线观看网址| 毛片99-全集电影手机免费观看完整-B029AV | 中文字幕丝袜人妻| 九九av| 在线国产一区二区av| 欧美日韩插逼视频| 亚州男人天堂| 一二三区精品视频| 干美女人妻| 亚洲综合九| 亚洲欧美国产中文字幕| 日韩99神马视频播放片在线播放| 婷婷深爱五月| 欧美自拍偷拍免费观看| av无线看| 日本操逼视频不卡直接放| 久久97| 色综91| 超碰97COm中文| 色色97爱| 农村少妇久久久久久久| 中文字幕熟女人妻丝袜丝| h色99999| 中文字幕伊人| 91伊人久久在线| 色网综合网| 天天看高清麻豆| 97免费免费视频网| 天天享受天天看| 青青草视频久久久久| 97干色天堂| 亚州乱码中文字幕综合久久久| 国产原创精品| 91色图片| 亚洲天堂人人妻| 久久久久久久六六| 亚洲影视第一页| 亚洲日韩资源| 校园春色亚洲色图| 另类图片综合| 极品欧美一区二区三区| AV在线性爱| 操逼逼中文字幕| 天天干夜夜操网| 激情五月激情综合网| 一道本久久棕合爱| 熟女自慰久久久| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 91精品电影18| 亚洲精品欧洲精品| 91欧美性| 亚洲男人天堂网站| 欧美国产精品久久九九| 亚洲精品国产熟女| 综合欧美日本三级| 精品四五区| AV在线资源| 好色美女九七第一页| 熟女人妻一区二区三区免费看| 欧美成人性爱视频在线播放| 97在线精品观看视频| 久草福利在线资源站| 夜夜爽33333| 91久久堂| sewuyueav| AV和黑人在线播放| 99热最新| 综合av影片| 亚洲色图A| 国产人妖的免费的视频| 91色久| 欧美丝袜激情| 清纯唯美第一页| 69少妇一区二区| 99热精品在线| 大香蕉欧美国产日韩高潮| 一本色道熟妇| 亚洲第一黄色av网站| 99亚亚热| 男人的天堂日韩| 秋霞免费无码视频日韩A片| 天天操天天舔| 国产中文福利| 2017天天拍大香蕉| 免费a在线播放v| 91夜夜蜜桃臀1区2区3区| 无码二级三级| 在线看片国产精品每日更新| 久久久久久久久久久97| 一二三卡欧美日韩人妻免费精品| 亚欧无码线免费观看视频| 强免费黄色网址| 伊人久久久日韩一区| 少妇一区二区三区| 欧美 亚洲 偷拍自拍| 日韩欧美偷拍美女视频| 黑人娇小av在线播放| 亚洲欧美日韩综合在线尤物 | 亚洲高清无毛一区二区| 亚洲色图超碰在线| 96超碰网| 亚州操逼网| 成人黄页| 人人看人人爰人人操| 日韩女优在线| 三级色影综合网| 爱我干综合| 亚洲熟妇AV日韩熟妇在线| 91东京热男人的天堂| 国产av高清版| 最近二区三区视频大全| 岛国精品视频在线观看| 欧美手机在线综合| 成人免费福利网站国产| 日韩不卡网操逼中文字幕日韩| 国产福利合集| 婷婷情色综合网| 加勒比海色香蕉婷婷| 久久99网站| 97K超碰在线| 婷婷五月激情综合| 国产97色在线 | 亚洲| 午夜男女爽爽爽在线视频| 99福利社| 午夜男人一级A片7777| 国产av色网| www.色婷婷色综合| 亚洲中文字幕av| 久久久久久人妻| 综合色91| 91久久久久久久久久久| 欧美Ⅴ性爱| 色av中文字幕| 青娱乐国产盛宴视频| 制服诱惑亚洲一区二区三区在线观看| 欧美精品一区二区少妇免费A片 | 操操逼操操逼操操逼逼| 99热这里只有是精品10| 久久成人午夜精品影院| 亚欧洲一区二区视频| 久久人人爽人人爽人人片Ⅴ| 亚洲丝袜二区在线| 精品一区二区三区蜜桃臀赵总 | 天天综合网在线91| 精品国产乱码久久久久A| 麻豆天美传媒毛片| 亚洲免费97免费| A 天堂在线观看视频| 大茄子熟女AV导航| 久热色情精品| 狠狠操夜夜| 久久久久久人| 亚洲欧洲美腿丝袜| 亚洲激情综合另类男同| 97超碰欧美手机在线| 久久久九97| 久久天天艹| 婷婷五月天色网| 久久精精区一区二区一蜜桃一区二区| 无码精品久久久久久亚洲| baiduhicn.com。| 极品白嫩美女白浆成人福利在线看| 久久久啊啊啊| 樱花草社区www中国| 在线观看综合精品亚洲| 欧美超碰97| 日本新免费二区三区| 97福利视频| 欧美一二三级精品在线| 一卡二卡三卡| 亚洲精品欧洲精品| 91日韩在线| 熟妇xxxxx性春色| 婷婷激情丁香| 91在线丝袜视频| 99热18| www..com操老师| 97色亚洲| 欧美一区二区三熟女剧情| 97综合在线观看| 黄色性爱网网| 自拍偷拍草一草| 97碰碰色| 少好三P| 最新亚洲风情电影| 日日干夜夜干| 91足交| 中文字幕一区二区三区字幕| 青青五月天| 少妇第一页| 观看视频图片一区二区三区| 综合激情婷婷| 亚洲成熟国产精品美女| 干我久操| 蜜桃狠狠色伊人亚洲综合网站| 97精品网站| 婷婷美人网| 久久亚州高清| 国产超碰国产97| 九九热免费视频| 秋霞曰韩R级| 韩国一级AAA| 天天看精品动漫视频一区| 天久久久噜噜噜久久国产精品爽爽| 日韩国产九九精品一区二区三区毛片| 97人亚洲综合字幕| 久久侵犯人妻爽爽爽| 婷婷在线视频| 国产热RE99久久6国产精品首| 欧美精品99久久久**| 无码操逼视频一下| 综合亚洲欧美精品日韩?v| 男人的天堂2018| 超碰美国| 国产99999| 色香综合| 96精品久久| 99re超碰| 性综合网| 日本孕妇一区二区视频操逼免费看 | 大香蕉2017| 成人草草视频| 偷拍导航视频网站| 亚洲九九视频| 九久久九九久视频| 九九九一二三| 欧洲精品一级二级精品综合视频综合| 欧美亚洲首页| 少妇精品久久| 一级毛片电影免费看| 秋霞怕怕片| 先锋影音av先锋一区| 无码区蜜乳| 青娱乐亚洲自拍| 日韩在线观看字幕精品| 人人做人人妻人人夜视频| 性爱1区| 这里只有精品久久| 色噜噜国产在线| 十八禁黄色成人网站观看| 男人的天堂VA在线| 97精品97久久| 强乱老妇中文字幕| 国产91 丝袜在线播放00-百度| 色欧洲| 日韩一区二区精彩视频| 人人看欧美性爱| 精品国产一级久久| 婷婷综合在线| 国产精品制服丝袜中文字幕日韩一区二区三区 | 性生活久久久久久久久久| 情侣操 逼视频99| 久久熟女嫩草成人片免费| 淫淫综合网| 久久这里只精品免费福利| 亚洲成人av电影在线| 激情色播| 91色黑人少妇| 久久久久久99999国产精品| 色97干| 国产精品无码av嫩草| 性爱av在线免费观看| 天天日B狠狠操| 蜜臀久久久国产| 久久香蕉国产线看观看亚洲女人 | 国产原创剧情在线丝袜 | 色在线综合| 不卡啪啪视频| 桃色六月天| 97情超碰色| 天天躁日日躁狠狠躁| 亚洲αv一区二区三区| 一区二区日韩欧美久久| 丰满少妇高潮无码| 加勒比海人人操超碰在线| 在线无码视频| 日本超碰在线国产一区| 日日嗨AV一区二区夜夜| 久久精品熟妇丰满人妻99| 一区操逼日比视频| 日韩99神马视频播放片在线播放| 欧美青青草视频| 在线日韩精品一区二区三区| 亚州操逼网| 精产国品一区二三产品| 97chaopengongkai| 国产小黄片在线免费观看 | 老熟女搡BBBB搡BBBB视频| 欧美操人| 欧美色图在线视频少妇| 亚洲欧洲成人在线电影| 十八禁啪啦拍视频无遮挡| 久久日本熟女精品一区| 日韩97| 97色色婷婷| 亚洲青青草| 国产精品久久久久无码A√| 精品妇女一区二区三区| 一卡二卡三卡| 久久精品国产96精品亚洲拳交| 欧洲精品在线播放| 97超碰久久| 超碰97起碰| 99re视频在线播放青草| 新婚人妻扶着粗大强行坐下| 精品视频97| 老司机午夜精品视频| 天天摸,夜夜摸| 熟人人妻少妇精品久久| 亚洲成人美女无吗| 国产情色第一第二页在线观看| 国产精品无码成人精品| 久久久久久亚洲精品中文字幕人妻| 欧美综合色图片| 欧美99热| 偷窥自拍亚洲| 探花激情视频| 人妻喷水| 美女被艹尤物视频| 亚洲97网站| 欧美视频中文字幕区| 亚洲日韩97| 亚洲激情在线一区二区| 亚洲久久东京热一二三四五区视频| 久久九九视频九九视频| 97超碰总站| 国产99久久99热这里只有精品15| 亚洲欧美日产国产91毛片| 成人小说视频在线精品欧美| a人欧美综合天堂麻豆| 一区二区三区免费视频入口 | 亚洲第一免费视频| AV在线资源| 人干人人人操人人摸| 欧美日韩人妻少妇 一区二区三区| 天天操天天干一区二区 | 婷婷午夜成人色中色| 自拍亚洲综合| ?亚洲伊人伊成久久人综合网| 亚洲好色人妻| 婷婷五月天AV| 好爽视频在线观看视频| 欧美亚男人的天堂| 操逼视频色| 四虎精品一区| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 97超碰中文在线| 欧美性爱一内片一区二区三区| 无码人妻一区二区三区色欲aⅴ| 亚洲人妻熟妇三十三区| 国产精品极品美女视频| 五月天九九日国产精品一区二区三区| 91九色网| 亚洲中文字幕在线视频一区二区| 天天综合欧美综合| 操高情无码| 欧美se综合| 亚洲永久永久永久永久一级一级一级精品| 成人一级性爱| 国内一级精品| 曰本精品久久久| 激情干在线| 亚洲欧洲激情卡通另类文学四射小说网站 | 男人下部插入女人下部| 狼狼色丁香久久婷婷综合五月| 精品丰满熟妇人妻一区| 欧美熟妇视频 | 青青青草原| 久久久不能久久久久| 欧美色性爱| 无码国产精品96久久久久孕妇| 天天综合网入口~91| 婷婷在线视频| 三级AV入口| 亚洲黄色电影| 天堂在线一区二区| 五月天偷拍| 国产精品自拍xxxx| 精品91日日夜夜超清资源| 精品成人女人久久| 夜夜一区二区| 日韩激情中文字幕有码| 欧美一级在线观看成人| 久久久天美| 亚洲av热热色| 日韩欧美女优电影| 亚洲中文字母在线播放| 91综合在线| 色色97爱| 欧美91久久久久| 久久综合日韩亚洲欧美| 国产伦精品一区二区三区在线观| 欧美自拍偷拍综合图片| 欧美高清色| 日本97久久| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 黄页视频网站野外| 一级黄色性爱A级片| 91日韩国产欧美亚洲另类精盘州至城都 | 日本99一区二区| 水澄无码AV| 久久久久国产精品片区无码直播| 亚洲欧美色图小说| 欧美日韩传媒| 亚洲九九视频| 欧美日韩亚洲电影| 午夜福利区| 精品久久久中文字幕不| 99久热| 久久综合激情| 91操人| www.av在线视频| 八戒午夜福利理论片| 免费一二区| 中文字幕乱亚洲美女精品一区| 四虎免费在线播放| 综合天天。| 97jingpin| 欧美亚洲综合999| 日韩 女同 综合| 超碰69| A一级色女| 欲色啪| 加勒比久久av| 天天在线91| 四虎影视 亚洲无码| 国产精品粉嫩福利在线| 亚州国产成人精品女人久久| 男人网站婷婷| 欧美激色| 天天日骚逼熟女| 欧美色97| 友优传媒精品在线一区二区| 天天综合网在线91| 97av在线观看| 综合网亚洲| 日韩一区二区精彩视频| 欧美人人曰人人操人人射射| 国产狂喷潮在线精品| 欧美日韩啪啪电影| 成人av影院在线观看| 国产成人欧美一区二区三区的国产| 免费αⅴ在线观看| 成人午夜小视频手机在线看| 粉嫩绯色AV一区二区在线| 91呆哥人妻| 精品精品精品|