亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

C#與HALCON聯(lián)合開(kāi)發(fā)機(jī)器視覺(jué)檢測(cè)系統(tǒng):架構(gòu)、模塊與驗(yàn)收實(shí)踐

C#與HALCON聯(lián)合開(kāi)發(fā)機(jī)器視覺(jué)檢測(cè)系統(tǒng):架構(gòu)、模塊與驗(yàn)收實(shí)踐 簡(jiǎn)介圍繞C#與HALCON構(gòu)建的機(jī)器視覺(jué)檢測(cè)系統(tǒng)是一套面向機(jī)器視覺(jué)初學(xué)者與中高級(jí)開(kāi)發(fā)者的完整工程源碼聚焦工件表面質(zhì)量檢測(cè)場(chǎng)景。系統(tǒng)按圖像采集、預(yù)處理、特征提取、決策反饋和圖形界面等模塊組織展示相機(jī)取圖、去噪增強(qiáng)、形狀與模板匹配、缺陷判定及報(bào)警聯(lián)動(dòng)的實(shí)現(xiàn)路徑適合用于課程實(shí)踐、項(xiàng)目原型驗(yàn)證和二次開(kāi)發(fā)參考。壓縮包共245個(gè)文件、約45.48MB以80個(gè)C#源碼文件為核心配有35張BMP測(cè)試圖像、29個(gè)DLL與23個(gè)PDB依賴調(diào)試文件以及10個(gè)resx/resources界面資源、6個(gè)csproj工程文件、3個(gè)exe和sln解決方案等目錄結(jié)構(gòu)較完整便于直接打開(kāi)工程梳理調(diào)用關(guān)系。已有7066人學(xué)習(xí)下載。讀者可據(jù)此理解C#調(diào)用HALCON算子、視覺(jué)流程編排、檢測(cè)結(jié)果展示與工程部署方式并借助測(cè)試圖復(fù)現(xiàn)實(shí)驗(yàn)、定位問(wèn)題積累可遷移的機(jī)器視覺(jué)系統(tǒng)開(kāi)發(fā)經(jīng)驗(yàn)。1. 一條外觀檢測(cè)線的真實(shí)取舍C# 與 HALCON 到底誰(shuí)管哪一段某產(chǎn)線要做零件外觀檢測(cè)最初的想法很樸素用 C# 把相機(jī)采到的圖讀成 Bitmap自己寫(xiě)閾值、找輪廓、算尺寸。真跑到現(xiàn)場(chǎng)就卡住了——換一批來(lái)料光照差兩檔閾值全廢亞像素定位沒(méi)有測(cè)量值跳動(dòng)比公差還大模板匹配要從頭造輪子。后來(lái)改成 C# 寫(xiě)上位機(jī)、HALCON 做算法內(nèi)核機(jī)器視覺(jué)里最費(fèi)勁的那部分交給成熟算子庫(kù)視覺(jué)檢測(cè)系統(tǒng)里界面、流程、數(shù)據(jù)、報(bào)警、配方這些工程活留在 C# 里。這份 C# 與 HALCON 聯(lián)合開(kāi)發(fā)的機(jī)器視覺(jué)軟件系統(tǒng)源代碼就是按這個(gè)分工搭起來(lái)的完整視覺(jué)檢測(cè)系統(tǒng)相機(jī)采集、模板定位、尺寸測(cè)量、缺陷判定、結(jié)果落盤(pán)、配方切換一條鏈走完。它適合正在做機(jī)器視覺(jué)方向畢設(shè)或課程設(shè)計(jì)的學(xué)生也適合要把一套能跑的 C# 視覺(jué)軟件直接搬到自己設(shè)備上改的工程師。2. 需求拆解與選型把「能看見(jiàn)缺陷」翻譯成節(jié)拍、精度和軟件棧2.1 檢測(cè)項(xiàng)怎么落成可量化的指標(biāo)需求溝通里最容易翻車的一句話是「要能檢出劃傷」。這句話沒(méi)法驗(yàn)收也沒(méi)法寫(xiě)代碼。負(fù)責(zé)的做法是先把它拆成四列測(cè)什么、用什么成像方式測(cè)、精度要到多少、判定閾值是多少。檢測(cè)項(xiàng)一般分三類——尺寸類長(zhǎng)度、直徑、間距、角度、位置類裝配偏移、缺件、錯(cuò)件、表面類劃傷、臟污、毛刺、壓痕。三類在算法上的實(shí)現(xiàn)路徑完全不同尺寸類靠測(cè)量工具位置類靠模板匹配加區(qū)域比對(duì)表面類多半要靠 Blob 分析、頻域?yàn)V波或者差異圖。精度這一欄要用像素當(dāng)量倒推不能拍腦袋。視場(chǎng) 40mm、相機(jī) 2448×2048像素當(dāng)量約 0.016mm/pixelHALCON 的亞像素邊緣通常能做到 1/4 像素以內(nèi)折算下來(lái)重復(fù)性在 0.004mm 量級(jí)。所以一個(gè)標(biāo)稱 ±0.02mm 的尺寸項(xiàng)在這個(gè)配置下是有余量的要是公差要求 ±0.005mm那就該換遠(yuǎn)心鏡頭、提高分辨率或者上背光而不是指望算法硬扛。我一般會(huì)先算這筆賬再談選型省得后面相機(jī)都裝好了才發(fā)現(xiàn)精度不夠。檢測(cè)項(xiàng)成像方式精度要求判定方式外形長(zhǎng)寬背光、遠(yuǎn)心鏡頭±0.02mm卡尺工具測(cè)邊緣對(duì)距離孔位偏移同軸光±0.03mm模板匹配定位后測(cè)圓心表面劃傷低角度環(huán)形光最小 0.1mm×2mmBlob 面積長(zhǎng)寬比篩選缺件/錯(cuò)件正面均勻光有無(wú)判斷區(qū)域灰度均值與模板比對(duì)裝配間隙側(cè)向條形光±0.05mm測(cè)量矩形內(nèi)雙邊緣間距節(jié)拍是另一條硬約束。單件 300ms 的產(chǎn)線一次曝光加傳輸大概吃掉 6080ms算法預(yù)算只剩 200ms 出頭還得留出通訊和界面刷新的余量。所以算法流程要做成「先粗后精」先用降采樣圖像做快速定位把 ROI 縮到工件附近再做全分辨率的測(cè)量和判定。這套系統(tǒng)的流程編排就是按這個(gè)思路排的每個(gè)工具只在自己關(guān)心的 ROI 里跑不整圖掃。2.2 C# 做上位機(jī)、HALCON 做算法核的分層依據(jù)有人會(huì)問(wèn)HDevelop 也能拖界面為什么還要 C#答案是工程化。產(chǎn)線上的軟件不只是跑算法它要連 PLC、要存追溯數(shù)據(jù)、要做用戶權(quán)限、要支持十幾個(gè)料號(hào)的配方切換、要能在客戶現(xiàn)場(chǎng)遠(yuǎn)程看日志。這些事 HDevelop 做得吃力.NET 生態(tài)里是現(xiàn)成的。反過(guò)來(lái)純 C# 加 OpenCVSharp 也能做視覺(jué)但形狀模板匹配的抗遮擋能力、亞像素邊緣的穩(wěn)定性、標(biāo)定工具鏈的完整度調(diào)起來(lái)的隱性成本很高。所以分工線畫(huà)在這里C# 負(fù)責(zé)「殼」——界面、流程調(diào)度、多線程、數(shù)據(jù)庫(kù)、通訊協(xié)議、配置管理、日志與報(bào)警HALCON 負(fù)責(zé)「眼」——圖像預(yù)處理、模板匹配、邊緣提取、測(cè)量、Blob 分析、標(biāo)定換算。兩邊通過(guò) HALCON 的 .NET 接口HObject / HTuple交接邊界清晰。這條線畫(huà)對(duì)了后面加檢測(cè)項(xiàng)就是加一個(gè)工具類不用動(dòng)主流程。分層還有個(gè)現(xiàn)實(shí)好處算法參數(shù)可以外置成配方工藝工程師改參數(shù)不用重新編譯。這套系統(tǒng)里所有閾值、ROI 偏移、匹配分?jǐn)?shù)下限、灰度上下限都放在配方文件里程序啟動(dòng)時(shí)加載切換料號(hào)時(shí)熱更新。2.3 算子與相機(jī)選型的對(duì)照取舍選型時(shí)最常糾結(jié)的幾組我把自己會(huì)怎么選列出來(lái)場(chǎng)景常見(jiàn)選擇 A常見(jiàn)選擇 B我一般選工件有旋轉(zhuǎn)、部分遮擋NCC 灰度匹配形狀模板匹配B對(duì)光照變化和遮擋更穩(wěn)邊緣位置測(cè)量手寫(xiě)梯度找極值measure_pos 測(cè)量工具B亞像素和抗噪現(xiàn)成表面缺陷提取固定閾值 Blob動(dòng)態(tài)閾值 形態(tài)學(xué)B適應(yīng)光照漂移大幅面高速采集USB3 面陣GigE 面陣看線長(zhǎng)超過(guò) 5m 用 GigE精密尺寸普通 FA 鏡頭雙遠(yuǎn)心鏡頭B視場(chǎng)內(nèi)的放大倍率一致性更好相機(jī)接口這塊GigE 的優(yōu)點(diǎn)是線纜長(zhǎng)、多相機(jī)組網(wǎng)方便缺點(diǎn)是延遲比 USB3 略高USB3 帶寬足、延遲低但線長(zhǎng)限制在 35m工業(yè)現(xiàn)場(chǎng)走線要提前規(guī)劃。這套系統(tǒng)里采集層做了接口抽象換相機(jī)只改一個(gè)配置項(xiàng)算法層完全不用動(dòng)——這也是分層帶來(lái)的直接收益。提示選型階段就把「精度、節(jié)拍、視場(chǎng)、景深」四個(gè)數(shù)寫(xiě)進(jìn)需求文檔后面所有爭(zhēng)論都回到這四個(gè)數(shù)上比爭(zhēng)論用哪個(gè)算子有效得多。3. 總體架構(gòu)設(shè)計(jì)三層結(jié)構(gòu)與六個(gè)模塊的職責(zé)邊界3.1 表現(xiàn)層、業(yè)務(wù)層、算法層的劃分整套軟件按三層切。表現(xiàn)層是 WinForm 或 WPF 的主界面負(fù)責(zé)實(shí)時(shí)圖像顯示、結(jié)果列表、參數(shù)編輯、報(bào)警提示它不碰任何 HALCON 算子只消費(fèi)業(yè)務(wù)層給出來(lái)的結(jié)果對(duì)象。業(yè)務(wù)層是流程引擎和調(diào)度中心管著「取圖 → 定位 → 測(cè)量 → 判定 → 存檔 → 通訊」這條流水線同時(shí)管配方加載、權(quán)限校驗(yàn)、異常上報(bào)。算法層是 HALCON 的封裝每個(gè)檢測(cè)能力包裝成一個(gè)工具類對(duì)外只暴露「輸入圖像 參數(shù) → 輸出測(cè)量值」這樣的簽名。這樣切的好處是測(cè)試好做。算法層的每個(gè)工具可以單獨(dú)拿一批離線圖片跑回歸業(yè)務(wù)層可以用假的圖像源做流程測(cè)試界面層改動(dòng)不影響算法正確性。做畢設(shè)答辯時(shí)這一點(diǎn)特別加分——老師問(wèn)「你怎么驗(yàn)證算法是對(duì)的」你能拿出分層測(cè)試的記錄比說(shuō)「我跑了一遍看著沒(méi)問(wèn)題」有說(shuō)服力得多。六個(gè)模塊分別是設(shè)備接入相機(jī)、光源、PLC/IO、圖像預(yù)處理、定位與測(cè)量、判定與分類、數(shù)據(jù)與追溯、配方與權(quán)限。每個(gè)模塊內(nèi)部的類只依賴下一層的接口不允許跨層直接調(diào)。比如判定模塊不能自己去讀相機(jī)它只接收測(cè)量模塊的結(jié)果數(shù)組。3.2 圖像從相機(jī)到算法再到數(shù)據(jù)庫(kù)的流轉(zhuǎn)通路高節(jié)拍下最容易出問(wèn)題的是圖像流轉(zhuǎn)。做法是采集與處理分離相機(jī)回調(diào)線程只做一件事——把 HObject 塞進(jìn)一個(gè)有界隊(duì)列然后立刻返回絕不在回調(diào)里跑算法。算法線程從隊(duì)列里取圖處理處理完把結(jié)果對(duì)象推到結(jié)果隊(duì)列界面線程和存盤(pán)線程各自消費(fèi)。隊(duì)列要有界滿了就丟最舊的一幀并記一條丟幀日志避免內(nèi)存無(wú)限堆積。// 采集線程與算法線程之間的有界緩沖容量按節(jié)拍和算法耗時(shí)估算 private readonly BlockingCollectionHObject _imageQueue new BlockingCollectionHObject(8); // 相機(jī)回調(diào)只負(fù)責(zé)入隊(duì)禁止在這里做任何耗時(shí)運(yùn)算 private void OnImageGrabbed(HObject image) { HObject copy; HOperatorSet.CopyImage(image, out copy); // 回調(diào)緩沖會(huì)被復(fù)用必須拷貝 if (!_imageQueue.TryAdd(copy)) { // 隊(duì)列滿說(shuō)明算法跟不上節(jié)拍丟棄并計(jì)數(shù)事后看日志定位瓶頸 copy.Dispose(); Interlocked.Increment(ref _dropCount); } } // 算法線程主循環(huán) private void ProcessLoop() { foreach (var img in _imageQueue.GetConsumingEnumerable(_cts.Token)) { using (img) { var result _pipeline.Run(img); // 內(nèi)部依次調(diào)用各工具 _resultQueue.Add(result); } } }這里的關(guān)鍵點(diǎn)是CopyImage。很多相機(jī) SDK 的回調(diào)緩沖區(qū)是復(fù)用的你把引用直接傳出去下一幀到來(lái)時(shí)圖像內(nèi)容就被覆蓋了現(xiàn)象是「偶爾檢測(cè)到上一件的缺陷」這種問(wèn)題查起來(lái)極其折磨??截愐淮蔚拇鷥r(jià)遠(yuǎn)小于排查成本。隊(duì)列容量 8 是按「算法單幀 80ms、節(jié)拍 300ms」估的實(shí)際項(xiàng)目里按實(shí)測(cè)的算法耗時(shí)乘 23 倍來(lái)定太大反而掩蓋性能問(wèn)題。3.3 模塊之間的接口約定與異常傳遞工具層統(tǒng)一接口是為了讓流程配置化。每個(gè)檢測(cè)工具實(shí)現(xiàn)同一個(gè)契約流程引擎按配方里配置的順序依次執(zhí)行public interface IVisionTool { string Name { get; } // 工具標(biāo)識(shí)配方里按名字引用 ToolResult Execute(HObject image, JObject param); // param 來(lái)自配方文件的節(jié)點(diǎn) } public class ToolResult { public bool Success { get; set; } // 算法是否正常執(zhí)行完 public int ErrorCode { get; set; } // 非 0 表示執(zhí)行失敗界面按碼查提示 public double[] Values { get; set; } // 測(cè)量值數(shù)組單位統(tǒng)一為毫米 public bool IsOk { get; set; } // 判定結(jié)論與 Success 分開(kāi) public string DefectCode { get; set; } // NG 時(shí)的缺陷編碼用于統(tǒng)計(jì) }Success和IsOk必須分開(kāi)。算法沒(méi)跑通找不到模板、圖像過(guò)曝、邊緣數(shù)量不對(duì)是執(zhí)行異常產(chǎn)品合格與否是判定結(jié)論兩者混在一起會(huì)導(dǎo)致「算法失敗被當(dāng)成 NG 品流出去」這在追溯時(shí)是災(zāi)難。執(zhí)行異常要走獨(dú)立的報(bào)警通道讓設(shè)備停下來(lái)等人處理而不是默默計(jì)數(shù)。結(jié)果落盤(pán)用一張主表加一張明細(xì)表就夠了主表存單件結(jié)論明細(xì)存每個(gè)測(cè)量項(xiàng)的值方便后面按項(xiàng)做趨勢(shì)分析CREATE TABLE InspectionRecord ( Id INTEGER PRIMARY KEY AUTOINCREMENT, Sn TEXT NOT NULL, -- 產(chǎn)品條碼/流水號(hào) RecipeCode TEXT NOT NULL, -- 料號(hào)用于分料號(hào)統(tǒng)計(jì) Result INTEGER NOT NULL, -- 1OK, 0NG DefectCode TEXT, -- NG 缺陷編碼OK 時(shí)為空 ImagePath TEXT, -- NG 圖像存檔路徑 CreateTime TEXT NOT NULL ); CREATE INDEX idx_record_sn ON InspectionRecord(Sn); CREATE INDEX idx_record_time ON InspectionRecord(CreateTime); CREATE TABLE MeasureDetail ( Id INTEGER PRIMARY KEY AUTOINCREMENT, RecordId INTEGER NOT NULL, ItemName TEXT NOT NULL, -- 測(cè)量項(xiàng)名稱與配方節(jié)點(diǎn)對(duì)應(yīng) Value REAL NOT NULL, LowerLimit REAL, UpperLimit REAL, IsOk INTEGER NOT NULL );索引這兩條不是湊數(shù)。按 Sn 查是為了追溯按時(shí)間查是為了做日?qǐng)?bào)和趨勢(shì)圖產(chǎn)線上這兩個(gè)查詢是每天都跑的。明細(xì)表拆出來(lái)是因?yàn)橐粋€(gè)工件可能有十幾二十個(gè)測(cè)量項(xiàng)塞進(jìn)主表的 JSON 字段里查起來(lái)費(fèi)勁做 SPC 分析時(shí)更難受。4. 核心模塊實(shí)現(xiàn)采集、定位、測(cè)量、判級(jí)四段代碼落地4.1 相機(jī)接入與 HObject 的生命周期相機(jī)接入層要做三件事打開(kāi)設(shè)備、配置參數(shù)、穩(wěn)定取圖。HALCON 用open_framegrabber統(tǒng)一封裝各家接口參數(shù)隨接口類型不同而不同具體字段要按相機(jī)廠商的接口文檔對(duì)齊不能照抄。public class CameraDevice : IDisposable { private HTuple _acqHandle null; private readonly object _lock new object(); public void Open(string interfaceName, string deviceId) { // 參數(shù)順序固定含義依次為接口名、水平/垂直分辨率、起始位置、 // 圖像寬高、場(chǎng)序、位深、色彩空間、泛型參數(shù)、外部觸發(fā)、相機(jī)類型、設(shè)備標(biāo)識(shí) HOperatorSet.OpenFramegrabber( interfaceName, 0, 0, 0, 0, 0, 0, progressive, -1, default, -1, false, default, deviceId, -1, -1, out _acqHandle); // 關(guān)掉自動(dòng)曝光和自動(dòng)增益產(chǎn)線上這兩個(gè)必須鎖死否則測(cè)量值會(huì)漂 HOperatorSet.SetFramegrabberParam(_acqHandle, ExposureTime, 8000); HOperatorSet.SetFramegrabberParam(_acqHandle, Gain, 0); } public HObject GrabOnce(int timeoutMs) { lock (_lock) // 同一句柄不能并發(fā)調(diào)用加鎖是最省事的做法 { HOperatorSet.GrabImageAsync(out HObject image, _acqHandle, timeoutMs); return image; } } public void Dispose() { if (_acqHandle ! null) { HOperatorSet.CloseFramegrabber(_acqHandle); _acqHandle null; } } }自動(dòng)曝光這一條值得單獨(dú)說(shuō)。調(diào)試時(shí)開(kāi)著自動(dòng)曝光畫(huà)面好看上線后光源老化、環(huán)境光變化相機(jī)會(huì)自己調(diào)增益灰度整體漂移閾值型檢測(cè)項(xiàng)集體失效。血淚經(jīng)驗(yàn)是調(diào)試階段就用固定曝光固定增益把光源亮度調(diào)到能拿到穩(wěn)定灰度的位置之后不再動(dòng)它。真要適應(yīng)不同料號(hào)的反光差異靠配方里的曝光參數(shù)切換不靠相機(jī)自動(dòng)。HObject 是托管包裝的非托管資源必須顯式釋放。用using或者 try/finally 里的Dispose()不能指望 GC。這一點(diǎn)在第 5 章展開(kāi)。4.2 形狀模板匹配與亞像素定位定位是整個(gè)流程的地基定位偏了后面所有測(cè)量都偏。做法分兩步建模階段從一張標(biāo)準(zhǔn)件圖像里摳出特征明顯的區(qū)域生成形狀模板運(yùn)行階段用模板在當(dāng)前圖里找位姿。// 建模在一張合格品圖像上框出特征區(qū)生成形狀模板 public HTuple CreateTemplate(HObject image, double row1, double col1, double row2, double col2) { HOperatorSet.GenRectangle1(out HObject roi, row1, col1, row2, col2); HOperatorSet.ReduceDomain(image, roi, out HObject domain); roi.Dispose(); // 角度范圍 -0.39~0.39 rad約 ±22.5°覆蓋來(lái)料旋轉(zhuǎn) // 金字塔層數(shù)、對(duì)比度、最小對(duì)比度都交給 auto讓算子按圖像自選 HOperatorSet.CreateShapeModel( domain, auto, -0.39, 0.79, auto, auto, use_polarity, auto, auto, out HTuple modelId); domain.Dispose(); return modelId; } // 運(yùn)行在當(dāng)前圖中查找返回行、列、角度、得分 public bool Find(HTuple modelId, HObject image, out double row, out double col, out double angle) { HOperatorSet.FindShapeModel( image, modelId, -0.39, 0.79, 0.7, // 最小得分低于它認(rèn)為沒(méi)找到 1, // 最多找?guī)讉€(gè)匹配單件檢測(cè)取 1 0.5, // 重疊度 least_squares, // 亞像素模式精度最高的那一檔 0, // 金字塔層數(shù)0 表示用建模時(shí)的設(shè)置 0.9, // 貪婪度越大越快越可能漏 out HTuple r, out HTuple c, out HTuple a, out HTuple score); row r.Length 0 ? r.D.ToArray()[0] : 0; col c.Length 0 ? c.D.ToArray()[0] : 0; angle a.Length 0 ? a.D.ToArray()[0] : 0; return score.Length 0 score.D[0] 0.7; }參數(shù)里最需要現(xiàn)場(chǎng)調(diào)的是MinScore和Greediness。MinScore 定太低0.5 以下會(huì)把相似結(jié)構(gòu)誤認(rèn)成目標(biāo)定太高0.85 以上則在來(lái)料表面有輕微臟污時(shí)找不到。經(jīng)驗(yàn)值是先設(shè) 0.7拿一批包含邊界樣本的圖跑看得分分布取一個(gè)能把 OK 品和誤匹配分開(kāi)的閾值。Greediness 默認(rèn) 0.9如果發(fā)現(xiàn)偶爾漏檢先往 0.8 降一檔試試速度會(huì)慢一些但更穩(wěn)。建模區(qū)域的選擇也有講究不要選大面積的均勻區(qū)域那種區(qū)域沒(méi)有梯度信息模板會(huì)退化成靠邊緣支撐抗噪能力差要選帶角點(diǎn)、圓孔、缺口這類強(qiáng)特征的位置。模板圖像盡量用實(shí)際產(chǎn)線的相機(jī)和光源拍別拿實(shí)驗(yàn)室的樣品圖湊合光學(xué)條件不一樣模板的對(duì)比度參數(shù)就不對(duì)了。4.3 測(cè)量與判級(jí)從像素值到 OK/NG 結(jié)論有了位姿測(cè)量就好辦了。思路是把模板坐標(biāo)系里定義好的測(cè)量位置通過(guò)剛性變換映射到當(dāng)前圖像的實(shí)際位置再用測(cè)量工具在映射后的位置取邊緣。這樣來(lái)料有平移旋轉(zhuǎn)也不影響。// 模板坐標(biāo)系下的基準(zhǔn)點(diǎn)與測(cè)量矩形參數(shù)建模時(shí)在標(biāo)準(zhǔn)件上確定 private const double TplRow 512.0; private const double TplCol 640.0; private const double TplAngle 0.0; public double MeasureGap(HObject image, double mRow, double mCol, double mAngle, JObject param) { // 1. 用匹配位姿構(gòu)造模板坐標(biāo) - 當(dāng)前圖像坐標(biāo)的剛性變換 HOperatorSet.VectorAngleToRigid(TplRow, TplCol, TplAngle, mRow, mCol, mAngle, out HTuple homMat2D); // 2. 把模板里定義好的測(cè)量中心映射過(guò)去測(cè)量框跟著工件一起轉(zhuǎn) HOperatorSet.AffineTransPoint2d(homMat2D, TplRow, TplCol - 80, out HTuple row, out HTuple col); HTuple phi TplAngle mAngle; // 3. 生成測(cè)量矩形長(zhǎng) 60 寬 12方向沿工件邊插值選雙線性 HOperatorSet.GenMeasureRectangle2(row, col, phi, 30, 6, 60, 12, bilinear, out HTuple handle); // 4. 在矩形內(nèi)找邊緣對(duì)sigma1.0 抑制噪聲threshold30 控制靈敏度 HOperatorSet.MeasurePos(image, handle, 1.0, 30, all, all, out HTuple edgeRow1, out HTuple edgeCol1, out HTuple amp1, out HTuple edgeRow2, out HTuple edgeCol2, out HTuple amp2, out HTuple intraDist, out HTuple interDist); HOperatorSet.CloseMeasure(handle); if (intraDist.Length 1) throw new VisionException(1001, 測(cè)量框內(nèi)未找到成對(duì)邊緣檢查光照或測(cè)量框位置); // interDist 是相鄰邊緣間距像素乘像素當(dāng)量換成毫米 double pixelScale param.Valuedouble(PixelScale); // 由標(biāo)定得到如 0.0163 return interDist.D[0] * pixelScale; }Sigma和Threshold這兩個(gè)參數(shù)是測(cè)量的手感所在。Sigma 是高斯平滑的系數(shù)來(lái)料表面粗糙、圖像噪點(diǎn)大就調(diào)大到 1.52.0代價(jià)是邊緣位置會(huì)被輕微模糊精度略降圖像干凈就保持 1.0 甚至 0.8。Threshold 是邊緣幅度閾值它決定什么算作邊緣——太低會(huì)把噪點(diǎn)當(dāng)邊緣太高會(huì)漏掉對(duì)比度弱的真實(shí)邊緣。穩(wěn)妥的做法是打開(kāi)邊緣幅度輸出看一批圖的幅度分布把閾值定在噪聲幅度和真實(shí)邊緣幅度之間。判級(jí)就是拿測(cè)量值和配方里的上下限比public (bool ok, string defectCode) Judge(double value, JObject param) { double lower param.Valuedouble(LowerLimit); double upper param.Valuedouble(UpperLimit); double tol param.Valuedouble(JudgeTolerance); // 判定死區(qū)默認(rèn) 0 // 死區(qū)的作用剛好卡在邊界上的值做二次確認(rèn)避免 OK/NG 反復(fù)橫跳 if (value lower - tol) return (false, param.Valuestring(DefectCodeLow)); if (value upper tol) return (false, param.Valuestring(DefectCodeHigh)); return (true, null); }判定死區(qū)這個(gè)小設(shè)計(jì)在批量生產(chǎn)時(shí)很關(guān)鍵。沒(méi)有它的時(shí)候一個(gè)值在上下限附近抖同一個(gè)工件可能這次 OK 下次 NG操作員會(huì)懷疑設(shè)備有問(wèn)題。加了死區(qū)之后邊界附近的值統(tǒng)一往寬松方向靠配合趨勢(shì)圖看反而更容易發(fā)現(xiàn)工藝漂移。NG 圖像一定要存。存圖策略按「日期 / 料號(hào) / 時(shí)間戳_缺陷碼」的目錄結(jié)構(gòu)落盤(pán)保留最近 30 天超期自動(dòng)清理。這張圖在后續(xù)分析缺陷成因、和供應(yīng)商扯皮的時(shí)候是唯一的證據(jù)鏈。4.4 配方管理?yè)Q料號(hào)不改代碼配方是這套系統(tǒng)里最能體現(xiàn)工程成熟度的部分。十幾個(gè)料號(hào)每個(gè)料號(hào)的 ROI、閾值、模板、上下限都不同如果寫(xiě)死在代碼里每換一次料就要改代碼重新發(fā)版現(xiàn)場(chǎng)根本沒(méi)法用。配方的組織方式是一棵 JSON 樹(shù)根節(jié)點(diǎn)是料號(hào)下面是工具鏈數(shù)組每個(gè)工具節(jié)點(diǎn)帶自己的參數(shù){ RecipeCode: P-1024, PixelScale: 0.0163, Tools: [ { Name: Locate, Type: ShapeMatch, TemplateFile: tpl_1024.shm, MinScore: 0.72, AngleStart: -0.39, AngleExtent: 0.79 }, { Name: GapA, Type: MeasurePair, RefRow: 512, RefCol: 560, LowerLimit: 1.98, UpperLimit: 2.06, JudgeTolerance: 0.005, DefectCodeLow: GAP_SMALL, DefectCodeHigh: GAP_LARGE }, { Name: Scratch, Type: BlobDefect, MinArea: 120, MaxAspect: 8.0, GrayLow: 40, DefectCode: SCRATCH } ] }流程引擎按Tools數(shù)組順序執(zhí)行遇到Locate就把位姿寫(xiě)進(jìn)上下文后面的測(cè)量工具從上下文里取。新增一個(gè)檢測(cè)項(xiàng)只是在數(shù)組里加一個(gè)節(jié)點(diǎn)代碼零改動(dòng)。配方的加載和熱切換要注意兩點(diǎn)一是切換時(shí)必須在流程空閑的間隙做不能在一件工件處理到一半時(shí)換參數(shù)二是每次切換記一條日志包含料號(hào)、操作人、時(shí)間出問(wèn)題時(shí)能對(duì)上是哪次切換引入的偏差。注意配方文件建議加版本號(hào)和校驗(yàn)值現(xiàn)場(chǎng)出現(xiàn)過(guò)配置文件被人手工改壞、程序啟動(dòng)直接崩的情況加個(gè)校驗(yàn)?zāi)芴崆皵r住。5. 避坑與常見(jiàn)問(wèn)題排查內(nèi)存、線程、標(biāo)定三處最容易翻車的地方5.1 內(nèi)存只漲不落現(xiàn)象程序跑兩三個(gè)小時(shí)內(nèi)存從 200MB 漲到 2GB最后卡死或者被系統(tǒng)殺掉。原因幾乎都是 HObject 沒(méi)釋放。HALCON 的圖像和區(qū)域?qū)ο蟮讓邮欠峭泄軆?nèi)存C# 的 GC 只回收包裝對(duì)象不會(huì)主動(dòng)去釋放底層句柄峰值節(jié)拍下對(duì)象創(chuàng)建速度遠(yuǎn)超終結(jié)器回收速度句柄就堆起來(lái)了。解決方法是所有 HObject 都走using或者在方法末尾顯式Dispose()尤其注意異常分支——try 塊里創(chuàng)建了對(duì)象catch 里直接 return那個(gè)對(duì)象就漏了。// 反面寫(xiě)法異常一拋img 和 region 都不會(huì)被釋放 HObject img; HOperatorSet.ReadImage(out img, path); HObject region; HOperatorSet.Threshold(img, out region, 0, 128); DoSomething(region); // 若這里拋異常上面兩個(gè)對(duì)象泄漏 // 正確寫(xiě)法用 using 包住無(wú)論走哪條分支都釋放 using (HObject img new HObject()) using (HObject region new HObject()) { HOperatorSet.ReadImage(out img, path); HOperatorSet.Threshold(img, out region, 0, 128); DoSomething(region); }排查手段任務(wù)管理器看句柄數(shù)比看內(nèi)存更準(zhǔn)句柄只漲不落就是泄漏。也可以在每個(gè)流程節(jié)點(diǎn)前后打一條get_system(handle_count)的日志幾個(gè)循環(huán)就能定位到是哪個(gè)工具漏了。5.2 多線程下的偶發(fā)崩潰現(xiàn)象單線程跑一天沒(méi)事改成多線程后隨機(jī)崩報(bào)的是訪問(wèn)沖突或者算子內(nèi)部錯(cuò)誤日志里看不出規(guī)律。原因是 HALCON 的 HTuple 和 HObject 不是線程安全的兩個(gè)線程同時(shí)操作同一個(gè)對(duì)象或者在 A 線程創(chuàng)建、B 線程釋放都可能出問(wèn)題。解法是「誰(shuí)創(chuàng)建誰(shuí)釋放跨線程只傳值不傳引用」算法線程處理完把測(cè)量值double 數(shù)組和結(jié)果碼傳出去不要把 HObject 傳來(lái)傳去確實(shí)要傳圖像就在目標(biāo)線程里CopyImage一份。另外 HALCON 的算子在內(nèi)部已經(jīng)做了并行外層再開(kāi)一堆線程搶 CPU 反而是負(fù)優(yōu)化算法線程一般開(kāi) 12 個(gè)就夠。5.3 標(biāo)定與像素當(dāng)量換算翻車現(xiàn)象測(cè)量值整體偏大或偏小百分之幾重復(fù)性很好但準(zhǔn)確度不對(duì)。原因多半在像素當(dāng)量上。像素當(dāng)量不是拿標(biāo)稱視場(chǎng)除分辨率算出來(lái)的那個(gè)值忽略了鏡頭畸變和實(shí)際放大倍率偏差。正確做法是拿一塊標(biāo)準(zhǔn)量塊或者標(biāo)定板在同一工作距離下拍圖量出已知長(zhǎng)度對(duì)應(yīng)的像素?cái)?shù)兩者相除。更嚴(yán)謹(jǐn)?shù)淖龇ㄊ亲龆帱c(diǎn)標(biāo)定把鏡頭畸變一起擬合掉視場(chǎng)邊緣的測(cè)量值才不會(huì)系統(tǒng)性偏大。還有個(gè)容易忽略的點(diǎn)更換鏡頭、調(diào)整工作距離、甚至相機(jī)被撞了一下像素當(dāng)量都要重新標(biāo)。我見(jiàn)過(guò)一個(gè)項(xiàng)目調(diào)試時(shí)標(biāo)定過(guò)后來(lái)調(diào)焦換了鏡頭沒(méi)重標(biāo)整批產(chǎn)品尺寸超差卻判 OK流到客戶那邊才發(fā)現(xiàn)?,F(xiàn)在我的習(xí)慣是每次動(dòng)過(guò)光學(xué)系統(tǒng)就在配方里改標(biāo)定日期并在開(kāi)機(jī)自檢里加一條「標(biāo)定有效期提醒」。5.4 觸發(fā)時(shí)序錯(cuò)位與丟幀現(xiàn)象檢測(cè)結(jié)果和產(chǎn)品對(duì)不上號(hào)或者偶爾漏檢一件。這類問(wèn)題多半在觸發(fā)鏈路上。相機(jī)是硬觸發(fā)還是軟觸發(fā)、PLC 給信號(hào)到相機(jī)曝光的延遲多少、編碼器分頻對(duì)不對(duì)、光源頻閃和曝光是否同步任何一環(huán)錯(cuò)位都會(huì)導(dǎo)致「拍到了相鄰的一件」。排查方法是拿一張帶標(biāo)記的樣件連續(xù)跑 100 件把每件的圖像和條碼一一對(duì)應(yīng)看錯(cuò)位會(huì)立刻暴露。修復(fù)上硬觸發(fā)優(yōu)先于軟觸發(fā)觸發(fā)信號(hào)走光耦隔離別用普通 IO 直連曝光時(shí)間和光源延時(shí)要在配方里成組配置不能分開(kāi)調(diào)。5.5 部署環(huán)境缺運(yùn)行庫(kù)現(xiàn)象開(kāi)發(fā)機(jī)上跑得好好的拷到產(chǎn)線電腦上雙擊就報(bào)錯(cuò)或者一打開(kāi)相機(jī)就崩。原因是目標(biāo)機(jī)缺 HALCON 運(yùn)行時(shí)或者 .NET 運(yùn)行時(shí)版本不匹配也可能是相機(jī)廠商的驅(qū)動(dòng)沒(méi)裝、網(wǎng)卡巨幀沒(méi)開(kāi)。部署前要列一張環(huán)境清單.NET 運(yùn)行時(shí)版本、HALCON 運(yùn)行庫(kù)位數(shù)32/64 位必須和主程序一致、相機(jī)驅(qū)動(dòng)版本、網(wǎng)卡巨幀和中斷親和性設(shè)置、系統(tǒng)電源計(jì)劃改成高性能別讓 CPU 降頻。這張清單每次部署都過(guò)一遍比現(xiàn)場(chǎng)抓瞎強(qiáng)。6. 驗(yàn)收與答辯用一組可復(fù)現(xiàn)的數(shù)據(jù)證明系統(tǒng)「測(cè)得準(zhǔn)、跑得穩(wěn)」驗(yàn)收這一步很多人栽在「我說(shuō)它準(zhǔn)」上。合格的做法是拿數(shù)據(jù)說(shuō)話而且數(shù)據(jù)要可復(fù)現(xiàn)。我一般準(zhǔn)備三組測(cè)試準(zhǔn)確性測(cè)試、重復(fù)性測(cè)試、穩(wěn)定性測(cè)試。準(zhǔn)確性用標(biāo)準(zhǔn)件。拿 10 件已知尺寸的標(biāo)準(zhǔn)件或者三坐標(biāo)測(cè)過(guò)的樣件每件測(cè) 10 次算每個(gè)測(cè)量項(xiàng)的平均值和標(biāo)準(zhǔn)值的偏差。偏差要小于公差的三分之一超了就得回去查標(biāo)定或者算法。重復(fù)性用同一件產(chǎn)品連續(xù)測(cè) 30 次算標(biāo)準(zhǔn)差這個(gè)數(shù)反映的是系統(tǒng)自身的抖動(dòng)一般要求小于公差的十分之一。穩(wěn)定性是連續(xù)跑 48 小時(shí)統(tǒng)計(jì)總檢數(shù)、誤檢數(shù)、漏檢數(shù)、算法異常次數(shù)同時(shí)記錄內(nèi)存和句柄曲線。驗(yàn)收項(xiàng)指標(biāo)測(cè)試方法記錄內(nèi)容測(cè)量準(zhǔn)確性偏差 ≤ 公差/310 件標(biāo)準(zhǔn)件 × 10 次均值、偏差、最大值重復(fù)性標(biāo)準(zhǔn)差 ≤ 公差/10同件連續(xù) 30 次標(biāo)準(zhǔn)差、極差檢出率≥ 99.5%200 件含已知缺陷樣本漏檢數(shù)、漏檢類型誤檢率≤ 0.5%200 件合格品誤檢數(shù)、誤檢原因節(jié)拍≤ 設(shè)計(jì)值連續(xù) 500 件計(jì)時(shí)平均、P95、最大值長(zhǎng)時(shí)間穩(wěn)定性8 小時(shí)無(wú)異常連續(xù)運(yùn)行內(nèi)存曲線、異常次數(shù)節(jié)拍統(tǒng)計(jì)最好在程序里內(nèi)建別拿秒表掐// 每個(gè)流程節(jié)點(diǎn)前后打點(diǎn)落庫(kù)后直接出 P95 報(bào)表 var sw Stopwatch.StartNew(); var result _pipeline.Run(image); sw.Stop(); _repo.SaveTiming(result.Sn, result.RecipeCode, sw.Elapsed.TotalMilliseconds);答辯時(shí)的講法我的建議是倒過(guò)來(lái)講先講誤檢漏檢的數(shù)據(jù)和你是怎么把這兩個(gè)數(shù)壓下去的再講架構(gòu)和代碼。老師最想聽(tīng)的不是「我用了什么技術(shù)」而是「你怎么知道它是對(duì)的」。你可以拿出那張 200 件樣本的混淆矩陣講某一類缺陷一開(kāi)始漏檢率 8%查下來(lái)是 Blob 面積下限設(shè)太大把下限從 200 調(diào)到 120 之后降到 0.5%——這種帶數(shù)字的調(diào)試過(guò)程比任何架構(gòu)圖都有說(shuō)服力。還有一個(gè)常被問(wèn)到的點(diǎn)如果換個(gè)料號(hào)怎么辦。這時(shí)候現(xiàn)場(chǎng)演示配方切換30 秒內(nèi)完成切換后連續(xù)跑 20 件全部正確這一下就把「課程作業(yè)」和「能交付的系統(tǒng)」區(qū)分開(kāi)了。從那以后我每次做完一套視覺(jué)系統(tǒng)驗(yàn)收前都強(qiáng)制走一遍「標(biāo)準(zhǔn)件 重復(fù)性 8 小時(shí)連續(xù)跑」這三關(guān)哪怕時(shí)間再緊也不跳。跳過(guò)一次后面在現(xiàn)場(chǎng)補(bǔ)的功夫是省下來(lái)那點(diǎn)時(shí)間的好幾倍。希望這套結(jié)構(gòu)和記錄方法能幫到你需要對(duì)照完整實(shí)現(xiàn)的話倉(cāng)庫(kù)里的源代碼可以直接拿去做參考。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91久操| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 激情国产乱伦Av| 艳美熟妇先锋一二三区| 欧美情色亚洲| 91色久| 日本中文字幕一区| 日韩熟女乱伦中出| 999久久久九| 中文一区二区| 欧美18 在线观看| 免费看毛片操穴| 啊啊啊久久久视频| 在线观看AV片| 亚洲中文电影| 中国农村熟妇毛片视频| 欧美三级免费伊人| 欧美日韩另类在线播放| 91色图片| 一本久道在线综合视频| 97露脸精品丝袜| 精品人妻视频入口| 久久伊人青青草| 国产高清午夜成人在线观看| 激情看片网站| 午夜天堂网| 国产精品久久久啊| 久久久草成人网站久久久草成人久久久草久久久 | 伊人女女资源在线观看| 国产美女高潮视频| 嗯啊免费视频| 另类图片综合| 欧美激情久| 国产久久av| 我爱搞逼综合网| 国产精品激情久久久久久久| 亚洲欧美色图片| 亚洲人成色9999精品久久| 亚州91| 97九色人妻| 国产精品ww久久| 97午夜剧场日韩| 91这里只有精品| 91扒丝袜综合在线| 日本色色色视频| 中文字幕精品专区搜索结果91| 福利视频一区二区微拍| 国产精品伦理| 一区黄二区黄| 亚洲无码免费看| 91美女视频在线免费观看| 成年人三级黄色片视频| 熟女少妇一区二区三区| av午夜玫瑰| 亚洲美女自拍偷拍视频| 亚洲天堂2020| 日韩午夜国产| 欧美激情综合色综合啪啪五月| 99热在线播放| 欧美日韩精品久久| 亚洲午夜av| 揉揉揉夜夜| 久久久不能久久久久| 亚洲色欲天天天堂色欲网女| 夜夜操夜夜高潮夜夜爽国产精品区| 久碰视频| 日韩99999| 夜夜操av亚洲一区二区| 久久久亚洲高清不打码| 亚洲天天操| 97超碰热线| 福利色色| 欧美日韩中文视频播放| 日韩亚洲精品一区二区| 天天色播| 欧美青青视频| 97狠狠| 欧美真人抽搐一进一出gif| 99亚洲精品| 奇米狠999| 五月开心网| 亚欧美天堂在线| 亚洲精品蜜桃久久久久久久| 亚洲蜜臀精品视频久久| 九九综合九九综合| 国产精品激情久久久久久久| 91粉芽高清在线一区二区 | 台湾肥佬网一区二区三区| 极品久久久久久久久久久久久久| 欧美人体性爱互联网第一页婷婷日本| 国产福利小视频高清在线观看| 久久久久久国产精品| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 国产精品懂色tv影视免费观看| 啪啪啪精品| 无码日韩人妻av一| 艳美熟妇先锋一二三区| 日韩专区久久久| 97免费在线观看| 日本欧美一区二区三区免费| 99re3这里只有精品| 欧成人在线| 久久午夜鲁丝片| 男人的天堂一区三区| 啊啊啊啊啊啊在线看| 人妻激情在线视频| 国产一级137片内射麻豆| 免费视频a级毛片免费视频| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 国内偷自视频区视频综合| 国产精品久久久久无码AV会牛| 久久国产精品一级二级三级| 青女偷拍网| 日韩性爱视频在线免费观看| 久久综合日韩亚洲欧美| 水滴偷拍| 717影院理论午夜伦八戒| 色色99| 超碰97中文| 亚洲一区二区性爱电影| 中精品一区二区三区| 欧美偷拍区| 亚洲天堂,男人| 国产第11页| 成人免费视瓶| 操学生天天| 亚洲综合97| 91久久久久久| 日韩猛交| 污啪啪啪视频| 丰满人妻-区二区三区| 色色色色网站| 久久69| 亚洲 91 在线| 成人精品无码| av亚洲天堂资源网站| 97精品免费| 久久婷婷五月天| 婷婷国产精品一区二区| 亚洲激情在线| 人人妻人人爽一区二区三区| 电影69乱码96| 搡老熟女免费视频| 欧美精品双插| 90后性网国产欧美| 色亚洲欧美| 大香网伊人久久综合| 97欧美色| 亚洲,欧美,春色,另类 | 97精品一二区| xxx0国产在线播放| 日本三级韩三级99久久| 97精品综合久久| 天堂国产AV| 超碰97导航| 色色色综合网| 84YTCOM性无码| 99啪| 美国一区二区三区视频| aV中亚| 五月天黄色av| 欧美强奸乱| 日韩欧视频| 日本在线不卡123| 妇女性内射冈站HDWWWCOM| 久久久久久久久久久久久久久乱码| 有码免费观看| Julia Annxxxxx| 校园春色亚洲色图| 黄色香蕉视频网站一区| 欧美日韩操逼动图| 99色视频| 国产精品2020| 亚州欧美一区| 98超碰欧美| 极品国产内射| 国产剧情AV不卡在线观看| 曰韩av中文字幕专区| 91久久久久免| 日韩欧美偷拍美女视频| 午夜噜噜噜| 日本潮催一卡操| 无码操逼网| 能看的av| 98超碰日本| 国产91美女视频| 最新日本中文字幕| 日日爽夜夜爽| 蜜臀久久99精品久久综合| 久草色悠悠在线视频| 国产精品国产| 看日韩黄片| 中文字幕亚韩| 高清不卡一二三区视频......| 蘋果手機免費看成人Av| 男人的天堂免费| 国产精品久久久久无码A√| 欧美国产日韩高清在线| 人人超碰在线观看黄| 一本大道青青| 国模少妇一区二区三区| 亚洲最大黄网| 清纯唯美激情| 伊人五月天激情| 精品免费1| 国产中午字一暮区| 超碰地址久久| 中文字幕av乱伦| 欧洲小说色图视频另类| 久久少妇| 欧美一区二区亚洲天堂| 日韩精品电影| se吧提供91精品国产91久久久久久| 另类天堂| 正宗无毛一线天嫩逼| 女人天堂av在线播放| 日韩AV无码中文一区二区| 91色婷婷综合久久中文字幕二区| 精品国产乱码久久久影院| 91九色蝌蚪在线观看| 色激情五月天| 人妻丰满熟妇av无码区蜜桃| 亚洲欧美自拍偷拍| 久久深夜无码| 91肉片| 男人的天堂啪啪| 中文字幕欧美日本乱码一线二线| 久久久无码av精| 久久久熟妇熟女国产| 性91| 天天干天天爽| 91精品久久久久| 青青草天天亲夜夜操网| 天堂综合| 精品性爱一二三区| 人妻精品一区一区三区蜜桃91| 91麻豆天美| 思思99热| 一区二区三区高清| 97人人草| 俄罗斯及免费在线看| 99九九精品| 91天天综合在线观看| 青娱乐国产精品| 天堂涩涩| 欧美,日韩,亚洲视频| 国产亚洲精品美女| 国产99久久99热这里只有精品15| 日本精品一区二区三区四区的功能| 91av熟女人妻| 国产五码丝袜屁眼| 看一级特黄a大一片| 久久亚洲人妻| 中文字幕91页| 亚洲情色综合网| 91精品人妻电影| 亚洲熟女少妇免费视频| 黄色毛片A片| 91天天综合在线观看| 五月天社区| 清纯唯美综合亚洲| 亚洲宅男天堂| 日韩综合成人免费视频| 91超碰在线播放| 强奸乱伦av电影| 偷拍新久久| 欧洲熟妇xxXx欧美老妇裸体| 天天综合网在线91| 日韩精品三区四区| 吖在线不卡一区二区国产剧情| 亚洲情色在线| 天天色综亚洲91污| 97超碰欧美中文字幕| 老色69| 五码视频在线观看| av草草在线电影| 一区二区三区机械有限公司| 亚洲欧美黄| 亚洲综合在线高清| 91快色色色色色| 小视频国产| 这里只有精品视频在线观看麻豆| 风间由美日韩欧美久久| 亚洲精品视频在线| AV乱伦国产| 欧美一级专区免费大片| 97人人操人人干| 男女日B国产| 91久久久久久久| 色播五月丁香| 人人摸.人人色| 欧洲自拍第一页| 国产欧美美女免费观看视频| 很黄很色的视频在线观看| 另类图片五月天| 大屁股xxxxx| 无码不卡亚洲成?人片| 男人把坤坤插入女人的下体| 大香樵伊人网| 亚洲成人久久一区二区| 大奶的诱惑| 夜夜嗨绯色| 99热线麻豆 | 无码视频一区二区| 91色堂| 天美传媒av在线| 亚洲天在线| 亚洲最大的综合性av| 国产精品一区二区密臀| 伊人久久大香线综合无码| 亚洲国产激情国产av| 99久久久无码国产精品性啊聊| 97丝袜亚洲在线播放| 久久久草成人网站久久久草成人久久久草久久久 | 欧美 亚洲 另类 综合| 激情五月婷婷| 乱欲一区二区| 国产精品一区二区a| 美女爽爽爽刺痛洞洞| 久久久久久亚洲精品不卡人乳| 精品国产无码中文| 人妻铁牛TV| 小骚逼被操的爽不爽| 人妻天堂综合网| 盗摄女人妻在线| 婷婷五月天激情四射| 亚洲色图综合网| 久久久久久性爱片| 青青草中文-久久青草精品一区二区三| 久久这里只有精品9| 日韩av电影网站| 自拍丝袜美腿人妻| 精品无码一区二区| 91九九| 欧美强奸乱能| 18禁无码永久免费无限制| 草草草视频| 97网站在线观看| 韩国国产欧美情侣视频在线| 一区二区精品更新提醒| 97操97色| 神马福利久草| 大胆91| 91GD.COM| 人、人、摸,人、人、草| 欧美一级黄片视频在线| 亚洲 欧美 偷拍 唯美| 国产精品播放| 国产精品一区二区三| 亚州黄站| 天天舔日美女视频| 亚洲骚逼少妇| 96久久久久久久| 91无码人妻精品一区二区三区蜜桃| 色香欲天天天天综合色| 品亲网欧美品亲网| 97在线无精品| 亚洲国产精品久久久男人的天堂| 欧美999999| 色综和网| 欧美大战久久久伊人| 久草资源欧美在线视频| 91国产大片| 夜夜嗷嗷一区二区| 99re这里| 青青草五月份天| 大香交| 超碰久久.com| 国产精品96久久久久久| 亚洲一区二区在线观看91| 久久午夜色播影院免费高清| 13小男生GAY自慰脱裤子| 日韩欧无码一区二区三区免费不卡| 极品国产内射| 都市久久精品激情亚洲| 啪啪资源网| 亚洲美女自拍偷拍视频| 无码乱人伦中文视频| 国产91精品福利在线| 婷婷中文网| 99日精品欧美国产| 欧美精品四区| 亚洲第一色页夜| 亚洲欧美精品久| 嗯嗯啊啊的视频| 亚洲性刺激| 国产女人视频三四五区| ji熟女.com| 91强热人妻| 综合色图区| 日本特黄f c2| 四虎视频在线观看| 国产97/欧美| 97日韩欧美亚洲| 欧美高清色| 国产免费黄色一级大片| 在线观看国产黄色| 人妻激情偷乱视频一区二区三区 | 蜜臀一二三区| 亚洲熟女综合一区二区| 国产毛片在线| 激情综合五月| 欧美综合制服在线| 伊人97| 香伊人在线| 免费中文在线| 熟妇亚洲一区二区三区| 中文字幕人妻色偷偷久久皮 | 东北女人高潮视频| 日韩免费av片高清无码| 中文字幕aⅴ在线视频| 99色| 欧亚揄拍偷拍精品视频| 97超碰超碰| 无码WWW免费视频网站| 日本色色色| 亚洲官网在线| 天天干人妻| juliaann丝袜| 中文字幕亚洲永久精品| 欧美黑人猛交春色影视大全| 欧美国产操逼| 亚洲欧美国产中文视频| 少妇干B| 日欧美色| 视频国产成人精品日本亚洲18 | 91香蕉视频在线观看免费| 色婷视频| 九九九精品色乱九九九| 99re免费视频精品全部| 久操黄色视频| 欧美色图97| 精品久| 在线v中文字幕一区二区三区 | 思思热在线视频在线| 人妻22p| 久久噜| 国产精品午夜福利亚洲综合网| 亚洲精品视频在线| 亚洲欧美啪啪| 国产网红精品| 欧美精品偷拍| 先锋女优在线观看视频| 综合啪啪| 高清不卡 中文 人妻| 欧美特大AA级黄片| 天美一二三在线观看Av| 亚洲在线a| 性做久久久久久久| 大香蕉综合在线| 乱伦一二三区| 97亚洲资源| 一区二区高清视频| 夂久色| 伦理第一页| 国内精品久久久久影院亚洲| 亚精品无码毛片一区二区三区| 色色色日本| 操我啊啊啊啊啊| 综合网91| 亚洲日韩一区电影| 九九热av| Julia在线播放亚洲久久| 久久九九久精品国产尤物|国产精品爽黄69天堂A片潘金莲,国产亚洲精品第一综合 | 免费黄色A片| 青青草无码视频| 青青操综合网| 国产熟女自拍| 99操碰| 91久久国产精品| 亚洲色五月| 97天天| 日韩性爱高清免费视频| 中文字幕激情小说| 亚洲精品久| 国产精品人妻无码久久久互動交流 | 国产后入式在线观看| 手机看片1024你懂的国产| 精品综合久久久久久97| 强奸乱伦麻豆| 98超碰欧美| 爱爱60秒免费视频| 日韩欧美福利视频看看| 超碰激情808| 性爱视频啪啪啪啪| 99热线麻豆| 久久精品—区二区三区内射| 操91| 精品国产Av无码久久久亚洲| 97 九色| 爆操无码| 精品人妻一区二区三区四区石在线| 久久亚洲不卡一区二区三区| 国产中文字幕曰本毛片| 欧美 亚洲| 综合亚洲情色| 色色婷| 伊人网免费视频| 五月天亚洲网| 精品久久久久瑟瑟| 欧美国产伊人久久久久| 色色毛片| 色97国产69香蕉| 日韩伦理久 久久 清纯| 激情啪啪拍91| 亚洲精品一二牛牛| 国产尤物在线三区| 日本不卡二三区| a在线观看| 肏逼福利网站| 亚洲天堂一二| 69久久久久久久久久久久久| 欧州色图区| 欧美性爱视频免费一区一A | 亚洲图片 91| 色婷婷激一区二区三区| 免费操逼91| 哑洲在线| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 国产成自自拍在线观看| 91美女丝袜诱惑视频| 加勒比在线视频一区二区三区| 97欧美日韩| 少妇高潮喷水无套久久久久久| 免费看污网站| 丁香五月综合| 色爱国产| 免费黄色A片| 欧美1区二区三区公司| 日本不卡五区| 久久久久99精品成人片蜜臀| 日韩欧美天天爽爽爽天天爽爽| 日韩伦理视频| 色综合91| 日韩一级二级| 国产成人网| 欧美人妻一区| 亚洲天堂7777| 日本狂喷奶水在线播放212| 久久大黄片| 骚女天天综合网| 国语精品av| 久久久九九| 激情婷婷丁香| 国产熟女自拍| 99re6国产精品99re| 亚洲揄拍网| 韩国女主播青草在线| 日韩综合无码色欲vv| 伊人网免费视频| 日本影视久久免费| 精品国产AV一区天美传媒| 国产精品动态一区二区三区四四| 老司机午夜福利视频一区二区| 夜夜爽妓女| 青青草吊丝| 日韩97超碰中文字幕| 五月丁香综合啪啪| 伊人91| 色狠狠综合| AV中文在线| 第一高清av中文字幕| 嫩草影院在线观看精品| aaaa少妇高潮大片| 啪啪啪大香蕉| 九九九精品成人免费视频小说| 大香蕉中文网| 九月伊人中文字幕| 国产精品播放| 明星性猛交ⅹxxx乱大交| 国产精品操| 97欧美综合| 国产精品美女| 国产h小视频在线观看免费| 在线观看中文字幕| 欧美乱伦专区| 国产拍偷精品网站| 91丨豆花丨熟女| 狠狠色噜噜狠狠狠狠2018| 97国产精品视频| 人妻少妇精品| 国产午夜福利专区综合| 吖在线不卡一区二区国产剧情| 久久午夜鲁丝片| AV一区观看| 久久精品国产亚洲AV高级北京| 久草免费福利在线播放| 91精品久久综合熟女| AV中文在线| 亚洲精品一区中文字幕乱码| 色第一页| 亚洲天堂日本| 99re视频在线播放青草| 91天天看| 97超碰色色| 两女互慰AV高潮喷水在线观看| 精品中文字幕一区二区| 伊人色综合网电影| 东京热男人的天堂网| 一区二区三区日韩欧美 | 亚洲无码一区二区三区三州| 九九碰九九爱97| 嫩草 人人网精品| 二三四区精品| 青草精品视频一日本久久久久网站| 天美精品原创av片国产| 国产日韩手机视频在线| 亚洲av无码成人精品国产| 中亚av| 青青草在线视频欧美| 色婷婷日韩精品一区二区三区| 深夜视频| 岛国AB视频| 综合色久| 日韩99神马视频片| 免看60秒涩涩视频| 加勒比综合| 亚洲激情综合另类男同| 屌逼麻豆| 日韩少妇在线视频| 欧美在线91| 国产精品色片一区二区| 色香阁在线| com 首页 18岁 禁区 女优 免费 精选 同城 | 国产乱人妻精品入口| 欧洲精品二区| 成人免费看吃奶视频网站| 日本中文字幕在线视频| 欧美第38页| 99999亚洲另类| 久久久久亚洲av综合波多野制衣| 婷婷色中文字幕| 91国产大片| 国产白丝AV| 久久综合资源一区二区| 97色在线观看| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 91AV入口| 91久久久久免| 欧美激情亚洲情色| 国产一区二区三区白丝| 日本高清电影欧美色图| 动漫av中文| 青娱乐淫乱1314| 午夜一区| 无码精品啪啪啪一区二区三区三州| 亚洲国成人情色好看电影| 熟女少妇一区二区三区| 国产中文大片资源中文字幕| 久久侵犯人妻爽爽爽| 日本道人妻久久久在线不卡色视频| 熟妇xxxxx性春色| 国色天香av| 伊人九九| 激情四射五月天| 九一综合网| 激情熟女12P| 97视频观看| 亚洲伊人久久精品狠狠在线| 91在线国产后入风骚翘臀美女素人| 国产精品一区二区校花| 亚洲国产中文字幕| 亚洲最大AV网| 午夜九九| 综合色图亚洲欧美| 啊啊啊想要| 美女淫穴| 亚洲第一精品在线视频 | 欧美美女自慰一区二区三区| 黄片www视频免费| 国产欧美一级在线观看| 青青草原综合久久大伊人精品| 国产成人91一区二区三区| 色悠悠伊人网五月天| 熟女AV一区| 日韩情色AV| 77777亚洲蜜臀精品久久综合蜜臀| 亚洲精品国产精品乱码不99| 国产AV激情无码久久无码 | 日本三级日本三级三级人妇四虎| AV中文在线| 亚洲第一综合| 免费看日本操逼视频| 手机看av网站在线看| 夜嗨影院| 熟女被操视频网址| 少妇滛荡视频| 婷婷五月影院| 丁香五月影院| 日韩精品一二三四| 国产丝袜美女诱惑| 久久久久精| 青青草吊丝| 黑人天8A∨高清网站| 亚洲淫乱骚妇AV| 91在线丝袜视频| 激情人妻另类| 99re6在线视频精品免费完整版安卓版| 玖玖爱一区在线| 日本黄页视频在线观看| 色偷综合| 九九九久久久W精品| 啊啊啊啊嗯嗯在线久久久| 天天综合网在线91| 欧美黄页| 无码高清国产AV| 十八禁的黄污污免费网站| 国产操逼视频在线观看| 自拍大香蕉乱插| 丁香五月电影| 人妻精品4K4K4K4K4| 欧美白嫩在线放| 99精品综合久久久久五月天| 国产精品农村妇女| 国产成人拍国产亚洲精品| 无码区蜜乳| 欧美日韩国产色图在线| 五月丁香啪啪啪| 男女打扑克高清网站| 亚洲爱爱视频一区二区| 日日97| 国产精品福利资源在线尤物| 免费啪啪av| 综合婷婷| 成人综合网 欧美| 亚洲操操操无码| 视频不卡中文字幕| 欧美强奸乱| 日本在线一二| 日韩色女精品| 亚洲天堂资源网| 亚洲国产成人精品女人久久久| 美女写真| 狼天天狼天天大香蕉| 免费超碰97久久| 综合色好色| 日本Xx性爱| 按摩中文字幕| 天天影视91看看| 天天看精品动漫视频一区| 爱av免费| 97色97好| 伊人操| 无码WWW免费视频网站| 精品四五区| 亚洲欧美啪啪| 亚洲激情综合另类| 欧美一级A片在线看视频性色| 美女尤物福利视频| 日曰骚久久精品| 丁香九月 婷婷| 天天欧美欧美亚洲网| 国产久久男人天堂| 日本性交操一区二区不卡系列| 九九热九九| 91熟女.com| 国产精品成久久久久午夜午夜| 五月婷婷综合在线| 色天堂在线观看| 国产精品午夜福利亚洲综合网| 婷婷导航| 无马一区二区| 户外裸露刺激视频第一区| 美女毛片999| 久久专区| 偷窥自拍亚洲色图| v91av| 日本视频在线观看污污污| 草伊人高潮喷水超碰| 精品999一区二区| 色婷婷丁香五月| 欧美成人精品一区二区男人蜜臀| 看一级特黄a大一片| 少妇人妻精品| 人人做,人人操,人人摸| 奸色色 男人天堂 天天射| 日韩有码专区| 久久久中文| 九九九九九九九九九国产精品| 婷婷丁香五月天亚洲天堂网| 日影院久久婷婷夜夜网| 精品国产无码中文| 麻豆伊人网| 国产丝袜欧美在线视频| 久久鲁夜| 伊人操你| 是还免费视频1727我| 精品久久无码午夜福利| 欧美色图天堂网m| 少妇一级婬片免费放一级a性色.| 91人妻视频在线| 欧美的性爱网站免费| 欧美日日夜夜| 久久精品国产99精品亚洲蜜...| 欧美熟妇乱码在线一区| 精品国产91内射久久| 人人爽夜夜操| 人人操人人摸人人看人人干| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 国产一区二区a毛片| 啊啊啊啊啊啊啊在线| 美國A片| 99999亚洲另类| 九九激情网| 96精品久久久久久久久久| 久久国产99精品72福利| 丁香六月激情| 亚洲精品97中文字幕| 制服乱伦| 天天噜| 禁十八久久| 亚洲精品一二区| 亚洲丨在线| 九色97| 五月天久久综合网| 91久久久久久久| 99热9| 国产无码成人无码| 骚女高跟AV在线| 久久久久国产一区二| 青青草久草| 国产日韩人人| 开心五月激情网| 日韩兔费看黄片| 色香欲天天天天综合色| 五月丁香婷婷综合| 男女激烈网站最新| 欧美性色欧美| 九九拍拍精品视频在线播放 | 天天干天天燥| 夜夜嗨一区二区三区直播内容| 亚洲成人碰碰| 中文字幕日韩人妻视频一区二区三区 | 伊人国产av| 熟女六十路| 试看日韩黄片| 久久99干一本高清| 人人色人人射人人妻| 精品伊人久久久大香线蕉小说| 大香蕉伊人75| 男人的天堂久久狠| 男人的天堂2019AV| 老司机深夜影院18未满| 亚洲图片另类| 亚春色色| 日韩精品99久久久久久中文字幕| 久久久久久人妻| 亚洲激情综合另类男同| 啊啊啊免费| 青青草吊丝| 天天操综合网| 91强奸乱轮| 亚洲国产精品成人综合| 96精品久久| 亚洲诱惑天堂 | 中文字幕jul-617人妻熟女| 欧美性爱18观看| 色爱亚洲| 97久久超碰国产精品| 亚洲人妻熟妇三十三区| 97人妻色| 激情专区综合| 人妻中文字幕日韩电影| 精品人妻视频入口| 免费精品无码一级毛片牛牛影视 | 蜜臀一二三区| 久久超碰、| 欧美亚洲高清晰 | 国产福利视频精品视频| 熟女乱伦二区| 欧美成人一区二区| 欲色综合| 啪啪免费| 二区熟妇韩日| 91精品91久久久中77777| 色综合久久88色综合久久天天| 精品无码一区二区| 韩日欧亚a级| 无码区蜜乳| 天天综合精品| 91精品在线播放| 超碰人妻天天干| 91亚洲不卡一区| 9丨久久九九九| 欧美日韩 强奸乱伦| 欧美熟妇操操视频| 蜜臀网 一区| 欧美人妻一区| 色在线69堂| 精品无码欧美三级| 花野真衣| 亚洲AV色图| 亚洲AV无码国产成人| 抽插爽| 在线中文字幕| 91亚洲不卡一区| 国产精品九九九| 爽爽歪在线视频| 欧美在线大香999| 亚洲福利中文字幕在线| 亚洲日韩东京热一区| 久久久久免费看少妇A片特黄| 又大又长又爽| 尤物网站91| 九九综合| 少妇高潮九九九九| 无码色| 操熟女91| 久久精品国产精品亚洲艾通辽熟妇 | 6080YYY午夜理论片在线观看| 国产专区路线| 日韩无码极品| 亚洲、日韩、综合、另类| 国产三级片在线观看| 女人爽到高潮久久久| 91天天综合网| 欧美视频在线第3页| 日本精品五区| 国产馆极品诱惑| 人妻色偷色噜| 欧美成不卡网| 欧美人人曰人人操人人射射| 国产亚洲一黄| 午夜性刺激视频免费观看| 男人下部插入女人下部| 国产精品人妻无码久久久互動交流 | 欧美超碰在线| 91大胆欧美| 精品国产av一区二区三区四区入口 | 欧美日本久久精品一区| 人妻另类 专区 欧美 制服| 色九月综合| 中文字幕丰满人妻日本| 欧美少妇第一页| 欧美,日韩综合久久| 青青操视频在线| 超碰在线看| 久久久久99精品成人片蜜臀| 久草久热| 日韩免费高清大片在线| 亚洲性图91| 久久XX| 羞涩视频| 使劲用力艹少妇视频一区二区| 日韩国产欧美伦理在线 | 97亚洲色图| 啊啊啊啊嗯嗯嗯用力好爽 | 91动漫操逼视频| 人妻精品一区二区三区| 久7色| 人人艹亚洲| 97亚洲国产| 欧美淫穴| 两性色网| 亚洲少妇综合| 人人操天天爽| 欧美一区二区三区入口| 天天夜夜rb| 91天天综合网,天天综合网| 性在久久久久久| 亚洲 欧美 第一页| 厕所偷拍在线| 日本精品高清一二区一本到| 日逼97| 日韩图区| 精品一区二区三区蜜桃臀赵总 | 伊人色综合欧美| 国产丝袜视频| 国产人妖的免费的视频| 国产9熟妇视频网站| xxx亚洲午夜天堂| 成年人黄色小视频网站| 日韩99999| 少妇500双飞99| 国产精品免费视频人成| 久久精品黄色| 999熟女精品| 欧美色图亚洲色图成人在在线| 久久无码成人| 日日夜夜精品视频| 色大香蕉97N| 裸体美女国产免费久久久网站| 久干9操| 五月天亚洲色图| 亚洲AV不卡在线观看| 亚洲情色第一页| 日韩欧美经典在线观看| 不卡中文字幕aⅴ在线| 亚洲第一页综合在线| 78久久久| 高清无码国产亚洲| 亚洲视频1区| asc国产精品| 日本成人免费一区二区三区| 9 1超碰九色| 精品v1区| 91欧美| 日韩人妻播放| 日韩三级伦理中文字幕| 亚洲91综合| 亚洲91色在线| 强奸乱伦动态污图免费| 男插女青青影院| 青青草依人大香蕉| 精品中文日韩字幕视频| 女人的久久久| 黑人嘿嘿嘿超爽免费视频| 中文字幕丰满人妻日本| 九九九只有精品| 亚洲大胆人体av| 麻豆性爱视频在线播放 | 色妺妺在线视频| 国产亚洲99久久精品| 超碰成人公开| 国产精品人人爽人人做可爱福利| 中文字幕丰满子伦无码专区在线视频最新 | 亚洲最大的黄色电影网站。| 日本日皮视频逼| 国产网站在线播放| 国产一区二区三三视频| 精品视频在线观看| 外国91| 91九色丨风韵犹存| 色哟哟av| 热G综合热G中文| 亚洲日韩少妇一道本视频| 青青草五月天| 97 国产一区| 亚洲免费精品一区| 中日无幕一二三四区| 黄页大片在线观看| 欧美日韩成人| 天天干天天爽| 色五月婷婷中文字幕| 青青草天天亲夜夜操网| 第一高清av中文字幕| 亚洲色 国产 欧美 日韩| 美国aaaaa一级黄片| 伊人久操| 婷婷丁香五月天综合东京热| 嫩草影院在线观看精品| 日本东京热加勒比久久| 国产麻豆福利av在线播放| 少妇高潮对白在线观看| 精品亚洲国产成人精品| 国产精品自在自拍视频| 婷婷中文网| 国产综合网站在线播放| 亚洲四虎熟女精品| 日韩一区二区精彩视频| 日韩偷拍一区二区三区| 99久久久无码精品国产人| 久综合国内精品自在自线| 免费的很黄很污的全部视频| 国产专区第一页| 这里只有精品视频在线观看麻豆| 一本一道波多野毛片中文在线| 亚洲一卡2卡3卡4卡乱码网站 | 亚洲天堂电影精品一区| 红杏大香蕉| 操死我干死我| 一区二区三区成人| 久久6热精品99视频| 亚洲精品乱码久久久久久蜜桃麻豆| 婷婷性网| 97国产精品一区二区传媒公司| 国产大片精久久久久久| 欧美熟女妇同| 欧美91网站| 校园春色 亚洲| 亚洲色宗合| PMv在线观看| 大香蕉免费乱伦视频| 福利伊人玖玖国产| 狠狠综合网| 九九英色视频| 天天干人妻| 日韩一卡二卡三卡| 无码人妻一区二区三区色欲aⅴ | 日韩少妇无码| 欧美精品23| 国产精品一区二区 尿失禁| 一区二区三区机械有限公司| 国产伊人自拍| 欧美性,亚州色| www.男人天堂| 久久久久久久| 伊人骚琪琪亚洲天堂网站| 亚欧毛片基地国产毛片基地| 一区二区视频在线播放| 丁香久久| 淫骚熟女一区二区三区| 欧美色91| 国产自制av蜜乳| 成人午夜小视频手机在线看| 亚洲日韩一区电影| 久久鲁夜| 亚洲色婷婷综合久久久久中文| 亚洲AV麻豆Aⅴ无码电影一| 强奸乱伦AV一天堂网| 综合久久欧美| 高树玛利亚无码流出| 麻豆婷婷成人一二三| 男人的天堂kva| 91精品微拍福利| 日韩 欧美 另类 人妻| 天天欧美欧美亚洲网| 超碰在线第一页| 亚洲天堂另类| 天天色,天天干,天天干| 婷婷五月天补不补| 情色五月天久久久| 啊啊啊 在线| 操逼天美3区| 熟女丰满人妻一区| 久久6热精品99视频| 熟妇综合一区二区三区| 夜夜草网站| 国产精品 午夜福利| 97超碰色情| 无码聚合| n1038 一二三区| 天堂成人网| 91人妻尻屄视频| 蜜臀AV一区二区三区激情综合| 偷拍导航视频网站| 美国人人操人人操| 成人资源中文字幕在线观看天天| 久久 久久国内精品亚洲| 少妇厨房愉情理伦片bd在线观看| 91free福利| 国产情色第一第二页在线观看| jazzjazz国产精品麻豆| 免费精品中文字幕| 亚洲AV资源| AV中亚| 婷婷五月天丁香花| 99精品高潮| 蜜乳成人AV| 精品熟女一区=区三区| 成人草草视频| 国产精品无码在线| 久久m| 国产精品人妻无码久久久老鸭窝| 中文字幕交换人妻| 密桃99999| 欧美色自拍| 国产精品黑人一区二区三区| 天天干少妇| 97超级久久| 国产精品99久久久www| 伊人aaa| 正在播放国产精品一区| 色好看av| 99久久99九九99九九九| 日韩精品中文字幕二区| 久久中久文96| 久久久久久久国产a∨| 亚洲欧洲色情高清| 日本精品网站在线中文|