欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

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

SAM-Med 2D脊椎分割數(shù)據(jù)集構(gòu)建與微調(diào)實戰(zhàn)指南 簡介本資源是一份面向醫(yī)學(xué)圖像分析方向研究者與AI醫(yī)療開發(fā)者的技術(shù)實踐指南聚焦SAM-Med 2D視覺大模型在脊椎影像分割任務(wù)中的完整復(fù)現(xiàn)與定制化訓(xùn)練流程。資源涵蓋模型結(jié)構(gòu)解析、RawData原始數(shù)據(jù)組織規(guī)范、process數(shù)據(jù)預(yù)處理腳本、train端到端訓(xùn)練腳本及評估結(jié)果可視化方案有效解決醫(yī)療小樣本場景下大模型適配難、數(shù)據(jù)格式轉(zhuǎn)換繁瑣、訓(xùn)練配置不透明等核心問題。壓縮包共2000個文件主體為1948張脊椎標(biāo)注PNG圖像含訓(xùn)練/測試分割掩膜、27個Python訓(xùn)練與工具腳本含Jupyter Notebook交互示例、14個編譯緩存文件輔以JSON映射文件、Markdown說明文檔及LICENSE協(xié)議總大小243.76MB。目前已有107人學(xué)習(xí)下載讀者可直接獲取開箱即用的數(shù)據(jù)處理流水線、可調(diào)試的訓(xùn)練框架、標(biāo)準(zhǔn)化評估指標(biāo)Dice系數(shù)等實現(xiàn)邏輯以及微信技術(shù)交流群入口等實戰(zhàn)支持信息。1. 項目概述為什么需要為SAM-Med 2D訓(xùn)練脊椎分割數(shù)據(jù)集在醫(yī)學(xué)影像分析領(lǐng)域尤其是骨科和神經(jīng)外科脊椎結(jié)構(gòu)的精確分割是進(jìn)行疾病診斷、手術(shù)規(guī)劃、三維重建和生物力學(xué)分析的基礎(chǔ)。傳統(tǒng)的分割方法無論是基于閾值、區(qū)域生長還是早期的卷積神經(jīng)網(wǎng)絡(luò)CNN在面對脊椎CT或MRI圖像時常常受限于椎體形狀的多樣性、圖像對比度的差異以及相鄰椎體間的粘連問題需要大量的人工后處理和調(diào)參泛化能力有限。近年來以SAMSegment Anything Model為代表的視覺基礎(chǔ)模型憑借其強(qiáng)大的零樣本泛化能力和對任意對象的提示式分割潛力為醫(yī)學(xué)圖像分析帶來了新的范式。然而原始的SAM模型是在自然圖像上訓(xùn)練的直接應(yīng)用于醫(yī)學(xué)影像尤其是結(jié)構(gòu)復(fù)雜、邊界模糊的脊椎效果往往不盡如人意存在分割不完整、邊界粗糙、無法區(qū)分相鄰椎體等問題。這就催生了針對特定醫(yī)學(xué)任務(wù)的微調(diào)需求SAM-Med 2D正是這樣一個在大量醫(yī)學(xué)影像上進(jìn)一步預(yù)訓(xùn)練或微調(diào)的模型變體旨在更好地理解醫(yī)學(xué)圖像的語義和結(jié)構(gòu)。但是一個強(qiáng)大的模型離不開高質(zhì)量、針對性的數(shù)據(jù)。為SAM-Med 2D訓(xùn)練一個專用的脊椎分割數(shù)據(jù)集其核心價值在于“專業(yè)化”和“場景化”。這不僅僅是提供一些帶標(biāo)注的圖片而是構(gòu)建一個能夠教會模型理解脊椎解剖學(xué)特性、成像偽影、病理變化以及不同掃描協(xié)議下圖像表現(xiàn)的系統(tǒng)工程。通過這個數(shù)據(jù)集我們可以讓SAM-Med 2D學(xué)會精準(zhǔn)識別單個椎體從C1到骶骨清晰區(qū)分每一個椎體即使它們緊密相鄰。魯棒的邊界劃分即使在骨皮質(zhì)邊緣模糊、有骨質(zhì)疏松或椎體骨折的情況下也能準(zhǔn)確勾勒出椎體輪廓。適應(yīng)多模態(tài)影像能夠處理CT高對比度清晰顯示骨結(jié)構(gòu)和MRI軟組織對比度高骨邊界相對模糊等不同成像設(shè)備產(chǎn)生的數(shù)據(jù)。理解病理狀態(tài)對存在骨贅、壓縮性骨折、椎間盤突出壓迫等常見病理改變的椎體也能進(jìn)行有效分割。因此構(gòu)建這樣一個數(shù)據(jù)集是將前沿大模型能力真正落地到臨床輔助診斷的關(guān)鍵一步。它決定了模型性能的上限也是后續(xù)所有應(yīng)用如自動測量Cobb角、椎管狹窄評估的基石。本指南將詳細(xì)拆解從數(shù)據(jù)準(zhǔn)備、標(biāo)注、預(yù)處理到最終數(shù)據(jù)集構(gòu)建的全流程分享我們在此過程中積累的實戰(zhàn)經(jīng)驗與避坑技巧。2. 數(shù)據(jù)集構(gòu)建的核心思路與設(shè)計考量構(gòu)建一個適用于大模型微調(diào)的醫(yī)學(xué)影像數(shù)據(jù)集絕非簡單地將圖片和標(biāo)注文件打包。它需要一套完整的設(shè)計哲學(xué)以確保數(shù)據(jù)能高效地“教”會模型我們想要的知識。我們的核心思路圍繞“多樣性”、“一致性”、“可擴(kuò)展性”三大原則展開。2.1 數(shù)據(jù)來源的多樣性與質(zhì)量控制數(shù)據(jù)多樣性是模型泛化能力的保障。對于脊椎分割我們主要從以下幾個維度考慮多樣性影像模態(tài)必須同時包含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)壓迫評估則可能需要更多MRI數(shù)據(jù)如5:5。掃描設(shè)備與協(xié)議收集來自不同廠商如GE、Siemens、Philips、不同型號掃描儀的數(shù)據(jù)。掃描參數(shù)如層厚、間距、kVp、磁場強(qiáng)度的差異會導(dǎo)致圖像分辨率、噪聲水平和對比度的變化。這能迫使模型學(xué)習(xí)到更本質(zhì)的特征而非某個特定設(shè)備的成像風(fēng)格。患者群體與病理狀態(tài)數(shù)據(jù)應(yīng)涵蓋不同年齡、性別、體型的患者。更重要的是必須包含各種常見的脊椎病理狀態(tài)退行性變骨質(zhì)增生骨贅、終板硬化。外傷各種類型的椎體骨折壓縮性、爆裂性?;渭怪鶄?cè)彎、后凸。術(shù)后狀態(tài)內(nèi)含內(nèi)固定物如螺釘、鋼板、融合器的椎體。其他骨質(zhì)疏松、轉(zhuǎn)移瘤等。 包含病理數(shù)據(jù)至關(guān)重要它能讓模型學(xué)會在“非標(biāo)準(zhǔn)”情況下依然能工作這是臨床實用性的關(guān)鍵。注意數(shù)據(jù)獲取必須嚴(yán)格遵守醫(yī)學(xué)倫理和患者隱私保護(hù)法規(guī)如HIPAA GDPR。所有數(shù)據(jù)需經(jīng)過徹底的匿名化處理去除DICOM文件頭中的所有個人信息并確保擁有合規(guī)的數(shù)據(jù)使用授權(quán)。通常這項工作需要在醫(yī)院信息科或倫理委員會的支持下進(jìn)行。解剖覆蓋范圍數(shù)據(jù)集應(yīng)覆蓋全脊柱頸椎、胸椎、腰椎、骶尾椎并且確保每個椎體都有足夠的樣本。避免出現(xiàn)某個椎體如T4、T5樣本過少的情況。2.2 標(biāo)注策略與一致性規(guī)范標(biāo)注質(zhì)量直接決定模型學(xué)習(xí)的上限。對于脊椎分割我們采用“實例分割”標(biāo)注即每個椎體都是一個獨立的、互不重疊的掩碼Mask。標(biāo)注工具選擇推薦使用專業(yè)的醫(yī)學(xué)圖像標(biāo)注軟件如ITK-SNAP、3D Slicer或MITK。這些工具支持DICOM格式直接讀取、多平面重建MPR并能高效處理三維體數(shù)據(jù)。對于大規(guī)模標(biāo)注可以考慮CVAT、Labelbox等支持協(xié)作和項目管理的平臺但其對三維醫(yī)學(xué)影像的原生支持可能不如專業(yè)醫(yī)學(xué)軟件。標(biāo)注細(xì)則制定關(guān)鍵邊界定義明確標(biāo)注的邊界是骨皮質(zhì)的外緣。在CT上這通常是高亮信號的邊緣。在MRI上由于骨皮質(zhì)呈低信號邊界可能較模糊需要參考相鄰的椎間盤和韌帶結(jié)構(gòu)進(jìn)行判斷。病理區(qū)域處理對于骨折椎體標(biāo)注其變形后的輪廓包括可能存在的骨碎片如果屬于同一椎體。對于大的骨贅如果與椎體主體相連且屬于骨質(zhì)增生一般納入該椎體掩碼。內(nèi)固定物處理這是一個難點。螺釘、鋼板等金屬植入物會產(chǎn)生嚴(yán)重的射線硬化偽影CT或磁敏感偽影MRI完全遮擋解剖結(jié)構(gòu)。我們的策略是標(biāo)注可見的、未被偽影完全破壞的椎體部分。對于完全被偽影覆蓋的區(qū)域標(biāo)注員需基于上下相鄰層面和先驗解剖知識進(jìn)行“合理推斷”勾勒并在標(biāo)注記錄中標(biāo)記該區(qū)域為“推斷標(biāo)注”。這能幫助模型學(xué)習(xí)在偽影干擾下進(jìn)行“腦補”的能力。標(biāo)注一致性會議在標(biāo)注開始前必須組織所有標(biāo)注員通常是放射科醫(yī)師或經(jīng)驗豐富的影像科研究生進(jìn)行培訓(xùn)使用一批樣例圖像共同標(biāo)注討論并統(tǒng)一上述所有模糊情況的處理標(biāo)準(zhǔn)。過程中定期進(jìn)行交叉校驗和一致性評估如計算Dice系數(shù)對差異大的案例進(jìn)行復(fù)盤討論。2.3 數(shù)據(jù)集格式設(shè)計與可擴(kuò)展性為了適配SAM-Med 2D的微調(diào)流程并方便未來擴(kuò)展我們需要設(shè)計一個清晰的數(shù)據(jù)目錄結(jié)構(gòu)和數(shù)據(jù)格式。原始數(shù)據(jù)層保留原始的DICOM序列或NIfTI文件。按患者ID或研究ID組織文件夾。這是數(shù)據(jù)的源頭不可更改。預(yù)處理數(shù)據(jù)層存儲經(jīng)過預(yù)處理如重采樣、歸一化、裁剪后的圖像文件通常轉(zhuǎn)換為.npy或.png格式。同時保存對應(yīng)的預(yù)處理參數(shù)如重采樣率、裁剪范圍以便反向映射。標(biāo)注數(shù)據(jù)層這是核心。我們采用與SAM系列模型訓(xùn)練常用的格式。每個樣本對應(yīng)一個JSON文件結(jié)構(gòu)如下{ “image”: “preprocessed/patient_001_slice_50.png”, // 預(yù)處理后的圖像路徑 “image_id”: “patient_001_50”, “annotations”: [ { “id”: 1, “category_id”: 21, // 類別ID如21代表C3椎體 “segmentation”: { // RLE編碼或多邊形坐標(biāo)點列表 “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是一種高效的二值掩碼編碼方式相比存儲整個二維數(shù)組能極大節(jié)省磁盤空間尤其適合大尺寸醫(yī)學(xué)圖像。數(shù)據(jù)集劃分按照患者ID劃分訓(xùn)練集、驗證集和測試集絕不能按切片隨機(jī)劃分。因為同一個患者的不同切片之間存在強(qiáng)相關(guān)性按切片隨機(jī)劃分會導(dǎo)致數(shù)據(jù)泄露使模型在測試集上獲得虛高的性能。通常采用7:2:1或8:1:1的比例。確保每個集合中患者的人口學(xué)特征和病理類型分布大致均衡。元數(shù)據(jù)文件創(chuàng)建一個dataset_meta.json文件記錄數(shù)據(jù)集的整體信息如類別列表從C1到骶骨每個椎體對應(yīng)的ID和名稱、數(shù)據(jù)統(tǒng)計各模態(tài)數(shù)量、各椎體實例數(shù)、標(biāo)注規(guī)范版本、預(yù)處理方法等。這為數(shù)據(jù)集的維護(hù)和使用提供了清晰的“說明書”。3. 數(shù)據(jù)預(yù)處理與標(biāo)注實戰(zhàn)詳解有了設(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)過一系列標(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ǔ)否則裁剪、重采樣都會錯亂。窗寬窗位調(diào)整僅CTCT值的原始單位是HUHounsfield Unit。為了突出骨組織我們需要應(yīng)用“骨窗”。通常將窗寬設(shè)為2000HU窗位設(shè)為500HU然后將線性映射到[0, 255]的灰度范圍。這能極大增強(qiáng)椎體與周圍軟組織的對比度。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ù)據(jù)分辨率已經(jīng)很高如0.5mm層厚重采樣到1.0mm會丟失細(xì)節(jié)。因此目標(biāo)分辨率的選擇需要權(quán)衡分辨率太高增加計算負(fù)擔(dān)且可能引入更多噪聲分辨率太低丟失關(guān)鍵解剖細(xì)節(jié)。對于脊椎分割1.0mm各向同性是一個經(jīng)驗上較好的平衡點。強(qiáng)度歸一化將圖像像素值歸一化到固定的范圍如[0, 1]或[-1, 1]。對于CT已窗寬窗位調(diào)整和MRI可以統(tǒng)一使用(img - mean) / std的方式進(jìn)行標(biāo)準(zhǔn)化其中mean和std在訓(xùn)練集上計算然后同樣應(yīng)用于驗證集和測試集。這有助于模型收斂。切片與裁剪切片將三維體數(shù)據(jù)沿軸狀面Axial逐層切片得到二維圖像。這是SAM-Med 2D模型的輸入格式。裁剪脊椎通常只占據(jù)圖像中心的一部分。為了減少無關(guān)背景并增大感興趣區(qū)域ROI的占比可以圍繞脊椎區(qū)域進(jìn)行裁剪。一個自動化的方法是先用一個簡單的閾值分割或預(yù)訓(xùn)練模型檢測出包含脊椎的大致區(qū)域計算其邊界框然后向外擴(kuò)展一定像素如50px作為裁剪區(qū)域。手動指定一個固定的中心區(qū)域裁剪也是一種可行的簡化方案。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上從椎體最上端開始逐層向下標(biāo)注。利用軟件的“畫筆”和“橡皮擦”工具仔細(xì)勾勒每個椎體的邊界。對于形狀規(guī)則的中間層面可以使用“多邊形”工具快速框選。三維校驗與修補完成所有軸狀面切片標(biāo)注后必須在三維視圖下進(jìn)行渲染檢查。查看每個椎體的三維掩碼是否連續(xù)、光滑是否存在明顯的“階梯”狀偽影這是逐層標(biāo)注不一致的典型表現(xiàn)或空洞。在此視圖下進(jìn)行最后的修補和光滑處理。質(zhì)量控制QC步驟一級QC標(biāo)注員自檢標(biāo)注完成后標(biāo)注員自己需要從三維和三個二維切面視角反復(fù)檢查確保無誤。二級QC資深員復(fù)核由一名更資深的標(biāo)注員或放射科醫(yī)生對隨機(jī)抽取的至少30%的案例進(jìn)行復(fù)核重點檢查復(fù)雜病例骨折、術(shù)后、嚴(yán)重畸形和隨機(jī)抽查的普通病例。一致性度量定期如每標(biāo)注完20個病例讓所有標(biāo)注員對同一個“測試案例”進(jìn)行獨立標(biāo)注計算他們之間標(biāo)注結(jié)果的Dice相似系數(shù)DSC或Hausdorff距離。DSC一般要求達(dá)到0.85以上。通過分析不一致的區(qū)域可以發(fā)現(xiàn)并統(tǒng)一標(biāo)注標(biāo)準(zhǔn)中的模糊點。標(biāo)注格式轉(zhuǎn)換標(biāo)注工具如ITK-SNAP通常輸出.nrrd或.nii.gz格式的標(biāo)注文件其中每個椎體用一個不同的整數(shù)標(biāo)簽值表示。我們需要編寫腳本將這些三維標(biāo)注文件按切片提取并將每個椎體的掩碼轉(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() # 計算包圍框 area mask_util.area(rle_obj).item() annotation { “id”: int(label_val), “category_id”: int(label_val), # 這里假設(shè)標(biāo)簽值就是類別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)建一個繼承自torch.utils.data.Dataset的自定義數(shù)據(jù)集類。4.1 自定義Dataset類的實現(xià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是一個列表每個元素是一個樣本的字典 self.img_dir img_dir self.transform transform # 可以在這里加載類別映射關(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)同時增強(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)整圖像通道順序為 (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 針對醫(yī)學(xué)圖像的數(shù)據(jù)增強(qiáng)策略數(shù)據(jù)增強(qiáng)是提升模型魯棒性的關(guān)鍵。對于醫(yī)學(xué)圖像尤其是分割任務(wù)增強(qiáng)必須保持圖像與掩碼的空間對應(yīng)關(guān)系。我們使用albumentations庫它完美支持圖像和掩碼的同步變換。import albumentations as A from albumentations.pytorch import ToTensorV2 def get_train_transform(): return A.Compose([ A.HorizontalFlip(p0.5), # 水平翻轉(zhuǎn)對于脊椎是合理的 A.VerticalFlip(p0.0), # 垂直翻轉(zhuǎn)通常不用于軸狀面因為上下不對稱 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)換為Tensor并歸一化到[0,1]如果圖像是0-255 ], bbox_paramsA.BboxParams(format‘coco’, label_fields[‘category_ids’])) def get_val_transform(): # 驗證/測試集只需要Resize和ToTensor return A.Compose([ A.Resize(height512, width512, p1.0), ToTensorV2(), ])注意事項醫(yī)學(xué)圖像增強(qiáng)需要謹(jǐn)慎。過度的幾何形變?nèi)绱蠼嵌刃D(zhuǎn)、縮放可能破壞解剖結(jié)構(gòu)的合理性。亮度對比度調(diào)整的幅度也應(yīng)較小以保持CT/MRI的視覺真實性。ElasticTransform彈性形變對模擬軟組織形變很有用但不宜過度使用。4.3 類別不平衡與難樣本挖掘脊椎數(shù)據(jù)集中不同椎體的實例數(shù)量可能不均如腰椎樣本可能多于胸椎且背景像素遠(yuǎn)多于前景像素。此外一些難分的樣本如骨折椎體、邊緣模糊的椎體對模型性能提升至關(guān)重要。類別權(quán)重在損失函數(shù)中為不同類別的分割損失賦予權(quán)重。權(quán)重通常與類別頻率成反比??梢栽贒ataLoader中計算或在損失函數(shù)如CrossEntropyLoss中設(shè)置weight參數(shù)。難樣本挖掘Hard Example Mining在訓(xùn)練過程中不是所有樣本或像素對損失的貢獻(xiàn)都一樣。我們可以讓模型更關(guān)注那些它當(dāng)前分錯的“難樣本”。一種實踐是在計算損失時選擇損失值最高的前K%的像素或樣本進(jìn)行反向傳播而不是全部。這需要自定義損失函數(shù)或在訓(xùn)練循環(huán)中實現(xiàn)。在線難樣本挖掘OHEM這是一個經(jīng)典策略。在訓(xùn)練時前向傳播計算所有像素的損失然后只對損失最大的那一部分像素例如損失最高的25%計算梯度進(jìn)行更新。這迫使模型集中精力解決最難的問題。許多分割框架如MMSegmentation都內(nèi)置了OHEM損失函數(shù)。5. 訓(xùn)練流程中的關(guān)鍵配置與調(diào)試經(jīng)驗數(shù)據(jù)集準(zhǔn)備就緒后就可以啟動SAM-Med 2D的微調(diào)訓(xùn)練了。這里分享一些關(guān)鍵的配置經(jīng)驗和調(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è)這是模型類 model SamMed2D(...) pretrained_weights torch.load(‘path/to/sam_med_2d_pretrained.pth’) # 方式一嚴(yán)格匹配加載推薦 model.load_state_dict(pretrained_weights, strictTrue) # 如果strictTrue報錯比如你的分類頭類別數(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 # 或者全部凍結(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)練可能使用多種損失的組合。對于我們的脊椎實例分割任務(wù)一個有效的組合是Dice Loss非常適用于前景-背景像素極度不平衡的分割任務(wù)直接優(yōu)化分割區(qū)域的重疊度。Focal Loss是交叉熵?fù)p失的變體通過降低易分樣本的權(quán)重讓模型更關(guān)注難分的樣本如椎體邊緣、小椎體緩解類別不平衡。L1/L2 Regression Loss如果任務(wù)還需要預(yù)測包圍框BBox可以加上一個回歸損失。通常將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是目前視覺任務(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的組合是常見且有效的策略。Warmup在訓(xùn)練初期如前500個iteration或1個epoch學(xué)習(xí)率從0線性增長到初始學(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)控驗證集上的性能。監(jiān)控指標(biāo)除了損失必須計算驗證集上的Dice相似系數(shù)DSC和95%豪斯多夫距離95% HD。DSC衡量重疊度HD衡量邊界匹配度兩者結(jié)合能全面評估分割質(zhì)量。早停Early Stopping當(dāng)驗證集DSC在連續(xù)N個epoch如10或15內(nèi)不再提升時就停止訓(xùn)練并回滾到驗證集性能最好的那個epoch的模型權(quán)重。這能有效防止過擬合??梢暬ㄆ谌缑總€epoch將驗證集上的一些樣例分割結(jié)果原圖、真值、預(yù)測保存為圖片直觀地觀察模型是在進(jìn)步還是在“跑偏”。6. 常見問題排查與性能優(yōu)化技巧在實際訓(xùn)練中你一定會遇到各種問題。這里匯總了一些典型問題及其排查思路。6.1 訓(xùn)練過程不穩(wěn)定或損失震蕩現(xiàn)象損失值上下跳動很大不收斂或收斂緩慢。排查與解決檢查數(shù)據(jù)首先檢查數(shù)據(jù)加載是否正確??梢暬瘞讉€批次Batch的圖像和標(biāo)注看是否對齊標(biāo)注是否存在異常值如全0或全1。一個常見的錯誤是圖像歸一化出錯導(dǎo)致像素值范圍異常。降低學(xué)習(xí)率過大的學(xué)習(xí)率是導(dǎo)致震蕩的首要原因。嘗試將學(xué)習(xí)率降低一個數(shù)量級如從1e-4降到1e-5。啟用梯度裁剪Gradient Clipping在反向傳播后、優(yōu)化器更新前對梯度范數(shù)進(jìn)行裁剪防止梯度爆炸。torch.nn.utils.clip_grad_norm_(model.parameters(), max_norm1.0)檢查損失函數(shù)確認(rèn)損失函數(shù)的輸入預(yù)測和真值形狀、數(shù)據(jù)類型是否正確。特別是自定義損失函數(shù)容易在這里出錯。調(diào)整Batch SizeBatch Size過小可能導(dǎo)致梯度估計噪聲大。在顯存允許的情況下適當(dāng)增大Batch Size。6.2 模型過擬合訓(xùn)練集表現(xiàn)好驗證集差現(xiàn)象訓(xùn)練損失持續(xù)下降訓(xùn)練集DSC很高但驗證集損失早早就開始上升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如果模型是類似Transformer的結(jié)構(gòu)可以隨機(jī)丟棄一些層這是一種非常強(qiáng)的正則化。減少模型容量或凍結(jié)更多層如果數(shù)據(jù)集不大而模型非常大如SAM-Med 2D的ViT-Huge可以考慮凍結(jié)圖像編碼器的全部或大部分層只微調(diào)提示編碼器和掩碼解碼器。早停嚴(yán)格實施早停策略防止模型在訓(xùn)練集上“鉆牛角尖”。6.3 模型欠擬合訓(xùn)練集和驗證集表現(xiàn)都差現(xiàn)象訓(xùn)練損失下降很慢最終停留在較高水平訓(xùn)練集和驗證集的DSC都很低。排查與解決檢查任務(wù)可行性首先用簡單的模型如U-Net或甚至固定規(guī)則閾值分割在你的數(shù)據(jù)集上測試看是否能得到一個baseline結(jié)果。如果baseline都極差可能是數(shù)據(jù)標(biāo)注質(zhì)量有問題或任務(wù)本身定義不清。增大模型容量/解凍層如果凍結(jié)了太多層嘗試解凍更多層讓模型有更強(qiáng)的擬合能力。提高學(xué)習(xí)率/延長訓(xùn)練時間學(xué)習(xí)率可能太小或者訓(xùn)練周期epoch不夠。嘗試使用學(xué)習(xí)率查找器LR Finder找到一個合適的初始學(xué)習(xí)率。檢查數(shù)據(jù)泄露確認(rèn)訓(xùn)練集和驗證集是否嚴(yán)格按患者劃分。如果存在泄露驗證集性能會虛高而實際是欠擬合的。簡化問題先嘗試一個更簡單的任務(wù)比如只分割腰椎L1-L5看模型是否能學(xué)好。如果能再逐步增加復(fù)雜度。6.4 顯存不足OOM問題微調(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ù)更新。這樣在效果上等價于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)行自動混合精度訓(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()檢查點激活Gradient Checkpointing對于極其龐大的模型可以以時間換空間只保存部分層的激活值在反向傳播時重新計算其余層的激活。PyTorch提供了torch.utils.checkpoint功能。減小輸入圖像尺寸將輸入圖像從512x512降到256x256可以大幅減少顯存消耗但可能會損失分割精度需要權(quán)衡。構(gòu)建一個高質(zhì)量的脊椎分割數(shù)據(jù)集并成功微調(diào)SAM-Med 2D模型是一個涉及數(shù)據(jù)科學(xué)、醫(yī)學(xué)知識和工程實踐的綜合性項目。整個過程就像訓(xùn)練一位專注的“實習(xí)醫(yī)生”你需要用高質(zhì)量、多樣化的“病例”數(shù)據(jù)去教導(dǎo)它用清晰的“診斷標(biāo)準(zhǔn)”標(biāo)注規(guī)范去規(guī)范它并在“實踐考核”驗證測試中不斷糾正它。其中最大的體會是數(shù)據(jù)的質(zhì)量、一致性和多樣性其重要性遠(yuǎn)超過模型架構(gòu)的微小調(diào)整?;ㄔ跀?shù)據(jù)清洗、標(biāo)注質(zhì)檢和預(yù)處理上的時間最終都會在模型性能上得到回報。另一個關(guān)鍵點是迭代思維不要期望一次性就做出完美的數(shù)據(jù)集和模型。應(yīng)該構(gòu)建一個最小可行產(chǎn)品MVP流程用小批量數(shù)據(jù)快速跑通從數(shù)據(jù)到訓(xùn)練、評估的整個pipeline然后基于初步結(jié)果有針對性地去補充某類稀缺數(shù)據(jù)、修正某類標(biāo)注錯誤、調(diào)整某個增強(qiáng)參數(shù)如此循環(huán)逐步提升。最后別忘了保存好每一輪實驗的完整配置、日志和模型權(quán)重詳細(xì)的實驗記錄是復(fù)盤和提升的寶貴財富。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
精品视频99看在线视频| 三级毛片7979| 九九综合| 热99热9| 色婷婷女优有码五月亭| 亚洲人妻AV| 九九热在线视频观看| 成人欧美一区二区三区在线观看| 超碰不卡在线| 免费日本aⅴ中文字幕 | 99热这里只有精品1025| 99久久免费精品| 99热精品在线观看| 亚洲天堂大香蕉| 99热精品网| 蜜乳AV成人| 色综合色色| 狠狠做深爱婷婷久久综合一区| 丁香婷婷基地| 日本99色| 日本九九九九九九| 日韩AV在线电影| 99精品综合| 日日爽日日爽| 婷婷色五月色| av五月天婷婷丁香| 俺去也在线www色官网| 成人视频一区| 五月丁香激| 久久久91精品| 在线播放人妻| 色婷婷小视频| 啪啪操网| 成人一区在线观看| 婷婷色五月天色| www,婷婷,com| 五月综合激情网| www.狠狠| 小香蕉av| 色婷婷AV久久| 大香蕉在线观看9| 久久综合久色欧美综合狠狠 | 国产女生爱爱AA| AA丁香综合激情| 久久综合五月天| 99色精品| 色婷婷成人网| yazhoujiqingav| 五月丁香婷草| 色播播婷婷| 亚洲欧洲小视频9| 99在线视频免费| 99ri精品在线观看| www.97干视频| 就要去操亚洲成人精品五月天丁香婷婷| 综合狠狠干| 黄色99热| 五月天丁香综合| 91丨九色丨东北熟女| 丁香五月婷久久| 色色免费网战视频| 婷婷欧美色| 亚洲六月色婷婷| 久久xx| 久久丁香| 亚洲色色色| 热99在线精品| 色伊人啪| 色婷婷激情| 天天日,天天插| 久热 91| 五月婷婷色色| 91丁香综合| 国产偷人爽久久久久久老妇APP| 久久婷婷欧美| 五月综合激情综合久| 五月婷婷丁香大陆免费| 大香蕉啪啪啪| 91男人资源站| 精品人妻伦一二三区久久| 在线色色| 日韩AV免费电影在线播放| 99ree6| 99热每日| 99热伊人| www.深爱激情| 亚洲精品亚洲人成人网| 亚洲黄网在线| 色婷婷狠狠18禁| 色综合色综合婷婷热| 激情五月婷婷色色| 丁香五月成人网| 久操热| 中文字幕成人网站| 91se在线视频| 五月婷天天搞视频| 国产精品第一国产精品| 婷婷五月色图| 另类小说五月天激情| 丁香六月天堂| 噼里啪啦在线观看免费完整版视频 | 久操97| 色五月婷婷中文字幕| 麻豆AV一区二区三区| 亚洲综合色激情色五月| 色五月婷婷狠狠撸| 开心婷婷中文字幕| 日本久久色| 久久婷五月综合| 婷婷九月激情| 欧美成人精品A片免费一区99| 啪啪色激情五月天| 亚洲熟妇无码乱子AV电影| 色欲久久久久久综合网综合网| 婷婷综合在线| 色综合久| 九九在线精点品| 亚洲黄色影视| 久久精品63| 蜜乳A√| 能看的AV| 激情四射婷婷色色色| 丁香婷婷人妻综合网| 欧美色频| 婷婷丁香六月五月天| 狠狠婷婷色| 六月丁香五月天| 九九色网专区| 在线色五月婷婷| 丁香六月婷婷激情综合| 激情人妻综合| 久久婷婷夜| 婷婷五月丁香五月丁香| 五月丁香影视| 五月婷婷香蕉| 亚洲综合网在线| 日本99视频| 99在线观看精品视频| 四色永久成人网站| 开心激情五月天网| 国产AV一区二区三区日韩| 激情熟女网| 色六月天| www.99操.com| 五月天婷婷青青| 日韩操逼大片| 青青草原亚洲天堂| 婷婷性爱网| www99久久| 7777久久亚洲中文字幕| 久热这里| 99WWW免费视频| 色五月丁香伊人五月| av中文网| 丁香婷五月天| 五月开心激情网| 无码人妻少妇色欲AV一区二区| 色五月网址| av在线免费网站| 99热只有国产在线精品| 五月丁香综合精品欧美| 天天干肏夜夜| Caoub青青超碰| 成人片久久网站| jiujiu热在线视频| 五月激情六月宗合| 激情q青青草在线婷婷| 夜丁香五月婷婷| 色婷婷丁香五月| 在线五月婷| 97人人爱人人操| 大香蕉啪啪网| 天天干天天干天天| 九九久久精品| 五月婷婷开心激情六月蜜桃| 大陆极品少妇内射AAAAAA| 人妻爽爽爽久久久久久久久| 亚洲性爱区无码区| 色 噜噜 九月 婷婷| 九九在线免费观看| 99色在线视频观看| 亚洲色情网站| 色欲影香| 丁香五月天社区| 99久久婷婷| 婷婷黄色五月天在线视频| 婷婷玖玖五月天| 五月婷综合| 99re热在线观看| 综合网亚洲| 婷婷中文字幕在线| 97碰碰视频在线观看| 日韩无码专区| 91色综合网站在线| 国内外色色色色色成人视频| 色吧婷婷五月亚洲| 五月天色狠狠| 五月婷婷碰碰| 五月婷婷开心六月激情小说| 久色视频| 五月天激情网页| 中文字幕成人网站| 亚洲人成网亚洲欧洲无码久久| 五月婷婷香| ss五月天激情| 综合色视频| 天天日日夜夜| 激情五月网站| 九色七七| 可以免费观看的AV| 综合色图区| 无码地址| 五月天另类图片区99| 丰满熟女人妻一区二区三| 91操人| 亚洲 25P| 五月天开心网| 99精品在线观看视频| 在线日韩视频| 熟妇天天综合| www.夜夜操| 日操夜撸| 26uuuavcom| 香蕉乱插| 婷婷六久久| 久久婷婷啪啪视频| 夜夜躁爽日| 亚洲色五月| 久久婷婷综合五月| 五月天天爱| 51成人| 99热超碰| 九九婷婷五月天影视| 在线91日韩| www.色婷婷| 97操碰在线视频| 婷婷五月丁香色情| 婷婷五月天另类视频| 久久免费操| 色五月亚洲| 五月婷婷综合网| 色丁香影院| 激情综合五月激情| 99久热| 五月婷婷啪啪啪| 国产99久| 丁香五月婷婷综合激情哟哟哟| 五月天偷拍| 亚洲激情久久| 狠狠狠狠狠狠| 久久色9| 亚洲色色精品| 四色女婷婷| 亚洲五月婷婷在线| 成人精品一区二区三区四区五区 | 成人国产欧美大片一区| 97超级碰碰碰久久久| 丁香五月Av| 99视频精品全部观看10| 欧美综合激情丁香五月六月婷| 六月五月久久丁香| 五月婷婷开心丁香| 五月丁香做爱视频| 思思精品热在线| 久久五月综合| 亚洲免费视频网站| 另类激情五月在线视频欧美| 婷婷丁香人妻天天久久| 激情综合色婷婷啪啪六月天| 五月婷婷综合久久| 亚洲成人无码网站| 九久久精品视频99| 九月婷婷综合| 五月天综合色| 天天做天天爱天天爽综合网| 99五丁香月| 情欲禁地| 日本激情综合| 丁香五月色网| 开心六月婷| 色综合九九| 日操五月婷| 婷婷九月在线| www.激情五月天。com| 色婷婷大香蕉| 丰满人妻一区二区三区| 国产色色视频| 狠狠色大香蕉| 色情五月婷婷| 99re欧美精品| 成人在线网站| 婷婷五月天堂网| 天天爽成人综合网站| 成人色五月天| 欧美Va日本Va| 五月婷婷之综合激情| 五月天色五月| 92久久久| 草草操操| 色青青视频| 日韩精品无码99| 五月天免费色| av在线免费网站| 久操人妻| 九九丁香社区欧美激情| 国产avapp 网| 青青五月天婷婷| 婷婷五月花丁香| 99操免费视频| 国产精品18久久久| 久久九久久| 久久婷婷人人| 久久这里只有精品无码| 天天操中文字幕| 99热精品在线播放| 日韩精品一曲二曲三曲四曲五曲| 久热9| 天天添天天摸天天天天做| 久久精品亚洲一级牲爱综合 | 五月天色色网站| 五月婷婷视频啪啪美女| 性色天| 婷婷丁香五月激情| 九九色天堂| 婷婷五月中文在线| 99A片| 五月丁香婷婷综合| 五月天操逼网| 婷婷视频在线| 精品国产乱码久久久久久免费| 玖色色综合| 五月婷婷免费在线| 开心五月深爱五月| 欧美色偷偷大香| 久久婷婷伊人| AA片在线观看视频在线播放| 婷婷欧美激情| 亚洲热久久| 精品A√| 五月丁香 久久久| 人人摸人人干| 人人操碰| 激情激情激情网| 欧美一级色| 久久密臀婷婷| 丁香六月色情| 在线亚洲综合| 色色色色网色色网色色| 日日干日日| 99热这里只有精| 97碰成超视频免费视频| 激情网五月| 久久精品只有这| 欧美一级色| 极品九九九九九九| 五月婷天天搞视频| 热久免费视频9| 丁香婷婷免费| 亚洲精品久久久久久久久久吃药| aaaaaa片| 伊人91| 亚洲色啪| 九九人人操| 婷婷区日本| 噜噜噜狠狠色综合| 干一干xxxx| 综合网狠狠| 五月婷婷久| 一本色道久久88综合日韩精品| 色五月开心久久网| 婷婷色欧美激情| 日日夜夜天天| 91丁香| 免费视频这里只有精品| 九九99精品免费播放| 婷婷成人丁香色情基地30| 99热成人| 人人天堂操| 亚洲乱码日产精品BD| 久婷婷五月激情| 婷婷六月啪啪| 人人97碰| 中国操逼99| 六月色狠狠色| 亚洲操b| 亚洲亚洲人成综合网络| 亚洲字幕AV一区二区三区四区| 丁香五月激情六月欧亚激情综合导航 | 色噜噜狠狠色综合成人网| 欧美性丁香色色五月天干干| 操九色| 97色天堂| 五月丁香网视频| 国产日比| 五月丁香婷婷成人综合网| 五月丁香婷色| 色色色色色色色色网站| 夜夜夜叫天天天做| 婷婷五月色惰| 丁香婷婷影院| 79色色色色| 免费AV在线网址| AV操逼网| 丁香婷婷六月天| 久久婷婷综合五月趴| 午夜 外网 精品 在线| 欧美性猛交99久久久99| 五月噜噜| wwxx日本| 婷婷大香焦| 毛片新网地| 久99久视频精选| 亚洲另类日本| 91精产品自偷自偷综合| 九九热短视频在线观看| 极品九九九九九九| 69精品人人人人| 综合五月激情网| 日韩三级视频一区二区| 亚洲小视频免费观看| 丁香激情网| 开心五月深爱激情| 六月激情久久婷婷| 综合激情九月婷婷,激情综合婷婷中文字 | 婷婷激情六月中文| 日韩成人电影在线播放| 少妇被下春药玩弄A片| 91人碰| 五月丁香拍拍激情综合| 伊人婷婷色| 伊人在线视频| 婷婷综合一二三| 再次出发二| 婷婷成人在线| 婷婷99综合| 99在线精品观看99| 天天干天天插| 久久看婷婷| 五月综合777| a九九热www| 婷婷天天五月天| 天天干天天操天天拍| 2025天天操| 婷婷激情五月天网站| 人人97操| 亚洲丁香花五月丁香花| 激情小说五月天| 色狠狠色噜噜AV天堂五区| 99精品大片| 色婷婷五月基地在线| 激情综合五月天| 99爱在线视频| 99热在线只有精品| 丁香综合伊人AV| http:色情日本com| 天天做天天爱天天爽| 五月天激情av| 亚洲一区二区无码蜜乳av| 激情五月综合| www.精品99| 婷婷五月中文字幕国产| 五月丁香猫咪久久婷婷综合视频激情四射网入口| 日韩大片艹艹| 色色色9 9 9| 九九综合影音先锋| 777米奇影视第四色| 午夜丁香婷婷| 五月婷婷色五月| 精品一二三区久久AAA片| 色色丁香五月天| 99久在线精品99re8热| 五月WWW| 在线VA视频| 26uuu色噜噜精品一区| 久久婷婷啪啪视频| 啊V视频在线观看| 91成人看片| 五月婷婷五月| 国产精品久久欧美久久一区| 国产真实乱了老女人视频| 亚洲色五月婷婷| 五月婷婷www| 伊人大香久久| 十区AV| 久久婷婷综合国产| 精品久色| 五月天激情在线视频| 亚洲精品网站色视频| 综合97五月| 久久久婷| 国产寻花在线| 99热精品在线播放观看| 国产裸舞表演WWWW| 天堂久久性| 99精品网| 婷婷五月天在线观看| 99热这里只有精品青草| 中字幕视频在线永久在线观看免费| 激情综合视频| 日本三级毛片| 色五月xxx| 五月丁香婷婷五月色| 另类激情五月| 五月天激情综合| 69色婷婷| 色婷婷电影网| 91国产精品视频播放| 青草热视频这里只有精品| 中文久久久人妻| 丁香五月 综合| 日本三级日本黄色| 婷婷伊人綜合中文| 日本不卡中文字幕| 五月天自拍视频| 婷婷丁香五月亚洲免费| 婷婷五月天精品| 99精品在线| 91丨九色丨首页| 狠狠色丁香久久| 久久视屏这里只有久久| 婷婷五月婷| 五月天天天色| 亚洲亚洲人成综合网络| 六月丁香中文字幕| 99A片| 久久9久久| 青草网在线观看| 99免费| 六月五月丁香五月欧美| 激情五月深爱五月| 超碰免费人| 最新AV在线观看| 婷婷欧美偷拍综合| 草五月| 99婷婷狠狠成为人免费视频| 六月丁香成人| 五月丁香啪| 91seAV| 丁香无五月网| 久久9精品视频| 草草夜夜操| 人人97碰| 91精品婷婷国产综合久久| 五月天色综合| 婷婷丁香社区网| 99综合色| 久久看婷婷| 国产精产国品一二三在观看| 久久久久9| 五月天堂在线| 婷婷五月在线观看| 新激情婷婷| 草草视频91| 另类综合色| 少妇出轨做爰高潮A片| www.henhenl| 综合网五月天123| AV中文在线| 激情九九六月激情免费视频| 色色五月婷婷丁香| 国产精品久久久爽爽爽麻豆色哟哟| 久久伦乱| 中文字幕综合网| 天天透天天干| 天天天天天日| 五月四色色| 欧美久久婷婷| 在线中文亚洲| 色色色色综合网| 九九精品99| 99久久免费性爱视频`| 天天骑天天操| 激情五月婷婷色色| 日本婷婷| 99精品超在线播放| 天天透天天爱| 91久久色| 天天肏天天肏天天肏| 日本V在线观看不卡视频网站| 2015好吊操| 丁香色五月 97干| 丁香五月情| 九九热免费视频| 69色婷婷| 激情性五月天免费小说视频 | 天天插天天操| 超爽内射| 91婷婷色五月| 激情综合网五月在线播放| 久久综合五月天| AV在线大香蕉| 在线不卡视频| 欧美丁香六月激情视频| 一级性感毛片| 九热免费视频| 久久婷婷青草五月天| 99操碰| 另类亚洲2| 大香蕉人妻| 月婷婷亚洲| AA片在线观看视频在线播放| 色性日本| www.9797国产| 色五月综合网| 日韩成人电影AV| 青草青草视频2免费观看| 婷婷五月天com| 久久久久久久91| 九九亚洲| 天天做天天爱天天摸| 中国女人做爰A片| 久久久精品人妻录| 日本精品99网站| 欧美激情综合色综合啪啪五月| 天天干天天日天天插| 成人精品视频99在线观看免费| 婷婷丁香五月综合激情小说| 99噜噜| 丁香五月综合激情性爱 | 亚洲婷婷综合视频| 久久婷婷视频| 亚洲人人操| 久久五月视频| 婷婷99视频精品| 九九精品免费视频99| 色五月天电影| 全亚洲最大的婷婷五月天网站COM| 日本久久人| 九九机热| 五月丁香偷拍| 九九热在线亚洲免费视频| 丁香激情婷婷网| 香蕉婷婷| 丁香五月伊人| 97婷婷丁香五月天激情图片| 久久久8| 婷婷97色| 五月天婷婷色色| 五月丁香花婷婷玉莉AV| 国产伦理精品高清在线观看网站一区二区 | 美女婷婷六月色| www.AV在线| 丁香六月综合激情| 五月天婷婷人妻| 思思99热这里只有精品| 黄色国久久| 97干欧美| 婷婷五月色播放| 六月婷婷狠狠做| 青青草tp| 久久九九精彩| 亚洲六月婷婷| 婷婷五月成人| 日日做夜夜爱| 国产婷婷五月中文字幕高清| 久久婷狠狠色| 狠狠色丁香| 欧美日韩成人高清在线| 色人妻五月| 亚洲视频在线观看99| 丁香婷婷婷五月综合色情| 97人碰人操| 内射在线CHINESE| 夜夜干夜夜操| 国产 码在线成人网站| 人人干av| 99色播| 婷婷五月天综合蜜桃| 婷婷五月综合在线| 激情六月天婷婷| 日本全黄一级999| 色婷婷五月天av在线| 欧美成人AAA片一区国产精品| www.色综合.com| 五月婷中文娱乐综合| 欧美成人猛片AAAAAAA| 夜夜干天天操| 亚洲综合五月天| 五月天婷婷色综合| 99热最新网址| 色婷婷婷婷| 99热在线看| 激情五月天开心| 五月婷婷六月丁香在线| 五月婷婷在线短视频| 色五月超碰| 久婷婷色| a色色色色色| 婷婷五月天成人在线视频| 棕合影院色色| www.91九色| 五月综合丁香婷婷| 91精品久久久久久77777| 五月婷婷xxx| 91精品91久久久中77777| 九九热99视频| 99色色热| 《》【无码】想被搞到爽AV应募而来的超M素人 西纯子 10musume-011723-01 | 午夜亚洲AV日韩无码| 年轻的妺妺伦理HD中文 | 5月丁香六月婷婷| 五月婷婷AV| 天天色天天日天天舔| 色五月婷婷在线| 久久视频婷婷| 狠狠色丁香| 亚洲12p| 国产精品成av人在线视午夜片| 天天粽合合合合| 色狠狠伊人久久五月丁香| 操逼福利视频| 色五月激情五月开心五月| 97影院一级片| 色噜噜狠狠色综合日日| 亚洲182在线观看| www.zbzhongsen.com| 超极99精品| 亚洲热久| 成人va在线观看视频| 天天舔天天| 五月婷精品| 人人操日| 万月丁香狠狠爱| 色婷av| 99激情网| 丁香五月成人| 丰满人妻一区二区三区| 4399精品一区二区| 丁香婷婷色五月| 夜夜爽日日躁| 超碰色综合| 精品人妻伦一二三区久久| 北条麻妃伊人| www99热| 色五月色五天免费视频| 色欧洲| 亚洲婷婷综合视频| 丁香五月狠狠在线观看| 五月婷婷六月丁香在线| www.色五月| a九九热www| 五月天激情国产综合AV| 激情综合啪啪| 日韩美女在线视频19| 无码一区二区日韩| 97欧美在线| 少妇性BBB搡BBB爽爽爽视頻| 超碰丁香五月| 九九成人精品| 久久久婷| 色五月婷婷激情基地| 婷婷丁香五月久久| 日日干天天爽| 91人人澡人人爽人人看| 久久久久久丁香五月| 婷婷狠狠操| 成人中文字幕在线| 深爱激情五月婷婷| 国产精品国产成人国产三级| 大香线蕉伊人| 丁香六月成人网| 99噜噜噜在线播放| 国产成人综合网| 噜啊噜在线| a级毛片一区二区免费视频| ...婷婷国产成人亚洲日韩| 久久大香蕉丁香| www.婷婷五月天,com| 91九色国产熟女| 婷婷色基地在线看| av在线色五月丁香婷区久| 另类图片五月天| 色婷婷久久天天性爱| 天天干天干| 人妻Av在线| 好激情在线综合网| 久久综合九色综合97婷婷| 综合久久婷婷| 色五月天电影| 中文字幕在线免费观看视频| 最新久久网址| 粉嫩av蜜桃av蜜臀av| 91日在线视频| 五月花成人网| 欧美性做爰大片免费看办公室| 金桔一区二区ab地址| 色噜噜狠噜噜视频| 国产精产国品一二三在观看| 激情综合网五月在线播放| 五月天婷婷在线视频| 国产操逼视频网站| 涩综合婷婷| 涩五月丝袜婷婷| 99色中文| 日韩成人综合网| 五月丁香六月婷| 色五月六月| 五月婷婷色播视频| 综合网色| 五月丁香六月激情综合| 色九月婷婷综合| 激情久久久久久| 五月婷婷黄色| 99操| 开心 五月 综合| 蜜桃人妻无码AV天堂三区| 亚州激情网站无码| 九九99精品| 色六月天| 一起草aV| 日本超碰在线| 熟女激情网| 99ER热精品视频| 99热只有| 五月婷婷久久开心网| 97色色视频| 九月婷婷综合八月丁香在线观看| 99燥99日| 久热这里只有| 黑人无码一区| 99精品热| 久久这里只有精品1| 国产综合丁香五月天| 91超级碰在线| 五月丁香啪啪拍| 久久ri精品视频| 草美女在线观看视频在线播放| 亚洲亚洲人成综合网络| 涩涩涩五月天| 亚洲五月婷| 国产XXXX搡XXXXX搡麻豆| 热久视频| 婷婷丁香社区网| 碰碰人人人| 欧美色频| 天天做天天爱天天爽在| 婷婷亚洲久久| 高清无码网址| 婷婷va| 婷婷五月天改成什么了| 五他月天啪啪啪| 97热视频| 丁香 婷婷 亚洲 熟女| 99热这里都是精品| 欧美日韩精品人妻狠狠躁免费视频| 五月丁香淫淫婷婷婷| 激情色播| 秋霞AV美国| 欧美成人精品A片免费一区99| 欧美VA在线| 五月丁香美女| 日韩高清成人| 淫视馆av三区| 99精在线| 思思精品久久艹| 夜夜爽天天爽| 97caop| 99九九视频| 久热黄色| 婷婷激情综合| 天堂爱爱| 欧美VA视频| 99人妻碰碰久久久禁片| 五月激情网站| 久久五月丁香伊人青草| 成人AV片播放| 日本三级大片| 成人五月丁香社区| 五月激情婷婷国产精品久久久久久| 五月色亚洲| 丁香六月婷婷综合缴| 久久总和99| av在线免费播放观看| 五月婷婷天| 婷婷五月丁香婷婷| 26uuu.| 狼人狠狠操| 丁香婷婷综合影院| 天天射影院| 黄色三级日本| 九九在线精品| 99热99这里只有精品| 天天做天天爰天天爽天天无遮挡| 亚洲在线操| 亚洲免费视频网站| 91呦呦呦| 九九丁香社区欧美激情| 日本片日本片祼观看网站在线看中文版网页在线看 | 久久亚洲婷婷| 停停五月色宗合| 狠狠高潮精品亚洲1| 日本成人小说婷婷六月| 五月综亚洲| 九九热99视频在线| 超碰在线中文字幕| 婷婷五月天丁香久久| 婷婷丁香五月综合网| 六月婷婷色色网| 99精品视频在线观看| 五月天婷婷基地| 中文网AV| 婷婷丁香五月久久| 十月丁香婷婷| 五月丁香婷色| 久久久久人妻精选| 五月激情久久综合网| 丁香六月婷婷综情欧美| 久久9久| 精品无码99| 热成人网| 99色视频| 超碰9| 综合色久| 另类小说五月天| 婷婷伊人综合中文字幕| 激情文学久久| 99色精品| 在线视频区| A短视频免费在线观看| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 99ER热精品视频| 青青草大香| 中文超碰视在线| 91jiuseshunv| 嫩草视频。| 日韩免费99| 99re视频在线播放| 丁香婷婷激情综合五月激情| 天天综合干| 狼友超碰| 色综合伊人网| 91九色PORNY大屁股| 波多野结衣成人作品在线| 五月丁香婷婷综合网色欲| 黄色一级影片| 色婷婷视频| 婷婷十月丁香| 人人操人人干AV| 婷婷六月天| 狠狠色婷婷综合开心影视| 天天操五月天| www.婷婷五月| 五月天开心色情网| 丁香五月天啪啪a日本| 成人视频在线免费播放| 欧美经典片免费观看大全| 免費观看aV在线网址| 操骚货在线| 日韩婷婷| 丁香综合网| 日本va欧美va精品发布视频| 色婷婷狠狠| 五月婷色色| 610018岁成人视频| 99在线免费视频播放| 91久久婷婷| 五月天激情网页| 日日婷婷不卡| 日本狠狠干| 国产69久久久欧美黑人A片| 婷婷婷婷婷婷婷婷婷婷丁香| 99操碰| 婷婷五月天六月| 婷婷五月激情综合| 777色色色| 91热久88| 天天久久人人| 丁香婷在线| 伊人婷婷综合| 婷婷影视久久| 久99热在线观看| 这里只有精品视频在线看| 91se在线视频| 操草草草| 日韩按摩二区| 激情五月天视频| 91色综合久久| 亚州激情在线视频| 大香蕉婷婷久久| 以及AA大片看看| 久久99热免费| 狠狠操狠狠操AV| 在线成人网址| 99啪啪视频| 色五月激情五月| 久久资源综合| 色五月婷婷丁香国产在线| 一区视频网站| 五月丁香久久激情综合| 五月天激情网图片| 99热亚洲只有色| 天天肏屄夜夜爽| 日日天天干| 五月天婷婷丁香人人操91| 热99精品视频观看| 1024国产| 狠狠精品干练久久久无码中文字幕 | 久久国产高潮白浆免费观看99| 色色色综合视频| 99色天堂| 亚洲五月婷| www,com,五月色色| 999久久久国产精品| 26uuu另类| 激情六月色| 久久久久久9热不雅视频| 欧爱综合视频| 五月丁香啪啪啪| 九九热这里有精品23| 玖玖资源在线视频| 自拍偷窥99热| 99操视频| 91热99| 97人人超| 久操b网| 五月天激情久久| 日本久久婷| 九九Av| 色婷久久| 国产无套精品一区二区| 99综合视频一体| 日本三级日本三级99| 婷婷97色| 激情丁香五月天图片| 色吊丝99| 国产婷婷五月天| 伊人大香蕉爱聚| 五月花亭亭| 五月黄色婷婷| 99热这里只有精品在线观看| 狠狠色丁香婷婷五月| 玖玖婷婷色五月| 五月天久久www| 日良久久| 久久这里只有精彩| 人妻AV中文系列| 热99久久这里只有精品| 伊人五月天| 少妇婷婷五月天| 久久人妻超碰一区| 色五月婷婷在线视频| 99噜噜噜在线播放| 婷婷激情丁五月| 色综合色综合网| 亚洲成人电影在线免费观看| 成人精品亚洲性爱| 99re视频在线播放| 色色色综合网| 丁香五月激情站| 五月色丁香婷婷综合| 操97免费超级视频| 久久久五月天| 欧美电影在线观看| 丁香五月婷婷骚视屏| 2025超碰| 夜色综合网| 狠狠综合| ztEJj| 99久久www| Xx色综合| 国产乱轮一区二区三区| 99久久网站| 亚洲综合在线伊人婷| 七月丁香五月婷婷在线| 五月天播播中文字幕 | 天天舔天天摸视频| 丁香五月激情网| 六月丁香五月天| 五月激情婷婷开心| 丁香婷婷六月天| 国产亚洲99久久精品| 婷婷射图五月天| 激情图片99| 超pen个人视频97| 狠狠操狠狠插| 都市激情蜜桃婷婷五月天| 我想看国产大学生口爆吞精的视频| 综合久久影院| 六月丁香综合999| 91丨九色丨白浆| 中文字幕日产A片在线看| 色五月激情五月开心五月| 天天人人综合| 9 9热这里有精品| 丁香六月婷婷久久综合| 五月丁香婷婷AV| 人妻久久做| 色色色色区| 国产精品色婷婷99久久精品| 另类少妇人与禽zOZZ0性伦| 可以免费看的av网站| 五月丁香久人妻中文| 9精品国产在热久久| 五月丁香啪啪网| 色婷婷狠狠18| 91大神操美女| 最近中文字幕大全免费版在线| 人妻内射视频| 亚洲在线激情婷婷五月| 五月丁香无码| 97婷婷五月丁香| 国自产拍偷拍精品啪啪一区二区| 夜夜撸夜夜骑| 婷婷五月天性| 丁香五月激情欧欧美| 狼人婷婷久久| 日本在线wwww| 日韩1区2区| 亚洲精品在线视频| 日日操,夜夜撸| 亚洲五月天色| 五月停停色| 欧美婷婷九月| 日韩久久成人| 婷婷五月天综合网| 久久婷色| 五月天婷婷丁香导航| 色综合色综合色综合| 啪啪啪啪五月天| 五月丁香视频在线观看| av在线观看网站| 99热在线网站| 日韩精品在线观看9| 极品人妻VIDEOSSS人妻| 97色色网| 五月亭亭六月天| 殴美日韩成人| 婷婷成人AV| 五月丁香六月激情欧美综合| 国产精品婷婷午夜在线观看| 五月色欧洲| AV伊人青草丁香六月| 色五月婷婷91| 丁香六月色| 2022人人操人人看| 九九精品系列| 国产成人亚洲综合亚洲| BT综合在线视频观看| 人妻久久久久久久 | 婷婷九月在线| www.久久久久| 俺去也婷婷| 9久视频| 五月天狠狠网站| 成人网站免费在线播放| 男女免费视频999| 天天干天天叉| 婷婷五月天激情网站| 综合五月天婷婷色| 五月婷婷香蕉视频| 丁香五月影院| 天天日天天插| 久久一级AV| 91在线观看九区| 91色欲综合| 9视频1在线| 人妻22p| 99re思思| 婷婷大乡焦噜噜| 五月丁香婷婷色| 五月婷五月婷伊人伊人五月婷| 综合激情五月丁香9999久久精| 综合在线网| 米奇影视资源婷婷狠狠色激情欧美五月丁香| 婷婷六月丁香1| 婷婷五月天深爱| 99热这里只有精品免费观看| 天天草天天摸| 在线中文字幕视频| 91久久人人操| 91婷婷丁香五月| 天天狠狠婷婷在线| 国产精品日日躁夜夜躁| 久久这里只有精品久久| 婷婷欧美色| 日本va欧美va欧美va| 色五月天电影| 五月亚洲| 色婷婷五月天成人网| 五月综合视频| 黄色片久久| 亚洲精品一区中文字幕乱码| 丁香五月激情啪啪啪啪| 特级操b片| 五月婷婷开心色伊人| 五月天停停成人网| 婷婷成人AV| 99综合视频一体| 99精品在线播放| 精品影院| 色五月开心开心五月激情五月| 丁香五月婷婷激情蜜桃| 五月天 另类图片| 狠狠色丁香久久综合婷婷亚洲成人福利| 99热这里只有精| 99这里只有精品在线观看| 都市激情久久| 婷婷亚洲天堂| 99色免费观看全部| 中文字幕不卡网站| 97人妻碰碰碰久久香蕉| 五月婷婷香蕉| 久久婷婷视频| 91无码高清| A片试看120分钟做受图片| 三级99热| 襙比视频| 综合99综合久久久久久久| 琪琪色综合网站| WWW99热| 无码人妻一区二区三区免费九色| 色香欲综合| 爱99干99| 日本在线视频www色| 夜夜嗨一区二区三区直播内容| 欧美狠狠地| 狠狠综合网| 五月丁香婷婷色播无码| 久久这里只有精品5| 六月婷婷在线| 天天插天天爽| 天堂久久久久天堂网| 久久欧洲久久| 五月天六月色| 婷婷色资源| 五月网激情| 激情床戏| 五月停视频天堂| 亚洲色婷婷网站| 99热免费精品| 久99精品视频| 五月天婷爱综合| 国产亚洲99久久精品| 99热国产婷婷| 激情五月天电影| 中文字幕丰满孑伦无码专区| 7超碰自拍| 亚洲精品婷婷| 五月色婷丁香| 精品99网站| 国产精品18久久久| 日本三级中国三级99| 天天做天天爱| 日本韩国视频在线观看社区免费的9| 97色色色视屏| 婷婷五月天色色| 思思99久久| 精品人妻久久久久久| 婷婷六月成人| 91视屏在线观看com.wwwvv| 婷婷五月天激情小说| 91九色国产熟女| 淫荡综合网| 97精品人人A片免费看| 视频这里只有精品| 超碰大香蕉网| 狠狠爱激情网| 婷婷色综合| 黄久久久| 人人干av| 亚洲操B视频| 五月天亚洲色| 婷婷欧美激情| www.色婷婷| 五月婷婷天堂| 99自拍视频网站|