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

ARTICLE DETAIL

資訊詳情

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

OpenCV形態(tài)學(xué)操作實戰(zhàn):從膨脹腐蝕到開閉運算的完整指南

OpenCV形態(tài)學(xué)操作實戰(zhàn):從膨脹腐蝕到開閉運算的完整指南 1. 形態(tài)學(xué)操作到底在折騰什么第一次接觸“形態(tài)學(xué)操作”這個詞很多人會以為跟生物課上的細胞形態(tài)有關(guān)。其實在數(shù)字圖像處理里它指的是一套基于形狀的像素級運算工具核心思路是用一個叫“結(jié)構(gòu)元素”的小模板去掃描整張圖像根據(jù)模板覆蓋區(qū)域內(nèi)像素的分布規(guī)律決定輸出像素的取值。聽起來有點繞換個說法你就明白了假設(shè)你有一張布滿噪點的二值圖想把這些孤立的噪點去掉同時保留主體輪廓形態(tài)學(xué)操作就是干這個的。我做圖像預(yù)處理項目這些年形態(tài)學(xué)操作幾乎是繞不開的一環(huán)。不管是工業(yè)質(zhì)檢里找劃痕、醫(yī)學(xué)影像里分割細胞、還是文檔掃描件里提取文字行形態(tài)學(xué)都能用極低的計算成本換來相當(dāng)干凈的結(jié)果。它不像深度學(xué)習(xí)那樣需要大量標注數(shù)據(jù)和算力幾個簡單的膨脹腐蝕組合就能解決很多實際問題。這篇文章適合誰看如果你正在做圖像分割、缺陷檢測、OCR預(yù)處理或者單純想搞懂OpenCV里那幾個形態(tài)學(xué)函數(shù)到底在干什么那接下來的內(nèi)容應(yīng)該能幫你省下不少翻文檔和試參數(shù)的時間。形態(tài)學(xué)操作最常用的場景是二值圖像但其實灰度圖也能用。二值圖里像素只有0和1操作邏輯很直觀灰度圖里則是取鄰域內(nèi)的最大值或最小值效果類似于局部提亮或壓暗。我個人的經(jīng)驗是先把二值形態(tài)學(xué)吃透再去看灰度形態(tài)學(xué)理解成本會低很多。下面我從整體設(shè)計思路開始拆把每一步的選擇邏輯和踩過的坑都攤開來講。2. 核心思路與方案選型拆解2.1 結(jié)構(gòu)元素形態(tài)學(xué)操作的“刷子”結(jié)構(gòu)元素是形態(tài)學(xué)操作的靈魂。你可以把它想象成一把刷子刷子的形狀和大小決定了你刷墻的效果。常見的結(jié)構(gòu)元素有矩形、十字形、橢圓形尺寸從3×3到幾十不等。選結(jié)構(gòu)元素的時候核心考量就兩點你要保留的目標形狀是什么你要去掉的噪聲形狀是什么。舉個例子如果你要提取水平方向的文字行用1×15的矩形結(jié)構(gòu)元素做膨脹文字行會連成一片而垂直方向的干擾線基本不受影響。反過來如果你要消除水平細線用同樣的結(jié)構(gòu)元素做腐蝕就能達到目的。我見過不少新手直接拿默認的3×3矩形去處理所有情況結(jié)果要么噪聲沒去干凈要么目標被啃掉一塊。結(jié)構(gòu)元素的選擇沒有萬能公式但有一個基本原則結(jié)構(gòu)元素的形狀要跟目標的形狀匹配尺寸要略大于噪聲尺寸但小于目標尺寸。在OpenCV里結(jié)構(gòu)元素通過cv2.getStructuringElement()生成參數(shù)是形狀類型和尺寸。矩形用cv2.MORPH_RECT十字形用cv2.MORPH_CROSS橢圓形用cv2.MORPH_ELLIPSE。橢圓形在消除各向同性噪聲時表現(xiàn)更自然矩形在保留直角邊緣時更有優(yōu)勢。我一般會先用矩形試效果不理想再換橢圓形。2.2 膨脹與腐蝕一對相反相成的操作膨脹和腐蝕是形態(tài)學(xué)的基礎(chǔ)操作其他操作都是它倆的組合。膨脹的效果是讓目標區(qū)域“長胖”腐蝕的效果是讓目標區(qū)域“變瘦”。在二值圖里膨脹就是把結(jié)構(gòu)元素覆蓋范圍內(nèi)只要有一個白色像素中心像素就變成白色腐蝕則是要求覆蓋范圍內(nèi)全是白色像素中心像素才保持白色。這兩個操作看起來簡單但背后的邏輯很值得琢磨。膨脹可以用來填補目標內(nèi)部的小孔洞、連接斷裂的區(qū)域腐蝕可以用來消除小尺寸的噪聲、分離粘連的目標。我經(jīng)常用一個生活化的類比來解釋膨脹就像給氣球充氣氣球會變大但形狀基本保持腐蝕就像給氣球放氣氣球會縮小小的氣球可能直接消失。實際操作中膨脹和腐蝕的順序很關(guān)鍵。先膨脹后腐蝕叫閉運算用來填充小孔和連接斷口先腐蝕后膨脹叫開運算用來消除小噪點和分離粘連。這個順序不能反反了效果完全不一樣。我早期做PCB板缺陷檢測的時候就因為把開運算和閉運算的順序搞反了導(dǎo)致細小的劃痕被當(dāng)成噪聲消掉而真正的噪聲卻被保留下來排查了大半天才找到原因。2.3 開運算與閉運算組合拳的威力開運算是先腐蝕后膨脹閉運算是先膨脹后腐蝕。這兩個組合操作在實際項目中的使用頻率遠高于單獨的膨脹或腐蝕。開運算的典型應(yīng)用是去除背景噪聲比如在文檔掃描件里紙張紋理和灰塵會產(chǎn)生很多孤立的小白點用開運算處理一下這些小點就被腐蝕掉了而文字主體因為尺寸較大腐蝕后還能保留下來再膨脹回去就恢復(fù)了原樣。閉運算的典型應(yīng)用是填充目標內(nèi)部的小孔洞。比如在細胞分割任務(wù)中細胞核內(nèi)部可能因為染色不均出現(xiàn)暗斑二值化后這些暗斑變成小黑洞用閉運算就能填上。我做過一個細胞計數(shù)項目原始圖像二值化后細胞內(nèi)部有大量孔洞直接做連通域分析會把一個細胞拆成好幾個用5×5的橢圓形結(jié)構(gòu)元素做閉運算后孔洞基本消失計數(shù)準確率從78%提升到了94%。開運算和閉運算也可以級聯(lián)使用先開運算去噪再閉運算填孔這是很多預(yù)處理流水線的標準配置。但要注意每次操作都會對圖像造成一定程度的形變級聯(lián)次數(shù)越多形變累積越明顯。我的建議是能用一次操作解決的就不要用兩次參數(shù)調(diào)好比堆操作更有效。2.4 形態(tài)學(xué)梯度、頂帽與黑帽進階工具除了開閉運算形態(tài)學(xué)還有幾個進階操作值得了解。形態(tài)學(xué)梯度是膨脹圖減去腐蝕圖得到的是目標的輪廓邊緣。這個操作在邊緣檢測里很有用尤其是當(dāng)目標邊緣比較模糊的時候形態(tài)學(xué)梯度能給出比Canny更粗但更連續(xù)的邊緣。頂帽運算是原圖減去開運算圖得到的是比結(jié)構(gòu)元素小的亮區(qū)域。這個操作常用來提取背景中的小亮點比如在暗背景下檢測微小目標。黑帽運算是閉運算圖減去原圖得到的是比結(jié)構(gòu)元素小的暗區(qū)域常用來提取亮背景中的暗細節(jié)。這幾個操作我用的頻率不如開閉運算高但在特定場景下效果很好。比如做液晶屏缺陷檢測時屏幕背景是均勻的亮色微小的暗點缺陷用黑帽運算一抓一個準比閾值分割穩(wěn)定得多。頂帽運算在熒光顯微鏡圖像里提取微弱熒光斑點也很實用。3. 核心細節(jié)解析與實操要點3.1 二值形態(tài)學(xué)的像素級邏輯要真正理解形態(tài)學(xué)得從像素級邏輯入手。以3×3的矩形結(jié)構(gòu)元素為例膨脹操作會檢查每個像素的3×3鄰域只要鄰域內(nèi)有一個白色像素中心像素就置為白色。這意味著膨脹后白色區(qū)域會向外擴張一圈。腐蝕操作則要求3×3鄰域內(nèi)全是白色像素中心像素才保持白色否則置為黑色。這意味著腐蝕后白色區(qū)域會向內(nèi)收縮一圈。這個邏輯在邊界處需要特殊處理。OpenCV默認對邊界進行復(fù)制填充也就是說圖像邊緣外的像素值等于邊緣像素的值。這個默認行為在大多數(shù)情況下沒問題但如果你處理的目標緊貼圖像邊緣可能會得到意外的結(jié)果。我遇到過一張目標剛好在圖像邊界的圖膨脹后目標被截斷了一部分后來在圖像外圍補了一圈黑色邊框才解決。結(jié)構(gòu)元素的錨點位置也需要注意。OpenCV默認錨點在結(jié)構(gòu)元素中心對于偶數(shù)尺寸的結(jié)構(gòu)元素錨點會偏向左上。這個細節(jié)在精確對齊的場景下很重要比如做圖像配準的時候錨點偏移一個像素就可能導(dǎo)致配準失敗。我的習(xí)慣是盡量用奇數(shù)尺寸的結(jié)構(gòu)元素錨點自然落在中心省去很多麻煩。3.2 灰度形態(tài)學(xué)的擴展邏輯灰度形態(tài)學(xué)把二值邏輯擴展到了灰度級。膨脹變成取鄰域內(nèi)的最大值腐蝕變成取鄰域內(nèi)的最小值。這個擴展很自然二值圖里白色是1黑色是0取最大值就是只要有一個1就輸出1跟膨脹邏輯一致取最小值就是要求全是1才輸出1跟腐蝕邏輯一致?;叶刃螒B(tài)學(xué)在實際項目中的應(yīng)用場景不太一樣?;叶扰蛎浛梢杂脕碓鰪娏良毠?jié)灰度腐蝕可以用來增強暗細節(jié)。灰度開運算可以消除比結(jié)構(gòu)元素小的亮區(qū)域灰度閉運算可以消除比結(jié)構(gòu)元素小的暗區(qū)域。我做過一個金屬表面缺陷檢測的項目表面有微小的凹坑灰度閉運算處理后凹坑被填平然后用原圖減去閉運算圖凹坑區(qū)域就凸顯出來了效果比直接閾值分割好很多?;叶刃螒B(tài)學(xué)的計算量比二值形態(tài)學(xué)大因為每個像素要做比較而不是邏輯運算。但在現(xiàn)代硬件上這個計算量完全可以接受。OpenCV的形態(tài)學(xué)函數(shù)對二值圖和灰度圖是統(tǒng)一的接口通過輸入圖像的類型自動判斷用起來很方便。3.3 結(jié)構(gòu)元素尺寸的選擇策略結(jié)構(gòu)元素尺寸的選擇是形態(tài)學(xué)操作里最需要經(jīng)驗的部分。尺寸太小噪聲去不干凈尺寸太大目標被過度腐蝕或膨脹。我的一般策略是先估計噪聲的尺寸和目標的最小尺寸結(jié)構(gòu)元素尺寸取兩者之間偏向噪聲尺寸一側(cè)。具體怎么估計如果噪聲是孤立的點尺寸大概是1到3個像素那結(jié)構(gòu)元素用3×3就夠了。如果噪聲是細線寬度大概2到5個像素那結(jié)構(gòu)元素尺寸要大于噪聲寬度比如7×7。目標的最小尺寸可以通過連通域分析來測量取所有目標連通域的最小外接矩形尺寸結(jié)構(gòu)元素尺寸不要超過這個值的一半。還有一個經(jīng)驗法則結(jié)構(gòu)元素尺寸每增加2計算量大概增加一倍。所以在滿足效果的前提下盡量用小尺寸。我見過有人直接用15×15的結(jié)構(gòu)元素處理所有圖像結(jié)果小目標全被消掉了還抱怨形態(tài)學(xué)不好用。其實不是形態(tài)學(xué)不好用是參數(shù)沒選對。3.4 迭代次數(shù)的控制形態(tài)學(xué)操作可以迭代多次效果相當(dāng)于用更大的結(jié)構(gòu)元素。比如3×3的結(jié)構(gòu)元素迭代兩次效果接近5×5的結(jié)構(gòu)元素迭代一次。但兩者并不完全等價迭代多次的形狀擴展更平滑而大結(jié)構(gòu)元素一次操作可能產(chǎn)生更方正的形狀。迭代次數(shù)的控制原則跟尺寸選擇類似能用一次大結(jié)構(gòu)元素解決的就不要迭代多次小結(jié)構(gòu)元素。因為迭代會累積邊界效應(yīng)尤其是目標靠近圖像邊緣的時候多次迭代可能導(dǎo)致目標被完全侵蝕掉。我一般優(yōu)先調(diào)整結(jié)構(gòu)元素尺寸迭代次數(shù)保持在1到2次。但在某些場景下迭代是必要的。比如要連接兩個相距較遠的斷裂區(qū)域用大結(jié)構(gòu)元素一次膨脹可能把周圍無關(guān)區(qū)域也連進來而用小結(jié)構(gòu)元素迭代多次可以更精細地控制連接過程。這個需要根據(jù)具體圖像多試幾次找到最佳平衡點。4. 完整實操流程與代碼實現(xiàn)4.1 環(huán)境準備與依賴安裝我平時用Python加OpenCV做形態(tài)學(xué)操作環(huán)境搭建很簡單。Python 3.8以上版本都可以O(shè)penCV用opencv-python包安裝命令就一行pip install opencv-python numpy matplotlibnumpy用來做數(shù)組運算matplotlib用來顯示圖像對比。如果你需要處理視頻流再加裝opencv-python-headless或者直接用完整版。我建議在虛擬環(huán)境里安裝避免跟系統(tǒng)里的其他包沖突。驗證安裝是否成功import cv2 import numpy as np print(cv2.__version__)能打印出版本號就說明環(huán)境沒問題。OpenCV的形態(tài)學(xué)函數(shù)在cv2命名空間下主要用到cv2.getStructuringElement()、cv2.erode()、cv2.dilate()、cv2.morphologyEx()這幾個。4.2 圖像讀取與預(yù)處理形態(tài)學(xué)操作通常在二值圖上進行所以第一步是把圖像轉(zhuǎn)成二值圖。流程是讀取圖像、轉(zhuǎn)灰度、閾值分割。代碼大概長這樣img cv2.imread(input.png, cv2.IMREAD_GRAYSCALE) _, binary cv2.threshold(img, 127, 255, cv2.THRESH_BINARY)閾值的選擇很關(guān)鍵。如果圖像光照不均勻固定閾值效果會很差這時候可以用自適應(yīng)閾值binary cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY, 11, 2)自適應(yīng)閾值的兩個參數(shù)需要調(diào)block size是鄰域大小C是常數(shù)偏移。block size一般取11到31之間的奇數(shù)C取2到10之間的值。我一般先用固定閾值試效果不好再換自適應(yīng)。如果圖像噪聲比較嚴重閾值化之前可以先做一次高斯模糊blurred cv2.GaussianBlur(img, (5, 5), 0)高斯核大小取5×5或7×7標準差取0讓OpenCV自動計算。模糊會損失一些細節(jié)但能顯著減少閾值化后的噪點對后續(xù)形態(tài)學(xué)操作有幫助。4.3 結(jié)構(gòu)元素的創(chuàng)建與選擇OpenCV創(chuàng)建結(jié)構(gòu)元素的函數(shù)是cv2.getStructuringElement()三個參數(shù)分別是形狀、尺寸、錨點可選。常用寫法kernel_rect cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5)) kernel_ellipse cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (5, 5)) kernel_cross cv2.getStructuringElement(cv2.MORPH_CROSS, (5, 5))矩形結(jié)構(gòu)元素適合處理有直角邊緣的目標橢圓形適合處理圓形或自然形狀的目標十字形適合處理細線狀目標。我一般先用矩形因為計算最快效果不理想再換橢圓形。尺寸的選擇前面已經(jīng)講過策略這里補充一個實操技巧可以寫一個循環(huán)遍歷幾個候選尺寸把結(jié)果拼成一張對比圖肉眼選最好的。代碼大概這樣sizes [3, 5, 7, 9] results [] for s in sizes: kernel cv2.getStructuringElement(cv2.MORPH_RECT, (s, s)) opened cv2.morphologyEx(binary, cv2.MORPH_OPEN, kernel) results.append(opened)然后把results里的圖橫向拼接顯示。這個方法雖然土但選參數(shù)特別高效比盲猜快得多。4.4 開運算去除噪點的完整流程開運算是先腐蝕后膨脹OpenCV里用cv2.morphologyEx()一個函數(shù)搞定kernel cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (3, 3)) opened cv2.morphologyEx(binary, cv2.MORPH_OPEN, kernel)這里用3×3的橢圓形結(jié)構(gòu)元素適合去除孤立的噪點。如果噪點比較大可以增大到5×5。開運算之后圖像里的小白點基本消失目標主體保留完整。我做過一個文檔二值化的項目原始圖像閾值化后背景有很多細小的黑點噪聲用3×3開運算處理后噪聲減少了約90%而文字筆畫基本沒受影響。這里的關(guān)鍵是結(jié)構(gòu)元素尺寸要小于文字筆畫寬度否則文字會被腐蝕斷。開運算也可以迭代多次但一般一次就夠了。如果一次開運算后還有殘留噪聲說明噪聲尺寸比結(jié)構(gòu)元素大應(yīng)該增大結(jié)構(gòu)元素而不是迭代。4.5 閉運算填充孔洞的完整流程閉運算的代碼跟開運算類似只是把cv2.MORPH_OPEN換成cv2.MORPH_CLOSEkernel cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (7, 7)) closed cv2.morphologyEx(binary, cv2.MORPH_CLOSE, kernel)閉運算的結(jié)構(gòu)元素尺寸要大于孔洞尺寸但小于目標之間的間距。如果孔洞比較大結(jié)構(gòu)元素也要相應(yīng)增大。我處理細胞圖像時孔洞直徑大概5到10個像素用7×7的橢圓形結(jié)構(gòu)元素效果最好。閉運算的一個副作用是可能把相鄰的目標連在一起。如果目標之間距離很近閉運算后可能粘連。這時候可以先做一次開運算分離目標再做閉運算填孔但要注意順序和參數(shù)配合。我的經(jīng)驗是先用小結(jié)構(gòu)元素開運算分離再用大結(jié)構(gòu)元素閉運算填孔兩者尺寸不要差太多。4.6 形態(tài)學(xué)梯度提取輪廓形態(tài)學(xué)梯度的代碼kernel cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (3, 3)) gradient cv2.morphologyEx(binary, cv2.MORPH_GRADIENT, kernel)梯度圖里白色是邊緣黑色是平坦區(qū)域。結(jié)構(gòu)元素尺寸決定了邊緣的粗細3×3得到細邊緣5×5得到粗邊緣。我一般用3×3因為細邊緣定位更準確。形態(tài)學(xué)梯度跟Canny邊緣檢測的區(qū)別在于Canny給出的是單像素寬度的邊緣形態(tài)學(xué)梯度給出的是多像素寬度的邊緣帶。如果你需要精確的邊緣位置用Canny如果你需要連續(xù)的邊緣區(qū)域用形態(tài)學(xué)梯度。我在做目標計數(shù)時先用形態(tài)學(xué)梯度得到邊緣帶再做連通域分析比直接用Canny更穩(wěn)定因為Canny容易斷邊。4.7 頂帽與黑帽提取細節(jié)頂帽運算的代碼kernel cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (15, 15)) tophat cv2.morphologyEx(gray, cv2.MORPH_TOPHAT, kernel)注意頂帽和黑帽通常用在灰度圖上不是二值圖。結(jié)構(gòu)元素尺寸要大于你要提取的細節(jié)尺寸。比如你要提取直徑小于10像素的亮斑結(jié)構(gòu)元素用15×15或更大。黑帽運算把cv2.MORPH_TOPHAT換成cv2.MORPH_BLACKHAT即可。黑帽提取的是暗細節(jié)頂帽提取的是亮細節(jié)。我做過一個液晶屏暗點檢測的項目屏幕背景均勻發(fā)亮暗點缺陷用黑帽運算處理后非常明顯再用簡單閾值就能分割出來比直接閾值分割的誤檢率低很多。5. 常見問題與排查技巧實錄5.1 形態(tài)學(xué)操作后目標消失或斷裂這是最常見的問題原因通常是結(jié)構(gòu)元素尺寸過大或腐蝕次數(shù)過多。排查思路先檢查結(jié)構(gòu)元素尺寸是否超過了目標的最小尺寸如果是減小尺寸。再檢查是否迭代了多次如果是減少迭代次數(shù)。如果目標本身就很細比如細線或小點腐蝕操作很容易把它完全消掉這時候應(yīng)該改用開運算而不是單獨腐蝕或者用更小的結(jié)構(gòu)元素。我遇到過一個案例處理指紋圖像時用5×5結(jié)構(gòu)元素做腐蝕結(jié)果指紋紋線全斷了。后來換成3×3結(jié)構(gòu)元素紋線保留完好噪聲也去掉了。所以尺寸選擇真的是差之毫厘謬以千里。5.2 噪聲去不干凈如果開運算后還有噪聲殘留說明噪聲尺寸大于結(jié)構(gòu)元素尺寸。解決辦法是增大結(jié)構(gòu)元素但要注意不要超過目標尺寸。如果噪聲和目標尺寸接近形態(tài)學(xué)可能無能為力需要換其他方法比如連通域面積過濾。另一個可能的原因是噪聲不是孤立的點而是連成片的區(qū)域。開運算對孤立噪點效果好對連片噪聲效果差。這時候可以先做一次腐蝕把連片噪聲打散再做開運算?;蛘咧苯佑眠B通域分析按面積過濾掉噪聲區(qū)域。5.3 目標粘連在一起閉運算或膨脹操作可能導(dǎo)致相鄰目標粘連。解決辦法是在閉運算之前先做開運算分離目標或者減小閉運算的結(jié)構(gòu)元素尺寸。如果目標本身距離就很近形態(tài)學(xué)可能無法完美分離需要結(jié)合分水嶺算法或距離變換。我處理過一批細胞圖像細胞之間有些粘連直接用閉運算填孔后粘連更嚴重了。后來改成先開運算分離再對每個連通域單獨填孔效果好很多。這個思路值得借鑒不要試圖用一次形態(tài)學(xué)操作解決所有問題分步驟處理往往更可控。5.4 邊界效應(yīng)導(dǎo)致結(jié)果異常圖像邊界處的形態(tài)學(xué)操作容易出問題因為邊界外的像素是填充的。如果目標緊貼邊界膨脹后可能被截斷腐蝕后可能被過度侵蝕。解決辦法是在圖像外圍補一圈黑色邊框操作完成后再裁掉。補邊框的寬度要大于結(jié)構(gòu)元素半徑。border 10 padded cv2.copyMakeBorder(binary, border, border, border, border, cv2.BORDER_CONSTANT, value0) # 形態(tài)學(xué)操作 result cv2.morphologyEx(padded, cv2.MORPH_OPEN, kernel) # 裁掉邊框 result result[border:-border, border:-border]這個技巧我?guī)缀踉诿總€項目里都會用尤其是處理邊緣有目標的情況。補邊框的成本很低但能避免很多莫名其妙的邊界問題。5.5 灰度形態(tài)學(xué)與二值形態(tài)學(xué)混淆有些新手會把灰度圖直接拿去做二值形態(tài)學(xué)操作或者把二值圖拿去做灰度形態(tài)學(xué)操作結(jié)果不符合預(yù)期。OpenCV的形態(tài)學(xué)函數(shù)會根據(jù)輸入圖像類型自動選擇二值或灰度邏輯所以關(guān)鍵是要確保輸入圖像類型正確。二值圖應(yīng)該是uint8類型且只有0和255兩個值灰度圖是uint8類型且有多個灰度級。如果你不確定圖像類型可以用img.dtype和img.shape檢查。二值圖經(jīng)過閾值化后通常是uint8但如果你用cv2.threshold()的返回值第二個返回值才是二值圖第一個是閾值。這個細節(jié)容易搞錯我見過有人把閾值當(dāng)成圖像傳進去結(jié)果當(dāng)然不對。5.6 常見問題速查表問題現(xiàn)象可能原因排查方法解決方案目標消失結(jié)構(gòu)元素過大檢查結(jié)構(gòu)元素尺寸與目標尺寸減小結(jié)構(gòu)元素或減少迭代次數(shù)目標斷裂腐蝕過度檢查是否單獨使用腐蝕改用開運算或減小結(jié)構(gòu)元素噪聲殘留結(jié)構(gòu)元素過小測量噪聲尺寸增大結(jié)構(gòu)元素或改用連通域過濾目標粘連膨脹過度檢查閉運算結(jié)構(gòu)元素尺寸先開運算分離或減小結(jié)構(gòu)元素邊界異常邊界填充效應(yīng)檢查目標是否緊貼邊界補邊框后操作再裁剪結(jié)果全黑圖像類型錯誤檢查圖像dtype和值范圍確保二值圖為0和255結(jié)果全白閾值設(shè)置錯誤檢查閾值化參數(shù)調(diào)整閾值或改用自適應(yīng)閾值6. 參數(shù)調(diào)優(yōu)與性能優(yōu)化經(jīng)驗6.1 結(jié)構(gòu)元素形狀的對比測試不同形狀的結(jié)構(gòu)元素對同一張圖的效果差異可能很大。我做過一組對比測試用3×3、5×5、7×7三種尺寸矩形、橢圓形、十字形三種形狀共9種組合處理同一張含噪點的二值圖。結(jié)果顯示3×3矩形去噪效果一般但保留細節(jié)最好5×5橢圓形去噪效果和細節(jié)保留最平衡7×7十字形去噪最強但目標邊緣有明顯形變。這個測試給我的啟發(fā)是沒有最好的結(jié)構(gòu)元素只有最適合當(dāng)前圖像的結(jié)構(gòu)元素。我的建議是至少測試三種形狀和三種尺寸用對比圖肉眼判斷。雖然多花幾分鐘但比反復(fù)試錯效率高得多。6.2 形態(tài)學(xué)操作的順序優(yōu)化當(dāng)需要同時使用開運算和閉運算時順序很重要。先開后閉是去噪加填孔先閉后開是填孔加去噪。兩者的區(qū)別在于先開后閉會在去噪的同時可能擴大孔洞再填孔時需要的結(jié)構(gòu)元素更大先閉后開會在填孔的同時可能連接噪聲再去噪時可能把連接處斷開。我的經(jīng)驗是如果噪聲是主要問題先開運算如果孔洞是主要問題先閉運算。如果兩者都嚴重先開后閉但閉運算的結(jié)構(gòu)元素要比開運算大一號。這個順序不是絕對的還是要根據(jù)具體圖像測試。6.3 性能優(yōu)化減少不必要的操作形態(tài)學(xué)操作的計算量與圖像尺寸、結(jié)構(gòu)元素尺寸、迭代次數(shù)都成正比。優(yōu)化性能的核心是減少不必要的操作。具體做法能用小結(jié)構(gòu)元素就不用大結(jié)構(gòu)元素能一次操作完成就不迭代能在低分辨率圖像上做的操作就不要在高分辨率上做。我處理高分辨率圖像時經(jīng)常先降采樣到一半尺寸做形態(tài)學(xué)操作得到結(jié)果后再上采樣回原尺寸。這樣做計算量減少到四分之一而形態(tài)學(xué)操作對分辨率不敏感降采樣后的效果跟原尺寸差別很小。當(dāng)然如果目標尺寸接近像素級降采樣會丟失目標這時候就不能降。6.4 與其他預(yù)處理方法的配合形態(tài)學(xué)操作很少單獨使用通常跟濾波、閾值化、連通域分析配合。我的標準預(yù)處理流水線是高斯濾波去高頻噪聲自適應(yīng)閾值二值化開運算去殘留噪點閉運算填孔連通域分析提取目標。這個流水線在大多數(shù)場景下都能給出不錯的結(jié)果。如果圖像對比度低閾值化之前可以先做直方圖均衡化。如果圖像光照不均可以用頂帽運算做背景校正。如果目標邊緣模糊可以用形態(tài)學(xué)梯度增強邊緣。這些組合方法需要根據(jù)具體圖像靈活調(diào)整沒有固定套路。7. 實際項目中的應(yīng)用案例拆解7.1 工業(yè)零件表面缺陷檢測我做過一個金屬零件表面缺陷檢測的項目目標是找出零件表面的劃痕和凹坑。原始圖像是灰度圖表面有反光不均和加工紋理干擾。處理流程是先用頂帽運算校正光照不均再用自適應(yīng)閾值二值化然后用開運算去除細小紋理噪聲最后用連通域分析提取缺陷區(qū)域。頂帽運算的結(jié)構(gòu)元素用了25×25的橢圓形因為光照不均是大尺度的變化需要大結(jié)構(gòu)元素才能估計背景。開運算用了3×3的矩形因為紋理噪聲是細小的點狀和線狀。這個組合下來缺陷檢測的準確率達到了92%誤檢率控制在5%以內(nèi)。這個項目的關(guān)鍵經(jīng)驗是形態(tài)學(xué)操作在缺陷檢測里的角色是預(yù)處理不是最終檢測。它負責(zé)把圖像清理干凈讓后續(xù)的閾值分割和連通域分析能穩(wěn)定工作。不要指望形態(tài)學(xué)直接給出缺陷位置它沒這個能力。7.2 醫(yī)學(xué)細胞圖像分割另一個項目是細胞圖像分割目標是統(tǒng)計細胞數(shù)量和測量細胞面積。原始圖像是熒光顯微鏡圖像細胞核發(fā)亮背景暗但細胞核內(nèi)部有暗斑細胞之間有粘連。處理流程是高斯濾波去噪Otsu閾值二值化開運算分離粘連細胞閉運算填充內(nèi)部暗斑連通域分析計數(shù)。開運算用了5×5的橢圓形閉運算用了7×7的橢圓形。開運算分離了大約30%的粘連細胞閉運算填充了約80%的內(nèi)部孔洞。最終計數(shù)準確率從直接閾值化的78%提升到了94%。這個項目的經(jīng)驗是開運算和閉運算的尺寸要配合開運算尺寸小于細胞間距閉運算尺寸大于孔洞尺寸但小于細胞尺寸。7.3 文檔掃描件文字提取文檔掃描件的處理是形態(tài)學(xué)的經(jīng)典應(yīng)用。原始圖像是紙質(zhì)文檔的掃描件背景有紙張紋理和灰塵噪點文字有斷筆和粘連。處理流程是灰度化自適應(yīng)閾值二值化開運算去噪閉運算連接斷筆最后用投影法切分文字行。開運算用了2×2的矩形因為文字筆畫很細結(jié)構(gòu)元素大了會把筆畫腐蝕斷。閉運算用了3×3的矩形連接斷筆的同時不會讓相鄰文字粘連。這個項目讓我深刻體會到文檔圖像的形態(tài)學(xué)參數(shù)要非常保守因為文字細節(jié)太精細稍大一點的結(jié)構(gòu)元素就會造成不可逆的損失。7.4 液晶屏缺陷檢測液晶屏缺陷檢測對形態(tài)學(xué)的要求又不一樣。屏幕背景均勻缺陷是微小的暗點或亮點。處理流程是灰度化黑帽運算提取暗點頂帽運算提取亮點閾值分割連通域分析定位缺陷。黑帽和頂帽的結(jié)構(gòu)元素用了15×15的橢圓形因為缺陷尺寸大概5到10個像素結(jié)構(gòu)元素要大于缺陷尺寸才能把缺陷從背景中分離出來。這個項目的經(jīng)驗是頂帽和黑帽在均勻背景下的缺陷檢測效果極好但前提是背景要足夠均勻。如果背景有漸變或紋理需要先做背景校正。8. 進階技巧與個人實操心得8.1 用形態(tài)學(xué)做背景估計形態(tài)學(xué)的一個高級用法是做背景估計。對灰度圖做開運算如果結(jié)構(gòu)元素尺寸大于所有前景目標得到的就是背景估計圖。然后用原圖減去背景圖就得到前景增強圖。這個方法在光照不均的場景下特別有效比直方圖均衡化更自然。我做過一個車牌識別的預(yù)處理車牌圖像光照不均左邊暗右邊亮。用51×51的橢圓形結(jié)構(gòu)元素做開運算得到背景圖原圖減背景后車牌字符的對比度顯著提升后續(xù)二值化效果好了很多。這個技巧的關(guān)鍵是結(jié)構(gòu)元素要足夠大大到能覆蓋所有字符。8.2 形態(tài)學(xué)與距離變換結(jié)合距離變換是計算每個前景像素到最近背景像素的距離。形態(tài)學(xué)跟距離變換結(jié)合可以做目標分離。具體做法先對二值圖做距離變換然后對距離圖做閾值化得到目標中心的種子點再用分水嶺算法從種子點生長出完整目標。這個方法在細胞分割和顆粒分割里很常用。我處理過一批粘連嚴重的顆粒圖像直接用形態(tài)學(xué)開運算無法分離因為顆粒之間沒有明顯的間隙。后來用距離變換加閾值化找到每個顆粒的中心再用分水嶺算法分割成功分離了95%以上的粘連顆粒。這個組合方法的威力比單純形態(tài)學(xué)大得多但參數(shù)也更復(fù)雜需要多調(diào)。8.3 形態(tài)學(xué)操作的并行化如果處理視頻流或大批量圖像形態(tài)學(xué)操作可能成為性能瓶頸。OpenCV的形態(tài)學(xué)函數(shù)已經(jīng)做了SIMD優(yōu)化單張圖像的處理速度很快。但如果圖像分辨率很高或者需要實時處理可以考慮用GPU加速。OpenCV的CUDA模塊提供了形態(tài)學(xué)操作的GPU版本速度可以提升10倍以上。不過GPU加速的前提是你有NVIDIA顯卡并且編譯了CUDA版本的OpenCV。如果沒有GPU也可以用多進程并行處理多張圖像Python的multiprocessing模塊就能做到。我的經(jīng)驗是單張圖像處理用CPU就夠了批量處理用多進程實時視頻流才需要考慮GPU。8.4 形態(tài)學(xué)參數(shù)的自動化搜索手動調(diào)形態(tài)學(xué)參數(shù)很費時間尤其是結(jié)構(gòu)元素尺寸和迭代次數(shù)。我寫過一個簡單的網(wǎng)格搜索腳本遍歷幾個候選尺寸和迭代次數(shù)用連通域數(shù)量或目標面積作為評價指標自動選出最優(yōu)參數(shù)。評價指標的選擇取決于任務(wù)如果是去噪任務(wù)用噪聲連通域數(shù)量如果是分割任務(wù)用目標面積與真實面積的交并比。這個自動化搜索雖然不能完全替代人工判斷但能快速縮小參數(shù)范圍。我一般先用網(wǎng)格搜索找到大致范圍再在這個范圍內(nèi)手動微調(diào)。這樣比純手動調(diào)參效率高很多尤其是需要處理多張圖像的時候。8.5 幾個容易忽略的細節(jié)第一個細節(jié)是形態(tài)學(xué)操作的原地執(zhí)行。OpenCV的cv2.erode()和cv2.dilate()支持原地操作把輸出圖像設(shè)為輸入圖像本身可以節(jié)省內(nèi)存。但cv2.morphologyEx()不支持原地操作需要另外分配輸出圖像。這個細節(jié)在內(nèi)存受限的環(huán)境下很重要。第二個細節(jié)是結(jié)構(gòu)元素的連續(xù)性。cv2.getStructuringElement()生成的結(jié)構(gòu)元素是連續(xù)的但如果你手動構(gòu)造結(jié)構(gòu)元素要確保它是連續(xù)的。不連續(xù)的結(jié)構(gòu)元素會導(dǎo)致形態(tài)學(xué)操作出現(xiàn)空洞結(jié)果不可預(yù)期。第三個細節(jié)是形態(tài)學(xué)操作的邊界填充類型。OpenCV默認用cv2.BORDER_CONSTANT填充邊界填充值為0。但你可以通過borderType參數(shù)指定其他填充方式比如cv2.BORDER_REPLICATE復(fù)制邊界像素。不同的填充方式對邊界處的形態(tài)學(xué)結(jié)果有影響需要根據(jù)場景選擇。第四個細節(jié)是形態(tài)學(xué)操作對彩色圖像的處理。OpenCV的形態(tài)學(xué)函數(shù)對彩色圖像是逐通道處理的這可能導(dǎo)致顏色失真。如果要在彩色圖像上做形態(tài)學(xué)操作建議先轉(zhuǎn)灰度或轉(zhuǎn)HSV空間在亮度通道上操作再轉(zhuǎn)回彩色空間。我見過有人直接在RGB圖像上做形態(tài)學(xué)操作結(jié)果顏色變得很奇怪排查半天才發(fā)現(xiàn)是通道處理的問題。8.6 從形態(tài)學(xué)看圖像處理的本質(zhì)做了這么多形態(tài)學(xué)項目我最大的體會是形態(tài)學(xué)操作的本質(zhì)是用形狀先驗來過濾信息。你告訴算法“我要保留什么形狀、去掉什么形狀”算法就按這個規(guī)則去執(zhí)行。這個思路跟深度學(xué)習(xí)的思路完全不同深度學(xué)習(xí)是從數(shù)據(jù)里學(xué)形狀先驗形態(tài)學(xué)是人工指定形狀先驗。兩者各有優(yōu)劣。形態(tài)學(xué)的優(yōu)勢是簡單、快速、可解釋、不需要訓(xùn)練數(shù)據(jù)劣勢是需要人工調(diào)參、對復(fù)雜形狀的適應(yīng)能力有限。在實際項目里我通常先用形態(tài)學(xué)做快速原型看看能不能解決問題如果形態(tài)學(xué)搞不定再考慮上深度學(xué)習(xí)。很多時候形態(tài)學(xué)加簡單的閾值分割就能達到90%的效果沒必要上復(fù)雜的模型。這個內(nèi)容后續(xù)還可以這樣擴展把形態(tài)學(xué)操作跟輪廓分析結(jié)合做更精細的形狀測量或者把形態(tài)學(xué)操作跟頻域濾波結(jié)合處理周期性噪聲或者把形態(tài)學(xué)操作擴展到三維體數(shù)據(jù)做醫(yī)學(xué)影像的形態(tài)學(xué)分析。這些方向我都在探索中有機會再單獨寫文章分享。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月天婷婷偷拍| 丁香六月天| www.婷婷五月| 久久激情五月婷婷| 91avse| 99在线精品视频免费观看20| www.9797国产| 天天干天天干天天| www.亚洲激情| 色三级色三级| 欧美电影在线播放| 丁香五月婷中字幕| 婷婷色影院| 久久综合人妻| 99re这里有精品手机在线| 婷婷色五月91啪啪| 99爱爱| 色五月首页| 99亚洲天堂| 99这里有精品视频3| 久99热| 性色播| 九九这里只有精品| 久狠狠| 色婷婷综合影院| 九九aV| 亚洲中文丁香| 天天肏天天肏| 国自产拍偷拍精品啪啪一区二区| 亚洲va成人va成人va在线观看| 欧美性猛交99久久久99| EEUSS鲁片一区二区三区| 六月丁香激情综合| 99re思思热在线视频| 国产精品久久久久久喷浆| 亚洲亚洲永久无码777777| 五月婷婷深深爱| 色99网站| 香蕉人在线香蕉人在线 | 婷婷五月激情网站| 久久人人九| 婷婷丁香五月综合| 综合99久久| 天堂婷婷五月在线| 久久hd| 涩五月婷婷| 亚洲精品大片| 五月婷婷激情综合拍| 色婷婷9| 久久久国产精品黄毛片| 另类激情综合| 亚洲黄色精品| 婷婷五月综合体验看| 第四色色六月色综合| 教师性爱毛片| 搡BBBB搡BBB搡五十| 停停五月色宗合| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 俺来也综合网精品一区 | 91精品刘玥| 日韩久热| 97碰碰视频| 青青夜夜狠狠夜夜狠狠| 久久人人看| 永久天堂日本| 香蕉色色网| 久9热| 久操大| 国产av天堂| 丁香六月在线| 玖玖午夜视频| 国产亚洲精品久久一区二区三区| 俺也去在线视频| a色色色色色| 亚洲综合成人网站| 欧美啪啪网| 亚洲乱码日产精品BD| 97干欧美| 久9久9久9久9久9久9| 婷婷射图五月天| 中文字幕丰满乱孑伦无码专区 | 婷婷中文字幕版| 99日本精品视频热| 婷婷激情五月| 色五月婷婷中文字幕在线观看 | 性爱激情久久| 99久热在线精品99re6热| 丁香五月av| 噜噜干日本| 99精品综合| 人人摸人人干人人做| 婷婷色五月婷婷姐妹| 综合激情肏逼网| 丁香久久激情俄| 日韩野外 无套| 综合AV网| 青青999| 久久久久久久91| 国产AV一区二区三区最新精品| 99无码视频| 精品久久99码| AA片在线观看视频在线播放| 五月天大香蕉视频| 日韩高清成人| 99热这是里只有精品| 久久最新色色色| 99精品在线| 色综合婷婷| 99热日韩| 欧美色欲色欲天天天www| 一本综合丁香日日狠狠色| 五月色丁香婷婷中文字幕| tingting五月天亚洲| 色五月涩涩婷婷蜜桃| 六月丁香五月激情亚洲AV| 人人色人人摸人人看| 天天激情5月天亚洲| 二色AV| 国产性爱亚洲是图| 婷婷射丁香| 久月婷婷| 91日在线视频| 在线观看中文字幕亚洲| 五月人妻婷婷| 激情综合99| www.超碰在线| 五月四色激情| 成人噜噜网| 99在线免费视| 天天插天天爱| 中文字幕无码人妻少妇免费视频 | 五月婷婷五月天天| 在线天堂9| 婷婷六月丁香五月| 亚洲欧洲小视频9| 2016日日夜夜操| 日本99视频| 亚洲综合婷婷| 超碰在线国产| 五月婷婷国产| 五月天成人手机在线视频| 99热这里只有精品5| 久久网日本| 午夜不卡久久精品无码免费| 久操激情| www五月天com| 中文字幕有多少字| www.激情五月天。com| 国产片色| 五月天综合网| 亚洲99综合| 婷婷五月天激情视频| 中文字幕在线视频播放| 色情五月综合婷婷| 激情综合网五月| 五月丁香六月激情在线| 97热这里精品在线视频| 激情五月丁香亭亭| 五月婷婷久久爱| 色五月首页| 久色五月| 爱久久小说下载网| 亚洲色色在线| 色情婷婷| 成人va在线观看视频| 色婷婷丁香五月天在线观看| 婷婷在线五月综合| 丁香婷停五月激情综合深爱| 99爱在线视频| 激情五月天在线观看色婷婷| 婷婷基地爱| av人人操| 色色色色色色网站| 久久综合五月婷婷| 五月丁香人妻| 国内熟女黄色系列| 99 这里只有精品| 欧美日韩成人在线观看| 大香婷婷| 中文AV网站| 免费观看全黄做爰的视频| 在线网黄| 丁香五月综合婷婷| 综合久久综合| 一起草性爱不卡视频| 激情婷婷综合五月少妇| av中文在线| 九九热99免费视频| www.色五月.com| 九伊人网| 91黄操| 精品亚洲日韩99欧美片| 婷婷性福五月天| 久久婷婷五月综合色和| 色综合色综合色综合色综合| 久久天堂加勒比| 99久久久国产精品免费蜜乳tv| 丁香五月天激情| 超碰成人电影| 色色热| 婷综合| 成人丁香| 激情五月天色婷婷综合| 思思re99视频在线观看| 青青草99热久久精品国| AV操逼网| 色婷婷黄色网络| 伊人久久婷婷| 久久婷婷五月草视频在线播放| 丁香久久| 激情精品久久| 在线五月婷| 色婷婷a三区麻| 色色色色色色综合网| 五月色丁香婷婷中文字幕| 亚洲精品久久久久久久久久吃药| 五月激情婷婷六月丁香| 丁香五月成人自拍| 99色色网| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 五月玖玖| 五月天婷婷久久日| 五月婷婷香蕉| http://www.sd-xiangsu.com/| 九九色婷婷Av| AV成人在线播放| 久久新| 色九月婷婷| 午夜婷婷久久 | 中文字幕在线免费看线人| 五月天色婷伊人| 欧美三级巜人妻互换| 国产五月婷| 丁香婷婷久久五月天| 五月婷婷69| 任你擦免费视频| 欧美在线干| 久热这里只有国产| 一起草aV| 女人高潮内射99精品| 激情亚洲五月| 任你擦免费视频| 在线另类| 五月婷婷香| 91偷拍视频| 超碰99热| 久久99热这里只频精品6学生| 大香蕉九九| 97精品人人A片免费看| www狠狠| 91啪啪网| 蜜乳AV成人| 婷婷五月天激情小说| 五月综合婷婷开心网| 任我肏视频精品| 五月婷婷婷丁香播| 五月婷婷视频ab| 丁香五月激情啪| 亚洲国产精品SUV| 色五月丁香五月| 怡红院 久久| 五月激情婷婷偷拍| 天天爱天天操| 激情综合五月| 亚洲无码yw| 热99精品视频观看| 丁香五月婷婷狠狠色| 5Www色5夜| 午夜五月天| 天天做天天摸| 欧美猛片| 能看的av片| 国产操碰| 五月婷婷免费在线观看视频| 永久无码色| 97偷拍在线视频| 婷婷导航| 人人摸人人干| 久久99热这里只频精品6学生| 激情五月天小说网| 五月天婷婷小说| 九九热九九| 成人一级片| 色婷婷精品视频在线播放| 激情五月天视频| 99色在线观看视频| 久热亚洲| 日韩色久| 在线成人视频免费| 天天日 天天草| 99热这里只有的精品视| 激情五月婷婷在线| 五月丁香激情在线| 九九热视频免费| 婷婷激情五月天综合| 激情图片久久| 成人欧美日韩| 99性视频| 丁香丁香激情网| 九九RE视频在线精品| 韩国19 主播内部福利vip免费播放| 99婷婷狠狠成为人免费视频| 99国产精品久久久久久久久久久 | 五月天婷婷在线播放| 伊人五月网| 婷婷五月丁香综合激情小说| 五月丁香AV、伊人业余、性色熟妇| 色色丁香| 五月婷婷狠天天色综合| 色播丁香婷婷五月激情| 五月婷婷六月开心| 欧美性色视频| AV在线资源| 亚洲精品成人| 五月天婷婷小说| 成人午夜无码视频| 婷婷激情五月| 久草视频大香蕉99| 2017人人操| 丁香五月激情网| www一起操| 成人色图情色成人网 www.5b5b5bcom 五月天| 伊人网色婷婷五月天| 久久AV无码精品人妻系列试探| 蜜臀AV在线观看| 蜜桃五月天| 婷婷五月综合中文字幕| 99热丁香五月| 婷婷99| www.25五月婷婷| 欧美丁香婷婷天天操| 伊人婷婷青青cao| 久er7久热| 五月丁香激情综合六月涩涩爱| 色婷婷伦理| 天天色综合综合| 日日夜夜狠狠操| 狠狠干综合| 欧美va视频| 99爱在线精品视频免费观看| 久久久久久久久久久-久五月天婷婷| 操操综合网婷婷| 99久久婷婷精品视频| 97婷婷久久丁香| 热99精品视频五月| 色五月天激情| 亚洲中文字幕AV| 超碰AV在线| 无毒黄色网址| 久久永久网址| 久久激情五月| 欧美三级A做爰在线观看| 国产在线网| 亚洲有码在线视频| 丁香五月激情六月| 九九色逼| 超碰人人在线观看| 色婷五月婷婷| 日本天堂免费99| 五月综合激情婷婷六月色窝| 久久婷婷内射| 激情五月综合网最新| 成人 在线 日韩| 九月激情婷婷丁香| 五月天婷婷色在线视频免费观看| 婷婷五月六月丁香| 丰满少妇猛烈A片免费看观看| 狠狠草网| 99色在线观看视频| 中文字幕无码人妻少妇免费视频 | 狠狠干总合| 五月婷婷六月激情| 强奸幻女毛片| 艾小青av| 国产亚洲精品久久久久久郑州| g00d人体西西| www,婷婷| 久久婷婷青青| 午夜青草资源| 天天做天天爽| 新久久五月天激情| 91狠狠综合久久久久久| 99日精品视频| 激情五月天开心| 婷婷视频在线| 九九爱看亚洲| 亚洲人妻av伦理| 色情久久久| 成人性爱无码| www.久操| 五月天婷婷丁香基地在线观看| 久久婷婷五月丁香蜜桃网| 久久这里精彩免费在线观看| 五月丁香综合啪啪| 久久狼人天堂| 中文字幕在线播放视频| 综合激情在线视频| 婷婷色丁香五月| 亚洲色婷婷五月天| 97碰人人操| 综合超碰熟| 999影院成人在线影院| 蜜臀AV在线观看| 丁香六月色香蕉视频| 亚洲中文字幕av| pom538精品视频| av狠狠操| 久久精品五月天| 丁香婷婷九月| 中文字幕不卡+婷婷五月| 五月丁香久久| 亚洲激情视频在线观看| 日日操夜夜爽| 丁香色播五月天| 国产SUV精品一区二区6| 丁香五月婷婷精品视频| 亚洲成人AV一区在线观看| 婷婷十月丁香| 丁香五月影院| 丁香婷婷五月份| 99热久久这里只有精品| 天天操天天操| 九色亚洲| 九九 激情 网| 久久久久久综合88| 性无码专区无码| 日韩欧美四五区| 天天揷综合网| 99视频这里有精品| 97AV在线视频| 黄色片久久| 日本五月天一页| 欧美六月婷婷| 97人人操人人爽| 欧洲永久精品| 五月停亭久久电影| 亚欧州精品视频| 热99国产精品| 曰本久久女| 五月亚洲| 九月丁香婷婷综合| 中文幕无线码中文字蜜桃| 蜜乳国产网站| 亚洲五月激情| 国产精产国品一二三在观看| 天天激情欧美美女| 狠狠艹狠狠艹| www.91AV.COM| 99热9| 人人看人人草人人摸| 黄色成人AV在线| 可以免费观看的AV| 精品婷婷五月天| 久久久久久久合一狠狠做深爱| 中文字幕成人日韩| 五月丁香啪啪啪| 婷婷久久夜| 色和综合网| 五月丁香婷婷综合视频| 精品婷婷| 99精品久| 99熟女| 五月婷婷九月婷婷九月婷婷| 日本久久婷婷| 久久五月天影院| 婷婷丁香激情综合色情| 婷婷 激情 五月| 五月天婷婷无码| 日日噜噜夜夜狠狠久久丁香六月| 六月综和久久| 99色婷婷| 91丁香| 风流少妇A片一区二区蜜桃 | 激情校园 亚洲| www.丁香黄色五月天人与| 亚洲人人操| 月婷婷亚洲| 色五月婷婷自拍| A片试看120分钟做受图片| 久婷五月| 久久这里只有精品视频1| 九九五月天| 婷婷丁香五月天操逼| 亚洲va综合va国产va中文| 一级黄色尤物综合视频手机在线观看| 色婷婷欧美在线| 免费97碰碰| 九九综合九色欧美狠狠| 影音先锋男人女人| 免费观看全黄做爰的视频| 亚洲高清在线| 色热久| 日日.c| 天天成人丁香美女AV| 天天色综合天天| 波多野结衣AV无码Porn| 五月天基地| 超碰人妻公开在线| 中文字幕一色哟哟哟哟| 99热免费| 亚洲视频在线观看| 夜精品无码A片一区二区蜜桃| 97色干| 91婷色| 五月天激情国产综合婷婷婷| 亚洲激情五月天| 色色色.COM| 五月婷婷欲色| 久久婷婷五月综合色丁香| 99这里只有精品视频在线| 久久九九网| 99热亚洲| 激情综合网五月在线播放| 婷婷激情综合色五月久久图片| 婷婷丁香六月天激情四射网| 91精品国产综合久久蜜芽解析速度| 超碰婷婷五月| 亚洲第二AV| 色在线免费观看| 色九九中文字幕| 丁香婷婷老熟女综合网| 热久91| 九九热这里有精品23| 九九国产视频| 天干天天干天天天天天| 久久五月婷综合网| 激情五月视频在线婷婷| 婷婷爱五月天| 久久久激情视频| 激情综合网五月丁香| www.91久久| 丁香色婷婷| 色色五月婷| 被强行糟蹋的女人A片| 国产真实乱了老女人视频| 欧美69久成人做爰视频| www.色色com| 九九精品热播| 久热99| 妻久久久久| 深爱激情五月天婷婷网| 99热这里只有精品8| 日韩 中文 欧美| 色婷婷影院| 五月丁香久久| av人人操| 人人色人人摸人人看| 日本丁香五月婷婷| 色色色色色色色色网站| 日本五月天激情| 久久久久久97| 色丁香久久| 丁香色五月天| 丁香五月偷拍| 91干99| 色欲久久久久久综合网综合网| 色久影院| 九九热这里只有精品5| 玖热精品综合视频| 激情开心五月婷婷| 激情亭亭五月| 91性高潮久久久久久久久| 9视频在线成人网站| 在线99精品| 五月丁香婷成人网| 久久丝袜婷婷| 人人操9| 成片免费播放| 久热这里只有精品99re | 丁香五月天网站| 天天射影院| 97超级操操| 亚洲天天免费| 精品久久99码| 日本毛片内射| 色丁香婷婷美女视频网站| 97热精品| 香蕉色色网| 九九热只有这里是精品| 色色色国产| 五月婷护士| 天天 青草 制服丝袜 在线| 激情五月丁香六月综合AVXXXX| 五月天桃色深爱网| 98永久精品| 五月综合婷婷久久在线| 天天爱天天做天天操| 天花AV无码| 五月激情偷拍婷婷| 欧美精品999| 五月天天综合| 日本在线va| 男人大jjc女人免费视频| 91日韩在线| 丁香美女五月天婷婷| 日韩ww| 99热久只有| 91婷婷丁香| yazhochengrenavwang| 激情婷婷狠狠干| 丁香六月婷婷综合| 91丨九色丨熟女高潮| 网站免费一站二站| 色九月国产| 99re视频精品| 性爱久久| 婷婷五月天激情网址| 91干视频| 99自拍视频网站| 狠狠搞狠狠操| h亚洲| 久久丁香五月天| 婷婷六月成人| www,婷婷| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 色吧五月婷婷| 欧美日本99| 婷婷五月天资源| 国产AV熟妇人震精品一品二区| WWW,色五月| 九九热最新地址| 亚洲成人免费在线| 色五月婷婷老师| 激情VA视频| 国产人妻人伦精品一区二区| 欧美激情xxxXX| 综合五月天| 天天搞夜夜叫| 影音先锋自拍网| 色婷婷亚洲在线| 九九热这里只有精品9| 天天摸夜夜夜| 五月丁香趴趴| www.色综合.com| 伊人玖玖精品| 亚洲中文字幕av| 五月丁香久久久日婷婷久久婷婷日| 五月丁香婷婷综合| 丁香五月冃欧美| 爆乳熟女-区二区三区| AV操操操| 99热日本| 九九九激情综合| 一级操逼内射在线视频| 色私五月婷婷| 国产亚洲99久久精品| 日本成人噜噜噜噜噜| 五月天激情日色在线| EEUSS鲁片一区二区三区| 色色综合网站| 男人的天堂婷婷色五月| 天天噜| www。五月天激情| 丰满女老板BD高清A片| 深爱激情六月| www.99热| Caoub青青超碰| 91黄操| 日韩欧美四五区| 国产黄色av| 五月丁香啪啪啪| 丁香5月啪啪| 停停五月色宗合| 99热这里只有精品在线| 五月成人综合| 99欧美| 99燥99日| 99操视频| 婷婷丁香色情五月天| 99ri在线| 男人的天堂在线婷婷| 婷婷综合在线| 狠狠色丁香久久婷婷综合五月| www.黄色片-久久成人国产精品在线播放-999AV| 丁香婷婷啪啪| 五月色综合| 人色五月天婷婷| 91九色精品| 爱久久小说下载网| 色色色色五月天| 丁香五月 六月婷婷首页| 日本婷久久| 色五月色综合| 色播播五月天| 日本不卡中文字幕| 夜夜骑夜夜撸| 东北婷婷五月天| 色玖玖导航| 噢美99| 五月婷婷六月丁香| 色啪影院| 免费视频99| 婷婷狠狠五月综合| 99精品热视频只有精品10| 99九九热视频免费| 久久受www免费人成| 九九Av| av在线免费播放| 五月丁香综合激情网| 天天色,天天操,天天射| 丁香激惜男女| 婷婷五月天黄色| 99人人操人人爱久久久| 99婷婷色| 久久综合站| 色135综合网| 99热综合| 开心五月深爱五月| 九色激情网| 葵花AV在线| 最新无毒无码AV| 大地9中文在线观看免费高清| 99热自拍| 久99视频| 五月花激情| www.婷婷五月| 久久久久久久97| 免费播放片大片| av人人干| 婷婷五月在线视频| 爱婷婷都市激情| 婷婷五月综合啪| 狠狠干在线| 五月丁香成年黄色| 另类 在线| 狠狠爱婷婷| 九九热视频99| 91九色首页| 久久九九热视频| 91色久| 色一情一乱一伦一区二区三区| 欧美大肥婆大肥BBBBB| 五月综合视频| 国产毛多水多女人A片| 极品人妻VIDEOSSS人妻| 免费91久久精品| 丁香五月色激情| 丁香五月婷婷少妇| www.9797国产| 三级黄网站| 好吊操这里只有精品| www.五月激情.com| 婷婷五月深深爱| 99re思思久久| 久久婷婷五月综合色奶水99啪| 99国产小视频2013| 六月婷婷日| 久久五月激情| 五月精品| 99精品久久| 色优久久| 九九热视频精品999| 婷婷五月激情五月丁香五月| 国产av基地| 久久婷婷激情五月天一区二区| 丁香五月色综合色播五月| 精品一区二区三区木瓜| 狠狠色噜噜狠狠狠888| 婷婷午夜| 五月丁香亭亭激情操逼网| 伊人大蕉香| 激情五月婷婷丁香六月| 久久这里只有精品无码| 99精品在线| 九九热AV| 91九色在线观看免费| 91综合国免费久入| 亚洲综合视频天天精品| 深爱激情四射| 99热这里只有在线| 一月婷婷色色| 老师的粉嫩小又紧水又多A片视频 粉嫩AV久久一区二区三区 | 六月婷婷影院| 十一月婷婷激情四射| 丁香九月婷婷色| 中文字幕激情综合| 婷婷伊人五月天| 日本在线播放97| 在线观看免费狠狠色丁香香综合| 婷婷五月天av| 婷婷五月天堂一本在线| 亚洲精品视频在线| 风流少妇A片一区二区蜜桃| 日本VA视频| 丁香婷婷色| 99热网精品| 日韩综合天堂| 六月丁香社区| 国外亚洲成AV人片在线观看| 婷婷五月天Av| 婷婷丁香五月亚洲免费| 能看的av| 99久久久久久| 自拍盗摄 另类| 婷婷五月天成人| 五月色亚洲| 天堂AV在线看| 欧美交换配乱吟粗大25P| 另类国产区| 99在这里有精品| 色色国产| 国产日产成人亚洲欧美国产VA| 成人丁香五月| 亚洲av电影网站| 丁香五月天天日| 国产91视频| 嫩草视频观看| 婷婷开心五月| 五月天婷婷婷| 97激情五月天| 色色五月丁香| 欧美在线视频99| 97影院一级片| 亚洲XX网| 五月亭亭直播| www.91AV.com| 婷婷五月激情在线| 99燥99日| 天天模,夜夜模夜夜爽| 婷婷五月天开心网| 99re这里只有精品99| 婷婷六月啪啪| 亚洲无码11| 婷婷久久五月天丁香| 五月天之色情综合网| 五月激激激情综合网| 久久久久久久11111111111| 五月婷成人网| 99噜噜噜在线播放| 婷婷五月天在线综合导航| 人人摸人人| 思思久久99热| 中文字幕网伦射乱中文| 五月激情视频网| 热久精品| 国产永久一二一起草| 久久草大香蕉| 亚洲久久视频| 五月婷婷综合网| 亚洲无码成人网| 九九激情| 久久女人九九| 99热这里都是精品| 人妻久热| 日韩高清成人| 人人爱操| 久久婷婷精品| 97人人射| 丁香欧美| 香蕉曰比| 97影院一级片| 五月婷高清视频| 五月天婷婷人妻| 综合激情五月丁香| 九九超碰人人| 色婷婷基地 | 久久99久久99精品免视看婷| yjzz亚洲国产| 五月天婷婷色色网| 天天综合网亚洲综合网| 一起草无码视频| 秋霞AV淫| 99久久終合| 亚洲精品字幕在线观看 | 久久久久婷婷| 五月婷视频在线| 五月综合婷婷久久在线| 亚洲色五月天在线| 亚洲 综合中文| PORNY九色9l自拍视频成人| 欧美日韩国产成人在线| 日本精品人妻无码77777| 另类视频在线| 99久久婷婷五月综合| 五月天亚洲色| 亚艹艹| 26UUU精品一区二区c〇m| 激情五月丁香综合蜜桃| 五月丁香美女视频| 99操视频| 在线婷婷| 婷婷久久久| 综合久久综合| 九九热av| 色亚洲无码| 99热99色| 久久这里只精品66| 色婷婷五月天亚洲| 丁香婷最新动态| 九九精品在线视频观看| 大香蕉婷婷五月天| 激情性爱五月天| WWW.99热| jiqingtaose五月天| 色婷婷免费视频| 色婷婷五月在线| 9l视频自拍九色9l视频自拍九色9l社区 | 这里只有免费的精品| 五月婷婷之六月丁香| 99热这里只有精品23| 五月丁香婷婷人体| 亚洲日韩乱码一区二区三区四区 | 99热在线资源| 色99日韩| 久热久色| 久久婷婷色丁香| 欧美婷| 丁香六月五月天| 99色在线观看视频| 超碰精品在线| 色综合婷婷| 中文字幕精品无码一区二区| 婷婷五月天天| 中文字幕婷婷在线| 中文字幕av在线| Av狠狠色丁香婷| 婷婷激情综合网| 99九九精品| 成人五月天丁香| 色播综合| 玖玖@三月天天丁香婷婷| 亚洲一级AV在线免费播放| 婷婷五月综合色拍| 99爱视频精品| 九月婷婷丁香| 人人操AV| 久草热在线视频| 人妻日日日| 性爱人人网| 2014天天爽| 夜夜骑福利资源| 99在线免费视频| 五月天婷婷综合网| 亚洲婷婷综合视频| 二色av| 伊人狠狠操| 超碰色综合| 欧美色五月| 婷婷基地成人五月天| aa久久| 六月婷婷私欲| 亚洲网站999| 人妻体体内射精一区二区| 99伊人婷婷在线| 色噜噜狠狠色综合无码久久欧美| 五月天婷婷黄色| 墨西哥毛片内射精| 色综合中文色综合网| av大片在线| 极品人妻VIDEOSSS人妻| 9999综合99综合人| 狠狠做六月爱婷婷综合aⅴ| 丁香成人色情五月天| 激情小说五月天| 91在线视频观看午夜福利| 亚洲综合视频在线| 天天色天天色天天色天天色天天色| 综合久久9| 开心婷婷丁香五月| 桃色五月婷婷| 操日视频| 三级大香蕉网| 国产免费一区二区三区三州老师F1F1.CC| 超碰99热| 国产婷婷综合| 婷婷开心激情| 午夜成人天堂久久无码日韩久久| 99热国内| 婷婷在线精品| 开心五月深爱五月| 九月丁香婷婷综合| 99热在线这里| 五月婷婷综合激情| 欧美日韩成人| 五月婷婷丁香六月| 日日噜狠狠| 亚洲成人av在线观看| 激情综合自拍五月婷婷色五月| 狠狠干在线| 九月丁香婷婷基地| 日日日,com| 色色五月天丁香| 激情五月婷婷色色| 九九久久综合网站| 99久久久99久久91熟女| 亚洲不卡欧洲| 三级黄色大片视频| 香蕉综合在线| 五月天婷婷綜合院| 人妻中文av| 五月天黄色激情小说| 激情深爱五月天| 五月婷婷六月丁香| 日韩 中文 欧美| 婷婷五月18永久免费网站| 五月婷婷开心丁香| 大香蕉在九| 色丁香在线视频| 天天干天天拍| 激情五月激情综合俺也去婷婷小说| 色色亚洲| 婷婷五月天激情电影| 超碰网站在线观看| 99免费偷拍视频| 天天日天天爽夜夜爽| 大香蕉视频99| 久久婷婷五月天综合| 精品99*| 99.色| 婷婷丁香无码专区| 五月天婷婷青青草| 丁香五月激情图片婷婷| 天天操天天日天天爽| 国产偷人爽久久久久久老妇APP| 丁香久色| 影音先锋日本三级资源| 高清无码中文字幕aVDV| 丁香婷婷五月香蕉91| 五月开心激情网| 色域五月丁香| 欧洲亚洲精品| 欧美日韩成人一区二区| 9久国产精品| 色六月婷婷| 玖玖综合色| 婷婷四月 成人 狠狠干| 婷婷视频网| 天天综合插插| 婷婷五月天 丁香五月天 裸体| 青青草视频福利| 99久久婷婷国产综合亚洲| 99精品大片| 婷婷五月天AV在线| 九九AV| 五月天色婷婷视频| 五月丁香综缴情性爱| 99久在线精品99re8热| 色婷婷天堂| 久久这里只精品| 天天cha成人综合网| 美女被肏网站在线看| 噜噜狠狠色综合久| 人妻性爱av网站| AA片在线观看视频在线播放| 亚洲激情97五月天| 色婷婷88| 激情五月天色播| www色五月天| 91九色精品| 色噜噜婷婷| 丁香婷婷婷五月| 色综合久久综合中文综合网| 色五月激情网| 丁香婷婷婷五月| 人妻AV在线观看| 最近免费中文字幕大全高清大全1| 久热视频这里只有精品| 久久精品五月天| 无码色| 国产激情婷婷| 97色色色色色色色| 日本A片一区| 五月婷婷天| 五月天婷婷丁香视频| 亚洲综合另类| 青草视频在线观看视频| 五月天 婷 欧美亚洲| 怕怕av| 亚洲AV免费国产电影| 丁香六月婷| 久久这里只有精品热在99| 色婷婷狠狠干| 丁香久久激情俄| 色狠狠综合| 99精品免费| 五月综合婷婷开心网| 色婷婷激情四射视频| 欧美性生交XXXXX无码小说| 五月天婷婷视频小说| 色色影院aaaav| 五月婷婷综合影院| 日韩中文字幕| 五月天综合在线| 婷婷五月天成人小说| 午夜色色色极品视频| 亚洲九九婷婷| av免费在线看不卡无毒| 99思思| 九九这里有精品| 人人爽人人爽人人爽人人爽| www久久久久久久97| 任你干aa| 亚洲无AV在线中文字幕| caop在线| 六月丁香VA| 色播五月丁香综合| 久久狠狠欧美| 久久伊人9| 青青久久91| 一点色成人网| 天天狠狠夜夜狠狠2023| 色婷婷久久| 综合激情五月天六月婷免费视频| 色色色在线播放| 日韩一级片| 丁香九月综合激情| 日韩AV在线免费| 欧美69久成人做爰视频| 婷婷丁香六月天| 国产激情AV| 青青草原伊人网| 五月婷婷激情综合网| 人人看人人草人人摸| 婷久看人爽| 色婷婷久久综合久色| 亚洲永久四色| 草一草avb| 99九九中文字幕视频| 日本色超碰| 欧美日本不卡黄色片| av国产精品| 国产精产国品一二三在观看 | 日本99在线| 国产AV不卡福利| 97超碰色| 日韩操啪| 99热亚洲综合| 欧美色色日韩| sewuyuetingtingiii| 91精品国产色猫| 日韩久久欧亚| 99日在线观看视频| 91精品综合久久久五月天| 在线亚洲综合网| 91传媒无码人妻精| 91 久热| 无码一级片| 亚洲4区国产欧美| 99五月婷| 婷婷丁香宗合888| 91日本在线| 国产欧美日韩性爱| 五月天婷婷久久日| 五月婷婷综合激情| 色高清无码视频| 欧美VA在线观看| 天天爽夜爽| 综合狠狠干| 婷婷伊人网| 国产日韩欧美| 一二线视频 另类| 丁香五月激情啪啪综合| 俺去婷婷 丁香| 九九人人精品| 丁香六月婷月91婷月| 中文字幕日韩无码制服诱或| 久久久人妻门| www夜夜操| 中文字幕永久免费| 色色色色综合网| 色九九综合色| 99久久.www| 超碰精品在线| 丁香婷婷射| 五月天久久91| 国产精品电影| 亚洲亚洲人成综合网络| Www.久久| 六月婷婷激情| 青青草护士中出内射-欧美电影在线天堂新版| 99热这里只有精品66| 91VIP在线观看| 大胆伊人久久| 婷婷五月深情丁香深爱日韩| 婷婷日日天天| 天天肏天天肏天天肏| 婷婷五月激情小说| 欧美情色电影一区二区| 中文字幕在线不卡视频| 色情综合网| 天天爽天天透天天爱| 九九热精品视频在线观看| 婷婷五月天激情文学| 丁香狠狠干| a九九热www| 亚洲激情高潮| 欧美性丁香色色五月天干干| AA丁香综合激情| 人人摸人人干| 色色婷婷五月天| 天天操夜夜肏| 婷婷五月色情天| 五月久久丁香| 日韩无码专区| 婷婷五月综合激情免费视频| 婷婷五月色情天| www.色色色com| 丁香色五月 97干| 日日夜夜狠狠干| 色情五月婷婷| 婷婷综合干| 色五月亚洲五月天| 97人人搞| 超碰2021| 亚洲夜五月| 91色吧网| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 色婷婷久久综合| 79色色色色| 亚洲色五月| 色五月婷婷影院| 久久五月婷天天干| 日韩啊啊啊| 91porn一起草| 26uuu另类亚洲欧美日本一| 深爱激情五月网| 久久综合首页| 深情五月天| 午夜无码熟熟妇丰满人妻| 超碰在线99| 久久人人九| 伊人丁香五月婷婷潮吹| 久久这里只有精品视频26| 亚洲九九夜夜| 丁香五月激情综合婷综| 五月综合缴情网| 色婷婷成人做爰A片免费看网站| 香蕉操亚洲| 欧美黄色韩日网| 182.t午在线观看| 婷婷五月天 偷拍| 人妻啪啪啪| 欧美人人操| 色哟哟www| 成年视频免费观看| 综合久久人妻| 99丁香婷婷综合网| 激情五月综合ì香亚洲| 婷婷在线视频| 妇激情基地| 91碰碰| 亚洲成人一区| 色综合大香蕉| 91精品婷婷国产综合| 丁香五月偷拍| 九九热91| 五月丁香六月欧美综合网站| 五月九九综合| 五月激情网络| 超碰在线免费观看3 9| 五月天久久成人| 51精品国自产在线| 伊人五月人妻精品| 日本人妻伦在线中文字幕| 久久激情综合| 狠狠精品干练久久久无码中文字幕 | 五月婷婷九月婷婷九月婷婷| 日本黄 色 片| 99.色| 26uuu视频欧美| 狠狠五月天| aaa9区免费在线观看| 亚洲综合五月| 五月 成人 婷婷| 97人人操人人爽| 性色欲情 网站|