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

ARTICLE DETAIL

資訊詳情

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

基于Python與CNN的中草藥識別實戰(zhàn):從數(shù)據(jù)到模型

基于Python與CNN的中草藥識別實戰(zhàn):從數(shù)據(jù)到模型 1. 項目拆解與整體設(shè)計思路1.1 這個題目到底在做什么“基于Python-CNN機器學(xué)習(xí)深度學(xué)習(xí)的常見中草藥識別”這種課程設(shè)計題目最近幾年在各大高校里出現(xiàn)的頻率越來越高。我先用大白話把題目拆開你要做的不是“背誦一堆草藥名字”而是讓計算機通過圖片自動判斷“這是哪種中藥材”。現(xiàn)代人習(xí)慣拿手機拍照想識別路邊的車前草、廚房里的枸杞或者藥店抓回來的干黃連——而CNN這一類深度學(xué)習(xí)模型恰好是這項工作最好的工具。從課程設(shè)計和畢業(yè)設(shè)計的考核角度看這個項目有幾個硬指標自己構(gòu)建或調(diào)優(yōu)一個CNN模型不是簡單調(diào)用現(xiàn)成接口而是能理解每一層的設(shè)計意圖。有一套合理的數(shù)據(jù)處理流程包括數(shù)據(jù)集的整理、圖像增強、歸一化等預(yù)處理。訓(xùn)練可得且效果可量化也就是說最終要給出準確率、損失曲線、混淆矩陣這類能說服答辯老師的圖表。有實際驗證新拍的圖片能跑通識別流程而不是只停留在訓(xùn)練集上自嗨。這個題目適合哪個階段的人做我見過三類人做它第一類是本科課程設(shè)計周期2到4周需要基礎(chǔ)功能完整、流程顯眼即可第二類是本科畢業(yè)設(shè)計周期3到5個月要加對比實驗、可視化分析甚至要整理成小論文第三類是研究生入門項目重點在于把遷移學(xué)習(xí)、細粒度分類這些思路玩起來。不同目標決定了你的技術(shù)選型深度文章后面會分階段說明。1.2 為什么用CNN而不是傳統(tǒng)機器學(xué)習(xí)方案放到5年前很多圖像識別項目用的是“手工提取特征傳統(tǒng)分類器”的路子。比如先把圖像的HOG特征、色彩直方圖、紋理特征提出來再用SVM或隨機森林做分類。這條路對中草藥識別的問題是中草藥識別恰恰是典型的“細節(jié)決定成敗”任務(wù)。兩種植物可能顏色相近、形狀相似用手工特征很難界定到底抓哪個特征才是真正的區(qū)分點。CNN的做法是“端到端”的——你給它看大量標注好的圖片它不需要你告訴它該看什么部位它會自己在訓(xùn)練過程中學(xué)會選取對分類最有用的特征。第一層網(wǎng)絡(luò)可能學(xué)的是邊緣和色彩塊第二層可能學(xué)出葉片的紋理模式更深層則能學(xué)到“這個部位的形狀結(jié)合那個部位的顏色特征指向黃連”。這種自動學(xué)習(xí)特征的能力正是處理自然場景下植物照片的關(guān)鍵。以我的實操體驗來說傳統(tǒng)方案在只有20多種藥材、每類只有幾十張圖的時候SVM勉強能跑到70%左右精度而同樣條件下哪怕是一個基礎(chǔ)CNN訓(xùn)練充分后也能輕松超過85%。如果數(shù)據(jù)量更大、種類更多傳統(tǒng)方案下滑得非??霤NN受到的影響卻很有限。所以這個題目選CNN不是炫技是這個任務(wù)天然適配。1.3 技術(shù)棧選型Python生態(tài)怎么搭標題里點名了Python這本身沒什么好糾結(jié)的——Python在深度學(xué)習(xí)領(lǐng)域幾乎是唯一的選擇。但具體選哪些庫我覺得要根據(jù)你的硬環(huán)境和調(diào)試習(xí)慣來深度學(xué)習(xí)框架KerasTensorFlow 2.x的接口或PyTorch。課程設(shè)計優(yōu)先推薦Keras因為接口封裝度高幾行就能起一個像樣的CNN畢業(yè)設(shè)計優(yōu)先推薦PyTorch因為做debug、自定義網(wǎng)絡(luò)結(jié)構(gòu)、看中間特征可視化都更靈活。如果你有論文需求那PyTorch是更好的選擇。圖像處理OpenCV和Pillow。數(shù)據(jù)增強環(huán)節(jié)兩者都要用OpenCV的插值速度快、Pillow的API更友好。數(shù)據(jù)科學(xué)工具NumPy、Pandas、Matplotlib、Seaborn。前兩個用來處理標簽和數(shù)據(jù)劃分后兩個用于繪制loss曲線和混淆矩陣。開發(fā)環(huán)境首選Jupyter Notebook或JupyterLab逐段運行看結(jié)果方便正式訓(xùn)練腳本建議存成.py文件提交到服務(wù)器上跑。一個容易忽略的點是模型訓(xùn)練的過程中會產(chǎn)生大量中間結(jié)果比如訓(xùn)練日志、模型權(quán)重文件、可視化圖像等建議從一開始就建立清晰的目錄結(jié)構(gòu)把代碼、數(shù)據(jù)、模型、結(jié)果分開存放。我自己深受“數(shù)據(jù)、代碼、結(jié)果混在一起最后答辯前找不到模型文件”的苦這個習(xí)慣非常重要。圍繞技術(shù)選型還有一個經(jīng)典問題為什么不直接用預(yù)訓(xùn)練模型跑遷移學(xué)習(xí)我覺得對課程設(shè)計來說“從零搭建一個CNN”這個動作本身往往是評分點。如果一上來就用ResNet的預(yù)訓(xùn)練權(quán)重模型的“理解深度”就不好展示。但畢設(shè)階段完全可以把兩者都做自己搭建的基礎(chǔ)CNN作為基線再用遷移學(xué)習(xí)構(gòu)建一個更強的模型作為對比這就是一個體面的實驗設(shè)計了。2. 核心模塊原理與方案選擇2.1 CNN識別中草藥卷積層在學(xué)什么很多同學(xué)聽到CNN就怕覺得里面的數(shù)學(xué)公式嚇人。其實理解CNN只需要抓住一個邏輯它為什么能識別植物因為它在分層提取圖像特征。先看卷積層??梢园丫矸e操作理解成拿著一個“小放大鏡”在圖像上滑動每次只看局部區(qū)域。這個放大鏡就是卷積核它提取的是“某個局部區(qū)域內(nèi)某種模式存在的強度”。比如一個卷積核專門用來檢測“橫著的一條深色線”另一個卷積核檢測“綠色塊之間的白色間隙”。中草藥圖片里這些模式非常關(guān)鍵——葉片邊緣的鋸齒形狀、葉脈的走向、花蕊的顏色分布本質(zhì)上都是這種局部模式在不同尺度的組合。卷積層的參數(shù)并不是人手工設(shè)置的而是通過訓(xùn)練自動調(diào)整的。起初是隨機數(shù)模型看到大量“這是薄荷葉”和“這不是薄荷葉”的圖片后自動調(diào)整那些能讓分類正確率提高的卷積核值。這就是“機器學(xué)習(xí)”中最本質(zhì)的部分特征是學(xué)出來的不是人設(shè)計出來的。然后是池化層。它干的事情是“壓縮信息”。比如一張200×200的圖片經(jīng)過一次卷積和一次2×2的池化尺寸會變成100×100。池化的意義有兩個一是降低計算量二是不怕小位移——葉子稍微歪一點、換個角度拍池化之后提取到的關(guān)鍵模式還在。這一點對中草藥識別特別重要咱們平時拍照不可能像證件照一樣規(guī)規(guī)矩矩傾斜、遮擋、光線變化是常態(tài)。到了網(wǎng)絡(luò)后面幾層模型會把前面學(xué)到的局部特征拼接成“這張圖整體上是什么風(fēng)格”的判斷最終經(jīng)過全連接層把特征映射到具體的分類概率上。輸出層通常是Softmax它會把10個或20個類別的得分變成一組和為1的概率值“概率最大的那個類別”就是識別結(jié)果。這套流程和人類看植物時“先看葉形再看葉脈再看花和整體氣質(zhì)”是一個邏輯聽著是不是一點都不玄了。2.2 數(shù)據(jù)的坑與數(shù)據(jù)集的構(gòu)建策略中草藥識別項目最大的坑不在模型在數(shù)據(jù)。這是我反復(fù)和做這個題目的同學(xué)強調(diào)的。規(guī)模問題CNN雖然強大但它是個“飯量很大”的模型。如果只給每個類別準備30張圖同濟的模型再牛也會陷入過擬合——訓(xùn)練集上識別近乎100%拿到新拍的照片上就“翻車”。根據(jù)我的經(jīng)驗做這個題目每個類別至少準備100張以上圖片如果每類能達到300張訓(xùn)練效果會比較從容。數(shù)據(jù)不夠怎么辦有兩個辦法一是“數(shù)據(jù)增強”也就是用旋轉(zhuǎn)、翻轉(zhuǎn)、裁剪、亮度調(diào)整等方法把一張圖片變出多張來二是“遷移學(xué)習(xí)”用別人在大規(guī)模數(shù)據(jù)集上訓(xùn)練好的模型權(quán)重做初始化這樣只需少量數(shù)據(jù)也能有不錯的準確率。類別選擇常見中草藥可以選10到20類。不需要選太生僻的品種因為越生僻的數(shù)據(jù)越難找而且答辯時老師也不一定認識效果反而不好。黃金選擇是那些特征明顯、你所在城市路邊或藥房能見到的品種薄荷、魚腥草、金銀花、薏苡仁、枸杞、陳皮、當歸、黃連、板藍根、益母草……這些類別外觀區(qū)分度相對好適合入門。在類別設(shè)計上我強烈建議包含“易混淆組”。比如把“薄荷”和“荊芥”都選進去或把“干姜”和“黃姜”放在一起。為什么因為這個項目能體現(xiàn)深度學(xué)習(xí)的價值就在于“不是簡單背答案而是真的在學(xué)區(qū)分特征”。如果選的10類藥材長得差異極大模型可能隨便學(xué)個顏色就能分類答辯時老師追問“為什么區(qū)分這兩種”你完全沒法解釋深層的特征學(xué)習(xí)。設(shè)一組易混淆類別后面做混淆矩陣、分析錯誤樣本都有了素材。數(shù)據(jù)獲取最直接的是用搜索引擎下載圖片但要注意版權(quán)問題建議只用于課程學(xué)習(xí)。更穩(wěn)妥的方案是去一些公開的植物圖像數(shù)據(jù)集或者自己用手機拍攝條件允許的話保持同一藥材的多角度、多背景、不同光照。數(shù)據(jù)集質(zhì)量判斷的標準很簡單真實場景、光線變化、有背景雜亂的照片比干凈的影棚圖更“管用”因為訓(xùn)練出來的模型在實際場景中更耐用。下載之后必須人工清理一遍把錯誤類別的圖、文字圖、重復(fù)圖全部刪掉這一步?jīng)]什么技巧就是要耐心。2.3 遷移學(xué)習(xí)為什么是中草藥識別的最優(yōu)選如果讓我對做畢設(shè)的同學(xué)說一個建議那就是別只盯著自己搭的CNN把遷移學(xué)習(xí)加進來。比如用ImageNet上訓(xùn)練過的ResNet50作為特征提取器去掉它原來的分類層換成你自己的中草藥分類頭然后整個網(wǎng)絡(luò)在你的數(shù)據(jù)上繼續(xù)訓(xùn)練。這個方案有幾個實打?qū)嵉暮锰幨諗克俣葮O快——你用基礎(chǔ)CNN可能要訓(xùn)練50個epoch才到85%準確率遷移學(xué)習(xí)10個epoch可能就93%了對數(shù)據(jù)量的要求也低很多每類只需要幾十張圖就能跑出可用的模型而且更魯棒對光照變化、模糊、遮擋的耐受性明顯更好。順帶補充一句其實真正厲害的圖像分類系統(tǒng)幾乎很少從零開始訓(xùn)練大模型因為數(shù)據(jù)量和時間成本太高。用別人在數(shù)十萬張圖上練好的通用特征再在專業(yè)領(lǐng)域數(shù)據(jù)上做微調(diào)也就是所謂“微調(diào)”Fine-tuning本身就是工程實踐里的標準做法。在答辯時如果老師問“為什么選ResNet50”你可以回應(yīng)“因為它引入了殘差連接解決了深層網(wǎng)絡(luò)梯度消失的問題特征復(fù)用效率高”如果問“為什么用了預(yù)訓(xùn)練權(quán)重”你可以回應(yīng)“因為領(lǐng)域數(shù)據(jù)集樣本量有限復(fù)用通用圖像特征能降低過擬合風(fēng)險、加快收斂”。這些邏輯自洽的表述會讓答辯的深度拉高一個檔次。關(guān)于遷移學(xué)習(xí)和基礎(chǔ)CNN的關(guān)系我不建議把二者對立起來。課程設(shè)計可以以基礎(chǔ)CNN為主遷移學(xué)習(xí)作為加分項畢設(shè)則可以作為對比實驗出現(xiàn)——基礎(chǔ)CNN是一種實現(xiàn)遷移學(xué)習(xí)是另一種實現(xiàn)兩者各成一條對比路線實驗章節(jié)自然豐富了很多。3. 從零到一的搭建與訓(xùn)練實操3.1 項目環(huán)境準備與依賴安裝無論你是課程設(shè)計還是畢業(yè)設(shè)計我建議先用本機做小規(guī)模試驗跑通了再考慮上服務(wù)器。環(huán)境準備方面我自己最常用的一套組合是conda create -n cnn_herb python3.9 conda activate cnn_herb pip install tensorflow-cpu2.12.* # 若顯卡可用則去掉 -cpu 后綴 pip install torch torchvision # 選裝做遷移學(xué)習(xí)時使用 pip install opencv-python pillow numpy pandas matplotlib seaborn scikit-learn安裝的時候有兩點經(jīng)驗第一TensorFlow和PyTorch不必都裝CPU版本如果你的電腦有NVIDIA顯卡務(wù)必裝對應(yīng)CUDA的GPU版本訓(xùn)練速度能快一個數(shù)量級第二如果pip安裝太慢直接換鏡像源pip install xxx -i https://pypi.tuna.tsinghua.edu.cn/simple這不算什么“高深技巧”但真的能讓你少等很久。環(huán)境裝好后建議先測試一下框架能不能正常調(diào)用GPUimport tensorflow as tf print(GPU available:, tf.config.list_physical_devices(GPU))如果輸出是空列表說明你的TensorFlow沒識別到顯卡接下來訓(xùn)練會很痛苦。這時候回到第一步檢查CUDA版本和tensorflow版本是否匹配。這個問題太常見了下面專門有一個小節(jié)講這里先按“能識別到GPU”繼續(xù)。3.2 數(shù)據(jù)整理與數(shù)據(jù)集劃分從亂圖到干凈數(shù)據(jù)集以最簡單的目錄結(jié)構(gòu)為例我建議把圖片按“類目-編號”命名并放在按類別命名的文件夾里dataset/ mint/ # 薄荷 mint_001.jpg mint_002.jpg ... honeysuckle/ # 金銀花 honeysuckle_001.jpg ... ...然后寫一個腳本把數(shù)據(jù)讀進來劃分成訓(xùn)練集和驗證集。劃分比例上常用的有8:2、7:3等。我自己偏好80%訓(xùn)練、10%驗證、10%測試不過課程設(shè)計沒有絕對標準關(guān)鍵是驗證集和測試集千萬不要在訓(xùn)練時被模型“看到”否則準確率虛高。這是所有初學(xué)者的第一個認知壁壘。import os, random, shutil random.seed(42) src ./dataset train_dir ./dataset_split/train val_dir ./dataset_split/val test_dir ./dataset_split/test os.makedirs(train_dir, exist_okTrue) os.makedirs(val_dir, exist_okTrue) os.makedirs(test_dir, exist_okTrue) for cls in os.listdir(src): class_path os.path.join(src, cls) if not os.path.isdir(class_path): continue imgs os.listdir(class_path) random.shuffle(imgs) n_train int(len(imgs) * 0.8) n_val int(len(imgs) * 0.1) for i, img in enumerate(imgs): dst if i n_train: dst os.path.join(train_dir, cls, img) elif i n_train n_val: dst os.path.join(val_dir, cls, img) else: dst os.path.join(test_dir, cls, img) os.makedirs(os.path.dirname(dst), exist_okTrue) shutil.copy(os.path.join(class_path, img), dst)這段腳本做的事情很簡單按比例把每一類的圖片復(fù)制到三個新目錄。為什么不用移動復(fù)制更安全萬一劃分比例不對原圖還在。為什么固定了隨機種子為了保證運行結(jié)果可復(fù)現(xiàn)答辯時老師問“你那次實驗的結(jié)果能復(fù)現(xiàn)嗎”你只需要說一句“我們的隨機種子在實驗設(shè)置里固定了”就很專業(yè)。接下來是標簽編碼。如果用TensorFlow的ImageDataGenerator的flow_from_directory它會自動按文件夾名稱生成標簽順序。如果改用自定義數(shù)據(jù)加載一般用整數(shù)標簽從0開始遞增。標簽順序一定要記住后面預(yù)測新圖片時要靠它把索引轉(zhuǎn)回中文名。class_labels [mint, honeysuckle, bajiao, ...] label_to_idx {name: i for i, name in enumerate(class_labels)} idx_to_label {i: name for name, i in label_to_idx.items()}3.3 圖像預(yù)處理與數(shù)據(jù)增強中草藥圖片的預(yù)處理分三步縮放 → 歸一化 → 增強??s放CNN要求輸入尺寸固定。我推薦224×224因為這是很多預(yù)訓(xùn)練模型的標配尺寸兼容性好。如果你的基礎(chǔ)CNN不夠深也可以使用128×128減少計算量但圖像的細節(jié)信息會丟失一些。歸一化把像素值從0~255映射到0~1或-1~1幫助梯度穩(wěn)定、加快收斂。這一步在Keras里面寫一行from tensorflow.keras.preprocessing.image import ImageDataGenerator train_datagen ImageDataGenerator( rescale1./255, rotation_range30, # 隨機旋轉(zhuǎn)30度 width_shift_range0.2, # 水平平移20% height_shift_range0.2, # 垂直平移20% shear_range0.2, # 剪切變換 zoom_range0.2, # 隨機縮放 horizontal_flipTrue, # 水平翻轉(zhuǎn) fill_modenearest # 填充模式 ) test_datagen ImageDataGenerator(rescale1./255)數(shù)據(jù)增強說白了就是“把訓(xùn)練照片增加‘變數(shù)’”。想想你真實使用軟件的場景有人把葉子拍歪了、光線太暗了、離得太近了模型如果只見過“標準圖”這些情況就會誤判。增強處理使模型學(xué)會對形變、亮度和位置的變化保持魯棒。需要注意驗證集和測試集絕對不能做增強只能做縮放和歸一化。因為增強是人為地制造不同樣本來擴大模型認識的邊界而驗證集和測試集要反映“真實分布”必須保持原始狀態(tài)測試集上增強沒有任何意義。3.4 搭建基礎(chǔ)CNN模型下面是課程設(shè)計級的基礎(chǔ)CNN代碼4個卷積塊加2層全連接。這個結(jié)構(gòu)對于中草藥分類來說是“足夠用”的起始點from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Conv2D, MaxPooling2D, Flatten, Dense, Dropout model Sequential([ Conv2D(32, (3, 3), activationrelu, input_shape(224, 224, 3)), MaxPooling2D(2, 2), Conv2D(64, (3, 3), activationrelu), MaxPooling2D(2, 2), Conv2D(128, (3, 3), activationrelu), MaxPooling2D(2, 2), Conv2D(128, (3, 3), activationrelu), MaxPooling2D(2, 2), Flatten(), Dropout(0.5), Dense(512, activationrelu), Dropout(0.3), Dense(len(class_labels), activationsoftmax) ]) model.summary()簡單解釋一下每層的選擇邏輯。第一層用了32個卷積核后面逐漸翻倍到64、128、128這是一個常見的“淺層少、深層多”設(shè)計淺層學(xué)的是細節(jié)特征多一些通道可以組合出更豐富的模式深層學(xué)的是高維語義卷積核數(shù)量不必太多以免過擬合。每個卷積塊后面跟一個MaxPooling下采樣逐步把224×224壓到14×14最后Flatten喂給全連接層。Dropout在0.5和0.3是全連接層防過擬合最重要的手段。中間用ReLU激活輸出層是Softmax多分類。3.5 訓(xùn)練參數(shù)的選擇邏輯學(xué)習(xí)率和批大小訓(xùn)練時最關(guān)鍵的幾個配置是批次大小、學(xué)習(xí)率、優(yōu)化器、Epoch數(shù)、早停策略。model.compile( optimizeradam, losssparse_categorical_crossentropy, metrics[accuracy] ) history model.fit( train_generator, steps_per_epochtrain_generator.n // batch_size, epochs50, validation_dataval_generator, validation_stepsval_generator.n // batch_size, callbacks[early_stop, model_checkpoint] )批次大小我實測下來16到32是比較適合中草藥分類的。批次過小比如4會導(dǎo)致梯度震蕩太劇烈訓(xùn)練不穩(wěn)批次過大會讓每輪迭代時間變長而且顯存可能爆。如果你用的是GPU32是首選的起步值。學(xué)習(xí)率Adam的默認學(xué)習(xí)率是0.001在多數(shù)情況下可以直接用。但如果發(fā)現(xiàn)loss在訓(xùn)練過程中反復(fù)震蕩、下不去可以先降到0.0005或0.0003重新跑一次。如果loss下降太慢可以適當提到0.002但不建議更大很容易發(fā)散。Epoch數(shù)和早停訓(xùn)練50個epoch不一定全部跑完。設(shè)置早停監(jiān)控驗證集loss如果連續(xù)10個epoch不再下降就自動停止同時恢復(fù)最好的權(quán)重from tensorflow.keras.callbacks import EarlyStopping, ModelCheckpoint early_stop EarlyStopping(monitorval_loss, patience10, restore_best_weightsTrue) checkpoint ModelCheckpoint(herb_model.h5, monitorval_loss, save_best_onlyTrue)為什么要做早停我在這個項目里見過很多次訓(xùn)練集準確率一路升到99%以上驗證集卻停在85%不再動甚至開始下降。這說明模型開始“背題”而不是“學(xué)特征”了。早停就是為了對抗這種“過擬合”風(fēng)險讓模型停在泛化能力最好的那個點而不是訓(xùn)練最后的那個狀態(tài)。3.6 模型評估不只是看準確率訓(xùn)練結(jié)束后評估部分必須做三件事驗證集準確率、loss曲線、混淆矩陣。這門課的評分老師通常最看重這三個圖。loss曲線畫法是import matplotlib.pyplot as plt plt.plot(history.history[loss], labeltrain_loss) plt.plot(history.history[val_loss], labelval_loss) plt.title(Training and Validation Loss) plt.xlabel(Epoch) plt.ylabel(Loss) plt.legend() plt.show()如果訓(xùn)練loss和驗證loss之間差值很大就是過擬合的直接證據(jù)如果兩者都在高位下不去說明模型容量不夠或者學(xué)習(xí)率不合適如果曲線震蕩說明批次數(shù)據(jù)分布不夠均勻可以考慮增大批次?;煜仃囉胹klearn.metrics.confusion_matrix畫出來能直觀看到哪些類別互相混淆。比如“白芷”總是被誤判為“當歸”那你就有兩個入手方向一是增加這兩個類別的訓(xùn)練樣本二是檢查數(shù)據(jù)集本身——是不是當時下載或標注的時候這兩類的圖就已經(jīng)混亂了。這一步也是答辯時最能展現(xiàn)你分析能力的內(nèi)容。import numpy as np from sklearn.metrics import confusion_matrix, classification_report pred_probs model.predict(val_generator) pred_labels np.argmax(pred_probs, axis1) true_labels val_generator.classes[:len(pred_labels)] print(classification_report(true_labels, pred_labels, target_namesclass_labels))3.7 對新圖片做預(yù)測完整識別流程模型訓(xùn)練好以后識別一張真實照片的流程也要寫清楚from tensorflow.keras.preprocessing import image def predict_image(img_path): img image.load_img(img_path, target_size(224, 224)) img_array image.img_to_array(img) img_array np.expand_dims(img_array, axis0) img_array img_array / 255.0 probs model.predict(img_array)[0] idx np.argmax(probs) confidence probs[idx] return idx_to_label[idx], confidence這里面有個容易忽略的細節(jié)預(yù)測時的預(yù)處理必須和訓(xùn)練時保持完全一致。訓(xùn)練時如果做了rescale1./255預(yù)測時也要除以255否則輸入分布不一致模型表現(xiàn)會大打折扣。此外load_img默認會做雙線性插值縮放尺寸變了但內(nèi)容語義不變這是正常操作。我的經(jīng)驗是把這部分單獨封裝成一個腳本比如predict.py接收圖片路徑參數(shù)輸出識別結(jié)果和置信度。答辯現(xiàn)場用手機拍一張新鮮的照片程序能跑出正確結(jié)果的話現(xiàn)場效果是非常有說服力的。3.8 遷移學(xué)習(xí)模型的實戰(zhàn)補充上面已經(jīng)提過ResNet50遷移學(xué)習(xí)的大致思路。代碼層面是用torchvision或Keras自帶的應(yīng)用模塊加載預(yù)訓(xùn)練模型替換分類層然后凍結(jié)前面的骨干網(wǎng)絡(luò)只訓(xùn)練新的分類頭或者解凍部分層做微調(diào)。用Keras寫的話最明顯的對比實驗代碼是from tensorflow.keras.applications import ResNet50 from tensorflow.keras.models import Model from tensorflow.keras.layers import GlobalAveragePooling2D, Dense base_model ResNet50(weightsimagenet, include_topFalse, input_shape(224, 224, 3)) base_model.trainable False # 先凍結(jié)骨干 x GlobalAveragePooling2D()(base_model.output) x Dense(256, activationrelu)(x) output Dense(len(class_labels), activationsoftmax)(x) model Model(inputsbase_model.input, outputsoutput)先只訓(xùn)練分類頭若干個epoch后可以把base_model.trainable True用極小的學(xué)習(xí)率比如0.0001整體微調(diào)幾輪效果往往還能再上一個臺階。遷移學(xué)習(xí)有一個相當重要的問題網(wǎng)絡(luò)結(jié)構(gòu)變了輸入尺寸和歸一化方式也要跟著變。用ResNet50輸入圖片需要按ImageNet數(shù)據(jù)集的均值方差來歸一化而不是簡單除以255。偷懶就會造成特征分布不匹配導(dǎo)致準確率不如基礎(chǔ)CNN的詭異情況。細節(jié)上務(wù)必查一下你所用預(yù)訓(xùn)練模型的標準預(yù)處理方式。4. 常見問題與排查技巧實錄4.1 過擬合訓(xùn)練集99%驗證集85%我見過最多的現(xiàn)象就是這一個。模型把訓(xùn)練數(shù)據(jù)“背得滾瓜爛熟”但遇到新圖片就露怯。解決方向的優(yōu)先級如下增加數(shù)據(jù)增強強度。把旋轉(zhuǎn)范圍從20度提高到40度加入brightness_range[0.8,1.2]這類亮度擾動效果往往立竿見影。增加Dropout比例。全連接層的Dropout從0.5提到0.6或0.7或者在全連接前再加一層Dropout。縮小模型容量。把卷積核數(shù)量從128降到64或32全連接層的512降到256。這也算個入門級思路很多人以為加參數(shù)就能提升精度其實小模型在數(shù)據(jù)量不夠時反而訓(xùn)得更好。數(shù)據(jù)擴量?;氐綌?shù)據(jù)集增加樣本量或?qū)γ款愂占鄻踊膱D片。另外要說的是過擬合的原因首先是數(shù)據(jù)量不足。模型參數(shù)量動輒幾百萬訓(xùn)練數(shù)據(jù)才幾百張在參數(shù)空間里顯得捉襟見肘。在某些情況下數(shù)據(jù)增強并不能創(chuàng)造真正的新信息——旋轉(zhuǎn)、翻轉(zhuǎn)只是改變了位置和角度如果數(shù)據(jù)本身有問題可能還是會出錯。所以增加新圖片是治本增強是治標。4.2 數(shù)據(jù)量不足時的救命招遷移學(xué)習(xí)更不挑數(shù)據(jù)如果你時間緊、只有每類50張圖還是有希望拿到90%以上的效果。主線就是把上面的3.8遷移學(xué)習(xí)方案走通。我在做模擬項目X的時候遇到過一個非常極端的設(shè)定數(shù)據(jù)集只有每類60張基礎(chǔ)CNN的準確率只有78%換了ResNet50微調(diào)后漲到91%。差距就是這么明顯。原因是預(yù)訓(xùn)練模型的骨干網(wǎng)絡(luò)已經(jīng)在數(shù)百萬張圖上見過各種各樣的紋理、邊緣、形狀你只需要教它“這些特征像哪一類中草藥”而不是從零教它“什么是葉脈”。對于做畢業(yè)設(shè)計的同學(xué)我建議把這個對比做進實驗章節(jié)基礎(chǔ)CNN vs ResNet50微調(diào) vs VGG16微調(diào)三組在同一數(shù)據(jù)集、同一評價指標下的準確率表格這一頁的內(nèi)容比寫一千字的理論要更有說服力。要注意的是微調(diào)對比實驗一定要控制變量同樣的數(shù)據(jù)劃分、同樣的預(yù)處理、同樣的隨機種子。否則“遷移學(xué)習(xí)效果好”這個結(jié)論就很微弱。4.3 類別不平衡有的藥材圖多有的圖少網(wǎng)上扒圖的典型后果是薄荷圖好找扒下來300多張某種不那么大眾的藥材可能只有40張。此時如果不做任何處理模型會悄悄偏向樣本量大的類別甚至認為“不管見什么圖都猜薄荷”。處理類別不平衡有三個方法按易到難排圖像增強補齊對少數(shù)類做更強的旋轉(zhuǎn)、平移、光照擾動甚至做隨機裁剪后放回把它“湊”到接近多數(shù)類的數(shù)量。類別加權(quán)在訓(xùn)練時給少數(shù)類的loss乘以更大的系數(shù)。Keras里可以通過class_weight參數(shù)顯式指定from sklearn.utils.class_weight import compute_class_weight class_weights compute_class_weight(balanced, classesnp.unique(y_train), yy_train) class_weight_dict {i: class_weights[i] for i in range(len(class_weights))}收集更多數(shù)據(jù)這是最笨但最有效的方法。對少數(shù)類再采集一批圖片加入訓(xùn)練集。課程設(shè)計階段我用過最多的還是第一種。復(fù)制粘貼式增強雖然指標上略有虛高但在小數(shù)據(jù)量項目中是公認的近似手段答辯時如實說明就可以了。4.4 新照片識別不準預(yù)處理不一致首當其沖自己訓(xùn)練完拿去測試發(fā)現(xiàn)真實環(huán)境下一塌糊涂最常見的坑是“環(huán)境變了”。訓(xùn)練用的圖片可能是搜索引擎里干凈整齊的樣本測試時你用手機在室內(nèi)自然光下拍光線、角度、背景都不一樣這屬于典型的“領(lǐng)域差異”。我總結(jié)的排查清單是輸入尺寸和歸一化方式是否與訓(xùn)練時一致。圖片壓縮是否過于嚴重是否肉眼都看不清。攝像頭拍攝的EXIF旋轉(zhuǎn)信息是否有處理OpenCV的imread有時候讀出來是橫的而訓(xùn)練時都是正的。模型是否對背景敏感——葉子放大局部拍可能比整株植物拍更好識別這也解釋了為什么很多識別App都建議“拍局部、拍特寫”。4.5 訓(xùn)練速度太慢如果你只是在本機訓(xùn)練每一輪Epoch都可能要幾分鐘訓(xùn)練50個epoch會相當痛苦。我的建議有三個先小后大先用64×64輸入尺寸、少量數(shù)據(jù)跑通整個流程確認代碼和參數(shù)沒問題后再切回224×224正式訓(xùn)練。用GPU如果你的顯卡是普通入門級也夠用訓(xùn)練速度能提升幾十倍。減少不必要的Epoch多數(shù)任務(wù)在驗證集達到峰值后繼續(xù)訓(xùn)練毫無意義依靠早停能省掉一半以上的時間。4.6 模型文件保存與加載訓(xùn)練好后記得保存完整模型或權(quán)重三種方式我都用過model.save(herb_model.h5) # 保存整個模型結(jié)構(gòu)權(quán)重 model.save_weights(herb_weights.h5) # 僅保存權(quán)重 # 推薦保存完整模型預(yù)測時不需要重新構(gòu)建結(jié)構(gòu)如果是遷移學(xué)習(xí)模型最好連帶預(yù)處理方式一起記錄在一個config.json里。我見過不止一個同學(xué)來答辯時拿著一個只有文件名的.h5卻完全想不起來當初歸一化用的尺度。規(guī)范的筆記是保障項目可復(fù)現(xiàn)的基本素養(yǎng)。5. 答辯展示與項目深化思路5.1 答辯PPT怎么講清楚這個故事很多同學(xué)項目做得不錯答辯卻講成流水賬先裝環(huán)境再寫代碼最后有準確率。這不是講故事的方式。中草藥識別項目答辯建議按“為什么→怎么做→做成什么樣→還能怎么提升”的邏輯來講簡單來說就是用“問題驅(qū)動”代替“過程驅(qū)動”。引言部分講清楚中草藥識別對日常生活的意義普通人認不全、資深藥師也有記憶盲區(qū)、移動端拍照識別是剛需。方案部分講清楚為什么選擇CNN為什么不用傳統(tǒng)圖像識別。實現(xiàn)部分講網(wǎng)絡(luò)結(jié)構(gòu)和數(shù)據(jù)準備重點突出“你在每個環(huán)節(jié)做了什么決策、為什么”。結(jié)果部分展示準確率和混淆矩陣別怕展示錯誤——反而是分析錯誤類別的過程最能體現(xiàn)項目的深度和思考。有一個特別實用的技巧答辯之前準備一張“失敗案例圖”。挑一張識別錯的圖片分析模型為何錯并說明可以做哪些改進。老師在答辯時最喜歡問的就是“你這個項目有什么不足”這個問題答得好是很大的加分項。5.2 可擴展方向從固定分類到開放識別識別固定40類藥材只是課程設(shè)計的及格線。如果你有興趣做得更深入我列出幾個可擴展方向從分類到檢測目標檢測模型如Faster R-CNN、YOLO可以從復(fù)雜圖片中把藥材區(qū)域框出來再分類適配的實際場景更貼近“田間拍攝、自然場景找藥材”。從單圖到多圖融合不同藥材可能在根、莖、葉、花上差異明顯可以把多個部位圖輸入一個多路網(wǎng)絡(luò)做綜合判斷。從圖片到文本識別結(jié)果結(jié)合藥材知識庫輸出“性味歸經(jīng)、功效、用法、禁忌”直接做成一個問答式的中藥知識助手。那時候項目的實用性和交互性會大大提升。部署到移動端用TensorFlow Lite的轉(zhuǎn)換把模型部署到手機端或嵌入式端。課程設(shè)計到這一步已經(jīng)屬于“向工程實踐靠攏”的加分項。半監(jiān)督學(xué)習(xí)網(wǎng)上大量弱標注數(shù)據(jù)未充分利用可用偽標簽或?qū)Ρ葘W(xué)習(xí)的方法挖掘未標注數(shù)據(jù)的價值。對本科階段而言能完成其中任意一個擴展方向并跑通演示就已經(jīng)超過絕大多數(shù)“為了交差”的同類項目了。5.3 關(guān)于評分標準的一點個人判斷不同學(xué)校、不同老師的評分偏好差異極大但有幾個共性要素幾乎是公認的流程完整度數(shù)據(jù)處理→訓(xùn)練→評估→預(yù)測的閉環(huán)、規(guī)范程度代碼注釋、目錄結(jié)構(gòu)、實驗記錄、可視化曲線圖、混淆矩陣、真實圖片演示、分析深度基于結(jié)果能提出改進方向。這四個要素抓好了分數(shù)都不會差。不過我也想潑一盆冷水課程設(shè)計階段不要追求遙遙領(lǐng)先的技術(shù)指標。你的目標是“證明自己掌握了基礎(chǔ)原理和工程流程”而不是“訓(xùn)練出比論文SOTA更好的模型”。項目周期有限的情況下把基礎(chǔ)CNN調(diào)優(yōu)到85%以上配合遷移學(xué)習(xí)對比已經(jīng)是很扎實的工作量了。與其花大量時間無節(jié)制地調(diào)參堆疊不如把精力放在把項目里已有的成果講透、把特征可視化的圖做漂亮。6. 寫在最后的實操經(jīng)驗做這個題目最容易讓初學(xué)者誤判的是“時間都花在模型上”。但以我的實際經(jīng)歷來看這類圖像識別項目最大的時間黑洞永遠是數(shù)據(jù)整理——下載、清洗、重命名、統(tǒng)一格式、調(diào)整增強參數(shù)。曾經(jīng)有一次我在圖書館連著蹲了一個周末凈收益只是把某個類別的“廢圖”從兩百張里刪到一百三十張但這直接拉升了模型近4個百分點的驗證集準確率。所以你如果問我要一條核心建議那就是數(shù)據(jù)質(zhì)量決定模型上限調(diào)參只決定模型能否接近這個上限?;ㄔ跀?shù)據(jù)上的功夫永遠不吃虧。另外項目過程記錄很關(guān)鍵。我給所有做課程設(shè)計的同學(xué)一個通用建議從拿到題目的第一天起建立兩個文檔一個叫《實驗日志》另一個叫《問題清單》。每天記錄做了什么操作、得到什么結(jié)果每遇到一個報錯或異常就把現(xiàn)象、排查步驟、最終解法記下來。答辯時老師問“你遇到過什么問題嗎”你隨手就能舉出一個完整的排查經(jīng)歷比“沒遇到什么問題訓(xùn)練很順利”這種回答可信度高得多。而且寫畢業(yè)設(shè)計論文時這些日志會變成你“第三章實驗”和“第四章結(jié)果分析”最現(xiàn)成的素材寫起來輕松好幾倍。最后再分享一個小技巧訓(xùn)練完成后給你的模型取幾個不同的版本名字——比如“v1_baseline_cnn”、“v2_resnet50_finetune”、“v3_augmented”——按時間存好。做實驗最忌諱的是“這個h5文件是剛才調(diào)過參的嗎還是昨天那個”版本管理做得越清楚后面越省事。這套方法不止適用于中草藥識別任何以“訓(xùn)練模型”為核心的課程設(shè)計或畢業(yè)設(shè)計項目都能直接用上。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
操逼国产91| 国产超碰av| 久久久久久久丁香五月天婷婷| 狠狠操天天干| 欧美三级欧美一级| 婷婷激情综合| 六月久久狠狠| 天堂婷婷丁香六月网| 97色片| 久久激情五月| 久热9| 狠狠五月激情丁香六月| 97色色色色色色色色色色色色色| 狠狠色噜噜狠狠色噜噜噜999| 伊人大香蕉毛片| 色色婷婷五月| 五月天婷婷在线视频| 五月网在线| 超碰狠狠操| 久久久人人操A V| 色色激情| 少妇高潮A片无套内谢麻豆传| 九九在线视频| 99爱视频在线观看这里只有精品| 亚洲va欧美va国产综合久久久| 亚洲婷婷丁香| 超碰人妻在线| 97色碰| 很很色丁香久久停停| 极品人妻VIDEOSSS人妻| 日本无码专区| 色五月色综合| 99五月香婷婷丁香在线视频| 六月婷综合| a久久| 婷婷五月天影视首页| 丁香五月综合图片在线观看| 亚洲第精品| 欧美成人无码高清一区二区三区| 久婷婷五月激情| 色婷婷网| 天天做天天爱天天日| 91色五月| 中文字幕+乱码+中文字幕在线观看| 五月婷久久久| 亚洲精品色色| 99热99这里有免费的精品| 精品久久二6| 色九网| 伊人狠狠丁香婷婷综合尤物| AV色五月婷婷| 激情五月色综合| 婷婷激情五月色综合| 这里只有国产精品在线| www,99热| 色五月首页| 色色免费网站| 亚洲精品又粗又大又爽A片| 五月色综合| 五月天激情婷婷| 激情99| 精品人妻午夜一区二区三区四区| 97碰 在线视频观看| www,黄色在线,con| 日韩精品超碰在线观看| 99久久66| 丁香五月六月婷婷殴美综合| 婷婷伊人綜合中文字幕| 疯狂做受XXXX高潮A片| 久久人人添人人爽添人人片αV| 色婷婷成人色网| 丁香综合| 九九RE视频在线精品| 丁香婷婷啪啪| 射久久丁香五月| 国产在这里只有精品| 国产亚洲色婷婷久久99精品91| 激情婷婷丁香| 成人综合视频网址| 久久综合干| 激情com| 99人人操人人摸| 天天爽天天日天天舔| 超碰免费99| 99热激情| 日本99色| 快色t v在线入口| 天天婷婷| 男人大jjc女人免费视频| 人人操人| 久久婷婷色丁香| 天天天天天天天操| 久久五月丁香| 手机旧版看人妻1025| 18av天堂| 五月丁香婷婷色色色| 五月天婷婷基地| 色婷婷精品视频在线播放| 97日本在线| 国产操碰| 久操福利| 日韩操女| 综合激情五月天六月婷免费视频| 少妇大叫太大太粗太爽了A片| 4399精品一区二区| 69激情小说| 99精品综合视频| 五月丁香啪啪啪| 五月天堂六月丁香亚州中文字幕久久| 亚洲色婷婷网站| 99热1| 五月天色色无码| 91玖玖| 五月天小说激情| 91se在线观看| 五月丁香婷婷啪啪综合| av人人干| 情一色一乱一伦一91A| 综合激情网五月激情| 无码动漫av| 国产古装妇女野外A片 | 色婷婷五月天偷拍| 五月激情站| 国产偷人爽久久久久久老妇APP| 97色97干| 五月天激情四射网站| 日本波多野结衣视频| 久久久精品视频79| 五月婷婷中文字幕| 丁香六月婷婷| 色播五月天激情| 亚洲精品国产setv| 日韩欧美颜射| 五月天激情黄色小说在线观看| 五月天最新网| 五月丁香婷色| 美欧成人视频| 综合久久97| 六月婷婷开心| 天堂综合久久| 无码啪啪| 婷婷五月天播| 风流少妇A片一区二区蜜桃| 久久视屏这里只有久久| 91爱操| 久热这里只有精品6| 五月网站| 六月色播| 91人人网| 一起草AV| 99er久久| 国产老熟妇亲子乱对白| 久热久| 黄色五月婷婷| 91蜜桃婷婷狠狠久久综合9色| 丁香色婷婷| 狠狠色婷| 这里只有精品视频在线| 色婷婷婷av | 美女xx不卡| 婷婷五月天免费视频| 91se精品国产| 五月综合久久| 亚洲综合激情五月久久| 无码激情AAAAA片-区区| 激情综合色播| 色播婷婷大香蕉| 久久婷婷综合基地| 五月天六月丁香| 99热免费| 五月天激情啪啪| 七七久久婷婷| 国产超碰在线| 狠色狠色综合久久| 综合久久97| 超碰在线91| 丁香五月婷婷综合视频| 99在线小视频| 五月丁香| 色婷久| 99爱视频精品| 婷婷久久天堂网| 九九九九国产| 五月网网站| 五月天色站| 亚洲99综合| 色欲人妻综合aaaaaaaa网| 三十熟女| 久久久18| 99精品视频网站| 五月天久久综合| 国产精品色色| 4399在线日本A片| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 色色婷婷五月天| 亚洲V国产V欧美V久久久久久| 凹凸操Av| 色色网站在线免费观看视频| 五月婷久久久| 人妻Av在线| 99re免费精品视频| 涩五月色婷婷| 深爱婷婷色| 激情丁香五月AV| 婷婷五月情| 99视频网| 99在线视频精品| 综合网狠狠| 99热只有| 婷婷五月天丁香| 99热99这里有免费的精品| 亚洲熟女乱色综合亚洲网站| 亚洲一区二区色图-亚洲精品国产精品乱码-成人AV | 亚洲综合激情五月久久| 伊人久久大香线蕉av一区| 激情久久四色| 人人草公开操| 色婷婷婷婷| 日本女色人人| 思思热在线观看| 丁香五月婷婷网| 天天cha成人综合网| 翔田千里 50岁 无码| 麻豆忘忧草午夜| 丁香五月激情婷婷| 婷婷五月综合激情| 97视频久久| 五月婷婷五月天亚洲无码| 色八月婷婷| 啪啪黄页网| 激情五月天天| 日本久久激情| ai97re99一本| 9色天堂| 天天插天天干| www.婷婷六月天| 97碰免费视频在线| 婷婷综合网站| 日韩色色视频| 婷婷五月天影院| 九九AV在线| 六月激情久久| 国产成人在线精品| 天天干天天干天天干天天干天| 天天干 夜夜爽| 密乳视频| 人妻久久久久久久久久久| 九九视频精品视频精品| 99色爱| 丁香五月天激情综合网| 婷婷五月天免费视频在线观看| 亚洲天堂亚洲色色色| 婷婷久久久| 久久婷婷精品| 六月五月久久丁香| 久热播这里只有精品| 99热这里只有精品50| 激情五月网站| 99热成人在线观看| EEUSS鲁片一区二区三区| 69色婷婷| 开心激情站| 亚洲婷婷免费| 思思re最新视频| 色婷插| 色婷婷av综合网| 亚洲激情Av| 四色五月婷婷| 天天综合色| 婷婷五月丁香六月综合网| 人人妻久久妻| 日本在线视频www色| 91大神操美女| 黄色网址五月婷婷| 色情婷婷。| 丁香婷婷五月综合影院| 亚洲综合激情五月天婷婷| 99爱视频精品在线观看| 久久这里只有精品16| 99视频这里有精品免费观看| 亚洲中文字幕av| 欧美色频| 91干网| 五月 激情视频| 欧美综合123区| 综合婷婷| 丁香五月婷婷色情综合| 色五月激情婷婷| 婷婷精品| 丁香五月婷婷天堂大香蕉| 99自拍视频在线观看| 五月天天天综合| 精品怡红九九九| 成人永久免费视频在线观看| 高清无码网址| 婷婷五月综合色拍| 婷婷五月天日日日干干干| 国产精品爽爽久久久久久| 热久久99热欧美国产亚洲| 欧美成人AAA片一区国产精品| 无码一区二区三区四区五区91c| 亚洲欧洲国产精品| 99热成人在线| www.99色| 影音先锋噜一噜| 中文幕无线码中文字蜜桃| 五月色亭丁香| 丁香八月综合激情| 五月丁香亚洲综合| 超碰国产在线观看| 婷婷五月天中文字幕| 激情小说五月天| 亚洲精级| 五月丁香六月婷婷亚洲激情综合| 亚洲精品国产setv| 国内久久亭亭| 丁香成人色情五月天| 久久伊人大香蕉| 黄色av网站在线免费播放| 四虎成人精品永久免费AV九九| 婷婷五月天视频在线观看| 久热中文字幕| 色五月婷婷AV| 五月丁香婷婷免费视频| 丁香五月天91| 激情综合色五月丁香六月亚洲| 俺去也五月天婷婷| 色色丁香婷婷| 伊人婷婷大香蕉| 色婷小说| 狠狠操婷婷| 色色色综合| 欧美影院婷婷| 婷婷激情性爱| 婷婷久久精品| 色色色五月婷| 操操自拍| 色欲久久久久久综合网综合网| 色婷婷激情五月天丁香| 操逼在线视频| 婷婷99视频在线| 琪琪理论片| 日韩性视频| 久久99精品久久久久久青青AR| 91大屁股| 五月丁香婷婷激情爱爱| 丁香六月视频免费观看| 天堂久久久久天堂网| 亚洲五月天天| 丁香婷婷激情网站| www.丁香五月| 91av视频在线观看最新网址| 亚洲男女激情| 91碰超| 六九色综合婷婷五月天| 91九色中文字幕女在线观看| 波多野结衣AV无码Porn| 97碰| 99热免费| 五月天婷婷色播在线网| Aaa久久| 激情婷婷五月基地| 欧美日韩成人在线网站| 九九热九九| 9l视频自拍九色9l视频自拍九色9l社区| 夜夜爽天天干| 日本不卡中文字幕| 99操99| 综合激情开心五月| 婷婷碰碰| www.久久综合| 婷婷丁香视频在线观看免费 | 99精品偷自拍| 婷婷五月综合激情免费| 五月丁香欧美综合| 99超级碰免费视频| 日韩久久这里只有精品| 丁香婷婷性久久| 丁香婷婷啪啪| 99精品在线下载| 丁香深五月婷婷| 九九热在线观看视频| 九九大香蕉黄色影院| 久久久WWW| 天天操夜夜啊| 影院久久久| 99热官网| 婷婷五月天亚洲色| 五月天久久网站| 俺去也五月| 天天干天天日天天插| 久色精品| 亚洲AV网站在线观看| 99色视频| 99热在线网站| 天天爽天天操| 婷婷五月天网址| 好吊操这里只有精品| 丁香五月开心七月| 色九九综合| 亚洲第精品| 一级七香蕉| 97久久视频| 五月天婷婷成人资源站| 五月丁香色| 天天久综合网永久入口18| 激情綜合W W W,激情五月天| 天天日天天狠狠操| 婷婷婷久久久| 五月天丁香啪啪网| 99热这里| 99久久精品国产色欲| 日本本土色网第一区| 久草 tingting| 九九热最新地址| 丁香综合网| 级情九色| 久9久成人精品视频| 欧美成人精品三区综合A片| 婷婷五月亚洲一本在线丁香| 密乳视频| 亚洲天堂亚洲色色色| 九九中文字幕九| 狠狠综合网| 色女人久久| 婷婷丁香五月天中文字幕| 久热91| 国产1区2区| 亚洲国产精品VA在线看黑人| 亚洲热热视频| 翔田千里 50岁 无码| 婷婷丁香综合| 狠狠操天天日| 侠女刀之记忆电影在线看免费| 伊人玖玖综合| 久久免费干| 五月丁香婷婷成人网| 综合大香蕉| 九九热最新地址| 婷婷播播五月天| 第四色婷婷日本| 91色在线| 婷婷激情九月| 欧美综合五月丁香六月婷| 激情五月婷婷色综合| 伊人激情AV一区二区三区| 久9久9久9久9久9久9| 激情综合色播| 色狠狠婷婷| 99热这里只有的精品视| 五月丁香激情在线| 久久久久人妻精选| 99热这里只有免费精品| 狠狠五月激情丁香六月| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 99爱在线精品视频免费观看| 色综合久久天天综合网| 天天操婷婷| 99热资源在线| 丁香六月婷婷综合激情欧美| 丁香婷婷色五月| 免费黄色AV| 操操自拍| 色色五月天婷婷| 99啪啪视频| 五月丁香精品| 狠狠操狠狠| 精品人妻伦一二三区久久| 99成人| 国产XXXX搡XXXXX搡麻豆| 国产人妻人伦精品一区二区| 五月天丁香色色| 99青青草99| 久久婷婷五月丁香蜜桃网| 五月天大香蕉av| 99色嘟嘟精品网站| 伊人玖玖网| 丁香婷婷色情| 做爱夜夜干天天操| 六月五月婷婷| 成人电影AV在线观看| 色欲av伊人久久大香线蕉影院| 色色五月天丁香| 久久久激情| www.狠狠| 婷婷激情综合色五月久久91| 内射综合网| 99视频内射三四| 五月天激日本色情在线| www.99热. com这里只有精品| 亚洲最大视频| 激情五月婷| 欧美三级巜人妻互换| www.ywav| 97人妻碰碰中文无码久热丝袜| 色综合色婷婷色伊人| 亚洲国产成人裸舞| 久久性操| 骚逼视频一区2区| 欧美日韩成人高清在线| 日本狠狠爽| www五月天com| 激情五月综合亚洲另类| 毛片蕉地一二| 99久99热| 五月天婷婷激情| 婷婷丁香六月天| 五月天小说激情| 超碰人人艹| 六月丁香婷婷开心综合基地| 亚洲AV综合网| 青吴乐视频| 欧美性爱一区| 狠狠擼综合| 天天综合精品| 苗黎美女四级成人版一级二级毛片| 亚洲天堂制| 狠狠综合| 丁香激情综合| 久久婷婷伊人| 久九九热| 五月丁香婷婷伊人| av色色国产| 色综合色色色色色色综合| 日韩人妻在线观看| 天天爱天天做天天日| 一起草性爱不卡视频| 99热最新| 久久五月婷婷丁香| 一级A片天天操夜夜操| 色色99| wwwav大香蕉| 伊人久久大香网| 99精品22| 精品欧美一区二区三区久久久| 激情五月天婷婷色色色色色色色色色色色| 综合综合色色| 久久这里只有精品8| 性爱视频久久| 亚洲精品亚洲人成人网| 天天干天天色综合| 国产91资源在线| 激情久久久| 人人色婷婷| 熟惀91九色在线| 亭亭丁香aV| 五月婷婷影院| 九九美女视频| 日日夜夜狠狠操| 无码人妻丰满熟妇奶水区码| 99久久九九视频| 综合激情九月婷婷,激情综合婷婷中文字| 精品久久久999| 性色婷婷| 色涩影院六月丁香| 婷婷激情社区| 91av成人| 久久国产性爱A V| 91丨九色丨丰满人妖| 亚洲视频在线网| 日本三级黄色大片| 强伦轩人妻一区二区电影| 日本噜噜色网| 丁香五月激情综合| 五月天伊人av| 亚洲激情网| 天天综合色丁香| 婷婷王月天影院| 天堂久久丁香| 色5月婷婷| 五月丁香亭亭电影久久| 深爱五月天天| 伊人久久大香| 天天摸天天舔| 激情四射亚洲| 五月天婷婷爱| 涩玖玖免费视频| 六月婷婷在线| 欧美激情久| 舔色婷婷| 五月丁香激情四射综合| 国产日比| www.黄色片-久久成人国产精品在线播放-999AV| 国产精品色| 国产精品色婷婷久久久精品| 三级三久久线久久99久目本WW| 99在线资源| 久久久99久久| 婷婷丁香成人在线视频| 激情五月成年| 丁香六月欧美| 大香蕉av在线| 思思热在线观看| 无码婷婷五月天| 国产一级黄色影片,| 天天婷婷色六月| 色色综合网络| 97婷婷狠狠久久综合9色| 日本丁香五月| 婷婷激情五月天7| 中字幕视频在线永久在线观看免费| www.五月天。com| 91制片厂久久久国产电影| www.99成人视频| 五月开心久久| 亚洲超碰在线| 激情综合五月色丁香婷婷| 3p久久| 色色综合网站| 丁香五月婷在线观看| 日韩精品成人在线| 五月婷婷大香蕉| 婷婷丁香五月亚洲免费| 亚洲视频二区| 久9久视频精品| 五月婷婷六月激情| 婷婷 激情 五月| 日韩AV中文字幕在线| 色情综合| 五月色丁香国产在线视频| 欧美婷婷综合| 婷婷久久五月天| 亚洲色在线观看| 婷婷色影院| 麻豆WWWCOM内射软件| 黄色一级影片| 激情婷婷另类| 色愛综合网| 在线色婷婷| 激情五月天色色网| 婷婷噜噜| 狠狠va| 婷婷操超碰| 精品香蕉99久久久久网站| 99色在线视频| 丁香婷婷五月综合影院| 激情久久久| 狠狠色九月| 久久久久人妻| 激情久久久久久| 五月激情天天干| 亚洲日本激情| 婷婷六月色开| 激情图片99| 99燥99日| 精品一二三区久久AAA片| 女人天堂AV| 日韩操| 第九色区av天堂| 欧美影院| 人人操av| 婷婷丁香五月天在线| 色婷婷av在线| 五月丁香花激情啪啪网| 久草婷婷网 | 久热婷婷| 99综合| 色综合久久44| 五月婷婷激情五月| 五月天婷爱综合| 五月天另类小说亚洲| 亚洲一区二区无遮挡A片| 色开心五月婷婷丁香HD| 国产偷人爽久久久久久老妇APP| 婷婷激情在线| 久久 婷婷 五月天| 色噜噜五月天| 五月丁香激情综合啪啪| 人妻精品一区二区三区| 久久久久人妻| 韩国激情五月天综合网| 99性爱视频网站| www.开心激情| 五月婷婷网五月在线| 九九热这里只有精品31| 久久久久久丁香五月| 99在线看片| 中文字幕 久久9999| 欧美猛片| 国产精品婷婷午夜在线观看| 综合五月激情| 免费观看的婷婷五月视频在线| 99热久草| 日韩精品二三区| 天天婷婷色六月| 思思热99在线视频| 亚洲操B| 丁香激情五月| 日本色99| www.色五月| 日本精品久久久久中文字幕| 变态 另类 在线 | 成人在线综合| 五月天激情综合网俺也去| 日韩无码成人电影| 激情播丁香| 色情五月天首页| 综合色色婷婷| 日本婷婷在线| 激情五月婷| 97操操网| 五月丁香最新| 婷婷月综合| 国产成人网| 99亚洲综合| 天天射夜夜骑| 午夜丁香综合婷婷| 天天天天干| 久久婷婷免费| 伊人狠狠色婷婷综合丁香一区| 黄色激情久久| 婷婷色播六月无码| 五月天开心婷婷激情网站| 操逼巨乳91| 久久九九色| A短视频免费在线观看| 五月丁香啪啪啪| 97AV人人插人人操| 婷婷五月丁香av网站| 婷婷五月六月激情| 情色五月天网站| 欧美电影在线观看| 99精品高潮| 狠狠操天天操天天操| 人妻操逼视频| 九九热视频在线观看| 精品九九久久| 色婷婷狠狠爱| 天天色色天天| 六月婷婷色| 91猫咪国产在线播放| 性一交一乱一交A片久久四色| 玖玖在线资源视频| 九九综合| 五月天天丁香婷婷| 区区久久妻| 色色色色五月| 强辱丰满人妻HD中文字幕| 婷婷五月天精品| 色八月婷婷| 五月激情六月综合| www.五月天| 丁香五月婷婷亚洲综合精品| 五月情涩综合婷婷| 五月天婷婷色| 日本啪啪天堂| 欧美精品18| 偷拍丁香九月激情| 激情五月黄色小说| 欧美日韩成人在线观看| 欧美槡BBBB槡BBB少妇| 日韩狠狠色| 天天狠狠干| 日本一级淫| 婷婷激情肏屄网| 欧美色久| 五月丁香五月丁香五月丁香五月丁香91| 激情五月综合色婷婷| 伊人干综合| 综合一区二区三区| 五月第四色| 婷婷综合五月| 色婷婷综合久色AV五色最新| 婷婷五月激情的图片| 99视频在线看| 激情五月婷婷综合色播小说| 色和综合网| 五月激情婷婷开心五月| 大香蕉手机视频| 亚洲综合激情五月久久| 五月天啪啪视频| 91日日日| 激情都市丁香婷婷| 五月婷九九草| 天天爽免费视频| 99视频日韩| 五月天激情婷婷小说| 成人超碰网| 森林影视大全,最好看的2019年视频 | 噜噜狠狠色综合久| 深爱激情五月网| 狠狠色丁香婷婷五月| www,婷婷| 超碰高清在线| 色爱99| 九月影院義母在线播放| 人人操AV| 99久久亚洲精品视频| 六月婷婷激情| 凹凸7777操操操| 天天操夜夜操| 丁香五月综合亚洲| 日本97人人| 五月天婷婷在线视频| 亚洲无码黄色| av中文网站| 欧美日韩国产一区二区| 丁香六月婷婷五月婷婷| 五月婷婷与六月丁香图片激情| 日韩综合天堂| 丁香五月六月久久综合| 激情五月天色色| 五月色婷婷综合丁香精品无遮挡| caop视频| 新激情五月天天在线网| 婷婷激情在线| 国产欧美精品AAAAAA片| 午夜无码精品色综合久久| 一级黄色操B| 婷婷综合一二三| 丁香婷婷综合激情五月色,开心五月丁香花综合网,激情综合五月亚洲婷婷,五月天 | 婷婷丁香五月天婷婷| 国产又黄又爽又色的免费| 九九草热在线观看| 丁香六月色| 日本色99| 五月花婷婷最新| 久9草在线观看视频| 狠狠操狠狠| 久久99热这里只有精品首| 欧美性生交XXXXX无码小说| 少妇人妻综合色6699| 一起草av在线观看| 激情五月婷婷综合| 女人天堂 AV| 男女99免费视频| 国产午夜精品一区二区三区四区| www.com五月天| 久操人妻| 色婷婷激情视频| 超碰操网| 激情五月丁香六月婷婷| 99资源在线视频| 婷婷丁香五月天综合激情| 99爱在线视频| 99热在线中文字幕| 91丨九色丨熟女丰满| 欧美日本韩国亚洲| 亭亭色网| 亚洲色婷婷五月| 婷香五月| 99re在线免费视频| 超碰狠狠操| WWW.17C亚洲精品| 五月丁香久久久日婷婷久久婷婷日| 自拍视频99| 激情五月天视频| 丁香色婷婷五月天| 五月婷婷五月丁香综合| 久热超碰91| 国产乱人偷精品人妻A片| 91人人操.COM| 996日日爱| 管管補管管紱| 99热播放| 成人午夜免费电影| 热99视频精品在线| 99这里有精品视频| 久久性操| 国产va视频| 国产五月婷| www,8050,午夜三级| 色色色9 9 9| 5月丁香综合图区| 婷婷深爱五月| 日本在线视频www色| 99re视频精品| 青青草日本亚洲| 性色人人爽| 特黄三级片| 六月丁香婷婷综合影院| 丝雨一区二区| 强辱丰满人妻HD中文字幕| 色色色9| 26uuu丁香婷婷五月| WWW五月| 热99只有精品| 99热这里只有精品2016| 99精品在线| 五月婷婷操操| 精品人妻伦一二三区久久| 久草大| 色婷婷先锋| 五月天婷婷基地| 五月丁香无码| 色色婷婷综合网| 五月婷婷色综图片| 99在线精品视频免费| 在线成人网址| 色婷婷大香蕉| 久久久91| 五月婷婷色色| 久热无码| 久久小视频免费| 天天曰夜夜爽| 思恩热国产视频右线观看| 五月婷婷丁香大陆免费| 日本久久超碰| 91九色小视频| 九九色欲网| 激情六月丁香| 成人va在线观看视频| 丁香五月婷婷久久综合激情网 | 五月亭亭网成人在线视频| 久热网在线视频| 激情婷婷激情在线不卡| 国产熟妇乱子伦hd| 亚洲av电影在线| 大香久久综合网| 操人精品| 国产亚洲99久久精品熟女| 热久久这里只有三级视频| 激情五月天.色网| 一本狠婷婷综合| 色婷在线视频| 九月婷婷激情| 激情丁香婷婷| 丁香激情六月天婷婷| 偷拍视频五月天| WWW,五月| 亚洲舔观看| 99热的无码| 婷婷色片| www夜夜| 狠狠爱深色婷婷综合| 免费视频WWW在线观看网站| 久久精品99国产精品日本| 中国丰满熟女A片免费观| 成人无码免费一区二区中文| 婷婷综合玖玖五月| 91在线日本| 97人人草| 狠狠草综合网| 亚洲熟妇无码乱子AV电影| 色色a| 欧美成人精品A片免费一区99| 欧美成人在线观看| 日本 色综合| 91在线日| 99热这里只有精品 搜| 色色综合视频| 丁香五月开心亚洲| 婷婷综合久久| 日本在线观看aaa 99| 日韩精品超碰在线观看| 色综久久AV| 色噜噜婷婷| 狠狠色婷婷| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 开心婷婷五月天综合| 色五月av伊人| 丁香久久综合| 欧美人与性动交CCOO| 91精品综合久久久五月天| 日本三级中国三级99人妇网站| 国产热精品| 天天综合 99久久婷婷| 亚洲乱码日产精品BD在线观看| 四射综合网| 人人亚洲| 天天综合网亚洲网站| 五月天激情影院| 久久久日韩特色特黄AAAA| 丁香九月激情| 五月婷视频| 午夜不卡久久精品无码免费 | 色优久久| 五月六月婷| 天天插天天干| 激情五月天啪啪| 天天色色婷婷| 丁香久久| 日本久久视频| 思思热思在线精品视频| 亚洲成人一区| 一区三区视频有限公司| 五月婷婷五月天天| 日日夜夜狠狠| 婷婷五月精品中文字幕| 婷婷五月天成人网站| 性色五月天| 91婷婷在线观看| 丁香五月亚洲天堂| 色99视频| 激情九月婷婷| 66成人网| 久久久久久久久18久久| 狠狠香婷婷五月| 大香蕉婷婷| 五月婷婷综合影院| 天天干天天操| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 4399亚洲视频| 五月婷婷综合在线视频小说| 国产又黄又爽又色的免费| 天天玩夜夜操天天爽| 天堂综合久久 | 99久在线精品| 六月激情网| 日逼免费视频 | 日都一级A片| 性天天中文网| 91精品国产综合久久久不卡电影| 99噜噜噜在线播放| 91男同| 久久久.COM| 五月丁香六月婷婷的女人| 色色欧美色色色| 5月丁香六月情| 国产精品久久久久久久久久免费| 激情婷婷亚洲五月| 人妻AV在线| 国产片天天爽夜夜爽| 99热思思| 操人精品| 97极品在线| 欧美图片丁香五月天| 久久这里有精品| 日本欧美999久久久三级片| 久久婷婷六月综合| 亚洲精品V天堂中文字幕| 国产乱码久久| 日本精品久久久久中文字幕| 激情小说婷婷小说| 亚洲va综合va国产va中文| 国内裸舞二区| 风流少妇A片一区二区蜜桃 | 亚洲国产色婷婷| 五月婷婷丁香瑟瑟视频| 伊人丁香五月婷婷潮吹| 色欲婷婷五月天丁香| 亚洲 视频 导航 一区| 玖玖在线视频| 婷婷5月开心6月| 五月开心播播网| 开心婷婷五月中文字幕组| 9999热免费视频视频| 欧美α√| 久久久久久97| 99在线精品观看99| 26UUU欧美激情一区二区| 级人人91| www.五月天婷婷姐姐| 九九XX视频| 五月婷婷六月情| 激情伊人| 开心五月深爱五月| 激情五月,激情综合网| 亚洲色图日韩网址| 日日操日日撸| 丁香婷婷五月基地| 操逼巨乳91| 六月丁香啪啪| 射久久丁香五月| 丁香五月激情综合婷综| 久久婷婷五月| 婷婷激情五月综合在线视频| 91干99| 色婷婷成人网| 色青五月天| 韩国19 主播内部福利vip免费播放| 亚洲AV网站| 校园激情 亚洲| 九9九9无码| 韩国真做片在线观看| 婷婷五月天视频亚洲| 九九99精品视频在线观看| 1024操逼| 九九热10| 久热最新视频| 久激情网| wwccc久久久| 色 五月 天 婷婷 丁香 九月| 性爱视频久久| 久久婷婷综合五月趴| 色综合久| 97碰碰九九视频| 日韩色色视频| 91精品久久久久久综合五月天| 91无码视频| 久久久五月天婷婷| 久久婷婷丁香| 成人性爱无码| WWW·天天操·视频?| 亚洲99一级无嗎特制在线| 丁香色婷婷| 丁香激情六月天婷婷| 高清成人综合| 婷婷色五月91啪啪| 99自拍网| 99视频在线观看网址| 婷婷国产日本欧美| 九九大香蕉黄色影院| avh片在线观看| 九九热这里| 91丨九色丨熟女丰满| 五月五婷婷| 欧美日韓成人亚洲精品另类| 超碰成人电影| 色婷婷久久视屏| 91超级碰碰| 丁香五月香蕉| www.99情趣网| 欧美激情凹凸丁香网| 五月色婷婷综合色| 香蕉久久六月| 人人搡人人| 开心色色五月天综合| 婷婷五月在线观看| 碰碰91| 天天天天天天噜| 精品国产va久| 色情·com| 538任你爽| 五夜丁香| 99久超碰| 亚州第一A片| 99色在线观看视频者| 日韩国产在线精品| 激情五月天网站| 日本色色图| 久久五月激情| 丁香久久久| 九九视频在线观看| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 中文字幕日产A片在线看| 1024在线视频| 色婷婷AV久久| 日韩成人影片网站| 色99色| 日韩啊啊啊| 婷婷五月综合在线| 五月天久久综合| 第五色婷婷| 日本va欧美va国产激情| 99久久99热| 五月丁香婷婷网网网网| 婷婷激情五月天天天开心| eeuss人妻| 五月婷婷色| 激情综合网五月天天| 妻久久久久| 九九精品片一| er99免费视频在线| WWW.色婷婷.COM| 99精品色色| 久久久五月激| 99这里是99在线视频| 天天做天天双| 狠狠色狠狠鲁| 激情五月六月丁香| 欧美色五月天| 色五月在线播放| 五月亭亭开心网| 婷婷六月啪啪| 99色综合| 色狠狠色噜噜AV天堂五区| 日本三级日本黄色| 丁香婷婷色情| 丁香五月综合婷婷| 婷婷五月天色综合翘| 天天干天天色天天干| 天天干天天爽天天操| 噜噜色婷婷| 另类专区在线| 日本丁香五月| 91爱操| 国产乱妇无乱码大黄AA片| 深爱激情丁香| 欧美激情综合五月色丁香| 婷婷五月五月丁香| 伊人五月婷婷国产视频| 日本综合色色| 激情五月五月五月婷婷| 色五月丁香伊人五月| 在线另类视频| 亚洲亚洲人成综合网络| 久久看九九90| 国产91视频| 激情婷婷五月天在线观看| 五月开心激情| 久热大香蕉| 婷婷五月天 丁香五月天 裸体| 丁香青青五月天| 久久精典| 在线观看国产高清视频免费网站| 亚洲亚洲人成综合网络| 国产99久9在线| 九九热AV| m色激情网| 99ri精品| 碰99在线| 精品99在线| 26UUU精品一区二区Com| 五月丁香久人妻中文| 99热精品观看| 性av| 女婷久久| 九九家庭影院| 国产成人99久久亚洲综合精品| 久久九九色| 99精品偷自拍| 亚洲视频久久| 亚洲激情丁香五月天色| 婷婷五月天成人| 天天爽天天| 久久伦乱| www.热99热| 婷婷五月天黄色| 自拍视频99| 五月丁香色播| 久热91| yazhochengrenavwang| 伊人五月人妻精品| 99热日本| 九九综合五月欧美| 激情网狠狠干| 欧美黄色AA片哗啦啦啦| 1769在线观看欧美国产| 久热这里只有精品性色AV| 丁香六月综合| 成 人片 黄 色 大 片| 99热婷婷| 啪啪小说五月天| 大香蕉人妻| 激情五月婷婷视频一区二区三区| 久热中文字幕在线线观看 | 久热这里只精品| 在线五月色播| 99久久6| 草做免费在线观看| 激情五月天婷婷| 操b视频在线观看一区二区| www久久五月com| 久久精品视频在这里有| 婷婷五月天影院| 一逼色综合| 精品A√| 任我干视频在线观看| 九九热最新地址| 97成人超碰免| www,婷婷五月天,com| 久久性爱视频| 超碰免费大香蕉| 天天日 天天草| 538在线精品| 袁子仪视频观看| 久草婷婷| 伊人五月天日日夜夜久久久天天| 色丁香五月婷婷| 成人片黄网站色大片免费毛片| 立川无码av| 色色色无码| 色婷婷情片| 99ri在线| 婷婷操逼| 色婷婷丁香五月| 亚洲 无码 中文字幕 中出| 激情综合网激情五月俺也去| 五月婷婷网站| av无码电影| 婷婷午夜精品久久久| 亚洲黄色影视| 五月婷婷中文| 香蕉综合网| 五月天开心网|