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

ARTICLE DETAIL

資訊詳情

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

基于OpenCV的銀行卡識別系統(tǒng):邊緣檢測、形態(tài)學(xué)與模板匹配實(shí)戰(zhàn)

基于OpenCV的銀行卡識別系統(tǒng):邊緣檢測、形態(tài)學(xué)與模板匹配實(shí)戰(zhàn) 簡介一套完整的基于OpenCV的銀行卡識別系統(tǒng)源碼包面向計(jì)算機(jī)視覺學(xué)習(xí)者、金融科技開發(fā)者及高校相關(guān)課題研究。該方案融合OpenCV圖像處理與機(jī)器學(xué)習(xí)技術(shù)覆蓋銀行卡圖像預(yù)處理、邊緣檢測、二值化、字符定位與識別等完整流程可直接運(yùn)行調(diào)試并配有設(shè)計(jì)報(bào)告與演示PPT便于理解系統(tǒng)架構(gòu)和復(fù)現(xiàn)實(shí)驗(yàn)。資源共43個(gè)文件以10個(gè)Python腳本為核心輔以16張JPEG和7張JPG測試圖片、項(xiàng)目說明文檔、演示PPT、配置文件及前端頁面資源壓縮包大小10.31MBPython腳本覆蓋界面啟動(dòng)、目標(biāo)檢測與字符識別主流程設(shè)計(jì)報(bào)告則對算法原理、參數(shù)調(diào)優(yōu)和測試結(jié)果進(jìn)行了詳細(xì)說明。目前已有98人學(xué)習(xí)下載適合用于課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)或作為OCR識別項(xiàng)目的入門參考通過閱讀源碼與報(bào)告可掌握OpenCV在金融場景下的實(shí)戰(zhàn)用法及字符識別模型的調(diào)用與優(yōu)化思路。1. 基于 OpenCV 的銀行卡識別系統(tǒng)先把「找卡號」當(dāng)主戰(zhàn)場識別數(shù)字只是收尾很多人第一次接觸這個(gè)項(xiàng)目以為難點(diǎn)在「識別數(shù)字」于是上來就研究 OCR。實(shí)際上做過一遍的人都知道翻車的全是前半段——卡片沒擺正、反光區(qū)域把邊緣檢測攪亂、卡號區(qū)域被誤判成信用卡 logo 或者一大塊底色。所謂基于 OpenCV 的銀行卡識別系統(tǒng)本質(zhì)是一條傳統(tǒng)圖像處理流水線讀圖 → 灰度化 → 邊緣檢測 → 形態(tài)學(xué)閉運(yùn)算 → 輪廓篩選 → 定位卡號 ROI → 數(shù)字分割 → 模板匹配。整個(gè)鏈路不用深度學(xué)習(xí)模型每一步的中間結(jié)果都能可視化這對課程設(shè)計(jì)和畢設(shè)來說非常友好因?yàn)槟憧梢阅弥虚g結(jié)果圖寫進(jìn)設(shè)計(jì)報(bào)告里講清楚每一層為什么這么做。適合有 Python 基礎(chǔ)、想入門 OpenCV 圖像處理、或者正在做模式識別課程設(shè)計(jì)的開發(fā)者。2. 識別鏈路拆解從預(yù)處理到模板匹配先把每一步的中間結(jié)果看懂2.1 為什么第一步不是 OCR而是灰度化 邊緣檢測OCR 解決的問題是「把圖片里的文字變成字符串」但它天生不擅長處理「文字在哪兒」。一張真實(shí)拍攝的銀行卡照片里有卡面背景圖案、銀行 logo、卡號凸字、有效期、持卡人姓名甚至還有持卡人手指和桌面紋理。如果直接把整張圖丟給 OCR它會(huì)返回一堆亂七八糟的文字。所以 OpenCV 方案的第一件事不是識別而是把「卡號區(qū)域」從畫面里切出來。常見做法是先灰度化再用高斯模糊降噪最后用 Canny 做邊緣檢測。高斯模糊的核大小一般取 (5, 5)太小壓不住傳感器噪聲太大會(huì)把數(shù)字邊緣也磨平。Canny 的雙閾值建議設(shè)成 (100, 200)這個(gè)區(qū)間對銀行卡這種高對比度物體比較穩(wěn)。做完這一步你會(huì)得到一張黑白邊緣圖卡片的邊框、卡號凸字、卡面圖案的邊緣都會(huì)變成白色線條。注意這里不要急著找輪廓因?yàn)榭ㄌ柕囊淮當(dāng)?shù)字是分散的邊緣圖里的它們是一堆斷開的白色小段下一步得先用形態(tài)學(xué)把它們連成一個(gè)整體。import cv2 import numpy as np img cv2.imread(card.jpg) # 讀入銀行卡照片 gray cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 轉(zhuǎn)灰度后續(xù)所有操作都基于單通道 blur cv2.GaussianBlur(gray, (5, 5), 0) # 高斯模糊抑制 CMOS 傳感器噪聲 edges cv2.Canny(blur, 100, 200) # Canny 邊緣檢測雙閾值 100/200 cv2.imwrite(edges.png, edges) # 保存中間結(jié)果方便排查這段代碼里GaussianBlur的第三個(gè)參數(shù)是高斯核標(biāo)準(zhǔn)差填 0 表示由核大小自動(dòng)計(jì)算。Canny的第二個(gè)和第三個(gè)參數(shù)分別是低閾值和高閾值梯度幅值高于 200 的像素必保留低于 100 的必丟棄介于中間的看是否與強(qiáng)邊緣相連。我建議每次調(diào)參都把edges.png保存下來看一眼邊緣圖如果全是麻點(diǎn)就把高斯核加大到 (7, 7)如果卡號輪廓斷得太碎就把高閾值降到 150。2.2 輪廓檢測找卡號區(qū)域先用形態(tài)學(xué)把斷開的邊緣連起來邊緣檢測做完卡號區(qū)域是一堆斷開的白線直接findContours會(huì)找出幾十個(gè)碎輪廓。這時(shí)候需要形態(tài)學(xué)閉運(yùn)算。閉運(yùn)算 先膨脹后腐蝕作用是填補(bǔ)小孔、連接相鄰邊緣。對銀行卡卡號場景膨脹核要設(shè)計(jì)成「水平長條」因?yàn)榭ㄌ枖?shù)字是橫向排列的水平方向需要連接垂直方向則要克制不然相鄰兩行字會(huì)被連成一片。核的形狀用cv2.getStructuringElement生成常見配置是MORPH_RECT尺寸 (15, 5)。對于 720p 級別的輸入圖這個(gè)尺寸能在水平方向把相鄰數(shù)字邊緣搭在一起同時(shí)垂直方向留出間隔。做完閉運(yùn)算后再用findContours卡號區(qū)域應(yīng)該變成一個(gè)或兩個(gè)完整的大輪廓銀行 logo 之類的小圖案因?yàn)槊娣e不夠會(huì)被過濾掉。kernel cv2.getStructuringElement(cv2.MORPH_RECT, (15, 5)) closed cv2.morphologyEx(edges, cv2.MORPH_CLOSE, kernel) contours, _ cv2.findContours(closed, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) roi None for c in contours: x, y, w, h cv2.boundingRect(c) area w * h ratio w / h if area 8000 and 4.0 ratio 10.0: roi gray[y:y h, x:x w] cv2.rectangle(img, (x, y), (x w, y h), (0, 0, 255), 2) break cv2.imwrite(roi.png, img)這段代碼有兩個(gè)關(guān)鍵參數(shù)需要按實(shí)際照片分辨率調(diào)area 8000是對 720p 圖片設(shè)置的面積下限如果你的圖是 1080p面積閾值要放大到 15000 以上否則卡號區(qū)域輪廓會(huì)被過濾掉ratio是寬高比卡號區(qū)域是典型的「矮胖條」比銀行卡主體更扁同時(shí)不會(huì)扁到像一條線所以 4.0 到 10.0 是一個(gè)比較穩(wěn)的起點(diǎn)。如果roi一直為空把你保存的closed.png打開看大概率是核寬度不夠?qū)е螺喞獩]連起來。這里我用的是RETR_EXTERNAL只取最外層輪廓避免卡號里的數(shù)字凹槽產(chǎn)生內(nèi)部輪廓干擾篩選。2.3 數(shù)字分割與模板匹配識別放在最后一步控制變量才能排錯(cuò)拿到卡號 ROI 之后接下來做數(shù)字分割。最簡單可靠的方法是二值化后再次找輪廓然后用x坐標(biāo)排序。為什么要排序因?yàn)閒indContours返回的輪廓順序不代表從左到右它按層級和檢索順序輸出不排序的話識別出來的卡號會(huì)是亂的。排序后還要做寬度過濾把誤檢的小噪點(diǎn)輪廓去掉。識別這一步很多畢設(shè)和課程設(shè)計(jì)選模板匹配而不是 Tesseract原因很實(shí)際銀行卡卡號只有 0-9 十個(gè)數(shù)字準(zhǔn)備十張標(biāo)準(zhǔn)數(shù)字模板非常容易模板匹配對光照變化的容忍度也夠用而且不需要額外安裝 OCR 引擎環(huán)境依賴小。設(shè)計(jì)報(bào)告里畫流程圖也方便每一層都看得見。模板匹配的做法是把每個(gè)數(shù)字 ROI 縮放到模板大小然后用TM_CCOEFF_NORMED計(jì)算相似度取最大值對應(yīng)的數(shù)字為結(jié)果。def match_digit(roi_gray, templates): best_num, best_val -1, -1.0 roi_resized cv2.resize(roi_gray, (templates[0].shape[1], templates[0].shape[0])) for num, tpl in enumerate(templates): res cv2.matchTemplate(roi_resized, tpl, cv2.TM_CCOEFF_NORMED) _, max_val, _, _ cv2.minMaxLoc(res) if max_val best_val: best_val, best_num max_val, num return best_num, best_valTM_CCOEFF_NORMED是歸一化相關(guān)系數(shù)輸出范圍理論上在 -1 到 1 之間越大越相似。它比TM_SQDIFF更魯棒因?yàn)閷φw亮度偏移不敏感銀行卡照片的光照不均勻正好是它的主要場景。模板匹配的坑在于模板本身的質(zhì)量常見做法是自己從一張清晰的卡號截圖上把每個(gè)數(shù)字摳下來存成 20 × 40 左右的灰度圖。摳模板時(shí)有兩條建議一是模板字體盡量和識別對象一致銀行卡上的凸字是等寬字體不要用手寫體或者襯線字體做模板二是模板背景必須是純色最好做一次二值化再存否則匹配分?jǐn)?shù)會(huì)被背景紋理拖低。3. 拿到 zip 源碼之后的復(fù)現(xiàn)路徑環(huán)境準(zhǔn)備、目錄排查與最小運(yùn)行3.1 環(huán)境準(zhǔn)備Python、OpenCV、numpy 的版本組合這個(gè)項(xiàng)目寫進(jìn)設(shè)計(jì)報(bào)告的時(shí)候一般不會(huì)把環(huán)境配置寫得很細(xì)但你在自己電腦上跑的時(shí)候環(huán)境恰恰是第一個(gè)攔路虎。最常見的報(bào)錯(cuò)是ModuleNotFoundError: No module named cv2原因是 pip 安裝包的名字是opencv-python而導(dǎo)入語句寫的是import cv2兩者不一致。還有一類情況是系統(tǒng)里同時(shí)裝過 OpenCV C 版本但 Python 環(huán)境里看不到因?yàn)?C 版本不會(huì)自動(dòng)供 Python 調(diào)用。我個(gè)人的建議是新建一個(gè)干凈的虛擬環(huán)境不要往系統(tǒng) Python 里直接裝不然以后裝 torch 或者 ddddocr 的時(shí)候依賴版本互相打架很頭痛。Python 版本選 3.8 到 3.10 比較穩(wěn)OpenCV 用 4.x 系列numpy 用 1.24.x 左右。這里有個(gè)隱藏的坑新版 numpy 2.x 對 OpenCV 4.x 的某些接口不兼容如果你裝的是最新 numpy可能會(huì)出現(xiàn)莫名其妙的TypeError或者CvTypeError遇到這種問題先看版本不要先懷疑算法代碼。python -m venv venv source venv/bin/activate # Windows 下是 venv\Scripts\activate python -m pip install --upgrade pip python -m pip install opencv-python numpy1.24.4 python -c import cv2; print(cv2.__version__)最后一行命令是驗(yàn)證環(huán)境是否裝通能打印出版本號說明導(dǎo)入成功。注意opencv-python這個(gè)包只包含主模塊如果你需要cv2.xfeatures2d這類擴(kuò)展模塊得裝opencv-contrib-python但銀行卡識別用不到別多裝。如果你用的是 conda 環(huán)境conda install opencv會(huì)同時(shí)拉起來一堆依賴我反而推薦 miniconda 創(chuàng)建環(huán)境后仍然用 pip 安裝 opencv-python這樣最可控。3.2 解壓后先看什么源碼目錄與設(shè)計(jì)報(bào)告的對應(yīng)關(guān)系zip 打開之后不要急著跑代碼先按目錄結(jié)構(gòu)理清文件職責(zé)。比較規(guī)范的壓縮包里通常會(huì)有這么幾類東西一個(gè)或多個(gè).py文件這是主程序和模塊一個(gè)template或templates文件夾放著 0-9 的數(shù)字模板圖片若干測試圖片以及設(shè)計(jì)報(bào)告文檔Word 或 PDF。如果你看到的入口文件叫main.py直接用 python 跑就行如果叫card_ocr.py或者bankcard.py找文件末尾有沒有if __name__ __main__段這段就是入口。先打開 Python 文件按函數(shù)名快速掃一遍。我一般會(huì)先找五個(gè)關(guān)鍵函數(shù)圖像讀取、預(yù)處理、輪廓定位、數(shù)字分割、模板匹配。有的源碼會(huì)把模板匹配寫成一個(gè)大函數(shù)這不影響閱讀但你得確認(rèn)它內(nèi)部是否調(diào)用了cv2.imread去讀模板文件如果是模板路徑是相對路徑還是絕對路徑?jīng)Q定了你解壓后能不能直接跑起來。設(shè)計(jì)報(bào)告里通常有系統(tǒng)結(jié)構(gòu)圖和流程圖先看流程圖對照代碼能少走很多彎路畢竟課程設(shè)計(jì)報(bào)告里的流程圖往往是作者對代碼結(jié)構(gòu)的真實(shí)映射。# 這段代碼說明源碼入口常見結(jié)構(gòu) import argparse def main(): parser argparse.ArgumentParser(descriptionBank Card Recognition) parser.add_argument(--image, requiredTrue, helppath to input card image) parser.add_argument(--templates, default./templates, helptemplate dir) args parser.parse_args() result recognize(args.image, args.templates) # 核心識別函數(shù) print(card number:, result) if __name__ __main__: main()這個(gè)入口函數(shù)用了argparse接收命令行參數(shù)。為什么要確認(rèn)入口結(jié)構(gòu)因?yàn)橛械脑创a把圖像路徑硬編碼在文件里你換了圖片就得改代碼跑起來很別扭??吹絽?shù)解析結(jié)構(gòu)你就可以在命令行里傳不同的圖片而不用動(dòng)源碼這在嘗試多張卡面時(shí)非常重要。3.3 最小運(yùn)行命令入口腳本與參數(shù)解析環(huán)境裝好、目錄理順后運(yùn)行就簡單了。假設(shè)源碼入口是main.py模板目錄是./templates測試圖是./imgs/test1.jpg最小運(yùn)行命令如下python main.py --image ./imgs/test1.jpg --templates ./templates跑完之后程序通常會(huì)在終端打印識別出的卡號同時(shí)把定位標(biāo)記圖保存成文件比如result.jpg。如果程序運(yùn)行沒有任何報(bào)錯(cuò)但輸出結(jié)果是空的或者全-1說明圖片進(jìn)到了識別流程但模板匹配階段沒有拿到合格的置信度問題大概率出在模板和 ROI 的預(yù)處理不一致上比如模板沒有二值化而 ROI 是灰度圖或者兩者長寬比差異太大被 resize 拉伸變形了。還有一種情況是你拿到的源碼入口不接受參數(shù)直接硬編碼了路徑。這時(shí)候不要急著改代碼結(jié)構(gòu)先看開頭的幾個(gè)路徑變量把它們改成你本機(jī)的相對路徑注意 Python 文件的工作目錄是運(yùn)行命令時(shí)所在的目錄不是文件所在目錄。換句話說你在venv里運(yùn)行python /home/user/card_src/main.py程序里的./templates指的是當(dāng)時(shí)終端所在的目錄不是card_src目錄。這個(gè)細(xì)節(jié)我踩過無數(shù)次建議直接在源碼里用os.path.join(os.path.dirname(__file__), templates)來拼模板路徑一勞永逸。4. 讓識別率從「能跑」變成「能用」的 5 個(gè)必調(diào)參數(shù)4.1 形態(tài)學(xué) kernel 尺寸水平連字符別讓它連成一片閉運(yùn)算的 kernel 尺寸直接決定卡號區(qū)域定位成敗。核太短數(shù)字邊緣連不起來輪廓就是碎的一百多塊面積和寬高比過濾根本找不到目標(biāo)核太長兩行數(shù)字或者卡號和旁邊文字被連成一個(gè)整體定位框把整個(gè)卡片下半部分框進(jìn)去。對于 720p 輸入圖(15, 5) 是我比較常用的起點(diǎn)如果卡號區(qū)域定位框偏窄裁掉了一兩個(gè)數(shù)字說明水平方向閉運(yùn)算沒連夠把核寬加到 20如果定位框把相鄰的卡面機(jī)構(gòu)名稱也框進(jìn)來了就縮小到 10。還有一個(gè)很容易忽略的點(diǎn)kernel 的垂直尺寸。銀行卡卡號兩行之間間距不大如果垂直尺寸設(shè)置成 10 以上兩行數(shù)字會(huì)被連成一個(gè)大塊寬高比瞬間失真。所以垂直方向控制在 3 到 5 比較安全。4.2 輪廓面積閾值與寬高比控制抓取的是整個(gè)卡片還是卡號區(qū)域源碼里通常有兩個(gè)閾值在起作用最小輪廓面積和寬高比。面積閾值太低桌面的紋理邊緣、銀行卡上的 logo 都會(huì)被當(dāng)作候選后面模板匹配浪費(fèi)在錯(cuò)誤 ROI 上閾值太高如果攝像頭離得遠(yuǎn)導(dǎo)致卡號區(qū)域像素面積小就會(huì)被直接過濾掉。寬高比的設(shè)定取決于你要定位什么定位整張卡則寬高比在 1.5 附近定位卡號區(qū)域則在 4.0 到 10.0 之間。我見過不少源碼把兩個(gè)閾值直接寫死在代碼里沒有參數(shù)注釋。建議你在調(diào)試時(shí)把這兩個(gè)值提升為命令行參數(shù)或者至少寫成文件頂部的常量并加上注釋說明「這個(gè)值是在什么分辨率下調(diào)出來的」。不然你換一張 1080p 的測試圖所有輪廓面積都會(huì)放大快三倍固定閾值直接失效。4.3 模板匹配的置信度閾值不是 max 值大于 0.8 就萬事大吉cv2.matchTemplate返回的匹配分?jǐn)?shù)只是一個(gè)相對相似度TM_CCOEFF_NORMED在理想情況下接近 1但因?yàn)殂y行卡凸字有立體陰影、照片有反光實(shí)際能到 0.7 以上就算不錯(cuò)了。很多人在源碼里看到if max_val 0.8這樣的閾值就以為低于 0.8 的識別都是失敗的這往往會(huì)漏掉大量本來可以正確識別的數(shù)字。更好的做法是不設(shè)絕對閾值而是記錄整張卡號序列的平均置信度最后判斷平均值比如低于 0.5 時(shí)輸出「卡片可能識別失敗」。你也可以把每個(gè)數(shù)字的置信度打印出來如果你發(fā)現(xiàn)某個(gè)位置的數(shù)字總是被分成兩個(gè)輪廓說明分割階段出了問題而不是匹配閾值的問題。調(diào)閾值永遠(yuǎn)先看單數(shù)字的分布不要拍腦袋設(shè) 0.8。4.4 數(shù)字排序x 坐標(biāo)排序 vs 行排序分割出的數(shù)字輪廓必須排序后再拼接否則輸出的卡號順序是亂的。銀行卡卡號有兩種常見形式一種是單行排列比如 16 位卡號印成一行另一種是兩行前 8 位一行后 8 位一行。單行排序列按cv2.boundingRect的x坐標(biāo)升序排列即可。雙行排列就不能只按x排得先按y坐標(biāo)分出行再在每一行內(nèi)按x排。我建議直接寫一個(gè)分組函數(shù)先對每個(gè)輪廓取中心點(diǎn)(cx, cy)按cy做聚類。同一行的輪廓cy差值應(yīng)該很小差值超過輪廓自身高度的一半就認(rèn)為換行了。這部分用numpy就可以實(shí)現(xiàn)不要依賴輪廓的索引順序。4.5 二值化方法全局 threshold 處理不了復(fù)雜光照很多模板匹配代碼默認(rèn)對 ROI 做cv2.threshold(img, 127, 255, cv2.THRESH_BINARY)這在均勻光照下能用但銀行卡是塑料材質(zhì)側(cè)面一打光就會(huì)出現(xiàn)漸變反光全局閾值會(huì)直接把部分卡號數(shù)字從白色變成黑色。遇到這種問題優(yōu)先換cv2.adaptiveThreshold它按局部鄰域計(jì)算閾值能解決大部分光照梯度問題。代價(jià)是會(huì)把卡面的紋理誤判成前景所以自適應(yīng)閾值之后通常要加一個(gè)中值濾波或者先用面積過濾掉小噪點(diǎn)。如果換自適應(yīng)閾值后效果反而變差還有一種常見做法先對 ROI 做大津法THRESH_OTSU。大津法自動(dòng)根據(jù)直方圖選擇閾值在卡號 ROI 這種前景背景比例相對固定的場景里表現(xiàn)不錯(cuò)。我自己的經(jīng)驗(yàn)是優(yōu)先 OTSU它不需要調(diào)參數(shù)只有 OTSU 效果不好時(shí)才上自適應(yīng)閾值并調(diào)塊大小。參數(shù)常見設(shè)置調(diào)試信號閉運(yùn)算 kernel(15, 5)定位框碎或包含多余區(qū)域時(shí)調(diào)整輪廓最小面積8000 720pROI 為空時(shí)按分辨率等比放大寬高比范圍4.0 ~ 10.0定位到整張卡或 logo 時(shí)收窄匹配置信度0.5 ~ 0.7低于 0.4 優(yōu)先檢查預(yù)處理二值化方式OTSU / adaptive反光嚴(yán)重?fù)Q adaptive紋理干擾換 OTSU5. 避坑環(huán)境報(bào)錯(cuò)、空輪廓、誤匹配的三類常見翻車與排查5.1 No module named cv2pip 包名和導(dǎo)入名不是一回事現(xiàn)象運(yùn)行源碼第一行import cv2就拋ModuleNotFoundError: No module named cv2。 原因很多人直接用pip install opencv或者根本沒裝庫。PyPI 上不存在名為opencv的 Python 包正確的包名是opencv-python而它的導(dǎo)入名是cv2包名和導(dǎo)入名不一致是 Python 生態(tài)里比較特殊的一處。 解決執(zhí)行python -m pip install opencv-python不要用pip install opencv。如果已經(jīng)裝了很多包怕沖突先python -m pip list | grep opencv看是否裝過別的 OpenCV 發(fā)行版有opencv-contrib-python同時(shí)在環(huán)境里時(shí)建議只保留一個(gè)兩個(gè)都裝會(huì)導(dǎo)致符號沖突具體表現(xiàn)是findContours等函數(shù)報(bào)奇怪的 C 類型錯(cuò)誤。5.2 imread 返回 None中文路徑與文件缺失問題現(xiàn)象代碼沒有報(bào)錯(cuò)但cv2.imread讀出來的img是 None整個(gè)流程在cv2.cvtColor處拋出空指針異常。 原因OpenCV 的imread內(nèi)部用的是 C 的文件讀取接口不支持中文路徑。如果你的測試圖片放在D:\測試圖片\card.jpg這種目錄下imread會(huì)返回 None而且不會(huì)報(bào)任何 warning。 解決把圖片路徑改成純英文目錄或者用cv2.imdecode配合numpy從字節(jié)流讀取繞開imread的路徑解析限制。第二種方法的寫法是img cv2.imdecode(np.fromfile(D:/測試圖片/card.jpg, dtypenp.uint8), cv2.IMREAD_COLOR)。同樣的問題也會(huì)出現(xiàn)在cv2.imwrite上寫結(jié)果圖到中文路徑時(shí)一樣會(huì)失敗只是imwrite通常會(huì)返回 False注意檢查返回值而不是只看有沒有報(bào)錯(cuò)。5.3 cv2.error: OpenCV(4.4.0)... 與 findContours 返回值不一致現(xiàn)象運(yùn)行到contours, hierarchy cv2.findContours(...)時(shí)報(bào)錯(cuò)錯(cuò)誤信息類似too many values to unpack。 原因OpenCV 3.x 和 4.x 的findContours簽名不同。3.x 返回三個(gè)值(image, contours, hierarchy)4.x 返回兩個(gè)值(contours, hierarchy)。如果你下載的源碼用的是舊教程的寫法跑到新版 OpenCV 上就會(huì)解包失敗。報(bào)錯(cuò)里帶著OpenCV(4.4.0) C:\users\...\pip-req-build...就是典型的 OpenCV 版本差異。 解決確認(rèn)你的 OpenCV 版本python -c import cv2; print(cv2.__version__)如果是 4.x把代碼改成contours, _ cv2.findContours(...)。如果你需要兼容兩個(gè)版本可以寫一個(gè)小的分支判斷cnt cv2.findContours(...); contours cnt[0] if len(cnt) 2 else cnt[1]。這個(gè)兼容寫法在給別的同學(xué)跑代碼時(shí)特別有用因?yàn)樗沫h(huán)境很可能和你不一樣。5.4 卡號區(qū)域定位錯(cuò)亂輪廓沒連起來或者連成一大塊現(xiàn)象定位框用紅框畫出來之后框的位置要么在桌面雜物上要么把整張卡下半部分全包住要么框里只有半個(gè)卡號。 原因三種情況最容易發(fā)生。第一是閉運(yùn)算 kernel 太小數(shù)字邊緣之間還有缺口輪廓不完整寬高比不符合卡號區(qū)域被過濾后反而選到了旁邊的 logo第二是 kernel 垂直尺寸太大把兩行數(shù)字連成了一個(gè)整體第三是輪廓面積閾值太低選中了卡面上的小裝飾圖案。 解決逐層排查。先保存閉運(yùn)算后的closed.png肉眼看輪廓是不是一條完整的白色長條如果斷成幾段加寬水平 kernel如果連成一片減垂直 kernel。然后打印所有候選輪廓的面積和寬高比對照卡號實(shí)際尺寸把閾值范圍收緊。不要憑感覺調(diào)打印數(shù)據(jù)說話。5.5 數(shù)字識別混淆模板字體和卡面字體的差距現(xiàn)象識別結(jié)果里 6 經(jīng)常變成 83 變成 84 變成 9整體置信度都在 0.5 到 0.7 徘徊。 原因模板匹配的原理決定了它只認(rèn)「接近模板的形狀」。銀行卡卡號用的是等寬凸字字體和系統(tǒng)自帶字體、網(wǎng)上隨便下的字體差異很大。特別是 6 和 8、3 和 8 這種筆畫結(jié)構(gòu)接近的數(shù)字只要模板的邊緣和實(shí)際字符差幾個(gè)像素匹配分?jǐn)?shù)就會(huì)倒向錯(cuò)誤的那一邊。 解決重新制作模板而且只從你實(shí)際要識別的卡種上摳模板。準(zhǔn)備一張分辨率高、沒有反光的真實(shí)卡號圖手動(dòng)用矩形框切出每一個(gè)數(shù)字存成模板。摳模板時(shí)把數(shù)字四周空白裁掉不要留大塊背景然后統(tǒng)一縮放到相同尺寸比如 24 × 40。模板制作好之后單獨(dú)測試每個(gè)數(shù)字的匹配分?jǐn)?shù)如果 6 和 8 的分?jǐn)?shù)差不到 0.05說明模板太模糊或者 ROI 里有干擾線回到分割環(huán)節(jié)檢查是不是把兩個(gè)數(shù)字的邊界裁歪了。6. 進(jìn)階用腳本生成一張自測銀行卡先驗(yàn)證流程再驗(yàn)證效果拿到這個(gè)項(xiàng)目后最容易掉進(jìn)去的陷阱是拿一張真實(shí)卡照片反復(fù)調(diào)參結(jié)果卡面反光、拍攝角度等因素混在一起根本分不清是哪個(gè)環(huán)節(jié)出了問題。我習(xí)慣先做一張可控的測試卡把變量全部固定住再逐步貼近真實(shí)場景。做法是用 OpenCV 的putText在純色背景上畫出一串卡號保存成test_card.jpg。這張圖沒有反光、沒有透視變形、字體位置標(biāo)準(zhǔn)適合先驗(yàn)證整條流程是否走通。import numpy as np import cv2 img np.full((180, 640, 3), 30, dtypenp.uint8) # 深色底模擬卡面 card_no 6222 1234 5678 9012 # 16 位卡號 cv2.putText(img, card_no, (40, 110), cv2.FONT_HERSHEY_SIMPLEX, 1.6, (0, 0, 255), 4) cv2.imwrite(test_card.jpg, img)用這張測試圖跑通識別流程后再做三件事一是給測試卡加旋轉(zhuǎn)用cv2.warpAffine旋轉(zhuǎn) 5 度以內(nèi)觀察定位是否穩(wěn)定二是加模擬反光在卡號區(qū)域手動(dòng)畫一個(gè)半透明白色矩形觀察模板匹配置信度變化三是換不同字體生成模板觀察同一套識別代碼的泛化能力。你會(huì)發(fā)現(xiàn)旋轉(zhuǎn)超過 8 度之后水平閉運(yùn)算核的效果大幅下降這時(shí)就需要在預(yù)處理里加透視矯正這是把系統(tǒng)做完整的一個(gè)重要進(jìn)階方向。另外如果你有精力可以把最后的模板匹配換成 PaddleOCR 或者 ddddocr 這類輕量 OCR 方案OpenCV 負(fù)責(zé)定位卡號區(qū)域OCR 負(fù)責(zé)數(shù)字識別。這樣設(shè)計(jì)報(bào)告里可以寫兩套方案的對比實(shí)驗(yàn)識別率數(shù)據(jù)會(huì)更漂亮。但換 OCR 之前先保證 OpenCV 定位環(huán)節(jié)已經(jīng)穩(wěn)定因?yàn)?OCR 識別的上限取決于你裁出來的 ROI 質(zhì)量。我自己當(dāng)年做類似項(xiàng)目時(shí)卡在定位環(huán)節(jié)的時(shí)間遠(yuǎn)比識別多后面總結(jié)出一條教訓(xùn)凡是圖像處理項(xiàng)目先確保每一層中間結(jié)果都可視化、可保存出現(xiàn)問題才能精準(zhǔn)定位到某一層而不是對著最終結(jié)果瞎猜。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产密乳av一区二区三区四区| 开心五月综合激情综合五月| 天天爽天天操| 丁香婷在线| 欧美久人人| 色婷婷A| 九九久久精品| 色婷综合| 51精品国自产在线| 五月丁香婷婷三级| 天天搞夜夜爽夜夜爽| 亚洲成人五月天| 中文字幕永久免费| 国产综合A片| 九九九九毛片| 伊人五月天在线| 区区久久妻| 五月婷婷爽爽爽| 熟妇人妻中文字幕无码老熟妇 | 亚洲成人AV在线播放| 国产成人av在线播放| 五月丁香色色网| 日本成人小说婷婷六月| 草操AV在线| 五月婷婷之综合激情在线| 日韩久热| 五月婷婷天天| 五月丁香亚洲婷婷| 涩涩婷婷五月| 妻久久久久| 中文字幕婷婷在线| 青青999| 久色激情| 婷婷六月天| www.99热这里只有精品| 99热九九在线| 很操日本7| 丁香五月综合激情啪啪| 热996精品在线观看| 狠狠综合网| 久久人妻人人| 天天日 天天草| 五月婷婷伊人久久| 天天综合亚洲综合| 色五月天激情| anquye五月| 超碰成人免费| 99热成人精品网站| 丁香六月婷婷综合缴| 99er6| 大香蕉九九| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 婷婷五月天国产传媒| 五月天开心色色网| 99爱在线视频| 高清一区二区三区日本久| 99热综合| 九九99热| 婷婷永久在线| 午夜不卡久久精品无码免费| 亚洲激情综合| 影音先锋 萱萱| 五月花婷婷| 色狠狠婷婷| 玖玖资源站视频| 五月花婷婷最新| 色天堂A| 一区操| 综合婷婷| 最新色色五月天| 超碰在线中文字幕| 色欧洲| 中文字幕永久免费| 97香蕉碰碰人妻国产欧美| 色色五月综合| 色呦呦美女| www,com,五月色色| 五月婷婷免费在线| 国产色五月婷婷| 色婷婷伦理| 激情黄色五月天| 亚洲色婷婷99一9|| site:ornaments52.com| 色婷婷久久综合中文久久一本| 欧美狠狠地| 五月婷人妻| 五月婷无码| 天天综合天天玩夜夜玩天天玩夜夜玩 | 超碰成人AV| 色婷亚洲五月丁香| 9热视频在线观看| 狠狠色狠狠| 色噜噜狠狠色综合日日| 六月婷婷色宗合| 激情五月婷婷欧美极品| 免费试看小视频 99| 99热777| 亚洲视频在线观看99| 婷婷五月AA五月在线| 五月丁香六月停停| 欧美日综合| 丁香六月婷婷综合| 激情6月| 婷婷五月精品中文| 久久久er热| 国语精品探花| 五月综合色| 丁香五月狠狠在线观看| 99re视频在线播放| 五月婷婷综合久久| 五月天丁香| 九九久久99| 婷婷激情久久| w婷婷五月婷婷w| 伊人丁香六月婷婷| 91日视频| 久久精99| 久久狠色噜噜狠狠狠狠97| 五月天激情婷婷丁香| 五月婷婷在线观看黄| 丁香六月情| 九九九九国产| 丁香五月婷婷婷桃花影院| 久久久久久久97| 26UUU亚洲欧美| 这里只有精品免费观看网占| 夜夜夜夜撸夜夜操| 国外亚洲成AV人片在线观看| 99色在线观看| 天天爽综合| 99婷婷| 97成人视频| 99这里只有精品视频免费| 亚洲另类婷婷五月丁香在线播放| 久久999久久999久久999久久| 激情综合五月婷婷六月丁香| 五月丁香六月片| 99在线视频色版| 精品人妻久久久久久久| 热久久这里只有精品| 亚洲午夜av| 999热这里只有美国精品| 色色色色色日韩午夜激情| www.五月天| 亚洲无码影片| 先锋男人99资源| 丁香午夜天| 五月天激情网图片| 天天插天天射天天干| 亚洲综合色丁香五月天| 精品一二三区久久AAA片| 91干在线| 激情綜合網址| 激情六月婷婷| 操人91| AV大片在线播放| 久久久妻人人人| 五月婷婷六月丁香色| 亚洲综合五月天| 91人无码久久久久久| 日本三级日本三级三级人妇四虎| 丁香五月六月婷婷综合| 欧美婷婷色五月网| 亚洲天天| 欧美啪啪9| 久色资源网| 婷婷五月花.97| 国产六月婷婷| www.91五月| 六月婷婷色五月| 久久久久久9| 欧美一线视频| 99在线精品视频| 久久久久久久久久久44| 久综合| 国产精品色情AAAAA片软件| 综合狠狠伊人| A片试看50分钟做受视频| 91蜜桃婷婷狠狠久久综合9色| 超碰色综合| 婷婷六月综合基地| 另类天堂| 天干干夜夜操| 操逼电影免费看| 婷婷色五月亚洲| 成人视频网| 五月开心六月婷婷在线播放网站| 99久久婷婷国产综合精品草原| 天天噜天天插| 99热香港| 丁香五月天色婷婷| 99久久99九九99九九九| 性爱综合网| 色婷婷六月激情| 无码AV免费精品一区二区三区| 婷婷五月丁香在线观看| 一本大道伊人AV久久综合| 婷婷五月天影视网址| 国产精品久久久爽爽爽麻豆色哟哟 | 婷婷久久色| 日本久久精品18| 999热在线视频| 五月天婷婷激情在线色图| 丁香五月开心亚洲| 亚洲 激情 中文| 色色色色欧美| 婷婷五月大香蕉| 婷婷九九色| 色婷婷的五月天| 日本色色网站| 99热这里只有精品在线观看| 丁香五月六月欧美| 九九综舍久久| 国产人妻人伦精品一区二区| 激情人妻综合| 免费观看的AV| 97干欧美| 人妻AV在线观看| anquye伊人| 玖玖婷婷色欲| 亚洲成人综合在线| 99在线看片| 五月婷婷六月丁香首页| 无码AV久久久久久久久| 大香蕉婷婷丁香天堂AV| 五月婷婷视频28| 亚洲啪啪精品| 9999久久久久| 性色婷婷| 超碰1999| 99热精品9| 伊人久久大香线蕉综合网站| 五月天com| 国产va在线视频| 激情都市另类| 九九99九九99九九99视频网| 久8色色| 91无码一区人妻A片蜜| 91热视频色网站| 亚洲性爱干干| 99热在线精品播放| 亚洲激情六月| 琪琪色综合网站| 超碰超碰在线| 久婷五月| 国产va视频| 五五月五月| aa久久| 97精品人人A片免费看| 99狠狠色| 六月丁香网| A色色| 亚洲网站在线鸭子av| 啪啪东京热| 亚洲日本韩国| 色色热| 婷婷亚洲色| 天天狠狠六月婷丁香影院| 亚洲欧洲色色| 91操色| 91婷婷丁香| 丁香久久九九99| 专区无日本视频高清8| 色爱综合网| 久草xx性爱视频| 日日夜夜狠狠婷婷色| 看全色黄大色大片| 天天肏天天肏天天肏| 丁香五月桃花在线激情综合| 中文字幕无码人妻少妇免费视频 | 丁香六月成人网| 婷婷激情五月吧| 日本色视| 婷婷综合六月| 就爱干 在线| 电影蜘蛛女| 色狠狠五月天| 丁香婷婷五月天色综合| 丁香五月六月久久综合 | 色综合色婷婷色伊人| 99久久婷婷五月综合| 亚洲乱啪| 色综合久久44| 亚洲艹网| 色高清无码视频| AAAA亚洲| 99热在线这里| 婷婷操超碰| 久99久99精品免| 久久综合五月天| 婷婷五月天成人| 色婷婷久久综合中文久久一本| caopeng97日韩| 日日天天天| www.sd-xiangsu.cpm| 亚洲性爱干干| 五月婷婷自拍视频| 97碰人人操| 丁香五月婷婷亚洲综合精品| 日本九九九九| av五月天婷婷丁香| 991精品在线视频| 五月婷婷综合天天操| 亚洲传媒在线观看| 99久久婷婷精品视频| 日韩三十六页| 来吧亚洲综合网| 思思热在线| 五月婷婷亚洲| 欧美,日韩成人在线| 玖玖99精品视频| 91操操| 狠狠狠五月婷婷六月丁香| 5五月综合网亚洲| 丁香婷婷基地| 亚洲精品一区中文字幕乱码| 五月丁香888| 婷婷五月中文字幕| 国产婷婷五月中文字幕高清| 五月丁香五月婷婷在线观看| 伊人啪啪网| 51精品国自产在线| 五他月天啪啪啪| 另类精品视频在线观看| 亚洲婷婷丁香五月天激情小说| 79色色免费| 丁香五月婷婷影院| www.色五月| 欧美丰满熟妇BBB久久久| 伊人丁香五月天丁香在线婷| 久热超碰| 在线视频99| 99精品丁香五月| 狼友超碰| 欧美黄色韩日网| 婷婷香蕉| 九九99久久| 亚洲欧美999| 午夜一区| 91人妻PORNY九色大屁股| 五月WWW| 五月天开心激情综合网| 天天干天天操天天射| 亚洲视频色色| 思思久久精品| 狠狠操综合| 激情综合网婷婷五夜| 欧美精品99| 丁香六月成人| 涩婷婷视频快播人妻| 五月天婷婷激情干干| 激情五月丁香五月| 久草 天堂| 日韩AAAAAAAAAAA片| 五月天电影网| 色婷激情网| 色狠狠综合| 五月色色色| www色五月| 亚洲免费成人电影AV| 亚洲视频色色| 色久综合| 深爱激情网婷婷| 五月天婷婷色色| 99日韩| 五月丁香啪啪啪综合网| 婷婷综合五月天| 91人人网| 2015好吊操| 超碰9| 色婷婷五月影院| 激情五月婷婷五月| 玖玖99精品视频| 婷婷五月天黄色小说| 不卡在线超碰| 五月丁六月香| 影音先锋四区| 久久婷婷视频| 久99久热只有精品国产99| 99爱在线视频| 色色综合视频| 综合激情肏逼网| 婷婷丁香五月婷婷| 超碰精品在线| 99国产精品白浆在线观看免费| 人人玩人人橾| 婷婷六月天国产综合| 五月天激情婷婷小说| 青青久久五月| 五月天成人在线视频网站| 91视频五月丁香| 伊人婷婷综合| 丁香五月天激情| 五月丁香六月色情网欧美| 高清一区二区三区日本久| www.精品99| 丁香五月婷婷激情97| 99热这里只有精品无码| 狠狠色大香蕉| 亚洲激情在线| 色亚洲激情| 婷婷五月激情欧美| 99国产在线精品视频| 思思热国产在线| 久9精品| 国产日产亚系列精品版优势| 亚洲xx网| 六月天婷婷| 久久婷婷激情视频| aaaaa不卡| 婷婷色情 | 综合五月丁香六月婷婷| 久久婷五月天| 久久区区一二三av| 久久女婷| 一区视频网站| 欧美精品熟女一区二区| 丁香午月AV中文字幕| 国产一级黄色影片,| 庭庭久久内射| 亚洲第一精品成人999久久精品| 91丨九色丨熟女|老版| 久草热8精品视频在线观看| 中文字幕婷婷五月天在线观看| 五月丁香成人| 99综合99| 无码少妇高潮喷水A片免费| 深爱激情丁香五月| 777久久精品| 日韩性爱无码| 五月日韩中文字幕| 五月丁香啪啪网| 99热在线观看精品免费| 爱射综合| 日本五月天激情| site:901-07.com| 久久久久五月丁香| 五月婷婷涩涩爱| 超碰人人艹| 丁香五月激情无码视频| 蜜臀av无码久久久久久久久| 久99久热| 国内久久亭亭| 另类图片五月天激情| 欧美在线视频99| 久久九精品| 五月婷六月丁| 91视屏在线观看com.wwwvv| 五月丁香激| 99视频综合| 99热手机在线精品| 九月激情网| 色五月天综合网| 五月开心激情网| 色噜噜狠狠色综合伊人| 天天艹天天综合网| 99无码视频| AV在线观看网站| 丁香花婷婷五月天| 丁香香蕉婷婷| 色综合色婷色基地| 超碰伊人碰婷婷五月| 99热在线观看成人| 五月丁香亭亭激情操逼网| 性爱久久| A片试看50分钟做受视频| 四色99久久| 啊v视频在线观看| 丁香五月先锋| 欧美日本黄色| 亚洲av成人在线| 九色七七| 亚洲啪啪啪啪| 五月激情小说| 少妇被躁爽到高潮无码文 | 深爱开心激情| 婷婷六月天| 亚洲五月花| 久久综合干| 丁香五月综合婷婷| 97天堂| 99这里只有精品| 亚洲国产精品VA在线看黑人| www.色色色com| 日操夜操天天操不卡| 亚洲av另类在线观看| 超碰熟女农村在线69| 激情亚洲五月| 1024操逼视频| 五月婷婷偷| 激情网 五月天| 天天色天天噜| 偷拍91九色| 99热久| 亚洲精品又粗又大又爽A片 | 色播色丁香五月| 国产一区18| 五月婷婷色情| 一本道综合网| 欧美这里只有精品| www.婷婷五月天.com| 五月天色综合| 五月丁香天堂| 99re思思热在线视频| 777精品成人a v久久| 深爱五月日韩| 超碰狠狠操| 51精品国自产在线| 97人操| 九九99在线观看视频| 五月丁六月婷| 亚洲成人免费电影| 亚洲天堂AV综合网| 丁香五月六月久久综合| 亚洲色优| 天天日天天舔| 激情都市丁香婷婷| 色色国产| 秋霞AV淫| 婷婷五月丁香六月天亚洲综合| 五月丁香久久| 最新高清无码专区| 综合另类视频| 丁香五月激情综合啪啪| 色色网站在线| 九月丁香八月婷婷久久综合久97| 天堂爱爱| 大香蕉婷婷色| 一区操| 亚洲日韩国产黑丝黑丝AVAV一区二区三区| 青青草原精品久久| 色墦五月丁香| 丁香婷婷五月色成人网站| 婷婷综合成人五月天| 欧美在线视频免费播放| www.金莲av| 色五月婷婷中文字幕在线观看 | 97热这里只有精品| 青青久在线视频免费观看| 97人人看一| 襙逼网| 性色五月天| 欧美操我| 色5月婷婷| 色五月丁香五月| 九九人人看| 思思久久青草热| 丁香六月婷婷| 9.1综合网| 亚洲黄色精品| 91好好热日本在线| 丁香婷婷视频| 色婷婷狠狠禁久久| 亚洲综合色五月| 婷婷在线播放| 蜜乳.comcom| 99久久久| 久久婷婷亚洲| 婷婷永久在线| 九九热中文| 丁香在线视频| 五月天另类图片区99| 99热这里有精力| 日韩乱轮AV| 五月丁香婷婷久久| 成人网在线观看视频| 第四色五月激情网| 丁香网站| 99成人精品| 青青草国产亚洲精品久久| 五月丁香色婷婷婷基地| 99热综合| 色视五月天婷婷| 天天操夜夜操| 五月天婷婷久久综合| 大地资源色婷婷视频在线 | 日本高清久| 欧美啪啪9| 色婷婷综合影院| 播五月,色五月,开心五月播放器 | 欧美熟女99| 久久大香蕉同僚| 色婷婷丁香九月| 激情婷婷丁香五月天| 五月丁香激情综合六月涩涩爱| 激情五月激情综合网| 91嫩草久久| 久久久久久久久99精品| 久久色情| 中文字幕按摩做爰| 色久五月天| se.久久视频在线观看| 激情综合色婷婷啪啪六月天| 五月婷婷欧美| 深爱五月月天| 九九精品大香蕉| 精品乱码久久久久| 久久xxxx| 日韩综合成人| 久热超碰91| 色噜噜狠狠色综合无码久久欧美| 国产古装妇女野外A片| 激情综合网激情五月丁香| 日逼影音先锋AV男人资源站| AV在线资源| 99视频地址| 久久五月婷综合| 婷婷狠狠干| 啊V视频在线观看| 婷婷五月丁香五月| 五月丁香中文| 九九热九九| 99热人人操人人操| 婷婷五月天久久| 人人操人人爱丁香五月| 精品激情| 99资源人人| 五月天成人综合| www.丁香五月| 五月情丁香色| 丁香婷婷超碰| 99色热综合| 亚洲另类电影| 欧美α√| 丁香六月 人妻| 丁香五月先锋| 一级内射毛片| av中文在线| 婷婷五月天成人| 亚洲色婷婷网站| 99热天堂| Www.Av网9| 婷婷激情四射| 亚洲啪啪啪啪| 中文字幕 中文字幕明步| 丁香六月AV| 色婷婷超碰| chaopeng在线人人| 日韩中文字幕| 日韩人妻无码专区| 97干在线视频| 欧美性交一区二区三区| 日本精品人妻无码77777| 婷婷97碰碰| 激情五月天伊人av| 第四色婷婷五月| 婷婷丁香色五月亚洲| 日韩三及成人AV片| 热99热久| 婷婷丁香五月在线观看91| 日日做A爰片久久毛片A片英语| 婷婷综合色图| 91碰超| 五月天狠狠| 色婷亚洲| 激情网婷婷婷| 婷婷五月伦理| 六月婷婷影院| 99精品在线下载| 婷婷久久五月天亚洲欧美国产日韩在线观看 | 丁香五月婷婷亚洲色图| 狼人久草| 色五月天丁香| 亚洲操人| 快乐激情五月色婷婷| 色综合久久综合中文综合网| 色婷婷五月色| 超碰chaompinm| 美女黄频aⅴ视频| 午夜成人综合| 天天久综合网永久入口17v| 中文字幕五月久久婷| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 婷婷久久五月天| A久久| 欧美日韩99| 99久久婷婷国产综合精品草原| 99视频| 婷婷久热| 亚洲乱码日产精品BD| 国外亚洲成AV人片在线观看| 国产人妻777人伦精品HD| 色另类五月天| 色宗合,宗合网| 亚洲 在线 性爱 | 色99视| 最新精品视频99| 99色播| 天天日天天爱天天噪| 色婷婷精品| 97热这里精品在线视频| 99操逼| 五月婷婷综合网| 激情又色又爽又黄的A片| AV成人在线网站| 久热AⅤ| 99热免费精品| 99久久a线观| 色婷婷色五月综合| 9热在线观看| 色色婷| 中文幕无线码中文字蜜桃| 色逼综合网| 欧美三级级99久久| 夜夜 操无码| 99re热| 色欲久久久久| 国产成人99久久亚洲综合精品| 欧美性爱五月天| 操逼视频网址| 99热这里都是精品| 亚洲精品小视频| 激情五月天开心| 婷婷五月天成人| 丁香五月婷婷国产在线| 97人人操在线| 91人妻视频| www.精品99| 91紱請| 久久3p| 99热这里只有精品13| 丁香五月天电影| 玖玖在线视频| 激情五月丁香六月综合AVXXXX| 色八月婷婷| 夜夜爽天天干| 日本欧美成人片AAAA| www.97干视频| 久久婷婷五月综合色播| 五月丁香婷中文| ztEJj| 丁香5月激情网| 婷婷97C| 欧美丁香婷婷天天操| 色中色综合| 欧美性做爰大片免费看办公室| 中文字幕性爱视频| 亚洲久久婷婷丁香五月天| 91久久精品无码一区二区三区| 无遮挡国产高潮视频免费观看| 一区二区免费看| 亚洲 六月 综合| 丁香五月性| 色综合中文| 天天综合网网欲色| 国产古装妇女野外A片| 97操碰视频| 婷婷五月情| 五月综合激情啪啪啪啪啪| 噜噜色天天开心| 五月 激情视频| 3DAV亚洲香蕉久久 一区二区| 亚洲色激婷| 国产亚洲色婷婷久久99精品91| 欧美日本99| 色婷婷五月婷婷五月婷婷五月| 99色网站| 啪啪91| 成人精品人妻| 丁香视频| 26UUU精品一区二区| 九九艹女| 日日做夜夜爱| 激情五月丁香五月色| 激情五月婷婷欧美极品| 五月天色婷婷综合| 另类天堂| 亚洲中文乱字字幕在线永久| 久久九九爽| 六月婷久久| 我去色色网五雨天| 婷婷娌伦网| 久草九九| 91人操人人人操人| 思思99久久| 欧美色99| 91人妻PORNY九色大屁股| 9色在线视频| 精品久久久999| 久久九九爽| 久久五月视频| 99色热| 99噜噜噜在线播放| 大香蕉久久| 一个色的综合| 成人做爰黄A片免费看直播室男男 久草热8精品视频在线观看 | 色婷婷AV在线观看| 五月丁香777| 成人丁香五月婷| 婷婷涩涩五月天| 丁香五月综合婷婷| 思思热在线观看| www.精品99| 国产熟妇乱子伦hd| 激情五月四色| 婷婷五月天情色| 成人版视频在线观看| 六月婷婷激情| 99热在线播放| 天天檫天天爽| 五月婷婷综合影院| 婷婷99狠狠躁天天躁| 99视频地址| 9热在线| 久狠狠狠| 超碰在线人妻| 92久久精品一区二区| 五月婷婷色激情| 色五婷婷在线视频| 99A级片| 国产成人网| 这里只有精品视频在线看| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 插插网爽妇五月丁香| 国产亚洲AV人片在线| 久久色亭亭五月天| 婷婷五月天成人五月天| 丁香色婷婷色手机免费在线| 婷婷在线播放| WWW色五月天| 91 久热| 婷婷久久网| 五月天影院婷婷在线观看| 人操人人| 欧美大肥婆大肥BBBBB| 五月天婷婷无码视频| 99精品热视频| 色色综合网www| 天堂色婷婷| 激情五月综合色婷婷| 中文字幕性爱视频| 五月天婷婷基地| 丁香五月婷婷日本| 人妻操逼| 久久丝袜婷婷| 婷婷视频在线碰| 五月丁香香蕉| 天天天天色天天天天天干| 97资源碰碰| 色婷婷狠狠禁久久| 国产成人亚洲综合A∨婷婷| 天天综合影院| 婷婷激情五月天天天开心| ou洲色吧| 久久人妻熟女一区二区| 99精品久久久| 热热久久99| 色五月久久成人婷婷| 91九色小视频| 亚洲在线网站| 色五月综合| 97久久人人操| 久久精彩视频| www.99热. com这里只有精品| 人妻人人操| 午夜丁香 婷婷| www.99精品日操伊人乱碰在线| 人妻啪啪啪| 亚洲免费观看高清完整版AV线| 久热中文字幕在线线观看| 亚洲婷婷在线播放十月| 五月香蕉婷婷| 丁香五月天日韩无码| 在线观看免费人成视频无码| 久久狠狠干| 99在线精品视频| 婷婷午夜天| www久热com| 人色五月天婷婷| 国产日批视频免费播放| 99大香蕉| 久9热视频| 中文成人在线| 五月之婷婷| 99热首页在线30| 99re久热只有精品6在线直播| 九九操操| 久操大| 99毛片| 99狠狠操一| 超碰9在| 中文字幕性爱视频| 大香蕉人人网| 人人操人人添人人摸97| 色都都狠狠色都都色综合色| 99久久国产综合精品五月天喷水\| 亚洲精品久久久久久久久久吃药| 亚洲精品视频在线播放| 99热这里只有精品5| 亚洲激情五月天| 午夜丁香婷婷| 色婷婷激情| 天天日日夜夜| 激情综合五| 蜜臀AV在线观看| 色五月激情五月| 97干干干丁香| 婷婷天堂伊人| 伊人青涩网| 丁香玖玖视频大全| 久久九九@| 色欲色天天香综合| 五月丁香亚洲校园欧美| 五月丁香爱婷婷深深| 久久99激情| 丁香五月激情六月| 天天操夜夜爱| 婷婷国产成人| 91超碰人人操| 五月天婷婷久久| 婷婷五月激情黄色| 国产综合丁香五月天| 另类激情五| 精品乱码视频| 99热这里只有精品13| 人人草人人爱手机视频看看 | 91精品综合久久婷婷九色| 99热啪啪| 日本特黄aaaaa| 天天综合网网欲色| 久久伊人9| 99色色视频| 五月天操逼激情| 丁香五月天堂网AV| 91色久| 欧美噜一噜| 狠狠操狠狠操| 亚洲操B| 五月天婷婷丁香成人网| 伊人五月天97| 久久五月天合网| 99啪啪骑| 久久永久网址| 国产片色| 激情综合无码| 色五月综合激情网| 亚洲精品视频电影| 五月丁香婷婷久久| 播五月,色五月,开心五月播放器| 99热网站| yirenjiqingshiping| 丁香五月激情啪| 欧美色五月| 五月天婷婷丁香人人操91| 人人操99| 深爱五月日韩| 日日噜噜夜夜狠狠久久丁香六月| 少妇性按摩无码中文A片| 婷婷天天综合| www.色9| 日逼AV影音先锋男人资源站| 丁香五月婷婷亚洲另类| 五月丁香激情片| 色99网| 五月婷在线| 五月丁香毛片| 天天做天天要天天爽| 色五月av| 亚洲狠狠爱婷婷| 五月婷婷AV| 丁香六月婷婷综合欧美| 婷婷五月色| 9伊人网| 亚洲热综合网在线观看| 亚洲精品成人| 色九九一二| 色天天久婷婷| 99九九精品| 日本欧美999久久久三级片| 久久婷婷丁香五月一二三| 99色在线| 久草婷妨| 色五月av伊人| 五月婷婷激情综合网| 成人在线视频男人的天堂4399| 婷婷丁香五月久久| 五月婷婷基地| 久久视频婷婷| 99热在线成人网站| 国产偷人爽久久久久久老妇APP | 热五月婷婷| 久久精品日| 开心五月婷婷在线视频免费观看| 亚洲中文乱字字幕在线永久| 色天使色婷婷| 色色色色网站| 二区成人视频| 国产精品A片| 99精品偷自拍| 99热国产在| 99精品免费视频| 丁香婷婷五月色成人网站| 久色资源| 综合九色| 色狠狠综合入口| 综合久久激情久久| 五月丁香婷婷激情在线| 亚洲另类在线观看| 亚洲艹网| 99在线精品视频| 五月婷婷综合激情| 国产亚洲99久久精品| 色婷婷777狠狠| 丁香五月开心亚洲| 丁香婷婷超碰| 91九色视频在线观看| 视频久久9| 网站免费一站二站| 91chinese 在线| 天天干天天干天天| 97色色综合| 欧美三日本三级少妇三99| 国产.亚洲.欧洲视频在线| 激情綜合網址| 无码人妻电影| www.婷婷五月| 婷婷综合网在线| 亚洲精品无人区| 99热伊人| 狠狠狠激情网| 色婷婷五月天av在线| 亚洲色综合性| 停停六月 综合| 色五月偷偷| 色啪综合| 五月婷丁香| 天天天添天天操| 亚洲AV成人精品网站在线播放| 天天舔天天摸视频| www五月天com| 婷婷五月电影院| 婷婷激情五月吧| 爱久久小说下载网| 丁香五月乱中文字幕| 成人一区在线观看| 热久久91| 亚洲久久视频| chaopeng在线人人| 色综合久久88色综合天天看| 国产激情视频在线观看| 日本色婷婷| 日日夜夜狠狠干| 五月天婷婷爱| 九色婷婷| 丁香五月婷婷色| 亚洲精品视频电影| 操一区| 色婷婷九月综合| 天堂综合久| 大香蕉久操| 思思 热 99| 激情伊人| 91人久| 九九干视频| 99在线观看这里都是精品| 在线色婷婷| 久久性爱视频| 五月丁香 啪啪啪| 996精品热视频| 99啪啪| 色婷婷视频在线| 五月天激情国产综合婷婷婷就去爱| 99热国品| 久青操| 五月色无码| 一本色道久久综合狠狠躁小说| 夜夜干夜夜操| 婷婷久久草| 丁香婷婷五月天校园春色| 婷婷丁香综合在线| 五月开心网| 五月天狠狠网| 夜夜骑日日操| 欧美婷婷精品激| 亚洲妇女熟BBW| 欧美性爱一区| www夜夜操wwwcon| 日韩操人| 综合 蜜月 婷婷| 五月天综合在线| 婷婷色六月| 五月丁香婷婷婷婷综合网| 久热 91| 182无码| 性爱综合网| 色狠狠999综合| 无月播播激情在线观看视频| 日本色色网| 视频久久9| 久久九九激情五月天| 丁香五月婷婷在线| 久久99精品久久久久久三级| 久久这里99| 五月情丁香色| 日本三级日本三级三级人妇四虎| 超碰自拍天堂| 欧美叉叉叉BBB网站| 4399成人黄A片| 99精品色| 天天舔天天摸视频| 一区二区三区四区五区| www.99久| 99ri在线播放| ou洲色吧| 婷婷激情六月中文| 激情五月婷婷| 99亚洲天堂| 五月婷婷丁香六月| 97超级碰碰碰久久久| 97丨九色丨国产丨PORNY| 色婷婷久久| 久99| 九九激情综合| 亚洲熟女色| 99色| 狠狠干在线| 99热这里只有精品8| 99思思| 五月婷婷网五月在线| 五月婷婷插一插| 六月色狠狠色| 丁香五月天天日| 99久久国产宗和精品1上映| 天天舔天天插天天爱| 色5月婷婷| 综合激情婷婷| 在线不卡视频| 色亚洲无码| 在线va网站| 无码一区二区三区四区五区| 日日天天天| 99热这里只有精品10| 丁香六月婷婷开心| www.sd-xiangsu.cpm| 5月婷婷综合| 777久久精品| xx色综合| 99秘 在线| 五月婷婷狠狠干| 伊人久久丁香婷婷六月五月综合| 激情五月天色婷婷综合| 不卡影院午夜理论片| 婷婷激情五月天视频在线| 色婷婷五月天小说| 亚洲色情网站| 十一月婷婷激情四射| 可以免费观看的AV| 亚洲成人av在线| 九九热在线视频观看| 99色在线观看| 91在线操逼视频| 五月色情婷婷| 丁香六月婷婷综合欧美| 久久久WWW| 天天日人人| 99小视频网站| 久操97| 亭亭五月色男人| 大地资源色婷婷视频在线| 欧美日韩成人综合9| 任你干嘛免费视频播放| 99久久玖玖| site:hcxsz888.com| 国产欧美婷婷五月| 乱色色色| 91色色色18| 99无码视频| 久久免费干| 超碰成人电影| 丁香婷五月天| 亚洲色视频| 亚州操人在线视频| 九九九九操逼| 偷拍九九五月丁香婷婷| 婷婷五月激情的图片| 婷婷开心激情综合五月天| 六月丁丁香| 色婷婷久久| 色99欧洲色19| 91色久| 午夜无码精品色综合久久| www.色婷婷| 九九在线精品| 九九综合图片网| 天堂AV三级| 九九激情视频| 99热免费精品| 97se在线视频| 丁香蜜臀黄色婷婷五月天| 天天爽夜夜爽天天爽夜夜爽| 五月婷啪| 综合狠久久| 色综合久久888| 丁香六月激情网C0W| 五月激情六月宗合| 久操乱| 五月婷婷基地| 婷婷日日夜夜| 9l视频自拍9l九色成人| 天天综合网色欲香| 伊人五月天日日夜夜久久久天天| 天天草比天天爽| 91操人视频| 99热精品99| 这里只有精品视频一区| 婷婷五月天开心网| 色婷婷性爱| 五月开心婷婷| 五月丁香婷婷基地| 婷婷丁香91| 大香蕉院线| 五月天激情综合| 五月婷婷色播| 欧美草久久五月天91| 婷婷99狠狠| 91人操| 亚洲操b| 大色鬼综合| 99热永久在线观看| 色五月大| 中文字幕丰满乱孑伦无码专区 | www.91婷婷| 欧洲第一久色| 国产毛片欧美毛片久久久| 人人97碰| 丁香五月天婷婷激情| 婷婷五月性感| 欧美婷婷五月无砖| 99热亚洲精品| 任你操精品免费| 久久99精品久久只有精品| 在线视频婷婷| 婷婷五月天无码视频| 久草五月天| 超级黄色片| 五月天色丁香| 99热这里只有精品无码| 91人人操人人| 五月天播播中文字幕| 97爱艹婷婷开心丁香激情综合| 日日噜狠狠色综| 婷婷色色网| 色综合久久88色综合天天99| 俺去也综合| 97sese婷婷| WWW五月| 丁香五月婷婷社区| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 美女亚洲五月丁香| 97热这里只有精品| 先锋五月婷婷丁香草草| 在线观看av网站| 色哟哟性爱av| 可以免费观看的AV| 嫩草视频观看| 五月丁香六月| 丁香五月婷婷激情尤物| 综合XX网| 久色激情| 大香蕉伊人99| 操逼毛片国语对白| 97操操| 五月天国产成人| 婷色五月天| 另类图片 五月激情| 婷婷欠久少妇|