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

ARTICLE DETAIL

資訊詳情

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

OpenCV物體計(jì)數(shù)實(shí)戰(zhàn):預(yù)處理、輪廓篩選與軌跡欄調(diào)參

OpenCV物體計(jì)數(shù)實(shí)戰(zhàn):預(yù)處理、輪廓篩選與軌跡欄調(diào)參 簡(jiǎn)介這份文檔面向計(jì)算機(jī)視覺入門者與本科課程設(shè)計(jì)學(xué)生主題為基于OpenCV的物體計(jì)數(shù)與表單信息系統(tǒng)解決圖像中目標(biāo)自動(dòng)框選、計(jì)數(shù)及檢測(cè)信息表格化記錄的問題可服務(wù)于零售、安防、交通監(jiān)控等場(chǎng)景的入門實(shí)踐也可作為軟件技術(shù)項(xiàng)目設(shè)計(jì)的報(bào)告范例。壓縮包約19.51MB內(nèi)含1個(gè)docx正文覆蓋任務(wù)書、摘要、需求分析、系統(tǒng)功能模塊圖、實(shí)現(xiàn)過程、學(xué)生日志與綜合評(píng)價(jià)表完整呈現(xiàn)從圖像預(yù)處理、邊緣檢測(cè)、目標(biāo)檢測(cè)到軌跡欄參數(shù)調(diào)節(jié)、圖片與視頻雙模式及控制臺(tái)交互檢測(cè)的推進(jìn)脈絡(luò)并附答辯評(píng)分維度方便對(duì)照梳理報(bào)告結(jié)構(gòu)與復(fù)現(xiàn)思路。目前已有215人學(xué)習(xí)適合需要理解輪廓檢測(cè)、Canny、Haar級(jí)聯(lián)等基礎(chǔ)方法并參考課程設(shè)計(jì)寫作與項(xiàng)目排期的讀者。1. 從一張數(shù)不準(zhǔn)的零件圖說起OpenCV 物體計(jì)數(shù)為什么先調(diào)預(yù)處理產(chǎn)線上要數(shù)一批散放的零件攝像頭架好、畫面也清楚但腳本一跑兩個(gè)挨著的零件被數(shù)成一個(gè)換個(gè)工位光照一變閾值就全廢。這類問題往往不是換個(gè)模型能解決的先把 OpenCV 的預(yù)處理鏈路和計(jì)數(shù)判定規(guī)則理清楚比直接上深度學(xué)習(xí)見效更快。這份課程設(shè)計(jì)做的就是這件事基于 OpenCV 的物體計(jì)數(shù)與表單信息系統(tǒng)用軌跡欄實(shí)時(shí)調(diào)參用輪廓加外接矩形把物體框出來計(jì)數(shù)按s鍵把時(shí)間、文件名、數(shù)量寫進(jìn) Excel。全部邏輯收在一個(gè)tally.py里分實(shí)時(shí)檢測(cè)、圖片檢測(cè)、控制臺(tái)交互三種模式。適合剛接觸 OpenCV、需要一套能跑通又能改參數(shù)的計(jì)數(shù)基線的人也適合拿它當(dāng)課程設(shè)計(jì)或小工具原型的從業(yè)者。2. 環(huán)境與模塊骨架tally.py 該拆成哪幾層、軌跡欄怎么掛2.1 依賴與版本把 opencv-python 釘在 4.x這套代碼對(duì) OpenCV 版本敏感最典型的是cv2.findContours的返回值個(gè)數(shù)。3.x 返回三個(gè)值image、contours、hierarchy4.x 只返回兩個(gè)contours、hierarchy。如果你從舊環(huán)境拷代碼過來第一處報(bào)錯(cuò)大概率在這里。所以先把版本釘死虛擬環(huán)境里裝python -m venv venv # Windows venv\Scripts\activate # Linux / macOS source venv/bin/activate pip install opencv-python4.9.0.80 pip install pandas2.1.4 openpyxl3.1.2 numpy1.26.2opencv-python選主包就夠了這個(gè)項(xiàng)目只用到imgproc、highgui、videoio三個(gè)模塊。opencv-contrib-python里的 SIFT 那套在方案對(duì)比階段試過最終沒走特征匹配路線裝上只是增加體積。openpyxl必須顯式安裝pandas.to_excel寫.xlsx時(shí)靠它做引擎不裝會(huì)在運(yùn)行時(shí)報(bào)ImportError: Missing optional dependency openpyxl。numpy和 OpenCV 有 ABI 依賴關(guān)系1.26 與 4.9 搭配比較穩(wěn)別隨手升到 2.x。提示如果機(jī)器上已經(jīng)有別的項(xiàng)目在用 OpenCV 3.x不要?jiǎng)尤汁h(huán)境給這套代碼單獨(dú)建 venv否則改一個(gè)版本會(huì)連帶把老項(xiàng)目搞崩。2.2 模塊劃分六個(gè)職責(zé)一個(gè)文件課程設(shè)計(jì)規(guī)模不大全部塞進(jìn)tally.py是合理的拆成包反而多出一堆 import 路徑問題。但函數(shù)邊界要清楚后面想把檢測(cè)層換成模型只改一處就行。模塊關(guān)鍵函數(shù) / 入口輸入 → 輸出職責(zé)采集data_collection.py主循環(huán)、cv2.VideoCapture攝像頭幀 → 圖片文件拍照并落盤按s保存預(yù)處理preProcessing(img)BGR 圖 → 單通道邊緣圖灰度、模糊、Canny、膨脹、閉運(yùn)算檢測(cè)計(jì)數(shù)findContours(img, imgPre, ...)原圖 邊緣圖 → 畫框圖、輪廓列表、數(shù)量篩輪廓、畫框、計(jì)數(shù)表單寫入readPath、excelmation、ImagePath數(shù)據(jù)字典 → Excel 行路徑解析、追加寫入交互軌跡欄回調(diào)、cv2.waitKey鼠標(biāo)/鍵盤 → 參數(shù)值實(shí)時(shí)調(diào)參、保存觸發(fā)調(diào)度控制臺(tái)main()菜單輸入 → 模式分支實(shí)時(shí) / 多圖 / 單圖切換readPath(folder_path)負(fù)責(zé)把文件夾里的圖片路徑讀成列表只保留.jpg、.png后綴避免把臨時(shí)文件混進(jìn)去。ImagePath(recongnitionMode)根據(jù)模式字符串長(zhǎng)度決定保存目錄實(shí)時(shí)模式和多圖模式寫到不同文件夾防止圖片和表格互相覆蓋。excelmation(excel_path, data)是寫入入口輸入是一個(gè)字段有序的字典。這幾個(gè)函數(shù)看著瑣碎但它們是「檢測(cè)結(jié)果能不能變成可查數(shù)據(jù)」的關(guān)鍵比檢測(cè)本身更容易翻車。常見的目錄結(jié)構(gòu)是這樣project/ tally.py # 核心模塊 data_collection.py # 拍照腳本 images/ # 采集圖 output/ realtime/ # 實(shí)時(shí)模式截圖 multi/ # 多圖模式結(jié)果 records.xlsx # 表單2.3 軌跡欄綁定先建窗口再掛滑塊軌跡欄是這套系統(tǒng)能做參數(shù)實(shí)時(shí)修正的核心。它掛在窗口上窗口名必須和createTrackbar的目標(biāo)完全一致包括大小寫和空格。順序錯(cuò)了會(huì)直接拋cv2.error: ... window not found。import cv2 import numpy as np WINDOW counter def nothing(x): pass # 必須先建窗口再創(chuàng)建軌跡欄 cv2.namedWindow(WINDOW, cv2.WINDOW_NORMAL) cv2.resizeWindow(WINDOW, 960, 540) cv2.createTrackbar(Threshold1, WINDOW, 30, 255, nothing) cv2.createTrackbar(Threshold2, WINDOW, 80, 255, nothing) cv2.createTrackbar(MinArea, WINDOW, 1000, 20000, nothing) cv2.createTrackbar(BoxScale, WINDOW, 50, 100, nothing) # 實(shí)際值 讀數(shù) / 100邏輯上createTrackbar的第四個(gè)參數(shù)是滑塊最大值第五個(gè)是回調(diào)函數(shù)?;卣{(diào)體可以是空的因?yàn)樽x取靠getTrackbarPos輪詢回調(diào)只在需要「拖動(dòng)即觸發(fā)」的場(chǎng)景下才寫邏輯。BoxScale之所以用 0 到 100 的整數(shù)是因?yàn)檐壽E欄只接受整數(shù)實(shí)際使用時(shí)除以 100 得到 0.0 到 1.0 的比例。參數(shù)上限不是隨便給的。Threshold1、Threshold2的上限 255 對(duì)應(yīng) Canny 的 8 位輸入范圍MinArea上限 20000 是按 640×480 畫面里最大物體約占 16000 像素估的如果換成 1280×720上限要同步放大到 60000 左右否則滑塊一拉就頂?shù)筋^調(diào)不出有效區(qū)間。主循環(huán)的骨架大致是while True: ok, frame cap.read() if not ok: break imgPre preProcessing(frame) imgBox, conFound, total findContours(frame, imgPre, minAreacv2.getTrackbarPos(MinArea, WINDOW)) cv2.putText(imgBox, fcount{total}, (20, 40), cv2.FONT_HERSHEY_SIMPLEX, 1.0, (0, 0, 255), 2) cv2.imshow(WINDOW, imgBox) key cv2.waitKey(1) 0xFF if key ord(s): # 保存截圖并寫一行表單 pass elif key ord(q): break每幀都重新讀一遍軌跡欄這是參數(shù)能「實(shí)時(shí)生效」的原因也是后面跨圖調(diào)參殘留問題的根源第 5 章會(huì)細(xì)說。waitKey(1)里的 1 是毫秒給 0 會(huì)阻塞到按鍵視頻流就卡住了 0xFF是為了消掉某些平臺(tái)上返回值的高位不寫這一句在部分環(huán)境里按s沒反應(yīng)。3. 預(yù)處理鏈路高斯模糊、Canny 雙閾值與形態(tài)學(xué)閉運(yùn)算的先后順序3.1 preProcessing 的固定順序預(yù)處理函數(shù)看著只有幾行但順序換了結(jié)果差很多這條鏈路基本是玄學(xué)重災(zāi)區(qū)。項(xiàng)目里的實(shí)現(xiàn)是灰度化 → 高斯模糊 → Canny → 膨脹 → 閉運(yùn)算每一步都為下一步服務(wù)。def preProcessing(img): imgGray cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 核 5x5sigmaX 顯式給 3模糊強(qiáng)度不隨核大小漂移 imgBlur cv2.GaussianBlur(imgGray, (5, 5), 3) t1 cv2.getTrackbarPos(Threshold1, WINDOW) t2 cv2.getTrackbarPos(Threshold2, WINDOW) imgCanny cv2.Canny(imgBlur, t1, t2) kernel np.ones((3, 3), np.uint8) # 先膨脹接斷口再閉運(yùn)算填內(nèi)部小洞 imgDil cv2.dilate(imgCanny, kernel, iterations1) imgClose cv2.morphologyEx(imgDil, cv2.MORPH_CLOSE, kernel, iterations1) return imgClose灰度化丟掉顏色是因?yàn)橛?jì)數(shù)場(chǎng)景里判據(jù)通常是形狀和面積不是顏色。高斯模糊的sigmaX給 0 時(shí) OpenCV 會(huì)按核大小自動(dòng)推算這里顯式寫 3 是為了讓模糊強(qiáng)度固定下來?yè)Q核大小的時(shí)候不至于一起漂。Canny 的雙閾值分工是低閾值決定邊緣的延續(xù)高閾值決定邊緣的起點(diǎn)兩者比值落在 1:2 到 1:3 之間比較穩(wěn)。膨脹一次把 Canny 斷開的邊緣接上閉運(yùn)算填掉物體內(nèi)部的小空洞避免一個(gè)物體被拆成兩個(gè)輪廓。參數(shù)上(5, 5)和sigmaX3是一組匹配值核半徑約 2sigma 取 1.5 到 3 都合理。kernel用 3×3 是起點(diǎn)如果物體邊緣在 640 寬度下斷口超過 6 像素可以換 5×5但迭代次數(shù)保持 1。迭代次數(shù)加到 2 以上相鄰物體之間的窄縫會(huì)被填平兩個(gè)物體粘成一個(gè)計(jì)數(shù)直接少一半。3.2 雙閾值怎么調(diào)先定高閾值再放低閾值調(diào)參順序很關(guān)鍵反過來調(diào)會(huì)一直在噪聲里打轉(zhuǎn)。我的習(xí)慣是先用 Single-image 模式加載一張有代表性的圖按下面的步驟走把Threshold2拉到 150 以上觀察邊緣是否只剩物體外輪廓背景紋理應(yīng)該基本消失。逐步降Threshold2直到物體輪廓連續(xù)但背景還沒起大片噪點(diǎn)記下這個(gè)值。把Threshold1從 30 開始往上加觀察輪廓是否閉合成環(huán)閉合即可停。切換到 Multi-image 跑 20 到 30 張看計(jì)數(shù)波動(dòng)波動(dòng)大的圖回單圖模式復(fù)查。不同場(chǎng)景的起點(diǎn)值差別不小可以拿這張表做參考再按實(shí)際畫面微調(diào)場(chǎng)景Threshold1Threshold2說明室內(nèi)白底小零件2570對(duì)比度高閾值可以壓低逆光傳送帶45120背景亮高閾值要抬高抑制反光低對(duì)比度泡沫件1550邊緣弱雙閾值都要降深色臺(tái)面金屬件3590反光點(diǎn)多配合面積過濾只調(diào)一個(gè)閾值的后果很明確Threshold2過高邊緣斷裂輪廓面積偏小會(huì)被minArea整片篩掉Threshold1過低背景噪點(diǎn)連成片閉運(yùn)算之后糊成一個(gè)大塊計(jì)數(shù)虛高。3.3 形態(tài)學(xué)核尺寸與物體間隙的關(guān)系膨脹和閉運(yùn)算都用同一個(gè) 3×3 核看起來省事但這里有個(gè)硬約束核的直徑必須小于相鄰物體的最小間隙。3×3 核膨脹一次物體邊緣向外擴(kuò)約 1 像素兩個(gè)物體間距小于 2 像素時(shí)就會(huì)粘上。如果現(xiàn)場(chǎng)零件挨得很近要么把核降到 2×2要么在預(yù)處理前先做一次腐蝕把間隙拉開代價(jià)是弱邊緣會(huì)丟。閉運(yùn)算的作用和膨脹不同它先膨脹后腐蝕填的是輪廓內(nèi)部的小孔對(duì)外輪廓的擴(kuò)張比純膨脹小。順序不能反先閉運(yùn)算再膨脹孔是填了但后續(xù)膨脹仍會(huì)把物體撐大先膨脹再閉運(yùn)算斷口接上之后閉運(yùn)算只處理內(nèi)部外形更接近真實(shí)邊界。注意形態(tài)學(xué)操作對(duì)二值圖有效Canny輸出是單通道 8 位圖值只有 0 和 255可以直接進(jìn)dilate。如果中間插了一步歸一化或者浮點(diǎn)轉(zhuǎn)換形態(tài)學(xué)函數(shù)會(huì)報(bào)類型錯(cuò)誤。3.4 拍照腳本與 ROI 遮罩圖像檢測(cè)模式的素材不是隨手拍的采集階段就要把背景干擾壓下去。data_collection.py里用了三個(gè)輔助函數(shù)Bbox_img在畫面中央畫紅框maskBbox對(duì)框外做高斯模糊Adjusted_image調(diào)亮度。def Bbox_img(img, bbox_scale0.5, bbox_color(0, 0, 255)): h, w img.shape[:2] bw, bh int(w * bbox_scale), int(h * bbox_scale) x1, y1 (w - bw) // 2, (h - bh) // 2 cv2.rectangle(img, (x1, y1), (x1 bw, y1 bh), bbox_color, 2) return img, (x1, y1, bw, bh) def maskBbox(img, position): x, y, w, h position mask np.zeros(img.shape[:2], np.uint8) mask[y:y h, x:x w] 255 # 大核模糊目的是讓框外失去高頻信息不是去噪 blur cv2.GaussianBlur(img, (21, 21), 0) return np.where(mask[..., None] 255, img, blur) def Adjusted_image(img, brightness_factor1.5): # 查表比逐像素乘法快uint8 溢出由 min 截?cái)?table np.array([min(255, int(i * brightness_factor)) for i in range(256)], np.uint8) return cv2.LUT(img, table)Bbox_img返回的元組必須原樣傳給maskBbox否則掩膜和紅框錯(cuò)位框外該糊的地方?jīng)]糊。bbox_scale取 0.5 表示框占畫面一半小零件調(diào)到 0.2 到 0.3讓物體盡量填滿框。GaussianBlur的 21×21 是刻意給的大核作用是讓框外的紋理徹底消失不是常規(guī)去噪核小了背景邊緣還會(huì)殘留。Adjusted_image用cv2.LUT而不是img * 1.5差別在視頻流里很明顯后者每幀都要產(chǎn)生一個(gè)浮點(diǎn)臨時(shí)數(shù)組再轉(zhuǎn)回uint8兩次內(nèi)存拷貝幀率會(huì)掉。brightness_factor1.5是經(jīng)驗(yàn)值畫面偏暗時(shí)給 1.8過曝時(shí)降到 0.8靠第二個(gè)軌跡欄實(shí)時(shí)調(diào)。4. 從輪廓到計(jì)數(shù)findContours 封裝與最大邊界框的三個(gè)參數(shù)4.1 封裝函數(shù)的簽名與參數(shù)含義原生的cv2.findContours只負(fù)責(zé)找輪廓篩面積、篩形狀、畫框、排序都得自己補(bǔ)。tally.py里把它封成一個(gè)函數(shù)簽名帶了六個(gè)參數(shù)每個(gè)都對(duì)應(yīng)一類現(xiàn)場(chǎng)問題。def findContours(img, imgPre, minArea1000, sortTrue, filter0, c(255, 0, 0)): conFound [] imgContours img.copy() # OpenCV 4.x 返回兩個(gè)值 contours, _ cv2.findContours(imgPre, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE) for cnt in contours: area cv2.contourArea(cnt) if area minArea: # 粗篩噪點(diǎn) continue peri cv2.arcLength(cnt, True) approx cv2.approxPolyDP(cnt, 0.02 * peri, True) # 多邊形近似 if filter 0 and len(approx) ! filter: # 按邊數(shù)篩形狀 continue x, y, w, h cv2.boundingRect(approx) cx, cy x w // 2, y h // 2 if 3000 area 16000: # 有效面積區(qū)間才畫框 cv2.rectangle(imgContours, (x, y), (x w, y h), c, 2) cv2.circle(imgContours, (cx, cy), 5, (0, 255, 0), -1) conFound.append({cnt: cnt, area: area, bbox: (x, y, w, h), center: (cx, cy)}) if sort: conFound sorted(conFound, keylambda x: x[area], reverseTrue) return imgContours, conFound, len(conFound)邏輯上有幾處取舍值得說。RETR_EXTERNAL只取最外層輪廓大物體內(nèi)部的小孔不會(huì)被當(dāng)成獨(dú)立物體這是輪廓計(jì)數(shù)不虛高的前提。CHAIN_APPROX_NONE存下輪廓上的所有點(diǎn)內(nèi)存占用大但approxPolyDP的精度依賴點(diǎn)的密度用CHAIN_APPROX_SIMPLE會(huì)丟掉直線段上的中間點(diǎn)近似結(jié)果偏向多邊形頂點(diǎn)。0.02 * peri是近似精度值越小越貼合原始輪廓越大越接近規(guī)則多邊形。filter參數(shù)按邊數(shù)篩形狀filter4只留四邊形適合方形容器圓形物體邊數(shù)在近似后不穩(wěn)定別用這個(gè)參數(shù)會(huì)漏計(jì)。boundingRect傳入的是近似后的approx而不是原始cnt目的是讓毛刺不把外接框撐大。4.2 為什么從輪廓計(jì)數(shù)改成 boundingRect 計(jì)數(shù)初版是用len(conFound)直接當(dāng)數(shù)量也就是數(shù)輪廓個(gè)數(shù)。實(shí)測(cè)下來無(wú)論怎么調(diào)軌跡欄誤差都?jí)翰蛔∫粋€(gè)物體的邊緣被 Canny 斷成兩段就數(shù)成兩個(gè)兩個(gè)物體在二值圖上粘連就數(shù)成一個(gè)背景反光形成的小閉合環(huán)面積過了minArea又被算進(jìn)去。這些誤差不是調(diào)參能消掉的因?yàn)榕袚?jù)本身就不穩(wěn)。改成以boundingRect為單位計(jì)數(shù)后情況好轉(zhuǎn)每個(gè)輪廓只產(chǎn)生一個(gè)外接矩形計(jì)數(shù)以矩形為單位至少不會(huì)因?yàn)檩喞扑槎粋€(gè)物體出兩個(gè)框。邊界也很清楚——兩個(gè)物體粘連時(shí)外接矩形會(huì)把它們框成一個(gè)大矩形仍然計(jì)成 1 個(gè)。所以這個(gè)方案的準(zhǔn)確率上限由預(yù)處理決定核尺寸和閾值調(diào)不好后面怎么改計(jì)數(shù)邏輯都救不回來。改進(jìn)后的寫法會(huì)把面積判據(jù)換成外接矩形面積再加一道長(zhǎng)寬比過濾valid [] for cnt in contours: area cv2.contourArea(cnt) if area minArea: continue x, y, w, h cv2.boundingRect(cnt) rect_area w * h # 用外接矩形面積做二次篩選對(duì)邊緣毛刺不敏感 if not (3000 rect_area 16000): continue # 長(zhǎng)寬比過濾排除條狀反光和細(xì)長(zhǎng)噪聲 aspect w / float(h) if aspect 0.3 or aspect 3.0: continue valid.append({bbox: (x, y, w, h), area: rect_area}) total len(valid)contourArea對(duì)斷口敏感rect_area對(duì)外形毛刺不敏感兩個(gè)都用一遍相當(dāng)于雙重過濾。長(zhǎng)寬比這一道是針對(duì)傳送帶上的條狀反光加的正常零件長(zhǎng)寬比落在 0.5 到 2.0 之間設(shè) 0.3 和 3.0 是留了余量。4.3 面積閾值區(qū)間的標(biāo)定方法3000 到 16000 這個(gè)區(qū)間不是拍腦袋定的是從數(shù)據(jù)里打出來的。步驟可以照抄用 Single-image 模式加載一張典型圖把MinArea軌跡欄拉到 0讓所有輪廓都進(jìn)列表。在循環(huán)里臨時(shí)打印每個(gè)輪廓的contourArea和w*h觀察目標(biāo)物體的面積分布。取目標(biāo)物體面積的 10 分位做下限、90 分位做上限上下限比值控制在 3 到 5 倍。用 Multi-image 跑 20 到 30 張人工核對(duì)計(jì)數(shù)誤差超過 2 的圖單獨(dú)拎出來復(fù)查。把區(qū)間寫進(jìn)代碼或者配置文件軌跡欄上限同步調(diào)整。臨時(shí)打印的代碼片段# 標(biāo)定階段打開跑完刪掉 for i, cnt in enumerate(contours): a cv2.contourArea(cnt) x, y, w, h cv2.boundingRect(cnt) print(f#{i} contour{a:.0f} rect{w*h} fbbox({x},{y},{w},{h}) aspect{w/h:.2f})區(qū)間太窄是常見誤用同一批零件因?yàn)榫嚯x鏡頭遠(yuǎn)近不同面積能差一倍閾值卡在 5000 到 6000 之間就會(huì)漏掉遠(yuǎn)處的小件。反過來區(qū)間太寬噪聲也放進(jìn)來計(jì)數(shù)虛高。如果物體尺度變化確實(shí)很大面積閾值就不是好判據(jù)得換輪廓周長(zhǎng)或者干脆上檢測(cè)模型。4.4 三種模式的調(diào)度控制臺(tái)入口把三種模式串起來實(shí)時(shí)模式走攝像頭多圖模式走文件夾批量單圖模式是多圖模式的子集用來先調(diào)參再批量跑。def main(): print(1) Real-time 2) Multi-image 3) Single-image) mode input(select: ).strip() if mode 1: cap cv2.VideoCapture(0) cap.set(cv2.CAP_PROP_FRAME_WIDTH, 640) cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 480) run_realtime(cap) elif mode in (2, 3): folder input(image folder: ).strip() paths readPath(folder) if mode 3: paths paths[:1] # 單圖只取第一張 run_batch(paths)Single-image存在的意義是省時(shí)間批量跑 30 張要幾分鐘單圖調(diào)參只要幾十秒調(diào)好之后再批量驗(yàn)證避免跑完一批才發(fā)現(xiàn)閾值全錯(cuò)。readPath返回的路徑列表要按文件名排序否則多圖模式的表單順序和人工核對(duì)順序?qū)Σ簧吓挪闀r(shí)很痛苦。5. 避坑與排查五個(gè)把計(jì)數(shù)結(jié)果帶偏的細(xì)節(jié)5.1 API 版本差異findContours 的返回值個(gè)數(shù)現(xiàn)象代碼在別人的機(jī)器上跑得好好的換一臺(tái)就報(bào)ValueError: too many values to unpack (expected 2)指向contours, hierarchy cv2.findContours(...)這一行。原因OpenCV 3.x 的findContours返回三個(gè)值第一個(gè)是處理后的圖像后兩個(gè)才是輪廓和層級(jí)4.x 把圖像那個(gè)返回值去掉了只剩兩個(gè)。版本不同解包個(gè)數(shù)就不同。解決不想釘版本就寫兼容寫法用負(fù)索引取輪廓兩個(gè)版本都能對(duì)上found cv2.findContours(imgPre, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE) contours found[-2] # 4.x 取 contours3.x 也取 contoursfound[-2]在 4.x 里是第一個(gè)元素在 3.x 里是第二個(gè)元素正好都是輪廓列表。另一處版本差異是cv2.CAP_PROP_FRAME_WIDTH這類常量3.x 里叫CV_CAP_PROP_FRAME_WIDTH新代碼統(tǒng)一用帶CAP_前綴的寫法。5.2 窗口與參數(shù)軌跡欄的三個(gè)典型翻車點(diǎn)現(xiàn)象一啟動(dòng)直接拋cv2.error: OpenCV(4.9.0) ... window not found。原因createTrackbar寫在namedWindow之前。軌跡欄必須掛到一個(gè)已經(jīng)存在的窗口上窗口沒建掛載就失敗。解決把namedWindow提到最前面所有createTrackbar跟在后面。切換圖片時(shí)不要重復(fù)調(diào)namedWindow用setTrackbarPos重置滑塊位置就行?,F(xiàn)象二上一張圖把Threshold1調(diào)到 60換一張圖后沒動(dòng)滑塊計(jì)數(shù)全錯(cuò)。原因軌跡欄是窗口級(jí)狀態(tài)不是每張圖獨(dú)立。批量模式下窗口只建一次滑塊值會(huì)一直沿用。解決單圖模式每次加載新圖后顯式把參數(shù)重置到默認(rèn)值def reset_trackbars(defaults: dict): for name, val in defaults.items(): cv2.setTrackbarPos(name, WINDOW, val) reset_trackbars({Threshold1: 30, Threshold2: 80, MinArea: 1000})更穩(wěn)的做法是把每張圖調(diào)好的最優(yōu)參數(shù)連同文件名一起記進(jìn)表單下次遇到同類圖直接查表設(shè)參不用重新試。現(xiàn)象三按s沒反應(yīng)或者要連按好幾下才觸發(fā)一次保存。原因cv2.waitKey(1)的返回值在某些平臺(tái)帶高位直接和ord(s)比較可能不相等另一種情況是waitKey寫在imshow之前窗口還沒刷新按鍵事件丟了。解決判斷寫成cv2.waitKey(1) 0xFF ord(s)并且保證imshow在前、waitKey在后。視頻流里waitKey的參數(shù)給 1 到 10 毫秒給 0 會(huì)阻塞。5.3 數(shù)據(jù)落盤中文路徑與 Excel 追加現(xiàn)象一readPath返回的路徑明明存在cv2.imread讀出來全是None后面cvtColor報(bào)斷言失敗。原因cv2.imread底層用 C 字符串打開文件路徑里有中文或特殊字符時(shí)打不開而且不拋異常靜默返回None。解決用numpy讀字節(jié)流再解碼寫文件同理def imread_unicode(path): data np.fromfile(path, dtypenp.uint8) return cv2.imdecode(data, cv2.IMREAD_COLOR) def imwrite_unicode(path, img): ext os.path.splitext(path)[1] ok, buf cv2.imencode(ext, img) if ok: buf.tofile(path) return okimdecode的第二個(gè)參數(shù)用IMREAD_COLOR保持三通道和后續(xù)處理鏈一致如果用IMREAD_UNCHANGED帶透明通道的 PNG 會(huì)變成四通道cvtColor的轉(zhuǎn)換碼要跟著改?,F(xiàn)象二第二次按s保存打開表格發(fā)現(xiàn)只剩一行之前的數(shù)據(jù)沒了。原因DataFrame.to_excel默認(rèn)modew每次寫都重建文件。哪怕傳的是已有文件路徑也是覆蓋。解決要么先讀舊表再concat要么直接用openpyxl追加行from openpyxl import load_workbook, Workbook def append_row(xlsx_path, row: dict): if os.path.exists(xlsx_path): wb load_workbook(xlsx_path) ws wb.active else: wb Workbook() ws wb.active ws.append(list(row.keys())) # 首行寫表頭 ws.append(list(row.values())) wb.save(xlsx_path)字典的鍵順序在 Python 3.7 以后是插入序表頭和數(shù)據(jù)的列能對(duì)上。追加前最好用絕對(duì)路徑查一遍已有表里的文件名避免同一張圖按兩次s寫兩行。這一點(diǎn)在批量模式里尤其重要重復(fù)行會(huì)讓后續(xù)統(tǒng)計(jì)的數(shù)量翻倍。6. 進(jìn)階用法把表單反哺成數(shù)據(jù)集標(biāo)注與參數(shù)回歸驗(yàn)證表單寫順了之后它的價(jià)值就不只是「記錄一下」而是變成一份可回歸的驗(yàn)證集。命名規(guī)則里如果帶上數(shù)量比如類別_日期_序號(hào)_數(shù)量.jpg文件名本身就是弱標(biāo)注不用再手工標(biāo)一遍。import pandas as pd df pd.read_excel(records.xlsx) # 從文件名尾部解析數(shù)量例如 part_20230618_001_12.jpg df[label] df[filename].str.extract(r_(\d)\.jpg$).astype(int) df[err] (df[count] - df[label]).abs() print(df.groupby(label)[err].agg([mean, max, count])) hard df[df[err] 2]err的均值看整體偏移max看最壞情況count看樣本量夠不夠。均值在 0.5 以內(nèi)、最大值不超過 2說明當(dāng)前參數(shù)在這一批圖上基本可用hard里拎出來的圖回去用 Single-image 模式逐張看面積分布和閾值調(diào)完再批量跑一遍形成「調(diào)參 → 批量 → 回歸」的閉環(huán)。這一步比盲目拖滑塊有效得多因?yàn)槊看胃膭?dòng)都有量化反饋。再往下走可以把hard里的圖當(dāng)成失敗集單獨(dú)統(tǒng)計(jì)它們的共同特征是面積偏小被minArea篩掉了還是長(zhǎng)寬比超限被過濾了。如果是前者說明面積區(qū)間下限要往下放如果是后者說明長(zhǎng)寬比閾值太緊。參數(shù)和失敗樣本對(duì)上號(hào)之后下一次換場(chǎng)景就有據(jù)可依不用從零試。從那以后我每次動(dòng)面積閾值或者形態(tài)學(xué)核尺寸都強(qiáng)制先用 Single-image 把面積分布打印一遍再跑 20 張批量看err分布最后才把參數(shù)寫死。省下來的返工時(shí)間比調(diào)參本身多得多。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
午夜天堂一区人妻| 丁香六月色| 五月丁香婷婷色| 久这里只有精品| www.97干视频| 丁香av网| 任你爽在线视频| 五月婷婷综合激情| 思思热精品在线| pacopacomama 070722_670 素人奥様初撮りドキュメント 103 大久保純子 | 久草嫩草在线观看| 九九婷婷网五月天| 色婷婷电影| 国产激情在线| 综合网色| 五月综合丁香婷婷| 五月婷婷涩涩爱| 久久在线视频免费观看| 九月婷婷综合| 五月天婷婷Av| 99在线视频网址在线观看| 中文中文在线| 婷婷D区| 亚州欧美黄色电影| 亚洲成人av在线播放| 久久杏爱视频| 狠狠另类视频| 五月综合婷婷久久在线| 婷婷色av| aa久久| 九九热精品| 夜夜操狠狠操| 99精品热| 99热99色| 深爱婷婷丁香五月激情| 偷拍五月丁香| 丁香八月综合激情| tingting五月天亚洲| 天天 青草 制服丝袜 在线| 五月丁香婷婷激激激综合网色播| 热99在线精品| 丁香五月天综合| 五月丁香激情综合六月涩涩爱| 激情五月天色色色| 丁香久久五月天视频在线观看| 久久99热 这里有精品| 丁香五月激情在线| 亚洲综合色网| 婷婷五月丁香综合桃花色网| 日本一级一级一级一级| 日韩久综合| 无码啪啪| 国产精品 的国产| 色五月色五天色情网| 婷婷五月天六月| 色婷婷欧美| 91久久精品无码一区二区三区| 丁香九月激情| 少妇AB又爽又紧无码网站| 天天干天天av天天射| 日韩99视频| 五月婷综合性中心| 久久九九爽| 色欲天天综合网| 免费99色| 蜘蛛女免费观看完整版高清电影| 草五月| 色情五月丁香| 91免费看片| 激情五月天啪啪| 丁香五月aV| 激情五月综合免费| 五月精品| www,99色| 思思w99| 久久ww| 国产色色小草视频| 无码毛片992367| 五月天网站免费欧美| 色99热| 五月丁香色婷婷| 99干免费视频| 五月天啪啪视频| 激情六月婷| 9l视频自拍9l九色成人| CAoub青青超碰| 玖玖资源天天无码| 另类小说色婷婷| 丁香五月瑟瑟| 97婷婷丁香五月天激情图片| 色色五月天婷婷| av在线观看网址| 婷婷第六色| 婷婷五月情| 婷婷五月丁香色播| 婷婷综合六月| 九色PORNY在线精品酒店| 伊人五月丁香| 偷拍99在线视频观看| 亚洲视频在线观看99| 99性爱视频| 亚洲视频久久| 久久在线人妻| 狠狠婷婷日韩| 韩国婷婷丁香五月| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 久久综合首页| 精品国产a| 欧美激情-区二区三区| 99综合色色色| 九九色热| 丁香五月婷婷综合激情啪啪啪啪啪啪啪| 丁香色婷婷| 九九热最新| 日韩欧洲亚洲| 六月婷婷开心| 久草久青福利| 综合久久激情久久| 9久热| 野战毛片三一3| 色婷婷丁香女女| 国产又黄又爽又激情不遮挡视频在线观看| 欧美电影在线播放| 婷婷色av| 性爱七区| 日本九九热| 丁香六月 婷婷六月| 五月天婷婷婷| 久婷五月| 操逼巨乳91| 欧美 日韩 成人| 欧美大香蕉视频| w婷婷五月婷婷w| 99热最新网址| 久草婷婷| 开心五月婷婷在线| 激情综合丁香| 激情五月亚洲综合网| 丁香五月天激情视频| 亚洲精久久| 色综合婷婷| 丁香五月天激情婷婷丁香六月| 色婷婷六月| 9久久婷婷国产综合精品性色| 激情视频网址| sS丁香五月婷婷| 久久精品亚洲一级牲爱综合| 不卡在线中文字幕无| 色欲影香| 91干| 可以免费看的av网站| 综合另类激情| 中文字幕成人| 欧美婷婷精品激| 成年人看Va免费视频| 狠狠色综合无线观看| 99视频这里有精品| 人妻自慰在线| 丁香五月九九| 久草热8精品视频在线观看 | 欧美性丁香色色五月天| 丁香婷婷浪潮AV久久综合| 激情丁香久久| 综合大香蕉| 综合99在线| 婷婷在线网| 丁香五月亚综合图片| 一级性感黄色内射视频| 青吴乐视频| 五月激情综合美女久久| 国产色丁香| 久久婷婷五月综合色欧美| site:minyis.com| 色在线免费观看| 97福利视频| 丁香综合伊人| 国产精品国产| 久综合4| 夜色综合网| 久鲁鲁色网| 婷婷综合影院| 99国产99| 欧美丰满熟妇BBB久久久| 婷婷五月电影| 日日爱699| 热中文字幕| 91女人18毛片水多国产| 亚洲精品一二三| 97热在线精品| 伊人玖玖网| 91凹凸在线| 成 人 色 色| 99热人人| 97AV人人插人人操| 青青草网武则天| 777精品久无码人妻蜜桃| 国产67194| 九热免费视频| 婷婷亚洲欧美丁香五月| 日本女va| 九九99精品| 国产精产国品一二三在观看| 97久久视频| xx久久| 九九色综合网| 天堂在线婷婷| 亚洲妇女熟BBW| 五月丁香久久| 夜夜躁婷婷AV| 五月激情在线| 日本不卡一区二区三区| 操碰97| 色婷婷丁香六月| 91精品久久久久久| 亚洲精品视频在线播放| 婷婷天堂综合| 99思思热只有在这里看 | 5月丁香综合图区| 婷婷五月天激情网| 99性视频| 精品久久99码| 可以看的av| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 99性视频| 天堂在线9| 99久热在线精品| 欧美99| 天天日天天舔| 亚洲乱码日产精品BD| 国产在线激情视频| 人与禽A片啪啪| SS丁香五月婷婷| 色七色九九| 九九免费视频在线| 亚洲免费99| 狠狠撸激情综合丁香五月天俺来啦| 激情文学五月丁香六月婷婷| 国产三级片91| 99热成人精品| 97婷婷久久丁香| WWW,五月| 五月婷婷人人人操| 超级碰 久久9| 在线资源av-超碰中文在线-成人AV| 婷婷伊人75| 久久与婷婷| 色情五月丁香| 天天碰夜夜爽| 伊人婷婷大香蕉| 婷婷五月天成人动漫 | 五月激情综合婷婷| 色婷婷狠狠干芒果TV| 色欲婷婷五月天丁香| 婷婷色网| 天天精品视频在线观看视频| 天天爽免费视频| 99热播放| 婷婷五月丁香第四色超碰在线| 午夜在线成人网站免费观看| 狠狠第四色| 99久热在线精品| 26uuu亚洲精品国产| 综合伊人久久| 成年人99热| 亚洲最大在线| 大香蕉人妻| 婷婷五月激情小说| www.激情在线| 97艹| 视频这里只有精品16| 大香蕉婷婷五月天| 欧美一级a | 婷婷五月丁香99| 欧美在线97| 丁香五月亚洲综合丝袜| 美女视频图片久久91| 婷婷亚洲在线| 91seav| 婷婷丁香五月天中文字幕| 色婷婷99| 美女激情综合| 久久99热这里只有精品 | 五月婷婷六月少妇激情| 亚洲网视屏| 91人人操人人| 热99这里只是精品| 第四色大香蕉| 五月天婷婷黄色| 开心激情婷婷| 夜夜操夜夜爽| 国产成人网站在线观看| 九月婷婷激情| 人人操A| 91紱請| 99热插| 五月丁香婷庭在线| 婷婷中文字幕欧美| 亚洲婷婷五月天综合| 天堂久久婷婷| 欧美性爱五月天| 日日日日操| 婷婷八月丁香激情综合| 91av传媒高清在线视频网| 青青热久精品视频在线观看| wwwss在线观看| 九九AV| 五月婷婷在线观看黄| 97AV人人插人人操| 天天久| www,99视频| 久热99热| 色99在线视频| 狠狠色丁香五月婷巨| 精品婷婷| 99精品在线观看| 久久婷婷网| 色婷婷婷婷| 激情婷婷五月社区| 丁香花五月天激情| 婷婷五月六月丁香| site:esunnet.com| 国产无套精品一区二区| 美女五月狠狠| 色五月婷婷基地| 色色色色色色色色综合网| 9久热在线视频精品| 五月天色官网| 男女99免费视频| 五月婷婷丁香俺日污视频| 久久久久久18| site:pnnrt.com| 午夜九九电影| 99热在线观看99| 五月天激情婷婷| 五月色婷| 色色五月丁香| 日韩色五月| 丁香五月婷婷欧美成人色图| 操人无码| 99婷婷综合| 天天做夜夜爽| 男人的天堂999| 丁香五月天大香蕉啪啪| 蜜臀嫩草| 999激情视频| 天天日,天天干,天天操| 影音先锋 91工厂| 91精选国| 久久99热这里只有精品| 99综合99| 99热在线精品播放| 久久婷五月| 丁香五月WWW| 婷婷色网| 五月WWW| 九色91国产| 狠狠狠狠狠狠| 99视频精品全部观看10| 99热99网| 久久久精品99| 五月丁香激情啪啪| 射久久丁香五月| 亚洲日日操| 深爱综合网| 天天爽夜夜爽天天爽夜夜爽| 开心六月婷| 激情五月天.色网| 五月丁香六月婷婷色日| 26uuu国产精品| 热久91| 中文字幕免费高清电视剧| WWW,婷婷,COM| 2020夜夜操天天爽| 4399在线日本A片| 91碰免费视频| 综合五月天| 天天综合网站| 亚洲婷婷在线播放十月| 色婷婷久久综合久色综| 久久91久久精品久久| 99热免费| 91狠狠综合久久| 综合久久高清| 五月丁香花激情综合网| .操區COm| 九九视屏| 六月丁香中文字幕| 在线成人av播放| 丁香五月婷婷综合啪啪| 五月综合色| 97操在线视频| 丁香久月| 五月婷婷色情| av操一操| 日本在线视频手机播放五月婷| 丁香五月大香蕉在线99| 99er久久| 五月丁香啪啪综合| 九九热精品6| 狠狠狠狠狠狠狠狠草| 亚洲激情淫网| 丁香 婷婷 激情 综合 五月| 五月天激情小说婷婷| 超碰色天堂| 丁香九色不卡aaa| 亚洲va久久久噜噜噜久久天堂| 超碰人人干| 婷婷五月色色| 91丁香五月| 五月天婷婷无码| 六月婷婷五月丁香| 五月天六月色| www.yw尤物| 亚洲欧美婷婷五月色综合| 丁香五月婷婷色播艳门照| 月婷婷亚洲| 丁香婷五月| 亚洲久久婷婷丁香五月天| 色婷婷色五月色丁香| 国产成人精品亚洲线观看| 黄色五月婷婷| 婷婷天堂站| 日韩色五月| 激情av在线| 激情五月婷婷开心网| 久久婷婷五月免费视频| 激情综合九月| 丁香五月天之婷婷影院| 成人无码髙潮喷水A片| www.超碰| 色婷小说| 97操碰在线97| 另类视频一区| 97人妻碰碰碰久| 五月天国产成人| 丁香五月婷婷亚洲人| 欧美色播综合在线观看| 国语精品探花| www.婷婷亚洲基地| 国外亚洲成AV人片在线观看| 精品一二三区久久AAA片 | 婷婷综合日本| 日本色啪| 伊人久久大香线蕉av一区| 六月丁香婷婷色狠狠久久| 色色色999| 九九色video| 亚洲AV免费国产电影| 六月色激情| 五月天综合在线| 欧美日本一区二区三区| 色色色色色色综合| 97久久超碰| 亚洲视频一区| 欧美婷婷色五月| 五月激情精品视频| 亚洲色夜| 色色999三级片| 人妻AV在线| 99热精品在线播放| 欧美Va日本Va| 日本丰满久久| 久久久精品99亚洲综合| 亚州美女| 啪啪小说五月天| 亚洲啪啪网| 亚洲热热视频| 五月丁香婷婷综合网色欲| 蜜桃婷婷狠狠久久综合| 激情五月婷婷| 五月婷六月天| 91婷婷伊人牛牛| 六月丁香啪啪啪| 午夜爱爱爱成人| www.一起草av| 久久人人妻| 五月亭亭综合五码| 九九99精品视频| 99久久久久久www| av在线免费网站 | 欧美天堂婷婷日韩| 五月丁香91| 色色色99韩| 亚洲超碰中文字幕| 丁香六月在线| 99热在线成人网站| 色色网站免费在线视频| 特黄三级又爽又粗又大| 色色色色色色网| 都市激情小说婷婷| 久久激情视频| 九九九AAA热视频| 久久婷婷五月天| 国模淫穴色图| 天天日天天添| 激情啪啪五月天| 婷婷99狠狠| 思思热99热| 婷婷五月综合色中文字幕| 1024久婷| 亚洲精品色| 五月天com| 这里只有精品热| 色情五月| 三级av在线| 91干| 亚洲视频伍月婷婷| 五月激情另类| 大战熟女丰满人妻AV| 亚洲av网站| 中文字幕丰满乱孑伦无码专区| 色婷| 99热九九热| 99高级会所久久| 91精产一区三区免费观看| 专区无日本视频高清8| 干一干xxxx| 在线A色| 色五月婷婷色| 五月亭亭色| 无遮挡国产高潮视频免费观看| 激情九色| 99热免| 亚洲激情免费久久| 日良久久| 丁香五婷| 丁香五月婷婷操逼| 亚洲无AV在线中文字幕| 九九热这里| 婷婷五月天亚洲综合| 五月丁香婷婷婷婷综合网| 色啪网| 视频1区2区| 天天噜天天爱| AVV黄| 婷婷伊人久久无码色五月| 97色色色色色| 五月婷婷色播| 夜夜爽天天爽| 中文乱子伦视频| 激情五月天综合图片小说网站| 婷婷色在线观看| 色婷婷五月影院| 97涩婷婷| 亚洲精品一二三| 中文字幕永久在线| 综合网五月| 精品成人在线观看| 99人妻碰碰碰久久久久视| 五月丁香龟婷婷| 中文av网站| 天天操夜夜橾| 五月天婷婷永久免费视频| 激情美女五月天| 99日本黄站| 大香蕉伊人爱在线| 久久婷婷五月综合啪| 99热伊人综合| 丁香五月玖玖| 免费色婷婷| 日韩成人不卡| 日日噜噜夜夜狠狠久久丁香五月| 欧美日本韩国亚洲| 无码 av电影| 办公室少妇激情呻吟A片在线观看| 天天日天天爽| 亚洲成人免费电影| 五月丁香婷婷色| 激情深爱五月天| 99久在线精品99re8热| 五月婷婷六月综合| 日本久久九| 激情五月成年| 五月精品99综合| 亚洲超碰青涩| 中文婷婷狠狠| 日韩三级视频一区二区| 激情婷婷五月天丁香| 任你躁XXXXX麻豆精品| 色情丁香五月婷婷精品| 色婷婷小说| 涩涩网五月天| 六月伊人婷婷| 五月婷婷色吧!| 激情综合色| 伊人深爱综合| 五月丁香亚洲综合| 五月丁香啪啪啪| 久re热视频| 亚洲区1| 天堂伊人干| 丁香五月天堂婷婷| 色婷综合| 九九干视频| 狠狠色噜噜狠狠狠狠综合| 丁香五月婷婷色情综合| 精热在线综合网| 99区视频| 日本一级特黄大片AAAAA级| 亚洲精品国产成人AV在线| 深爱五月激情五月| 综合六月激情婷婷| 日本人人干| 九九RE视频在线精品| 五月婷婷中文网| 99碰在线视频| 天天色播| 色五月综合在线| 99ri精品| 久久婷婷五月综合色区| 97色色在线视频| 激情五月婷婷色| 久99久99精品免| 一级黄色影片| 99燥99日| 综合玖玖偷拍| 天天综合网、天天综合色 | 无码人妻少妇色欲AV一区二区| 色丁香五月| 中文字幕在线免费看线人| 激情亚洲五月| 丁香五月开心亚洲| 五月婷六月综合在线观看| 婷婷六月色情| 亚洲成人无码网站| 婷婷五月天欧美| 97碰碰在线观看视频| 狠狠五月天| 综合婷婷都市激情| 丁香五月婷婷亚洲另类| 大香蕉精品视频| 免费碰碰视频久| 九九在线精点品| 天天操无码| 国产在线aaa片一区二区99| 天天综合网色欲香| 99亚色色色| 亚洲丁香五月| 九九热黄色| 亚洲精品无人区| 色情五月天A片| 婷婷五月花西瓜| 色综合婷婷| 国产成人综合电影| 丁香五月婷婷AV| 26uuuavcom| 女人被男人吃奶到高潮| 午夜天堂一区人妻| 婷婷精品综合| 夜夜躁狠狠 | 天天做综合网色综合| 免费黄色视频网址| 亚洲成人av在线播放| 五月婷婷电影院| 在线只有精品| 99色在线视频| 婷婷影院A成人| 色婷婷综合久久久久| 激情五月com| 婷婷天堂综合| 超碰自拍天堂| 七七九九色色| 日韩黄色电影| 99这里的视频都是精品| 99re在线这里只有精品视频首页| 婷婷色导航| 久9热插入| 久热这里只有精品性色AV| 亚州操人在线视频| 青草视频在线播放| 在线中文字幕视频| 五月花激情| 国产乱人偷精品人妻A片| 92国产福利| 国精产品久久| 婷婷色中文字幕| 操日视频| 日本社区五月天激情| 久久九九99| 香蕉狠狠爱视频| 天天狠狠干| 青草视频在线观看视频| 99热最新| 五月丁香色综合| 日韩野外 无套| 色婷婷在线视频久| 97人人射| 超碰在线免费9| 久久这里有精品视频| 九九热免费视频| 激情综合九月| www婷婷| 任你干aa| 九九热在线视频,| 91人操| 翔田千里无码| 伊人综合网站| 色婷婷丁香网| 亚洲成人一区| 91好好热日本在线| 婷婷亚洲欧美丁香五月| 极骚大香蕉伊人| 蜜桃婷婷丁香五月天狠狠久久综合| 欧美精品999| 日韩精品一品二区三区的使用体验| 色欲天天综合| 丁香六月成人| 婷婷四色五月| 日韩丰满少妇无码内射| 久久黄色免费视频| 综合网色| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 久久99婷婷| 97热在线精品| 国产超碰人人| 五月天 婷 欧美亚洲| 激情五月瑟瑟| 日日色综合| 97超碰人人操| 狠狠操狠狠插| 色噜噜狠狠色综| 五月丁香| 永久无码色| 久久xx| 大香蕉手机视频| 另类图片天天影视在线观看| 丁香九月久久| 色五月丁香网| 狠狠大香婷婷爱| 婷婷色六月| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 久久五月人人摸| 婷婷伊人| 桃色激情婷婷伊人网| 无码少妇高潮喷水A片免费| 五月婷婷播| 国产毛片精品一区二区色欲黄A片| 激情的五月婷婷蜜桃| 色婷婷丁香五月| 激情六月五月婷婷综合网| 国产欧美熟妇另类久久久 | 色五月涩涩婷婷| 人妻aV在线| 婷婷五月天堂| 久热这里只有国产| 国产成人片| 久久这里只有精品无码| 五月天婷婷青青草| 久久五月婷综合| 丁香伊人激情| 午夜天天精品视频| 五月丁香花婷婷玉莉AV| 久久精品天| 大香蕉久热| 大香蕉综合在线| 色婷婷九月| 很操日本7| 97人碰人操| 国产成人综合网| 狠狠色97| 色色色色色色色色色色色色色97| 婷婷,五月天,丁香,第一| 三人荫蒂添的好舒服A片| 五月婷婷激清网| 丁香花婷婷五月天| 日韩成人av在线| 六月丁香视频网站| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 欧美成人猛片AAAAAAA| 天天色域综合网| 色色综合激情| 九九热这里只有精品6| 婷婷五月天少妇| 色约约视频一区二区三区四区五区| 久久激情网| 亚洲另类在线观看| 五月草影视| 婷婷五月综合丁香久久| 色综合色综合网| 五月天社区婷婷| 开心五月婷婷激情网| 日韩免费视频| 久久人人人人妻| 1024操逼| 五月丁香六月婷婷视频| 琪琪狠狠干| 五月婷婷色激情| 亚洲 成人 电影av在线观看| 欧州色色| 探花搜索结果 - 黄上黄| 激情都市丁香婷婷| 欧美视频五区| 夜夜夜夜夜操| www.精品99| 亚洲第一成人无码A片| 热99精品视频五月| 色色自拍视频网站| 国产精品 的国产| 久久五月综合| 五月婷婷久草在线视频综合| 99福利导航| 久草热8精品视频在线观看 | 激情五月婷婷网在线观看| 婷婷五月欧美AA片免费| 五月天另类小说| 大陆肏屄视频| 九九黄色网| 日韩人妻在线播放| 热99在线| 桃色激情网| 丁香色六月婷婷| 婷五月天丁香婷五月| 天天操夜夜操| 99热这里只有精品在线观看| 五月天婷a在线| 热996精品在线观看| 操日视频| 婷婷丁香18| 激情五月开心五月丁香五月| 久久99热这里只有精品首| 久久五月婷综合网| 五月丁香综合激情| 91日视频| 伊人狠狠干| 99爱视频精品| 亚洲av无码精品色午夜| 国产又爽又猛又粗的视频A片| 极品另类| 激情网综合| 婷婷五月天受日本法律保护| 成人AV网站在线| 亚洲欧洲中文日韩久久AV乱码| 五月婷婷丁香大陆免费| 这里只有精品9| 五月伊人综合| 五月丁香久久呀| 免费视频1区| 五月丁香六月婷| 婷婷六月天天| 亚洲色模骚货| 天天做天天要天天爽| 97中文在线| 毛v一区二区视频| 在线观看免费观看在线9久| 99色婷婷| 五月婷婷五月天| 视色综合| 人人操Av| 五月婷婷性爱| 99九九视频| 九九九干精品| 农村熟妇高潮精品A片| 天天搡日日搡aaaaⅩ| 天天做天天爱天天要| 五月婷婷开心激情六月蜜桃| 先锋资源婷婷| 色亭亭五月天网扯| 色综合com| 国产午夜精品一区二区| 超碰色碰碰| 欧美丰满熟妇BBB久久久| 国产精品久久..4399| 99爱在线免费视频| 五月天激情网页| 五月丁香WWW| 婷婷激情伍月网| 任你擦免费视频| se.久久视频在线观看| 激情AV网| 99国产精品久久久久久久久久久 | 久久久天堂国产精品女人| 超碰com| 99热国产免费| 久久er99| 五月丁香影视| 婷婷综合视频| 婷婷深爱五月天| 五月天婷婷丁香社区| 另类图片五月天婷婷| 99色综合网| 欧美日韩成人在线免费| 99综合99| 97超喷视频在线观看| 精品香蕉99久久久久网站| 丁香五月激情啪啪| 久久99久久99久久99人受| 99热这里只有精品3| 激情欧美五月丁香| 丁香五月人妻| 国产三级片91| 婷婷娌伦网| 涩涩五月天| 狠狠色狠狠操| 天天插天天射| 五月婷婷草| 噜噜在线| 久热99热| 91人操| 婷婷九九| www.激情| 色色五月天婷婷| 日韩AV大全| 婷婷六月色| 99热综合| 五月天伊人| 激情五月综合网| 风流少妇A片一区二区蜜桃| 狠狠操综合| 色色色欧美| 中文字幕丰满孑伦无码专区| 欧美性生交xXxX久久久| 五月天色导航婷婷资源婷婷| 欧美激情中文字幕| 九九色播五月丁香| 91丨九色丨熟女|新版| 九九热自拍| 婷婷五月色| 五月色情婷婷开心五月天| 综合激情五月丁香9999久久精| 国产夫妻操逼内射视频| 久久婷出差欧美色两性综合网| 激情五月亚洲综合网| 五月天色导航| 亚洲aV写真天天综合网久久| 欧美这里只有精品| 久久综合影院 | 六月丁香综合| 五月天日日操夜夜操 | 97色婷婷五月天| 99re视频精品| 手机旧版看人妻1025| 97色片| 丁香五月激情婷婷| 色婷婷网大全在线| 六月丁香AV| 五月天激情网址| 成人在线不卡| 怡红院99| 人人爽亚洲| 日本高清综合网五月丁香| 91碰超| 丁香五月成人社区| 欧美性猛交XXXX乱大交极品| 丁香五月激情五月色综合| 日韩高清久久| 99热日本| 人人天堂操| 五月丁香六月婷婷操操操| Av在线不卡一区| 20253AV| 国产九九一区二区三区| 婷婷香香五月| 色了色综合| 五月天色不卡| site:pnnrt.com| 久久91久久精品久久| 三级99热| 99视频超级精品| 激情二色月| 99热免费| 欧洲色| 五月婷婷综合天天操| 欧美天堂久久| wwwss在线观看| 婷婷五月天亚洲精品| 九月色婷婷综合| 亚洲五月婷婷| 丁香五月天堂亚洲社区| 婷婷六月激情| 色婷婷六月激情| 丁香五月天色婷婷| 五月婷综合| www.色欲丁香婷婷| 色99视频| 婷婷激情综合网| 婷婷精品综合| 中文字幕在线观看视频www| a久久| 色吊丝av中文字幕| 亚洲va日| 99久久极情精品一区| 欧美成人A片AAA片在线播放 | 9色在线视频精品观看| 亚洲色色色色色色色色色| 婷婷六月天精品| 夜夜谢天天干| 色婷婷五月天| 色婷婷五月影院| 婷婷丁香午夜综合影视| 亚洲精品色| 三男玩一女三A片| 成人毛片在线免费观看| 色综合五月婷婷狠狠干| 狠狠操狠狠插| 思思久久99热只有频精品66| 色七七九九| 97婷婷丁香五月| 日韩黄黄| 欧美一级毛卡片无码| 五月婷婷综合丁香视频| 婷婷久久综| 超pen个人视频97| 天天久综合网永久入口17v | 久久久性爱视频| 天天日天天做天天操| 国产成人综合网| 五月天另类小说久久小说网| 婷五月丁香俺| 99er视频在线| 国产精品色| 先锋资源婷婷| 色婷婷五月婷婷五月婷婷五月| 大香蕉婷婷色| 9 大屁股在线视频精品| 五月天激情综合网站| 久久综合影院| 五月天另类小说久久小说网| 噜一噜免费视频| 这里只有精品久久| 91综合视频丁香| 天天弄天天爽| 国产色网站| 色色色com| 99热99思午夜精品| 九九99免费视频| 亚洲丁香花五月丁香花| 中海油常州环保涂料有限公司| 天天色天天操天天射| 五月婷婷影视| 婷婷五月亚洲激情| 99ri精品视频在线观看| 五月丁香婷婷俺| 五月天婷婷7米| 狠狠一日| 欧美日本综合网| 激情九月综合| 综合色网站| 蜜桃五月天| 91色呦哟| 亚洲精品操一操、噜一噜、摸一摸、爽| 激情99| 色色五月天com| 天天爽天天干天天| 一点色成人网| 天天日天天干天天爱| 激情九月综合| 在线视频激情网站| 一级性爱视频| 成人中文网| 色色网站观看| 久久六月综合| 五月丁香婷草| 99热只有| 久久天堂婷婷五月| 99r这里| 久久五月婷天天干| 岛国av网| 亚洲字幕AV一区二区三区四区| 中文字幕网伦射乱中文| 99r久久这里只有精品| 六月婷婷中文字幕| 久久艹99| 蜜臀综合久草| 伊人狠狠干| 五月丁香花成人社区| 三区激情四射av| 五月丁香啪啪| 九九热九九热精品| 99精品无码| 免费视频舔| 337p大胆噜噜噜噜噜91Av| 草草视频91| 综合五月婷婷| 久久只有精| 99re这里| 五月天婷婷激情网| 婷婷激情综合| 永久的网站AAAA | 成人精品一区日本无码网| 色色成人網| 最近中文字幕大全免费版在线| 99久久久国产大片区| AV性爱网| 99re这里只有精品国产99| 亚洲免费婷婷| 噜一噜免费视频| 五月天婷婷色色| 久久婷婷综| 一起草av| 婷婷激情五月天7| 欧洲第一无人区观看| 五月天另类综合网| 中文字幕无码人妻少妇免费视频| 思思久久思思| 丁香五月亚洲综合丝袜| 丁香六月五月婷婷| 丁香婷婷五月人体| 99热精品无码| 亚洲小电影在线观看黄999| 久久伊人婷婷| 九九色图| 中文字幕永久在线| 玖玖精品资源| 日本久久色| 深爱五月激情| 9精品视频在线观看| 生活片五区| 99re这里只有精品9| 最近中文字幕大全免费版在线 | 婷婷五月天免费| 欲色人妻| 偷拍91九色| 久久婷婷五月综合| 婷婷久久五月| 五月天成人在线| 伊人久久大香线蕉综合网站| 97人人做| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | 日韩av手机在线观看| 婷婷视频在线碰| 免费试看小视频 99| 激情色五月天| 婷婷成人视频| 久久精典| 激情五月天综合网| 婷婷色丁香五月| 色色色9 9 9| 丁香九月激情| 五月六月丁香婷婷在线观看| 日韩五月婷婷久久| 五月婷婷影| 婷婷五月深情丁香深爱日韩| 99久久99综合| 婷婷五月激情图片| 成人精品在线观看| 亚洲精品久久久久久久久久吃药| www.深爱激情| 久久婷婷成人| 26uuu欧美| 青草激情综合| 91热99| 97人人草| 26uuu欧美日本| 婷婷五月天激情网| 男人操女人高潮91视频| 5月婷婷激情在线| 色五月首页| 五月丁小婷婷激情四射| 99热免费观看| 丁香六月婷婷开心| 欧美成人精品老美女噜噜噜| 俺也去五月婷婷丁| 99热这里是精品| 激情五月深爱五月| 五月婷婷久久爱| 日韩久久色| 激情网开心网| 久婷婷婷| 五月婷婷六月丁香| 狠狠色噜噜狠狠狠888| 激情深爱婷婷网| 性爱五月婷| 婷婷色五月天在线| 开心五月激情婷婷| 色九区| 丁香五月天日韩无码| 大香蕉久操| 人妻VideOssS人妻高清| 99综合| 亚洲成AV人片在线观看| 五月丁香六月婷婷免费| 狠狠va| 五月婷婷之综合激情| 久久性爱视频网站| 成人精品在线观看| 丰满少妇猛烈A片免费看观看 | 9久热| 狠狠色婷婷色| 五月色网| 99精品无码网站| 夜夜骑夜夜撸| 性色五月天| 久久婷婷免费| 成人AV播放| 婷婷五月激情图片| 深爱激情九九五月天 | 久久综合干| 亚洲精品五月| 少妇性BBB搡BBB爽爽爽视頻 | 五月天成人综合| 激情六月丁| 五月丁香婷婷成人伊人网| 天天干天天操天天射| 国产真实乱了老女人视频 | 丰满少妇猛烈A片免费看观看 | 99视频精品8| 亚洲另类电影| 超级碰碰99| 午夜少妇在线观看视频| 久久久激情视频| 女高怪谈在线观看| 无码人妻一区| 天天综合激情| 色婷婷中文在线| 亚洲中文AV| 99这里有精品视频| 婷婷久月| 狠狠色狠狠操| www.狠狠色.com| 99综合| 91丁香| 九九热内射| 北京熟妇搡BBBB搡BBBB| 99ri在线视频| 久久人人妻| 亚洲色亚洲精品| 热99精品视频观看| 九九热黄色| 亚洲精品视频电影| 人操91在线| 亚洲无AV在线中文字幕| www.minyis.com【JT】币址百万U预算可预付QQ2101460746 | 99热精品少| 美女激情综合| 激情av网| 麻豆五月丁香婷婷| www.狠狠操| 色五月综合激情| 天天色,天天日,天天做| 五月婷婷综合天天操| 激情第四色| 久久这里有精品| 91天天操天天干天天射| 五月婷婷亚洲色视频| 婷婷五月深爱五月| 久久一二三视频| 深爱激情五月天色婷婷| 大香蕉人妻| 欧美 日韩 成人在线| 精品亚洲国产成AV人片传媒| 综合 蜜月 婷婷| 天天操天天插天天射| 成人亚洲精品久久久久| 婷婷在线播放| 五月婷婷色播| 婷婷五月情| 九九99免费理论| 日本女人久久| 五月婷婷之婷婷| 深爱五月网| 91wwmm导航| 五月激情五月婷婷五月天在线| 5月丁香六月情| 五月丁香激情综合网官网| a69在线视频| 99爱免费在线观看| 第四色五月激情网| 欧美婷婷六月丁香综合色连续高潮抽搐| 婷婷综合色| 婷婷五月天影院| 五月婷色色| 日本色色网| 99热都是精品| 婷婷五月天堂网| 深爱丁香网| 色欲五月天|