久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

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

舌苔識(shí)別檢測(cè)系統(tǒng):從模型訓(xùn)練到界面部署的完整實(shí)踐

舌苔識(shí)別檢測(cè)系統(tǒng):從模型訓(xùn)練到界面部署的完整實(shí)踐 簡(jiǎn)介面向深度學(xué)習(xí)與圖像識(shí)別方向的學(xué)習(xí)者壓縮包提供一套完整的舌苔識(shí)別檢測(cè)系統(tǒng)項(xiàng)目適合畢業(yè)設(shè)計(jì)、課程實(shí)踐或中醫(yī)舌診數(shù)字化研究。源碼基于Python實(shí)現(xiàn)包含PyQt5圖形界面、已訓(xùn)練好的模型權(quán)重及配套畢業(yè)論文完整覆蓋數(shù)據(jù)標(biāo)注、圖像增強(qiáng)、DCGAN擴(kuò)充樣本、卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練、舌苔分類與體質(zhì)辨識(shí)等關(guān)鍵流程并與論文中的需求分析、網(wǎng)絡(luò)設(shè)計(jì)相互對(duì)應(yīng)。開(kāi)發(fā)者可從中學(xué)習(xí)深度模型在醫(yī)學(xué)圖像分類中的落地方法也可直接運(yùn)行界面完成舌苔圖像檢測(cè)演示。包內(nèi)共110個(gè)文件主要涉及Python源碼、PyQt5界面文件、模型權(quán)重.pth、論文文檔.docx以及舌象圖像樣本.jpg整體約104.93MB目錄清晰便于按模塊查閱。該壓縮包在CSDN已有536人學(xué)習(xí)下載對(duì)于準(zhǔn)備相關(guān)課題的本科生與研究者而言能夠提供從數(shù)據(jù)準(zhǔn)備到系統(tǒng)實(shí)現(xiàn)的一手參考亦可作為二次開(kāi)發(fā)和功能擴(kuò)展的基礎(chǔ)。1. 舌苔識(shí)別檢測(cè)系統(tǒng)從模型到界面的完整落地舌苔識(shí)別這個(gè)方向?qū)儆诘湫偷挠?jì)算機(jī)視覺(jué)與中醫(yī)診斷交叉場(chǎng)景。做出來(lái)的系統(tǒng)不是擺個(gè)實(shí)驗(yàn)室 Demo而是要同時(shí)解決三件事舌象圖片里“舌體在哪、苔色苔質(zhì)怎么量化、結(jié)論怎么讓醫(yī)生看得懂”。這套基于深度學(xué)習(xí)的舌苔識(shí)別檢測(cè)系統(tǒng)最大的價(jià)值在于把過(guò)去憑經(jīng)驗(yàn)的“看舌象”轉(zhuǎn)成了可復(fù)現(xiàn)的算法流程。無(wú)論你是想快速出一套畢設(shè)級(jí)完整系統(tǒng)還是作為中醫(yī)信息化產(chǎn)品的視覺(jué)前端這套方案都能直接作為起點(diǎn)。對(duì)于剛接觸視覺(jué)項(xiàng)目的開(kāi)發(fā)者它能幫你把數(shù)據(jù)集構(gòu)建、模型訓(xùn)練、界面封裝這條鏈路一次走通對(duì)于已經(jīng)在做輔助診斷系統(tǒng)的團(tuán)隊(duì)它的價(jià)值集中體現(xiàn)在“輕量模型 桌面端交互”這種務(wù)實(shí)組合上。系統(tǒng)在技術(shù)選型上走的是成熟路徑檢測(cè)模型負(fù)責(zé)定位舌體分類模型負(fù)責(zé)辨識(shí)苔色與苔質(zhì)PyQt5 界面把模型輸出變成可視化的診斷報(bào)告。我不止一次見(jiàn)過(guò)同學(xué)把模型訓(xùn)練得很好最后卻卡在界面集成上所以這篇筆記會(huì)帶著你把每一步跑通。文章里我會(huì)用模擬項(xiàng)目X的經(jīng)驗(yàn)來(lái)講解部署和調(diào)試中的思路很多細(xì)節(jié)是跑完一遍流程才會(huì)注意到的。2. 舌象數(shù)據(jù)與預(yù)處理模型效果的上限由這里決定2.1 舌象數(shù)據(jù)集的特點(diǎn)光照與舌體分割是繞不開(kāi)的兩個(gè)坎舌苔識(shí)別模型的訓(xùn)練數(shù)據(jù)來(lái)源大多是從醫(yī)院采集的舌象照片和公開(kāi)的中醫(yī)舌診圖譜。數(shù)據(jù)有幾個(gè)顯著特點(diǎn)首先舌體在整張圖中的占比差異很大有的圖片舌頭幾乎充滿畫(huà)面有的則帶有嘴唇、牙齒甚至面部皮膚其次不同采集設(shè)備拍出的色彩還原度不一樣手機(jī)、單反、醫(yī)用舌象儀之間有明顯差異第三光照條件是最大的干擾項(xiàng)冷白光和暖黃光下的同一舌象色差肉眼可見(jiàn)。從這些特點(diǎn)能推出一個(gè)關(guān)鍵結(jié)論訓(xùn)練之前不做舌體檢測(cè)的模型幾乎不可能穩(wěn)定工作。因?yàn)榉诸惥W(wǎng)絡(luò)對(duì)全局特征敏感背景比例一大注意力就被分散了。所以常見(jiàn)做法是兩步走先用目標(biāo)檢測(cè)模型把舌頭從原圖中框出來(lái)再做裁剪和透視校正最后才進(jìn)入分類網(wǎng)絡(luò)。這種做法對(duì)最終識(shí)別效果提升明顯也是這套系統(tǒng)把檢測(cè)和分類分成兩個(gè)環(huán)節(jié)的原因。2.2 舌體檢測(cè)標(biāo)注用 LabelImg 完成矩形框標(biāo)注的實(shí)操標(biāo)注工具我一般推薦 LabelImg它足夠簡(jiǎn)單輸出 Pascal VOC 格式的 XML 文件后續(xù)轉(zhuǎn)成模型訓(xùn)練格式也方便。安裝方式不再贅述直接說(shuō)標(biāo)注時(shí)的操作規(guī)范。# 創(chuàng)建標(biāo)注環(huán)境并啟動(dòng) LabelImg conda create -n labelimg python3.9 -y conda activate labelimg pip install labelimg labelimg # 啟動(dòng)后打開(kāi)圖片目錄設(shè)置保存目錄為 XML標(biāo)注時(shí)有一個(gè)操作細(xì)節(jié)值得注意左側(cè)工具欄要提前選成 PascalVOC 模式這樣保存的才是 XML 而不是 YOLO 的 txt。標(biāo)注過(guò)程中每個(gè)圖片只需要框出舌體區(qū)域類名統(tǒng)一命名為 tongue。框的范圍建議貼著舌緣輪廓走不要包含嘴唇和下唇陰影這部分語(yǔ)義噪聲會(huì)讓檢測(cè)框忽大忽小。2.3 VOC 轉(zhuǎn) YOLO 格式腳本轉(zhuǎn)換與坐標(biāo)歸一化邊界坑檢測(cè)模型的數(shù)據(jù)格式我推薦轉(zhuǎn)成 YOLO 格式的 txt因?yàn)楹罄m(xù)訓(xùn)練腳本和推理腳本都按這個(gè)格式讀取坐標(biāo)。轉(zhuǎn)換的核心是把 XML 里的絕對(duì)坐標(biāo)除以圖片寬高得到 0 到 1 之間的歸一化中心點(diǎn)坐標(biāo)和寬高值。import os import xml.etree.ElementTree as ET def convert_voc_to_yolo(xml_path, out_dir, class_names): tree ET.parse(xml_path) root tree.getroot() img_w int(root.find(size).find(width).text) img_h int(root.find(size).find(height).text) out_lines [] for obj in root.iter(object): name obj.find(name).text if name not in class_names: continue cls_id class_names.index(name) box obj.find(bndbox) x1, y1, x2, y2 [float(box.find(v).text) for v in [xmin, ymin, xmax, ymax]] x1 max(0, min(x1, img_w - 1)) y1 max(0, min(y1, img_h - 1)) x2 max(0, min(x2, img_w - 1)) y2 max(0, min(y2, img_h - 1)) if x2 x1 or y2 y1: continue # 無(wú)效框直接跳過(guò) x_c (x1 x2) / 2.0 / img_w y_c (y1 y2) / 2.0 / img_h w (x2 - x1) / img_w h (y2 - y1) / img_h out_lines.append(f{cls_id} {x_c:.6f} {y_c:.6f} {w:.6f} {h:.6f}) if out_lines: with open(os.path.join(out_dir, os.path.splitext(os.path.basename(xml_path))[0] .txt), w) as f: f.write(\n.join(out_lines)) class_names [tongue] # 遍歷所有 XML 調(diào)用 convert_voc_to_yolo(xml_path, labels, class_names)腳本里有幾個(gè)邊界要注意坐標(biāo)裁剪那一步不能省略否則個(gè)別標(biāo)注框越界會(huì)讓訓(xùn)練 loss 直接變成 NaN過(guò)濾 x2x1 這種無(wú)效框能避免訓(xùn)練時(shí)讀取空標(biāo)注導(dǎo)致數(shù)據(jù)加載中斷類名索引從 0 開(kāi)始類別多時(shí)錯(cuò)一位就會(huì)全錯(cuò)。轉(zhuǎn)換完成后把 txt 文件和原圖按 YOLO 慣例放到 images 和 labels 兩個(gè)目錄下訓(xùn)練腳本會(huì)按路徑對(duì)應(yīng)去讀。2.4 苔色與苔質(zhì)分類數(shù)據(jù)的組織目錄結(jié)構(gòu)就是標(biāo)簽分類數(shù)據(jù)集的組織方式簡(jiǎn)單直接的做法是用文件夾名當(dāng)標(biāo)簽。建議按“苔色 苔質(zhì)”分別建目錄因?yàn)閮烧咴谂R床上關(guān)注維度不同合并成單一標(biāo)簽會(huì)放大類間混淆。dataset_classify/ ├── train/ │ ├── bai_ni # 白苔膩 │ ├── bai_bo # 白苔薄 │ ├── huang_ni # 黃苔膩 │ ├── huang_bo # 黃苔薄 │ └── ... └── val/ ├── bai_ni └── ...這種目錄結(jié)構(gòu)用 torchvision 的 ImageFolder 接口可以直接加載不需要寫(xiě)自定義 Dataset。分類標(biāo)簽的命名建議用拼音或英文縮寫(xiě)中文字段名在 Windows 環(huán)境容易出現(xiàn)編碼問(wèn)題這一點(diǎn)尤其要注意。數(shù)據(jù)集規(guī)模建議每類不少于 500 張類別不平衡嚴(yán)重時(shí)用加權(quán)采樣具體做法后面講訓(xùn)練時(shí)再展開(kāi)。3. 模型選型與訓(xùn)練檢測(cè)、分類兩條線并行推進(jìn)3.1 檢測(cè)模型選擇輕量級(jí) YOLO 系列更適合桌面端部署舌體檢測(cè)這個(gè)任務(wù)本身不復(fù)雜——畫(huà)面里通常只有一到兩個(gè)目標(biāo)類別只有一類難點(diǎn)主要在尺度變化和邊緣模糊。這種任務(wù)用 YOLOv5s 或 YOLOv8s 這類輕量版本就足夠參數(shù)量適中CPU 上也能勉強(qiáng)推理GPU 上實(shí)時(shí)性很好。盲目上 YOLOv5x 這種大模型對(duì)舌體檢測(cè)沒(méi)有額外收益反而讓推理時(shí)間成倍增長(zhǎng)。# tongue.yaml train: dataset_detect/images/train val: dataset_detect/images/val nc: 1 names: [tongue]訓(xùn)練命令相對(duì)固定需要關(guān)注的參數(shù)主要是圖片尺寸和批次大小。舌體檢測(cè)對(duì)分辨率不算敏感640 的輸入尺寸可以滿足要求批次大小根據(jù)顯存調(diào)整6GB 顯存跑 16 沒(méi)問(wèn)題不夠就降到 8損失一點(diǎn)點(diǎn)收斂速度但不會(huì)報(bào) OOM。模型收斂后 mAP0.5 通常能到 0.95 以上畢竟目標(biāo)單一且特征顯著。3.2 分類模型選型ResNet 與 EfficientNet 的實(shí)際對(duì)比苔色苔質(zhì)分類對(duì)顏色紋理細(xì)節(jié)比較敏感網(wǎng)絡(luò)不能太淺。實(shí)踐中用得多的有兩個(gè)方向ResNet50 屬于穩(wěn)妥之選收斂穩(wěn)定參數(shù)適中EfficientNet-B0 在同樣精度下參數(shù)量更小但訓(xùn)練時(shí)需要更強(qiáng)的數(shù)據(jù)增強(qiáng)配合否則容易欠擬合。mobileViT 這類輕量級(jí)網(wǎng)絡(luò)我也試過(guò)精度相比 ResNet 略有下降故在 CPU 部署場(chǎng)景有限的情況下還是優(yōu)先推薦 ResNet。import torch.nn as nn from torchvision.models import resnet50 def build_classifier(num_classes, pretrainedTrue): model resnet50(weightsIMAGENET1K_V1 if pretrained else None) in_features model.fc.in_features model.fc nn.Sequential( nn.Dropout(0.3), nn.Linear(in_features, 256), nn.ReLU(inplaceTrue), nn.Dropout(0.2), nn.Linear(256, num_classes) ) return model替換全連接層時(shí)要注意保持 in_features 的一致性做法是先從原模型讀出來(lái)再構(gòu)建新層不要寫(xiě)死 2048否則換網(wǎng)絡(luò)結(jié)構(gòu)就要連帶改。Dropout 加在分類頭里能在一定程度上抑制過(guò)擬合因?yàn)樯嘞髷?shù)據(jù)類內(nèi)差異較大模型很容易死記訓(xùn)練集的紋理細(xì)節(jié)。3.3 訓(xùn)練配置與數(shù)據(jù)增強(qiáng)參數(shù)怎么設(shè)才不玄學(xué)訓(xùn)練分類網(wǎng)絡(luò)時(shí)數(shù)據(jù)增強(qiáng)策略和訓(xùn)練超參是決定效果的關(guān)鍵因素。舌象圖片的增強(qiáng)和自然圖像不同常規(guī)的隨機(jī)裁剪縮放固然有用但更要重視的是色彩抖動(dòng)因?yàn)轭伾翘ι诸惖闹苯右罁?jù)但也需要注意避免過(guò)度偏離真實(shí)舌色。import torch from torchvision import transforms from torch.utils.data import DataLoader from torchvision.datasets import ImageFolder train_transform transforms.Compose([ transforms.RandomResizedCrop(224, scale(0.7, 1.0)), transforms.RandomHorizontalFlip(p0.5), transforms.ColorJitter(brightness0.3, contrast0.3, saturation0.2, hue0.05), transforms.ToTensor(), transforms.Normalize(mean[0.485, 0.456, 0.406], std[0.229, 0.224, 0.225]) ]) dataset ImageFolder(dataset_classify/train, transformtrain_transform) loader DataLoader(dataset, batch_size32, shuffleTrue, num_workers4, pin_memoryTrue)訓(xùn)練參數(shù)方面常見(jiàn)做法是 SG 優(yōu)化器配合階梯式學(xué)習(xí)率初始學(xué)習(xí)率設(shè)置在 0.001 到 0.01 之間具體數(shù)值要看數(shù)據(jù)集規(guī)模和任務(wù)難度epoch 設(shè)置 50 到 100 輪用驗(yàn)證集 loss 保存最優(yōu)權(quán)重。損失函數(shù)用帶權(quán)重的 CrossEntropyLoss類別樣本數(shù)差異大時(shí)一定要啟用權(quán)重參數(shù)否則樣本量大的類別會(huì)主導(dǎo)梯度更新。from torch.nn import CrossEntropyLoss class_weights torch.tensor([1.0, 1.2, 1.5, 0.8, 1.3]) # 按各類樣本占比的倒數(shù)平滑 criterion CrossEntropyLoss(weightclass_weights)一個(gè)容易被忽略的參數(shù)是驗(yàn)證集變換驗(yàn)證時(shí)只能用 Resize CenterCrop不能加 Random 系列增強(qiáng)否則指標(biāo)會(huì)有波動(dòng)。4. PyQt5 界面集成把模型輸出變成可操作的報(bào)告4.1 界面整體結(jié)構(gòu)與線程設(shè)計(jì)PyQt5 界面在這套系統(tǒng)中的職責(zé)是選擇圖片、展示原圖與檢測(cè)結(jié)果、觸發(fā)分類推理并顯示診斷結(jié)論。界面布局我采用左側(cè)原圖預(yù)覽、右側(cè)結(jié)果面板的兩欄結(jié)構(gòu)底部放一個(gè)“開(kāi)始識(shí)別”按鈕和日志輸出框。整體設(shè)計(jì)類似一個(gè)檢測(cè)工具類的軟件但核心目標(biāo)很清晰——讓操作者不用接觸代碼就能完成整套識(shí)別流程。界面開(kāi)發(fā)最需要避開(kāi)的坑是耗時(shí)操作阻塞主線程。PyTorch 的 GPU 推理雖然快但在 CPU 上跑一次完整流程可能需要幾百毫秒如果直接寫(xiě)在按鈕的槽函數(shù)里界面會(huì)卡住不動(dòng)。正確做法是利用 QThread 把推理放到后臺(tái)線程主線程只負(fù)責(zé)更新 UI。from PyQt5.QtCore import QThread, pyqtSignal class InferThread(QThread): finished pyqtSignal(dict) def __init__(self, image_path, detect_model, classify_model, device): super().__init__() self.image_path image_path self.detect_model detect_model self.classify_model classify_model self.device device def run(self): result run_pipeline(self.image_path, self.detect_model, self.classify_model, self.device) self.finished.emit(result)這種設(shè)計(jì)需要注意的細(xì)節(jié)是線程里不要再訪問(wèn) UI 控件只通過(guò)信號(hào)傳遞結(jié)果如果用戶連續(xù)點(diǎn)擊按鈕要設(shè)置 busy 標(biāo)志位防止重復(fù)啟動(dòng)線程。4.2 torch.load 的坑直接加載模型文件為什么會(huì)炸模型加載是集成階段的高頻翻車點(diǎn)。PyTorch 的 state_dict 保存方式有兩種只保存權(quán)重的 .pth 文件和包含完整模型結(jié)構(gòu)的 .pt 文件兩者加載方式完全不同界面啟動(dòng)時(shí)加載不對(duì)就會(huì)報(bào)錯(cuò)。import torch from models.resnet import build_classifier device torch.device(cuda if torch.cuda.is_available() else cpu) # 情況一只有 state_dict必須先構(gòu)建模型再 load model build_classifier(num_classes5) model.load_state_dict(torch.load(classify_best.pth, map_locationdevice)) model.to(device).eval() # 情況二完整模型文件直接加載即可 model torch.load(classify_best.pt, map_locationdevice) model.to(device).eval()很多同學(xué)在訓(xùn)練腳本里用的是 model.state_dict() 保存到了界面端卻按完整模型去 load就會(huì)出現(xiàn) missing keys 或 unexpected keys 的報(bào)錯(cuò)。建議在保存模型時(shí)把優(yōu)化器狀態(tài)、epoch、best_acc 一起打包成字典這樣后面做斷點(diǎn)續(xù)訓(xùn)加載時(shí)能省很多事。加載前打印一遍 model.keys() 花不了幾秒鐘卻能避免后續(xù)排查的大半天時(shí)間。4.3 推理管線編排從原圖到報(bào)告的一體化實(shí)現(xiàn)完整的識(shí)別流程是先用檢測(cè)模型定位舌頭裁剪出舌體區(qū)域后再送入分類模型。這里需要注意兩個(gè)細(xì)節(jié)檢測(cè)框要適度外擴(kuò)不能貼著框邊緣裁剪以免丟失舌緣信息如果檢測(cè)置信度低于某個(gè)閾值界面應(yīng)該給出提示讓用戶重新拍攝而不是硬分類。import cv2 import torch import numpy as np def run_pipeline(image_path, detect_model, classify_model, device, conf_thres0.5, expand_ratio0.1): img cv2.imread(image_path) img_rgb cv2.cvtColor(img, cv2.COLOR_BGR2RGB) results detect_model(img_rgb) if len(results.boxes) 0: return {error: 未檢測(cè)到舌體請(qǐng)調(diào)整拍攝角度或光線后重試} box results.boxes[0].xyxy[0].cpu().numpy().astype(int) conf results.boxes[0].conf[0].item() if conf conf_thres: return {error: f舌體檢測(cè)置信度偏低({conf:.2f})建議重新拍攝} x1, y1, x2, y2 box dw, dh int((x2 - x1) * expand_ratio), int((y2 - y1) * expand_ratio) h, w img.shape[:2] x1, y1 max(0, x1 - dw), max(0, y1 - dh) x2, y2 min(w, x2 dw), min(h, y2 dh) crop img_rgb[y1:y2, x1:x2] crop cv2.resize(crop, (224, 224)) crop_tensor torch.from_numpy(crop.transpose(2, 0, 1)).float().div(255) crop_tensor crop_tensor.unsqueeze(0).to(device) with torch.no_grad(): logits classify_model(crop_tensor) prob torch.softmax(logits, dim1) idx torch.argmax(prob, dim1).item() conf prob[0, idx].item() return {box: box.tolist(), class_id: idx, class_name: class_names[idx], confidence: conf}推理管線里幾個(gè)關(guān)鍵參數(shù)值得留意expand_ratio 外擴(kuò)比例取 0.1 比較合適外擴(kuò)太多會(huì)把嘴唇和背景納入分類區(qū)域干擾苔色判斷分類模型的輸入尺寸要和訓(xùn)練時(shí)一致否則預(yù)處理統(tǒng)計(jì)量不匹配會(huì)帶來(lái)精度下降softmax 后的置信度是給界面展示用的而訓(xùn)練時(shí)用的 CrossEntropyLoss 自帶 softmax兩者不要弄混。4.4 界面結(jié)果展示與狀態(tài)管理結(jié)果展示部分需要同時(shí)呈現(xiàn)檢測(cè)框圖片、苔質(zhì)苔色結(jié)論、置信度三個(gè)信息。檢測(cè)框的繪制在 QPixmap 上同步進(jìn)行不能只畫(huà)在原始圖像矩陣?yán)镆驗(yàn)榻缑骘@示的圖片經(jīng)過(guò)了縮放適配。建議繪制時(shí)把檢測(cè)框坐標(biāo)按縮放比例映射回顯示坐標(biāo)系才能讓框和舌頭位置準(zhǔn)確對(duì)應(yīng)。def update_result(self, result_dict): if error in result_dict: self.result_label.setText(result_dict[error]) return box result_dict[box] self.result_label.setText( f舌苔類型{result_dict[class_name]}\n f置信度{result_dict[confidence]:.2%} ) self.draw_box(box)狀態(tài)管理方面要注意按鈕的可用狀態(tài)切換推理中禁用按鈕避免重復(fù)點(diǎn)擊、等待檢測(cè)結(jié)果時(shí)清空舊結(jié)果、遇到錯(cuò)誤時(shí)恢復(fù)按鈕可用狀態(tài)。這些看似瑣碎的細(xì)節(jié)往往比模型調(diào)參更影響實(shí)際使用體驗(yàn)。5. 部署與模型壓縮讓系統(tǒng)在 CPU 上也能有可用體驗(yàn)5.1 模型格式轉(zhuǎn)換與推理框架選型純 PyTorch 的加載推理方式在 GPU 環(huán)境下表現(xiàn)良好但若目標(biāo)是普通辦公電腦 CPU 部署那么換成 ONNX Runtime 或者 OpenVINO 會(huì)有明顯效果提升——同樣的模型轉(zhuǎn)換后推理耗時(shí)往往能下降到原始版本的一半甚至更少。import torch # 以分類模型為例導(dǎo)出 ONNX model build_classifier(num_classes5) model.load_state_dict(torch.load(classify_best.pth, map_locationcpu)) model.eval() dummy_input torch.randn(1, 3, 224, 224) torch.onnx.export( model, dummy_input, classify.onnx, input_names[input], output_names[output], dynamic_axes{input: {0: batch}, output: {0: batch}}, opset_version12 )導(dǎo)出 ONNX 時(shí)有兩個(gè)細(xì)節(jié)dynamic_axes 讓 batch 維度可變這樣推理時(shí)可以傳單張也可以傳多張opset_version 不宜過(guò)高舊版 ONNX Runtime 對(duì)高版本算子支持不完整實(shí)際運(yùn)行會(huì)報(bào) unsupported operator 錯(cuò)誤。5.2 推理函數(shù)的替換ONNX Runtime 接口與 PyTorch 的差異換用 ONNX Runtime 后推理函數(shù)的寫(xiě)法完全不同尤其要注意輸入數(shù)據(jù)的格式和維度順序。PyTorch 模型直接接收 tensor而 ONNX Runtime 需要 numpy 數(shù)組并且要指定輸入輸出節(jié)點(diǎn)名稱。import onnxruntime as ort import numpy as np class OnnxClassifier: def __init__(self, onnx_path, device_index0): providers [CUDAExecutionProvider, CPUExecutionProvider] if device_index 0 else [CPUExecutionProvider] self.session ort.InferenceSession(onnx_path, providersproviders) self.input_name self.session.get_inputs()[0].name self.output_name self.session.get_outputs()[0].name def predict(self, tensor_np): # tensor_np: (1, 3, 224, 224) float32 numpy outs self.session.run([self.output_name], {self.input_name: tensor_np}) return outs[0]大多數(shù) ONNX 部署的報(bào)錯(cuò)集中在 provider 指定上。CUDAExecutionProvider 前置的情況下如果當(dāng)前機(jī)器沒(méi)有 GPU 或 CUDA 庫(kù)不匹配初始化會(huì)報(bào)錯(cuò)。穩(wěn)妥的做法是先嘗試全部 provider失敗就回退到 CPU。5.3 量化INT8 對(duì)舌苔識(shí)別精度的影響有多大想要進(jìn)一步壓縮模型體積可以考慮 INT8 量化。PyTorch 的量化分為訓(xùn)練后動(dòng)態(tài)量化和靜態(tài)量化。對(duì)分類模型來(lái)說(shuō)靜態(tài)量化通常能把模型體積縮小到約四分之一推理速度提升 1.5 到 2 倍但精度損失需要實(shí)測(cè)確定——舌苔分類對(duì)顏色和紋理細(xì)節(jié)比較敏感量化后掉點(diǎn)可能比自然圖像分類更明顯。model_fp32 build_classifier(num_classes5) model_fp32.load_state_dict(torch.load(classify_best.pth, map_locationcpu)) model_fp32.eval() model_quantized torch.quantization.quantize_dynamic( model_fp32, {torch.nn.Linear}, dtypetorch.qint8 ) torch.save(model_quantized.state_dict(), classify_quantized.pth)一個(gè)實(shí)操建議在已經(jīng)完成系統(tǒng)開(kāi)發(fā)和部署之后量化優(yōu)化可以作為后續(xù)版本迭代的一部分來(lái)推進(jìn)。第一版先用 FP32 跑通全流程確認(rèn)檢測(cè)和分類的準(zhǔn)確率達(dá)標(biāo)后再做量化壓縮。如果量化后精度下降明顯退回 FP32 成本并不高留一條后悔藥路徑總歸是好的。6. 常見(jiàn)問(wèn)題排查與避坑指南6.1 檢測(cè)模型在驗(yàn)證集效果很好但界面上框不住舌頭這個(gè)翻車現(xiàn)象出現(xiàn)頻率很高。模型獨(dú)測(cè)時(shí) mAP 很高但到實(shí)際使用時(shí)對(duì)不上甚至框偏到嘴唇上。原因通常有兩個(gè)第一訓(xùn)練數(shù)據(jù)里全是規(guī)范的正角度舌象照片而實(shí)際使用時(shí)用戶拍的圖可能是仰角、側(cè)面或者舌頭沒(méi)有完全伸出的狀態(tài)這屬于典型的數(shù)據(jù)分布不一致第二界面端推理時(shí)縮放的尺寸和訓(xùn)練不一致YOLO 模型對(duì)輸入分辨率有一定要求如果被界面代碼隨意 resize檢測(cè)效果會(huì)退化嚴(yán)重。解決思路要有兩手準(zhǔn)備。一是數(shù)據(jù)層面增加多角度、多光照的樣本模擬用戶真實(shí)拍攝場(chǎng)景二是推理端嚴(yán)格保持訓(xùn)練時(shí)的預(yù)處理流程把 resize 邏輯直接復(fù)用訓(xùn)練代碼里的預(yù)處理函數(shù)不要在界面端重新寫(xiě)一遍。6.2 分類模型對(duì)黃苔、白苔的判斷總是搖擺不定苔色分類的理想入?yún)⑹穷伾€原度較高的圖像。如果圖片整體偏黃或者偏白分類器就會(huì)不穩(wěn)定同一張舌象在不同顯示器上可能得到不同結(jié)論。產(chǎn)生這個(gè)問(wèn)題的根源在于訓(xùn)練數(shù)據(jù)里的色調(diào)多樣性和實(shí)際使用環(huán)境的漂移不一致。解決思路包括加強(qiáng) ColorJitter 增強(qiáng)讓模型見(jiàn)過(guò)更寬的色域在界面端增加白平衡校正選項(xiàng)讓用戶手動(dòng)調(diào)整后再識(shí)別輸出 Top2 概率而不是只給最高類別當(dāng)兩個(gè)類別概率接近時(shí)提示“黃白苔界限模糊建議結(jié)合臨床診斷”。這類提示看似簡(jiǎn)單但對(duì)實(shí)際醫(yī)療場(chǎng)景的價(jià)值遠(yuǎn)大于盲目輸出一個(gè)不確定的結(jié)論。6.3 界面啟動(dòng)后無(wú)響應(yīng)或直接閃退PyQt5 界面閃退通常有幾個(gè)原因模型路徑不存在但代碼沒(méi)有判斷、ONNX Runtime DLL 加載失敗、設(shè)備號(hào)超出范圍。排查時(shí)先在純命令行環(huán)境加載模型不要直接啟動(dòng)界面python -c import torch; mtorch.load(classify_best.pt, map_locationcpu); print(model ok) python -c import onnxruntime as ort; sort.InferenceSession(classify.onnx, providers[CPUExecutionProvider]); print(onnx ok)如果這兩步都通過(guò)再去檢查界面代碼。QThread 里拋出的異常默認(rèn)不會(huì)導(dǎo)致進(jìn)程崩潰但會(huì)在 Qt 事件循環(huán)里留下未捕獲異常。建議在 run() 方法里包一層 try-except把異常信息通過(guò)信號(hào)傳回主界面顯示。class InferThread(QThread): finished pyqtSignal(dict) error pyqtSignal(str) def run(self): try: result run_pipeline(self.image_path, self.detect_model, self.classify_model, self.device) self.finished.emit(result) except Exception as e: self.error.emit(str(e))異常信息在日志框打印出來(lái)而不是讓程序直接崩潰這種習(xí)慣做項(xiàng)目時(shí)能節(jié)約大量時(shí)間。6.4 模型加載在 Windows 下路徑報(bào)錯(cuò)Windows 下使用中文路徑或包含中文名的模型文件時(shí)PyTorch 和 OpenCV 偶爾會(huì)出現(xiàn)編碼問(wèn)題。這需要從根源上避免使用中文路徑和中文文件名統(tǒng)一用英文。另外模型文件放在項(xiàng)目根目錄的 models/ 文件夾里不要放在桌面或下載目錄既方便打包也避免權(quán)限問(wèn)題。6.5 訓(xùn)練時(shí) loss 不降或直接變成 NaNloss 變成 NaN 的原因多半是學(xué)習(xí)率過(guò)大、數(shù)據(jù)里有異常像素值或者標(biāo)注越界。檢測(cè)模型訓(xùn)練時(shí)重點(diǎn)檢查標(biāo)注坐標(biāo)是否全部歸一化到 [0,1] 區(qū)間分類模型訓(xùn)練時(shí)檢查輸入圖片是否有損壞文件。更直接的辦法是降低初始學(xué)習(xí)率從 0.001 開(kāi)始確認(rèn) loss 正常下降后再逐步加大。7. 系統(tǒng)驗(yàn)證與擴(kuò)展如何確認(rèn)模型真的可靠這套系統(tǒng)做完之后驗(yàn)證是必不可少的一步。舌苔識(shí)別系統(tǒng)的驗(yàn)證不同于普通分類任務(wù)不能只盯著準(zhǔn)確率還要關(guān)注臨床可用性。我通常的做法是準(zhǔn)備一份留出測(cè)試集里面全部是訓(xùn)練階段沒(méi)有見(jiàn)過(guò)的真實(shí)場(chǎng)景圖片包括不同光照、不同設(shè)備、不同角度然后統(tǒng)計(jì)檢測(cè)成功率和分類混淆矩陣。import numpy as np from sklearn.metrics import confusion_matrix, classification_report def evaluate(model, loader, device): model.eval() all_preds, all_labels [], [] with torch.no_grad(): for images, labels in loader: images, labels images.to(device), labels.to(device) outputs model(images) _, preds torch.max(outputs, 1) all_preds.extend(preds.cpu().numpy()) all_labels.extend(labels.cpu().numpy()) cm confusion_matrix(all_labels, all_preds) print(classification_report(all_labels, all_preds, target_namesclass_names)) return cm從混淆矩陣?yán)锬芸吹降牟恢皇菧?zhǔn)確率還有具體哪些類別互相混淆。黃苔和白苔之間的混淆是常見(jiàn)問(wèn)題但這代表的是標(biāo)注標(biāo)準(zhǔn)模糊不是模型缺陷。這時(shí)候要做的是回看標(biāo)注數(shù)據(jù)確認(rèn)標(biāo)注人員之間對(duì)“黃”和“白”的顏色界定是否一致必要時(shí)重新清洗部分標(biāo)簽。擴(kuò)展方向上值得做的改造有把檢測(cè)框的輸出從矩形框升級(jí)為舌體輪廓分割 mask用 U-Net 做舌體分割能拿到更精確的舌體區(qū)域分類輸入質(zhì)量比矩形裁剪好不少把分類網(wǎng)絡(luò)改成多標(biāo)簽輸出——一個(gè)舌頭可以同時(shí)有“薄”和“白”的屬性多標(biāo)簽結(jié)構(gòu)更接近臨床語(yǔ)義在界面端增加批量識(shí)別功能一次導(dǎo)入數(shù)十張圖片自動(dòng)出報(bào)告對(duì)體檢中心這種場(chǎng)景的實(shí)用價(jià)值明顯。對(duì)整個(gè)系統(tǒng)做個(gè)評(píng)價(jià)的話需要清楚它只能提供輔助參考不能替代任何專業(yè)醫(yī)療判斷。界面展示的置信度嚴(yán)格來(lái)說(shuō)明確標(biāo)注“AI 輔助結(jié)果”這在中醫(yī)信息化項(xiàng)目中既是對(duì)規(guī)范的尊重也是對(duì)使用者的保護(hù)。這是這套系統(tǒng)開(kāi)發(fā)過(guò)程中最重要的一條教訓(xùn)——技術(shù)指標(biāo)再好也要想清楚使用邊界。希望這篇踩坑筆記能幫到你搭建屬于自己的舌象分析系統(tǒng)的時(shí)候少走一些彎路。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日本成人A片免费看| 国产色产精品在线观看| 久久曰曰| 无码最新| 美国日韩黄片| 97久久久久| 狠狠躁天天躁日日躁| 国产高潮AA片免费看| 国产免费一区2区3区| 欧美与日韩97| 久久一区,青青青青草视频在线播放| 自拍偷拍 高清无码| 看全色黄大色大片免费视频| 后入综合久久| 久久久久极品| 日韩一二三区| 国产乱伦视频污| 欧美精品庄| 色香综合天天影视综合 | 麻豆天美国美国产| 强奸xx国产| 午夜爽爽爽在线观看永久入口姬片| 啪啪啪综合网| 久久国产乱子伦精品免费女,网站| 国产精品视频| 亚洲一区二区av| 人妻天天爽夜夜爽2| 亚洲熟妇熟在线电影视频| 天天日天天爽| 婷婷激情五月| 99无码精品| 日本99久久| av一区二区三区 中文| 爱av免费| 国产精选三级在线观看| 乱伦熟女区| www.色操逼| 五月综合久久| 98一区二区精品| 成人情色一区二区| 青青草伊人久久| 密臀AV在线| 欧美后入视频| 天天热精品| 国产日韩欧美| 91在线精品一区二区三区| 国产呦精品系列在线观看| 国产成人五月天丁香花| 亚洲激情综合另类| 国内亚洲高清无码| 囯产乱伦一区二区三女 | 99精品伊人| 加勒比五月天| 亚洲无码一区成人免费午夜| 国产一国产一级毛片古装| 蜜臀在线视频| 欧美亚洲一级在线观看| 自拍偷拍2025在线观看| 99热成人| 九九热超碰97亚洲最新香蕉 | 性感美女91影视| 超碰78| 日本成人免费一区二区三区| 人妻 丝袜美腿 中文字幕| 国产亚洲美日韩Aⅴ中文字幕无码成人| 操逼www.| 色香色香欲天天天影视综合网| 116美女午夜| 亚州精品丝袜-不卡成人免费| 神马久久久久久久久久久久| 男人的天堂com| 欧美精品成人一区二区在线观看 | 99爱久久视频频| 97久久久精品| 伊人网在线点播| 一级二级在线观看| 欧美性爱系列| 成人日韩中文字幕| 国产9l 大屁股| 乱伦一二三区| 麻豆人妻精品一区二区| 亚洲的天堂网| 日韩操啪| 久久久激情| 亚洲诱惑天堂| 强奸国产在线| 亚洲精品欧美专业| 国产强奸乱伦第1页| 久久久久久久伊人精品| 欧美熟女激情| 国产黄色视频久久| 日本三级人妻a人妻一在线| 97综合久第一页| 国产美女裸体秘 永久无遮挡| 五月丁香婷婷啪啪| 欧美人妻另类在线| 亚洲色色探花| 亚洲限制级| 欧美综合网在线| 免费黄色A片| 爽爽爽免费视频| 亚洲丝袜综合| 欧美男人一区| 偷拍盗拍亚洲色图图片| 亚洲各类熟们中文字幕| 免看60秒涩涩视频| 国产成人免费观看在线视频| 人人澡人人弄| 久久中文字幕一区不卡| 超碰精品| 欧美人与性动交a美精品| 久久久一热在线播放| 91白虎| 激情五月天视频| 天天射夜夜| 午夜视频好爽啊| 97超碰伊人| 黄片免费看的| 亚洲天天精品| 婷婷中文字幕| 91无码西班牙视频在线| 久久夜色一区二区| 欧美另类精品xxxx| 国产AV天美传媒一区二区三区 | ?亚洲伊人伊成久久人综合网| 亚洲熟久久| 国产乱伦亚洲| 久久久精| 欧美亚洲丝袜人妻制服99| 日本女人久久久| 91在线页| 久久精品国产亚洲AV高级北京| 美女诱惑在线一区| 国模少妇一区二区三区| 怡红院成人视频| 91oumei| а√天堂资源官网在线资源| 国产乱人妻精品入口| 欧美偷拍区| 97国产天堂岛| 欧美日综合| 91观看 国产白丝| 欧美亚男人的天堂| 国产一区二区av综合| 国产精品一区二区麻豆| 国产成人亚洲精品自产在线| 国产美女口爆吞精视频| 成人AV在线网站| 天天综合网~69| 美国日韩黄片| 超碰 国产熟女精品一区| 91精品无码人妻系列| 超碰导航97| 热久久91婷婷| 日韩AV一起草| 精品无码久久久久久久久果冻糖心| 97超久碰| 色五月大香蕉| 2020中文在线一区二区三区| 国产999精品久久久| 婷婷丁香人妻 | 日本一区视频在线观看| 欧美色综合网| 亚洲欧美激情小说| 欧美A√综合网| 26uuu国产免费观看| 综合网 欧美| 97看操| 国产AV高清AV无码| 变态乱伦伪娘灌肠一区二区| 欧美+日产+中文| 日本啊啊啊啊啊视频| 中文字幕乱在线伦视频中文字幕乱码在线| 九七超碰人人乐| 91网站18在线| 91成人在线| 国产在线精品偷| 国产一区自拍欧美日韩| 午夜.DJ高清在线观看免费7| 91无码西班牙视频在线| 99久久99九九99九九九| 色偷偷2020免费视频播放| 日韩久久艹| 欧美|91色综合| 五月天色图| 国产精品亚洲一级av第二区| 欧美一级黄色免费专区| 蜜臀99久| 超碰97极品9| 精品乱码久久久久| 97超碰69| 久妇网| 99超级碰免费视频| 能看的av| 激情久久久| 亚洲天堂无码| 99碰碰| 日本高清一区二区在线| 乱伦日本色图AⅤ| 伊人精品久久网站| 亚洲成人精品在线一区| 日本操逼aaaaa| 99在线精品视频| 成人午夜视频免费播放| 久9视频| 伊人色综合网电影| 中国亚洲呦女专区| 久久色情| 天天操女人| 久久综合乱子伦国产免费| 亚码激情| 亚洲情色一区三区| 狠狠操狠狠燥| 啊啊啊啊无码| 欧美精品三级黄片| 三级精品三级在线观看| 亚洲精美粉嫩嫩泬在线观看| 久久久久九九九| 久久久久久AⅤ无码免费肉站| www.99中文字幕| 国产麻豆福利av在线播放| 精品人体无圣光凹凸| 亚洲国产奇米影视久久| 亚洲九月丁香| 欧美久久九九| 亚州乱码中文字幕综合久久久| 亚洲一二三四区机械| 另类亚洲图色| 日韩三级性| 91M一社| 91亚洲图片| 熟妇乱伦一区二区| 综合欧美激情网| 日本久久天堂| 都市激情人妻一区二区青青操视频 | www欧美性爱| 五月天婷婷激情| 97精| 二男一女成人A片| 欧美v亚洲v日韩v最新在线二区 | 老熟女网站| 欧美一区二区一级岛国大片| 日本一级二级三级网站| 玖色AV| 97在线观看免费视频l| 精人妻无码一区二区三区伊人直播 | 亚洲美女高潮喷水视频| 久久伊人亚洲AV无码网站| 亚洲无码?第一页| 中文字幕五区| 久久久久久久久久久久久女过产乱-少妇高潮一区二区三区喷水-成人AV | 亚洲中文字幕在现观看| 日韩人妻免费精品| 99国产精品久久久久久久成人热| 大香蕉日韩欧美| 日本孕妇一区二区视频操逼免费看| 国产一区二区三三视频| 婷婷色一区| 超碰一区二区| 日本羞羞的视频在线播放| JIZZJIZZ国产精品喷水| 欧美激情视频一区二区三区不卡| 久久内射| 亚洲日韩国产欧美综合v| 国产激情av女片自拍| 九九九精品| 日韩av一级黄片| 欧洲自拍第一页| 粉嫩粉嫩一区性色AV片| h4610国产人妻| 伊人亚洲国产一成人久久精品,久久| 亚洲无限观看| 亚洲日韩精品久久久久一区壹牛| 日韩免费性爱视频在线观看| 国产一区二区久久| 黄片视频,下载| 熟女日韩| 国产精品久久久久婷婷二区次| 天天日天天搞天天干| 色婷婷亚洲婷婷| 人妻天天爽夜夜爽2| 在线岛| 久操99| 欧美春色| 丁香五月婷婷五月| 韩日欧亚a级| 999国产精品999| 91无摭挡| 国产精品自拍欧美在线| 性九九九九九九| 天天色黄色影院天天操| 97超碰巨乳| 丁香五六月啪啪| 操九九九九九九| 天天插网| 日韩9999| 人人干人人搞人人摸| 伊人操操| 色综合av男人天堂| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 日本不卡三级网在线播放| 男人的天堂一区| 丁香五月色| 99精品九九九九九九| 亚洲激情av| 91情色在线| 亚洲五月天激情| 亚洲se91| 抽插爽| 久久人人爽爽人人爽人人片αV| 好看的久久不射无码影视影院| 老子午夜伦不卡影院| 少妇69中文| 亚洲欧美自拍偷拍| 插B在线观看| www.色婷婷| 日本精品五区| 久久激情视频| 国产成人AV麻豆| 95自拍视频在线观看| 加勒比东京热五月天天堂网| 一区二区日韩欧美久久| 啪啪啪综合网| 国产在线精品电影观看| 骚逼高潮久久精品| 色婷婷婷五月天激情四射| 国产成人超碰在线| 九九热精品视频六| 亚洲网自拍| 囯产操逼片| 狠狠爱夜夜| 91欧美偷拍| 免费在线黄片视频| 热99这里有精品综合久久| 精久久久91| 99久久久久久久久| 国产女大学生AV| 老熟女中文字幕高清| 国产AV高清AV无码| 被窝影院午夜看片无码| 97久久超碰亚洲| 婷婷五月天久久精品视频一区二区三区| 久久男人精品| 国内亚洲高清无码| 久久精品28| 欧美亚洲成人在线一区二区三区| 婷婷五月天小说| 日韩欧美成人午夜福利| 色五月AV| 97日韩欧美亚洲| 91jk色拍| 久操黄色视频| 久热超碰| 手机看片1025| 在线观看成人性爱免费小视频| 中文字幕视频二区| 骚货 中文字幕 av| 日韩三级性| 成年男人的天堂| 九九热AV| 中文字幕精品资源在线| 美女视频尤物网在线看| 亚洲九九九九| 国产精品农村妇女精品| 91视频综合在线| 麻豆福利视频导航| 欧美少妇性乱| 欧美日韩一干二干| 亚洲 欧美 另类 综合 偷拍| 极品丝袜无码| 精品久久久av| 91白嫩| 亚洲天堂久| 亚洲天天影视综合网| 亚洲熟女乱色| av情色影音| 少妇被玩视频二三区| 91国产精品在线看| 国产这里只有精品| 啊啊啊啊视频免费| 免費人妻夜夜爽天天爽爽一区| 思思热在线| 欧美黄片视频在线观看免费 | 精品欧美А∨无码黑人大荫蒂| 91在线欧美| 乱伦强奸区日韩| 免费AV中文网在线观看| 日产操逼| 久久性爱精品一区| 久操网址| 久久久中文| 噜噜在线| 蜜桃视频精品一区二区三区| 四虎视频在线观看| 亚洲好色人妻| 亚洲少妇在线观看| 亚洲精品一二牛牛| 国产AV激情无码久久无码 | 伊人一区二区三区| av日韩中文字幕| 日韩精品三级| 91无码西班牙视频在线| 国产精品亚洲天堂网址| 全球成人中文在线| 人妻少妇久久久| 久草综合京东| 制服中出中文人人精品| 欧美性爱一区二区三区| 无码直播久久久| 操逼片中文| 国产亚洲色婷婷久久99精品91| 人伦四五区| 久久久性爱| 乱操乱伦AV| 超碰在线香蕉| 91久久久久久久久久久| 91强在线播放| 亚洲97在线| 嗯啊视频免费在线观看| 亚洲高潮少妇| 激情四射五月天| 久久岛国| 激情视屏国产乱伦强奸| 黑丝少妇麻豆| 天天92av| 九九探花视频在线观看| 精品国产乱码久久久久久久久1 | 久久久亚洲欧美综合| 亚洲 日本 一 二 三| 草久久久| 国产区日韩区在线观看| 婷婷五月天av| 色亚州人久干视频在线观看免费版| 精品无av| 久久久久久国产手机AV| 久久超碰97中文字幕| 亚洲综合色图欧美| 在免费jIzzjIzz在线视频| 高潮内射在线| 91 丝袜在线播放| 日本在线视频导航| AV色五月天| 国产精品直播在线观看直播| 久久久久9999| 麻豆色约约| www.久久最新地址| 影音综合网| 久久高潮妇女视频| 91精品丝袜久久久久久| 九九九九97| 午夜.DJ高清在线观看免费7| 欧美色图天堂网m| 九九亚洲| 久久一二三四五六七八九区区区| www.久久超碰| 欧美在线观看综合国产| 97超碰人操| 久久久久久电影| 日本一区二区三区精品| 亚洲人天堂| 丁香六月综合激情| 91综合在线| 国产欧美伊人| 日本人妻最新在线中| 日韩人妻资源在线看| 人人天天干干| 热的中文 热的有码 热的国产| 自拍偷拍 日韩欧美| ss久久| 日韩欧无码一区二区三区免费不卡| 东京热亚洲一区二区| 激情综合 婷婷五月 红杏| 久久男女激情视频网站| 亚洲天堂少妇| 1024日韩| 三级日韩一区二区三区| 99www.bibizy香蕉资源国产一区二区三区高清 | 精品久久久久瑟瑟| 偷拍三区| 成年人免费观看网站| 夜嗨影院| 中文有码9| 婷婷五月天基地| 欧美日韩97| 69综合网| Blackedraw视频一区二区| 丝袜天堂网| 激情五月综合网| 熟妇乱伦一区二区| 伦在线97| 一区二区偷拍拍视频| 91福利网在线观看| 操逼999| 蜜臀AV网站| 啊啊啊免费| 日韩传媒在线| 亚洲成?V人片在线观看福利| 欧美色图片色哟哟| 麻豆av一区二区三区| 久久综合亚洲色1080p| 97在线观看免费| 人人乐大香蕉| 欧美另类综合久久| 国产精品午夜AV完会免费| 欧美日韩大陆黑人少妇99| 熟女六十路| 国产精品成人AV片免费看网站 | 日韩一性一交一A片俄罗斯| 伊人嫩草| 欧美亚洲20p| 破苞ⅩXXX性无码动漫无码| 成人小电影网站tex| 嗯嗯啊啊用力视频免费| 天天看,天天做| 可以免费看黄片的视频| 青娱乐 青青青操 日逼| 禁十八久久| 这里只有精品视频在线| 成人激情无码在线视频| 台湾一区国产高清在线| 97这里有精品| 国模91| 欧美五区| 久久大香蕉手机高清视频| 老司机射| 神马久久久久久伦理片| 中文字幕在线免费观看2| 亚洲精品97p| 伊蕉97蜜桃97狠狠综合干| 亚洲情色91| 午夜高清成人在线视频| 黄片免费看的| 精产国品一区二三产品| 亚洲黑丝在线| 另类在线| 国产超碰| 欧美成人性爱视频大全| 久久精品国产亚洲AV高级北京| 久久在线观看免费视频| 中文字幕欧美丝袜07资源| 亚洲高清欧美总合| 啊啊在线| 婷婷九月丁香| 呻吟 欧美 日本 中出| 熟妇人妻一区二区三在线| 三级片大波波| 麻豆AV一区二区| 97天天爽| 人人妻人人操人人乐| 六月激情网| 大香蕉综合网| 天天射,天天操,天天爽-国内精品一区二区三区-成人AV | 嗯嗯嗯好爽| 99这里有精品| 日本三级久| 伊人成人中文字幕久久网| 九九热九九| 9999久久久久| 人妻少妇视频在线播放| 亚洲人妻一区二区三区| 一区二区 韩日AV| 天天做天天爱天天高潮| 久久五月份| 国模限制级电影| 美中韩AV综合网| 熟女在线视频| 美女主播色欲91抠b在线播放| 欧洲亚洲人妻无码中字久久三区四区| 97久久免费| 久久精品中文字幕女同| 欧洲站一级二级三级h| 蜜区区视频79 | 日韩国语字幕| 久久久久久久国产| 天操天操夜操夜月操月年年操操| 久久久一二三四区| 久久精品熟妇丰满人妻99| 黑人猛交| 思思热免费在线视频| 国产精品自在线发布| 国产欧美一区激情交| 嗯嗯啊中文字幕| 天天综合香 ld视频| 狠狠2050在线观看| 国产午夜精品一区二区三区牛牛| 精品视频一二三中文| 伊人天堂在线| 日本A级视频| 尤物视频新赏网鲜网色诱网| 加勒比综合| 国产在线激情视频| 婷婷五月综合在线| 天天做天天爱天天爽AV| 欧美第五页| 三级日本一区二区三区| 国产女人91精品嗷嗷嗷嗷| 91 手机在线播放 绯色| 国产第二页| 欧美亚洲激情| 一级A片女人高潮叫床| 日韩AV电影网站 | 亚洲欧美在线观看2021| 天天摸天天插天天日| 国产青青美女玩逼视频| 蜜臀久久99精品久久久久久无删减 | 91天天综合网| 8050无码八戒| 亚洲综合小视频小说在线观看| 欧美色吧综合| 午夜福利无毒不卡| 情色日播放AV| 欧美色图欧美| 国产色呦呦| 青青青青草av在线观看| 丝袜综合网| 国产精品视频白浆免费| 大奶尤物鲍汁淫荡欧美视频粉嫩夜夜骚| 99精品无码| 国产av强奸美女| 91女人的网站| 欧美色图 色综合图| 国产一级作爱毛片| 亚州高清色综合| 午夜男女爽爽爽影院视频| 五月丁香婷婷啪啪| 亚洲自拍青操视频| 超碰人妻天天干| 欧美色图天堂网m| 久久久久久97| 99亚洲精品| 日韩无码第3页| 中国探花熟女| 精品白丝一区| 日韩国产成人自拍视频| 一二三四视频在线社区中文字幕| av在线播放国产一区| 91啪9色| 亚洲91在线| 精品少妇一区二区三区免费观看| 久久久久久久久久久久97| 日韩女模中文造逼| 日韩AV熟女乱伦| 亚洲欧美日韩中文久久自慰| 天堂无码精品国产久| 亚洲精品1区| 亚洲成人免费中文字幕| 丝袜翘臀后入欧美校园亚洲自拍另类小说一区中文字幕少妇诱惑 | 国产精品亚洲天堂网址| 60秒免费小视频| se01国产在线视频| 是还免费视频1727我| 精品亚洲黄色片 国产精品导航一区二区 | 久久久精精精| 91狠| 精品蜜乳AV免费观看| 夜夜高潮夜夜爽高清视频一| 欧美性爱日韩高清| 久久精品视频在线观看| 欧美日韩激情无码专区| 少妇精品久久久八区九区| 日韩一级片在线看| 最新制服中文第一页| 久久黄黄| 亚洲无码太久| 欧美日韩97在线| 国产精品大香蕉| 欧美色图综合| 亚洲性猛| 欧美夜夜狠| 国产精品一二三区18| 人妻酒店出差被中出免费在线播放| 精品午夜福利国产一区二区在线观看| 秋霞福利网| 91啪啪| 精品人妻一区二区三区四区石在线 | 99re6在线视频精品免费完整版安卓版| 成人乱码一区二区三少妇| 久草成人影片| 97蜜桃综合| 一区二区三区探花在线观看| 天躁夜夜躁2021| 亚洲最大的黄色电影网站。| 91c色| 五十路三区在线| a人欧美综合天堂麻豆| 国产午夜无码片在线观看影视 | 四虎AV无码| 午夜一区二区三区国产| 大香蕉淫人| 一直超碰| 96精品在线| 国产专区第一页| 久久97精品久久久久久久不卡| 五月天综合网| 久久久一区二区三区四曲免费听| 黄片视频,下载| 精品欧美乱码久| 精品九九淫乱男| 精品一区96| 久久鲁干| 天天做日日做| 婷婷丁香激情| 传媒在线观看一区二区三区| 97一区二压| 日本在线不卡123| 国产高清成人传媒影视| 国产一区二区三区白丝| 亚洲丝袜诱惑| 草B在线| 91国产美女丝袜足交精品视频| 色婷婷丁香五月| 99精品久久久久久久婷婷| 天天干天天舔| 国产精品香蕉| 精品性爱一区二区| 人人干黄色| 久久精品国产Aⅴ| 精品人妻一区二区免费看| 蜜桃狠狠色伊人亚洲综合| 欧美一二三区四五区| 日韩av女优在线免费一区| 精品亚洲国产成人AV制服丝袜| 成人免费看吃奶视频网站| 亚洲一区二区在线观看91| 国产一区二区精品久久久不卡蜜臀 | 天天干18禁| 欧美性少妇| 9997se| 九九九九97| 射丝袜大香蕉| 学生妹天天看| 激情人妻另类| 色哟哟1区2区| 久久久专区| 国产第11页| 91久久久久久久| 蜜桃丰满熟妇av无码区不卡| 91强在线播放| 高潮精品| 玖玖爱在线视频免费观看| 日本人妻天堂网站在线播放| 超碰97起碰| 欧美性猛交美女自慰91| 96AV精品| 欧美亚洲激情小说| 精品人妻夜夜草| 欧美亚洲se91| 欧美同性恋 的搜索结果 - 91n| 情色五月天就去干| 91综合天天| 91视频综合| 性爱视频啪啪啪啪| 日韩精品 视频一区二区| 久久鲁干| 日韩在线女优天天干| 成人一区二区三区四区| 一级免费精品| 91综合色噜噜| 另类一区| 日韩钢筋无码高清啾啾啾| 后入式在线免费观看60秒| nuu12国产麻豆精品| 一区二区中文| 日韩性爱网址| 久久人人爽爽爽人久久久| 91在线丝袜| 伊人网免费视频| 亚洲色五月| 亚洲综合贴图91| 人人摸人人入| 爱射综合| 超碰在线综合97| 日韩欧美大力操| 国产剧情一区在线观看| 天天躁日日躁XXXXYY| 久久久久久久少妇| 亚洲AV乱码专区国产噜噜亚洲| 黄网色一区二区三区四区精品| 伊人久久综合影院| 亚洲情色视频| 东京太热男人的天堂久久久| 日韩无码嘿咻黑热久| 香蕉视频精品亚洲一区二区三区在线播| 国产精品一区av在线| 一道本东京热加勒比一区二区三区| 日韩无码人妻中字久久三区四区| 亚洲精品无码久久AV| 亚洲天天精品| 美女操逼A A| 五月丁香婷婷色| 97超碰人人操人人操| 亚洲黄色电影| 99热亚洲| 欧美姓爱综合网| 国产成人拍国产亚洲精品| 欧美一级做a爰片免费视频| 亚洲欧美国产日本一区二区三区| 色色操| 国产精品麻豆成人AV艾秋| 国产夫妻一区二区| 亚洲第一视频 欧美风情 日韩| 东北女人的毛片| 99色热| 精品久久久亚洲AV成人网站| 亚州中文字幕超碰97| 色九久| 精品人妻二区三区| 国产欧美精选自拍一区| 国产AV天美传媒一区二区三区 | 色呦呦、国产精品| 97干97色| 黄久在线| 大香蕉操久久| yellow网站免费观看日韩高清无码| 少妇色综合| AA丁香综合激情| 人妻天堂三区| 十八禁啪啦拍视频无遮挡| 91色花堂| 久久精品高清无码一区| 日本女人操逼| 思思热在线cao| 啊啊啊啊啊啊在线观看| 综合在线导航一区| 不卡日本一区二区| 一本色道久久综合亚洲二区三区| 夜夜肏2021| 午夜精品视频777| 密乳AV免费观看| 欧美色图综合| 亚洲国产97| 97ai亚洲| 久久中文字幕人妻熟av女蜜柚| 久久99手机免费视频| 人妻啊啊人妻啊| 不卡免费av在线播放| 国产精品一区二区手机看片| 果冻传媒A片麻豆熟妇人妻| 操淫穴亚洲五月丁香| 蜜臀99999| 久久久久元码视频| 蘋果手機免費看成人Av| 亚洲情色在线| 亚洲色图美腿丝袜| 级品肉射| 208天天久久九九九| 另类老少妇| 欧美激情一| 91久久久久久久久18| 中文字幕在线高清男人的天堂| 狠狠做深爱婷婷久久二区| 久久透逼视频| 老司机免费视频在线91| 俄罗斯一区二区视频在线观看| 亚洲激情色片 | 欧美一区二区三区日韩| 亚洲色人阁| 又黄又粗又硬又长又大| 日本一片一区| 亚洲超碰综合网| 日夜伊人网| 精品日韩人妻视频| 成·人免费午夜在线观看| 国产嫩草精品A88AV| 搡老女人911熟妇老熟女| 呻吟 欧美 日本 中出| 色 婷97| 四虎免费视频| 亚洲人天堂| 超碰在线看| 射 色综合| 亚洲高清国产理伦片| 国产精品国产自产高清AV| 国产女人高潮嗷嗷嗷叫小说| 乱伦熟女专区| 97在线免费观看| 亚洲欧洲无码一区夜| 91久久久老司机| 欧美中文字幕男人天堂久久精品 | 国产精品久久久久无码Av网曝门| 日韩精品在线视频在线观看| 国产麻豆一级精品视频| 99热导航| 91久久免费视频互動交流| 熟女乱伦二区| 东北女人性交| 日韩一级成人毛片免费观看| 吉川爱美98堂在线| 亚洲无码视频免费在线观看网址!| 五月天激情影院| 青青草华人在线欧美在线| 国产精品区在线12p| 91最新综合| 亚洲无码偷拍| 干b在线性社区| 超碰在线人妻中文字幕| 素人美腿视频网站| 白丝被操91| 熟妇视频一区二区三区在线观看| 天天综合-91入口| 69AV女优男人的天堂| 天天看天天日天天操| 乱理日韩中文| 成人性爱视频在线看| 制服丝袜第二页| 亚洲激情av| 视频一区二区免费在线| 欧美男女午夜啪啪| 超碰色男人操熟女| 色www精品视频在线观看| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 伊人伊人LD| 日本一级婬片试看三分钟| 综合色久欲| 精品久久久久久亚洲| 亚洲影院无码在线| 欧美高潮| 久久极品一区二区| 欧美性爱中文字幕无线码| 中文字幕无码不卡啪啪| 青青草视频导航官网| 青青草视频久久久久| 黄色av网站在线播放| 美女干逼2| 亚洲操逼网| av网站在线看| 99后入| 在线观看A啊啊啊| 青青草导航在线视频| 性爱av在线免费观看| 74成人在线| 麻豆人妻精品一区二区| 99热在线观看| 牛牛久久国产精品视频一二三 | 久久久一区二区三区四曲免费听 | 精品人妻av在线播放| 国产农村妇女毛片精品久久| 91久久堂| 99999精品成人| 色婷婷色99国产综合精品| 日韩精品一区二区人人人| 欧美激情久久久久| 亚洲图片欧美色| 日韩免费高清大片在线| 久久成人午夜精品影院| 中国一级操逼视频| 国产精品爱欲| 免费观看性欧美一级| 丁香九月 婷婷| 在线观看高清AV| 日韩免费三级黄片电影| 欧美一二三级精品在线| 日韩三级在线观看网站| 午夜成人爽爽爽爽A片李冰冰| 强乱老妇中文字幕| 久久精品无码熟妇一区二区三区视频导航 | 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 午夜婷婷| 五月丁香六月激情综合| 人妻嗯啊啊在线播放| 精品人妻伦一二三区久久| 久久侵犯人妻爽爽爽| 青青青国产| 亚洲无限观看| 夜夜欧美| 免费中文综合精品| 成人亚欧免费视频| 操屄不卡视频| 精彩视频日韩| 久九9精品| 国产91福利小视频在线观看| 7777奇米影视久久| 99热综合| 久久久久网站-538在线视频-欧美永久乱码 | 国产 v乱码一区二| 嗯啊免费视频| av天堂加勒比| 最新av网站在线观看| 亚洲午夜AV| 亚洲日韩欧美一区二区| 日韩大香蕉| 久久99久久99久久99人受| 中美日韩毛片| 欧美性高潮| 亚洲九月丁香| 精品人妻一区二区三区夜夜| 啊啊啊啊免费视频| 人人摸人人摸人人干| 亚洲色图20p| 98久久| 成人看片网站| 97人人色| 亚洲精品精品一区二区| 色悠久久久av| 欧美 日韩 亚洲 春色| 内射中出日韩在线观看视频| 91青青| 情色AV电影| 一起草视频在线| AA丁香综合激情| 超碰97COm中文| 丁香五月综合| 美女被啪到深处抽搐视频| 婷婷五月天基地| 在线看片国产精品每日更新| 久久香蕉网| 青草青草久热| 另类TS人妖一区二区三区| 大香蕉手机在线| 日韩射图| 91精品国| 综合亚州欧美| Julia Annxxxxx| 九区国产| 久久97| 天天日天天干天天操| 亚洲中文人妻色| 国产女同视频在线播放| 欧亚三区动漫| 九X超碰| 热99这里只有精品| 热99这里有精品综合久久| 超碰1024久久| 国产成人亚洲精品无码最新在线| 婷婷丁香五月天综合东京热| 综合亚洲欧美| 亚洲色五月| 韩国一级AAA| 夜夜欧美| av影片在线观看不卡| 亚洲精品一区二区三区新线路| 亚洲男人电影天堂| 五月丁香激情综合| 欧美色网络| 久久欧洲| www.色婷婷.com| 午夜福利 成人 91| www五月| 国产日韩精品人妻久久久久色欲网站| 96一区二区三区| 国产亚洲色婷婷99精品91| 欧美1727免费观看视频| 中文字幕一区电影在线观看| 男女一进一出视频久久| 无套后入双马尾| 大香交| 91青青在线视频| 蜜桃精品一区二区三区久在线| www.91色综合| 五月丁香婷婷综合| 亚洲天堂热| 超碰在线99| 性欧美另类高清| 一区二区三区四区色图| 视频分类 国内精品| 国产精品视频白浆免费| 在线综合色| 92午夜免费福利视频| 久久riav中文精品| 欧美性巨大╳╳╳╳╳高跟鞋| 这里只有精品视频在线观看麻豆| 狠狠久久手机视频精品| 中文字幕AV乱伦| 欧美日韩在线国产在线| 一级aaaaa欧美中文字幕录像片| 无码抄逼网| 麻豆天美传媒毛片| 91日产欧美| 都市激情人妻一区二区青青操视频 | 国产精品亚洲免费| 久热大香蕉| 偷拍网站久久男女男| 97欧美精品综合| 九一性生活免费视频| 久操视频这里只有精品| a'v在线资源| 99久久精品无码一区二区| 久操婷婷| 色www精品视频在线观看| 欧美淫乱视频| 秋霞免费无码视频日韩A片| 粉嫩粉嫩一区性色AV片| 99色悠悠| 亚州精品人妻一二三区| 久久久久久久强迫| 国产精品久久久久久久久AV大片 | 青木玲在线不卡| 99超碰碰| 亚洲色图日韩精品| 蜜臀人妻少妇久久在线观看| 爱丝福利| 国产av又色又爽又黄| 麻豆久久视频在线地址| 人妻喷水| 久久精品国产亚洲AV嘿嘿| 精品v日韩欧美国产| 日韩成人精品视频自拍| www.欧精品| 亚洲高清综合网| 美国一区二区三区视频| 综合网欧美在线| 中国和日本人色哪个不下载能放| 先锋激情∨在线视频播放| 超碰久久中文| 国产蜜臀精品一区二区尤物| 伊人网综合在线视频| 欧美在线干| 国产精品久久久九九九| 午夜舔阴达高潮视频免费看| 久久午夜伦| 色妇综合网| 亚洲。日韩。欧美| 91久久九九精品国产综合| 午夜天堂精品久久| 亚洲欧洲日韩天堂av| 国产精品一二三区18| 欧美三级一级| 国产乱伦一二三区| 国产精品亚洲天堂网址| 亚洲色图 欧美| 久久久啊啊啊| com 首页 18岁 禁区 女优 免费 精选 同城 | 夜夜性| 日本精品性生活久久久| 婷婷五月综合在线| 欲综合网| 青青草视频爽一爽| 一级特级aaaa毛片免费观看| 精品免费视频国产一区| 国产女人操逼视频| 少妇特黄一区二区三区| 国产精品一区二区黄片| 91人妻少妇| 国内毛片免费h片在线| 欧美自拍网| 另类综合另类| 免费AV中文网在线观看| 亚洲欧美国产中文字幕| 婷婷丁香五月天亚洲天堂网| 91N综合网| 亚洲男人的天堂网| 久久熟女人| 97福利视频| 免费A V在线播放| 国产精品分类在线观看| 青草伊人网| 精吧天堂| 亚洲999综合| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | juliaann精品熟女一区| 亚洲黄色网址视频| 美女尤物人人操| 中文字幕一区二区三区四区在线视频| 中文字幕熟女人妻丝袜丝| 青青伊人这里只有精品| 国产农村妇女精品一| 激情图片亚洲色图| 人妻出轨一区二区三区| 清纯唯美激情四射| 欧美专利1区2区3区4区5区免费|