日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

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

機(jī)器視覺框架源碼:VS2019編譯、模塊拆解與二次開發(fā)實(shí)戰(zhàn)

機(jī)器視覺框架源碼:VS2019編譯、模塊拆解與二次開發(fā)實(shí)戰(zhàn) 拿到這套機(jī)器視覺框架源碼的那天晚上我其實(shí)沒抱太大希望。市面號(hào)稱“到手就能編譯”的源碼包十有八九是倒了好幾手的舊工程不是缺第三方庫(kù)就是VS版本對(duì)不上。但這版讓我意外解壓后目錄干凈依賴齊全VS2019打開解決方案直接生成幾乎沒有卡殼。它覆蓋了視覺檢測(cè)、AOI檢測(cè)、機(jī)械手定位這些工業(yè)現(xiàn)場(chǎng)最常用的場(chǎng)景代碼里既有底層算法封裝也有上位機(jī)界面和通信模塊對(duì)剛?cè)胄邢胱鲆曈X項(xiàng)目、或者公司想快速搭一套視覺驗(yàn)證環(huán)境的工程師來說價(jià)值很直接。這篇文章我不講虛的就把它從編譯到二次開發(fā)的完整鏈路包括那些文檔里不會(huì)寫的坑一次說清楚。1. 這套框架源碼解決的是什么樣的開發(fā)痛點(diǎn)1.1 為什么視覺項(xiàng)目的起步成本這么高做過機(jī)器視覺項(xiàng)目的人都懂真正耗時(shí)的事往往不是算法本身。相機(jī)選型、SDK對(duì)接、圖像算法調(diào)試、界面開發(fā)、與PLC或機(jī)械手通信每一個(gè)環(huán)節(jié)單獨(dú)拎出來都不算難但串在一起就很折磨人。尤其是從零開始搭項(xiàng)目框架時(shí)光是讓相機(jī)出圖、把圖像顯示到界面上、再跑通一個(gè)簡(jiǎn)單的檢測(cè)流程兩周時(shí)間就沒了。這中間最費(fèi)神的其實(shí)是那些“公共部分”相機(jī)采集線程怎么管理、結(jié)果顯示控件怎么刷新不卡頓、檢測(cè)參數(shù)怎么配置、日志怎么記錄、產(chǎn)線信號(hào)怎么交互。這些代碼沒有多少技術(shù)含量但每個(gè)項(xiàng)目都要重新寫一遍而且寫多了很容易出并發(fā)和內(nèi)存問題??蚣茉创a的核心價(jià)值就是把這些公共能力提前做好讓后續(xù)項(xiàng)目只需要關(guān)注檢測(cè)邏輯本身。1.2 這套源碼的定位拿來用還是拿來改拿到源碼后首先要明確一個(gè)邊界這套框架不是一套完整的、開箱即用的商業(yè)機(jī)器視覺軟件而是一個(gè)適合做二次開發(fā)的框架底座。它提供了視覺項(xiàng)目最常用的幾大功能模塊——圖像采集、算法處理、結(jié)果顯示、數(shù)據(jù)通信、流程控制——但針對(duì)具體工件的檢測(cè)算法、針對(duì)具體機(jī)臺(tái)的通信協(xié)議仍然需要使用者自行開發(fā)或配置。這個(gè)定位其實(shí)很務(wù)實(shí)。工業(yè)視覺項(xiàng)目千差萬(wàn)別沒有一個(gè)框架能覆蓋所有工藝場(chǎng)景??蚣苣茏龅氖前涯切懊總€(gè)項(xiàng)目都會(huì)用到、且有成熟通用方案”的模塊做好把接口留清晰。使用者把精力集中在算法層和工藝層項(xiàng)目的交付周期就能從幾個(gè)月壓縮到幾周。這也是我推薦團(tuán)隊(duì)以這套源碼為基底的原因前期花點(diǎn)時(shí)間吃透它后面每個(gè)項(xiàng)目都在復(fù)用越用越值。2. 拿到源碼的第一步VS2019環(huán)境準(zhǔn)備與依賴配置2.1 VS2019的工作負(fù)載選擇決定了編譯第一秒會(huì)不會(huì)報(bào)錯(cuò)很多人拿到源碼直接雙擊解決方案然后看著一堆紅色錯(cuò)誤發(fā)懵。絕大多數(shù)編譯失敗不是代碼本身的問題而是VS2019的組件沒裝對(duì)。這套框架是基于C開發(fā)的界面部分用了MFC算法部分依賴OpenCV和Halcon的C接口所以Visual Studio Installer里必須裝齊對(duì)應(yīng)的組件。我的實(shí)際建議是在VS2019安裝器里至少勾選以下工作負(fù)載“使用C的桌面開發(fā)”這一項(xiàng)是必須的在右側(cè)“單個(gè)組件”里確認(rèn)選中“適用于最新v142生成工具的C MFC”MFC這個(gè)組件默認(rèn)不安裝很多人漏掉它結(jié)果一編譯就報(bào)“無(wú)法打開包括文件: afxwin.h”。另外如果源碼里用到了.NET庫(kù)可能還要勾選“.NET桌面開發(fā)”不過這套源碼界面部分是用原生Win32寫的C負(fù)載裝好基本就夠了。2.2 OpenCV與Halcon依賴庫(kù)的版本匹配這套框架的算法層同時(shí)用到了OpenCV和Halcon。OpenCV負(fù)責(zé)圖像預(yù)處理和基礎(chǔ)形態(tài)學(xué)操作Halcon負(fù)責(zé)模板匹配和幾何測(cè)量。兩者需要安裝對(duì)應(yīng)版本并配置環(huán)境變量。OpenCV方面框架使用的是OpenCV 4.5.x版本。下載安裝后需要在系統(tǒng)環(huán)境變量Path中把opencv\build\x64\vc15\bin路徑加進(jìn)去同時(shí)把opencv\build\include和opencv\build\x64\vc15\lib配置到VS2019的包含目錄和庫(kù)目錄中。Halcon方面框架對(duì)接的是Halcon 20.11及以上的版本。安裝時(shí)注意選擇64位并在環(huán)境變量中確認(rèn)HALCONROOT等變量已生效。這套框架在代碼里通過#include halconcpp/HalconCpp.h引用Halcon的C接口如果你本機(jī)安裝的Halcon版本較新部分函數(shù)簽名可能略有變化需要做少量適配。依賴庫(kù)配置的通用建議是在解決方案里新建一個(gè)屬性表把所有三方庫(kù)的包含目錄、庫(kù)目錄和附加依賴項(xiàng)統(tǒng)一維護(hù)在一個(gè).props文件里而不是散落在各個(gè)項(xiàng)目里。系統(tǒng)找不到DLL時(shí)優(yōu)先檢查環(huán)境變量的路徑順序有些坑是裝了新版本OpenCV覆蓋了舊版本路徑導(dǎo)致的。2.3 先別急著改代碼先確認(rèn)生成環(huán)境能跑起來環(huán)境配置完成后我建議的編譯順序是不修改任何代碼直接用VS2019打開解決方案選擇Release x64執(zhí)行“重新生成解決方案”。如果沒有任何錯(cuò)誤就說明源碼自帶的環(huán)境和依賴描述是完整可用的。我第一次編譯時(shí)整個(gè)解決方案有十七個(gè)項(xiàng)目生成過程大概四五分鐘結(jié)束后沒有報(bào)一個(gè)錯(cuò)誤這個(gè)體驗(yàn)在同類源碼里屬于相當(dāng)難得的。提醒一件事編譯輸出目錄里會(huì)生成多個(gè)可執(zhí)行程序和DLL運(yùn)行Demo前要把Output目錄整體拷出來或者直接設(shè)置統(tǒng)一的輸出目錄不要到各個(gè)項(xiàng)目的Debug文件夾里找exe。最好的做法是確認(rèn)VS設(shè)置里“輸出目錄”統(tǒng)一指向$(SolutionDir)Bin\$(Configuration)\這樣生成的程序、DLL以及依賴的第三方庫(kù)都在同一個(gè)目錄后續(xù)部署時(shí)直接壓縮這一文件夾即可。3. 源碼架構(gòu)拆解從解決方案到核心模塊3.1 解決方案里的工程是怎么分層的打開解決方案十幾個(gè)項(xiàng)目乍一看有點(diǎn)慌但梳理一遍后會(huì)發(fā)現(xiàn)分層非常清晰基本遵循“界面層-業(yè)務(wù)層-算法層-驅(qū)動(dòng)層”的思路。界面層是主程序項(xiàng)目負(fù)責(zé)圖像顯示、參數(shù)設(shè)置、檢測(cè)結(jié)果展示和用戶交互。業(yè)務(wù)層負(fù)責(zé)檢測(cè)流程的調(diào)度比如觸發(fā)采集、調(diào)用算法、判斷結(jié)果、發(fā)送信號(hào)。算法層是一組獨(dú)立的DLL項(xiàng)目按功能拆分為圖像預(yù)處理模塊、模板匹配模塊、尺寸測(cè)量模塊和字符識(shí)別模塊。驅(qū)動(dòng)層則封裝了相機(jī)SDK、運(yùn)動(dòng)控制卡和IO卡的接口上層業(yè)務(wù)不需要關(guān)心具體的硬件廠商。這種分層的好處是依賴關(guān)系單一界面層依賴業(yè)務(wù)層業(yè)務(wù)層依賴算法層和驅(qū)動(dòng)層每一層都可以單獨(dú)編譯和替換。如果項(xiàng)目里要換一臺(tái)相機(jī)只需要改驅(qū)動(dòng)層的實(shí)現(xiàn)算法和界面不需要?jiǎng)?。如果你的團(tuán)隊(duì)后續(xù)要在這個(gè)框架上擴(kuò)展務(wù)必保持這個(gè)分層原則否則時(shí)間一長(zhǎng)項(xiàng)目會(huì)退化成經(jīng)典的一坨代碼。3.2 視覺檢測(cè)模塊的完整鏈路從采圖到輸出視覺檢測(cè)模塊是這套框架的核心它的完整數(shù)據(jù)鏈路是硬件觸發(fā)或軟件觸發(fā)→相機(jī)采集→圖像預(yù)處理→算法分析→結(jié)果判定→數(shù)據(jù)保存→IO輸出。相機(jī)采集部分框架封裝了一個(gè)相機(jī)線程類內(nèi)部處理了采圖超時(shí)、緩沖區(qū)管理、軟觸發(fā)與硬觸發(fā)切換等邏輯。使用者在采集回調(diào)函數(shù)中拿到的是標(biāo)準(zhǔn)格式的圖像數(shù)據(jù)框架內(nèi)部已經(jīng)對(duì)黑白相機(jī)和彩色相機(jī)做了統(tǒng)一處理。圖像預(yù)處理部分框架預(yù)設(shè)了幾種常用算子組合高斯濾波去噪、對(duì)比度增強(qiáng)、二值化、形態(tài)學(xué)開閉運(yùn)算。這些算子的參數(shù)都在界面層暴露給了用戶不需要改代碼就能調(diào)整。實(shí)際項(xiàng)目中打光方案和成像質(zhì)量決定檢測(cè)難度的80%預(yù)處理只是起到錦上添花的作用但它能讓算法更穩(wěn)定。算法分析部分框架把檢測(cè)拆成了兩類基于特征的檢測(cè)和基于模板的檢測(cè)。基于特征是測(cè)量工件的幾何尺寸比如圓直徑、邊緣距離、角度基于模板是判斷工件是否與標(biāo)準(zhǔn)件匹配比如檢查缺料、錯(cuò)料、劃痕。每一類算法都抽象出了基類開發(fā)者只需要繼承基類并實(shí)現(xiàn)具體檢測(cè)邏輯就能接入框架的流程調(diào)度。結(jié)果判定與輸出部分框架提供了判定規(guī)則的配置界面可實(shí)現(xiàn)“尺寸在上下限范圍內(nèi)判OK超差判NG”、“模板相似度大于閾值判OK”等邏輯。判定結(jié)果會(huì)同時(shí)驅(qū)動(dòng)界面顯示、數(shù)據(jù)庫(kù)記錄和IO信號(hào)輸出。3.3 AOI檢測(cè)模塊和普通視覺檢測(cè)的差異點(diǎn)AOI檢測(cè)即自動(dòng)光學(xué)檢測(cè)本質(zhì)上是一種高頻次、高一致性、需要海量數(shù)據(jù)管理的視覺檢測(cè)系統(tǒng)。這套源碼里的AOI模塊和普通的單站視覺檢測(cè)相比有幾個(gè)明顯差異。第一AOI的檢測(cè)項(xiàng)更多而且通常需要對(duì)同一產(chǎn)品執(zhí)行幾十道檢測(cè)步驟??蚣艿腁OI模塊提供了一種“流程鏈”的機(jī)制可以把多個(gè)檢測(cè)步驟以列表形式串聯(lián)起來每個(gè)步驟有獨(dú)立的相機(jī)位、參數(shù)配置和檢測(cè)算法。步驟之間不是簡(jiǎn)單的順序執(zhí)行還可以配置“上一步NG則跳過后續(xù)步驟”的剪刀跳轉(zhuǎn)邏輯這樣能顯著壓縮檢測(cè)周期。第二AOI對(duì)NG圖像的追溯要求很高??蚣芾餅锳OI模塊單獨(dú)設(shè)計(jì)了圖像緩存區(qū)和結(jié)果數(shù)據(jù)庫(kù)表每張NG圖都會(huì)自動(dòng)保存原圖和標(biāo)注圖并關(guān)聯(lián)產(chǎn)品條碼、檢測(cè)工序、缺陷類型和檢測(cè)時(shí)間。這個(gè)功能在實(shí)際產(chǎn)線中非常關(guān)鍵客戶投訴時(shí)要能精準(zhǔn)調(diào)出缺陷圖片。第三AOI的誤判率需要不斷調(diào)優(yōu)框架預(yù)設(shè)了一個(gè)“缺陷復(fù)審”模式把所有NG結(jié)果重新過一遍由人工確認(rèn)哪些是真實(shí)缺陷、哪些是過殺確認(rèn)結(jié)果會(huì)回流到樣本庫(kù)供后續(xù)算法調(diào)參參考。這種做法比直接在產(chǎn)線上調(diào)閾值更安全因?yàn)樗淮驍嗌a(chǎn)。3.4 機(jī)械手定位模塊坐標(biāo)轉(zhuǎn)換是靈魂標(biāo)題里提到的“機(jī)械手定”我理解就是機(jī)械手定位這套源碼里確實(shí)做得挺完整。視覺引導(dǎo)機(jī)械手抓取核心問題只有一個(gè)怎么把相機(jī)坐標(biāo)系下的坐標(biāo)轉(zhuǎn)成機(jī)械手能執(zhí)行的坐標(biāo)??蚣芾飪?nèi)置了兩種標(biāo)定模式九點(diǎn)標(biāo)定和旋轉(zhuǎn)中心標(biāo)定。九點(diǎn)標(biāo)定適用于固定相機(jī)從上往下拍、機(jī)械手做平面移動(dòng)的場(chǎng)景。操作方法是在機(jī)械手工作范圍內(nèi)均勻取九個(gè)點(diǎn)讓機(jī)械手依次走到每個(gè)點(diǎn)記錄坐標(biāo)同時(shí)相機(jī)識(shí)別出每個(gè)點(diǎn)的像素坐標(biāo)。框架用一個(gè)最小二乘法擬合出像素坐標(biāo)到機(jī)械手坐標(biāo)的仿射變換矩陣拿到矩陣后視覺輸出的像素坐標(biāo)只要經(jīng)過矩陣變換就能直接變成機(jī)械手的抓取坐標(biāo)。旋轉(zhuǎn)中心標(biāo)定適用于機(jī)械手帶著工件旋轉(zhuǎn)后需要精準(zhǔn)放置的場(chǎng)景。比如機(jī)械手吸起一個(gè)工件相機(jī)拍它的當(dāng)前位置然后機(jī)械手旋轉(zhuǎn)一個(gè)角度再拍通過兩個(gè)位置的圖像坐標(biāo)反算旋轉(zhuǎn)中心。這個(gè)標(biāo)定過程在框架里有配套的引導(dǎo)界面只需要手動(dòng)移動(dòng)機(jī)械手到幾個(gè)位置并確認(rèn)標(biāo)定數(shù)據(jù)會(huì)自動(dòng)保存到配置文件中。實(shí)際產(chǎn)線部署時(shí)機(jī)械手定位項(xiàng)目經(jīng)常會(huì)遇到“精度差了0.3毫米”這類問題。多數(shù)情況下不是標(biāo)定算法的問題而是相機(jī)安裝不牢固、光源閃爍導(dǎo)致圖像灰度抖動(dòng)、機(jī)械手本身重復(fù)精度不足??蚣苣茉趫D像坐標(biāo)穩(wěn)定性和機(jī)械手坐標(biāo)反饋之間做對(duì)比分析方便定位偏差來源。4. 編譯與聯(lián)調(diào)階段的排錯(cuò)實(shí)錄4.1 最常見的編譯錯(cuò)誤及排查鏈路拿到源碼后第一次編譯比較順利但后來我在另一臺(tái)電腦上重新配置環(huán)境時(shí)還是遇到了一些問題。這里把最有代表性的幾條排錯(cuò)鏈路寫出來供參考。第一個(gè)問題是“無(wú)法打開包括文件: opencv2/opencv.hpp”。排查思路不是先去檢查代碼而是先確認(rèn)OpenCV環(huán)境變量是否生效。可以在命令行里輸入echo %Path%看看是否包含OpenCV路徑。如果沒有就需要重啟電腦或手動(dòng)刷新環(huán)境變量。如果有了但VS里仍報(bào)錯(cuò)則檢查項(xiàng)目屬性里的“VC目錄”-“包含目錄”是否指向了正確的include文件夾。第二個(gè)問題是“‘MFC’未定義”或“無(wú)法打開包括文件: afxwin.h”。這個(gè)就是前面提到的MFC組件沒裝。打開Visual Studio Installer修改安裝勾選“適用于最新v142生成工具的C MFC”等待安裝完成重開VS即可。第三個(gè)問題是“LNK2038: 運(yùn)行時(shí)庫(kù)不匹配”。這個(gè)排查稍微復(fù)雜一些根源是多語(yǔ)言混合編程時(shí)MTd與MDd選項(xiàng)不一致。在項(xiàng)目屬性-“C/C”-“代碼生成”-“運(yùn)行庫(kù)”中確認(rèn)所有項(xiàng)目和依賴的第三方庫(kù)都保持一致。Debug模式下一般用“多線程調(diào)試DLL (/MDd)”Release模式用“多線程DLL (/MD)”這是最常見的組合。4.2 相機(jī)SDK與運(yùn)動(dòng)控制卡驅(qū)動(dòng)的兼容性處理這套框架在驅(qū)動(dòng)層默認(rèn)封裝了市面上常見的一個(gè)相機(jī)品牌和一個(gè)運(yùn)動(dòng)控制卡品牌的SDK。在實(shí)際項(xiàng)目里你手里拿到的硬件品牌大概率跟框架默認(rèn)的不一樣。這時(shí)候不需要改動(dòng)上層業(yè)務(wù)代碼只需要在驅(qū)動(dòng)層新增一個(gè)適配類。新增適配類的流程是在相機(jī)驅(qū)動(dòng)項(xiàng)目里新建一個(gè)類繼承框架定義的相機(jī)基類實(shí)現(xiàn)連接、斷開、軟觸發(fā)、硬觸發(fā)、取圖回調(diào)和參數(shù)設(shè)置這幾個(gè)虛函數(shù)。每個(gè)廠商的SDK調(diào)用方式不同但完成這些接口后上層業(yè)務(wù)就能像使用原品牌一樣使用新相機(jī)。需要特別注意的是SDK回調(diào)線程與業(yè)務(wù)UI線程的交互。很多相機(jī)SDK在取圖回調(diào)中上下文并不是主線程在回調(diào)里直接操作UI會(huì)閃退??蚣茉诨卣{(diào)線程里統(tǒng)一做圖像格式轉(zhuǎn)換再通過PostMessage方式通知UI線程刷新顯示這個(gè)機(jī)制保留下來即可不要為了省事在回調(diào)里寫界面刷新。運(yùn)動(dòng)控制卡的適配同理??蚣芴峁┝送ㄓ命c(diǎn)位運(yùn)動(dòng)接口包括單軸運(yùn)動(dòng)、多軸直線插補(bǔ)、回原點(diǎn)、限位信號(hào)讀取等。如果你的設(shè)備只有水平X/Y軸最簡(jiǎn)配置是每軸對(duì)應(yīng)一個(gè)電機(jī)通道號(hào)。4.3 運(yùn)行時(shí)DLL缺失的排查順序編譯成功后第一次運(yùn)行exe最常見的故障就是“找不到opencv_world450.dll”或“找不到halconcpp.dll”。很多人下意識(shí)去網(wǎng)上亂下載DLL往系統(tǒng)目錄里塞這是非常壞的習(xí)慣。正確排查順序是第一確認(rèn)這些DLL是否已經(jīng)存在于電腦某個(gè)路徑中比如OpenCV的bin目錄、Halcon的bin目錄。第二把程序輸出目錄整理好將這些DLL復(fù)制到exe同目錄下或檢查環(huán)境變量Path里是否包含這些路徑。第三用Dependencies工具檢查exe的依賴列表看具體缺的是哪個(gè)DLL以及它是否依賴了另一個(gè)DLL。原則上一個(gè)專業(yè)視覺項(xiàng)目的目錄結(jié)構(gòu)應(yīng)該是這樣的exe文件、第三方DLL、配置文件、算法模型文件、日志目錄全部放在同一個(gè)根目錄下。這樣在整體部署到工控機(jī)時(shí)直接拷目錄不容易出現(xiàn)缺少文件的問題。5. 在這套框架上做二次開發(fā)的擴(kuò)展點(diǎn)5.1 算法模塊的擴(kuò)展方式框架的算法層設(shè)計(jì)得比較開放新增一個(gè)算法模塊并不復(fù)雜。以新增一個(gè)基于深度學(xué)習(xí)的缺陷分類算法為例做法是在算法層項(xiàng)目里新建一個(gè)類繼承框架的DetectionBase基類重寫Detect(ImageInput, AlgorithmConfig, ResultOutput)方法?;惱镆呀?jīng)實(shí)現(xiàn)了圖像格式轉(zhuǎn)換、參數(shù)序列化、結(jié)果顯示和異常日志等公共邏輯開發(fā)者只需要在Detect方法里調(diào)用訓(xùn)練好的深度學(xué)習(xí)模型推理。深度學(xué)習(xí)模型的集成需要引入推理引擎的SDK比如ONNX Runtime或OpenVINO??蚣鼙旧聿粡?qiáng)依賴深度學(xué)習(xí)框架它只負(fù)責(zé)在檢測(cè)流程中調(diào)用算法模塊的接口。模型文件放在指定目錄配置文件里用相對(duì)路徑引用這樣整體可移植性比較好。擴(kuò)展算法模塊時(shí)有一個(gè)容易忽略的點(diǎn)內(nèi)存管理。視覺檢測(cè)通常一秒處理好幾個(gè)產(chǎn)品如果算法內(nèi)部頻繁申請(qǐng)和釋放圖像內(nèi)存會(huì)產(chǎn)生內(nèi)存碎片跑時(shí)間長(zhǎng)了系統(tǒng)越來越卡。建議在算法模塊構(gòu)造函數(shù)中預(yù)分配緩沖在Detect方法里復(fù)用這些內(nèi)存。5.2 檢測(cè)流程與界面配置的定制除了加算法二次開發(fā)最常做的事是調(diào)整檢測(cè)流程??蚣艿牧鞒膛渲帽4嬖赬ML文件里格式大概是這樣的DetectJob Name工件A Preprocess TypeGray Params/ Detect TypeCircleMeasurement MinDiameter10.0 MaxDiameter20.0/ Detect TypeTemplateMatch ModelFile模板A.shm MinScore0.85/ Logic Name結(jié)果判定 RuleCircle_Size_OK AND Template_Score_OK/ /DetectJob新的檢測(cè)項(xiàng)目只需要在對(duì)應(yīng)位置增加或刪除檢測(cè)節(jié)點(diǎn)框架啟動(dòng)時(shí)會(huì)自動(dòng)解析并加載流程。界面上的圖像顯示窗口支持多分屏顯示可以同時(shí)展示原圖、處理后的圖像、測(cè)量結(jié)果圖和缺陷區(qū)域放大圖。我在實(shí)際項(xiàng)目里通常會(huì)引導(dǎo)客戶只關(guān)注最終判定界面減少誤操作。界面定制方面主窗口采用Dock布局模塊窗口可以自由拖拽停靠。新手在這里不要輕易改窗口布局代碼容易造成界面異常。我一般是在現(xiàn)有布局基礎(chǔ)上新增一個(gè)自定義頁(yè)面把客戶關(guān)心的參數(shù)集中放進(jìn)去比如產(chǎn)品名稱、節(jié)拍時(shí)間、當(dāng)日產(chǎn)能、良品率和停機(jī)原因。5.3 從Demo到產(chǎn)線部署還差的最后一公里把Demo程序跑通、在實(shí)驗(yàn)室里能檢測(cè)出工件缺陷距離產(chǎn)線穩(wěn)定運(yùn)行還差很多事。根據(jù)我的交付經(jīng)驗(yàn)需要重點(diǎn)關(guān)注這幾個(gè)方面。數(shù)據(jù)管理要考慮的比較多??蚣芤烟峁┍镜氐腟QLite數(shù)據(jù)庫(kù)用于記錄檢測(cè)記錄但產(chǎn)線上往往需要對(duì)接MES系統(tǒng)將每件產(chǎn)品的檢測(cè)數(shù)據(jù)實(shí)時(shí)上報(bào)??蚣茴A(yù)留了數(shù)據(jù)上報(bào)接口通過HTTP接口把結(jié)果傳輸給MES。傳輸失敗時(shí)要有本地緩存和自動(dòng)重傳機(jī)制否則產(chǎn)品追溯鏈條會(huì)斷。權(quán)限管理也是容易被低估的一項(xiàng)。產(chǎn)線操作工不應(yīng)該能修改檢測(cè)閾值??蚣苣J(rèn)提供了管理員、工程師、操作員三級(jí)權(quán)限需要確認(rèn)每個(gè)賬戶的權(quán)限范圍。這會(huì)給項(xiàng)目增加一點(diǎn)交付工作量但能避免很多“產(chǎn)品明明不合格卻被操作員改參數(shù)變合格”的隱患。軟件運(yùn)行日志和自動(dòng)重啟機(jī)制也是從實(shí)驗(yàn)室到產(chǎn)線的關(guān)鍵項(xiàng)??蚣苤С挚撮T狗機(jī)制如果程序意外退出自動(dòng)拉起并重啟檢測(cè)流程同時(shí)保留異常前后的日志信息。工控機(jī)長(zhǎng)時(shí)間運(yùn)行偶爾會(huì)有內(nèi)存泄漏或硬件掉線導(dǎo)致程序崩潰沒有這個(gè)機(jī)制產(chǎn)線停一次就損失一次。6. 我在這套框架上實(shí)際踩過的幾個(gè)坑6.1 圖像采集回調(diào)里的圖像格式陷阱第一個(gè)比較典型的坑是相機(jī)采集回調(diào)里的圖像格式與框架算法模塊的圖像格式默認(rèn)假設(shè)不一致。部分相機(jī)默認(rèn)輸出的是BGR格式但框架內(nèi)部算法模塊默認(rèn)使用灰度圖。如果直接拿彩色圖去做模板匹配算法算子會(huì)多做一次格式轉(zhuǎn)換雖然也能出結(jié)果但整體周期變長(zhǎng)且某些算子對(duì)彩色圖處理結(jié)果不一致。解決辦法是在相機(jī)適配類的初始化參數(shù)中明確指定輸出格式為灰度圖或Bayer轉(zhuǎn)灰度這一步盡量在硬件采集環(huán)節(jié)完成而不是在算法處理前臨時(shí)轉(zhuǎn)換。這樣既能減少CPU開銷也能保證算法的輸入一致性。6.2 機(jī)械手定位項(xiàng)目中標(biāo)定板與相機(jī)高度的優(yōu)先級(jí)機(jī)械手定位項(xiàng)目里精度問題十有八九出在相機(jī)安裝高度與標(biāo)定平面的差異上。有些項(xiàng)目為了節(jié)省空間把相機(jī)傾斜安裝或者放在工件平面上方比較近的位置標(biāo)定時(shí)用一塊很薄的標(biāo)定板實(shí)際抓取時(shí)工件卻有一定高度。這種情況下即便標(biāo)定算得再好也會(huì)因?yàn)橐暡钤韼矸€(wěn)定的位置偏差。處理方式有兩種一是保證標(biāo)定平面與抓取平面的高度基本一致這是最穩(wěn)妥的二是通過框架里的“高度補(bǔ)償”功能測(cè)量出相機(jī)安裝高度與抓取平面高度的差值在輸出坐標(biāo)時(shí)增加對(duì)應(yīng)的像素偏移補(bǔ)償量。第一種方式優(yōu)先采用第二種是補(bǔ)救手段。在高精度項(xiàng)目中相機(jī)安裝支架的穩(wěn)固性幾乎決定了項(xiàng)目的上限。6.3 長(zhǎng)時(shí)間運(yùn)行時(shí)畫面卡頓的排查思路有客戶反饋設(shè)備連續(xù)運(yùn)行幾個(gè)小時(shí)后畫面刷新變得很慢操作延遲明顯。檢查之后發(fā)現(xiàn)是圖像顯示窗口的緩沖區(qū)沒有及時(shí)清理每拍一張圖就把Bitmap對(duì)象加入列表運(yùn)行幾小時(shí)后圖形對(duì)象內(nèi)存占用越來越大??蚣芾镫m然已經(jīng)實(shí)現(xiàn)了雙緩沖顯示但還沒有加入顯示列表的自動(dòng)清理邏輯。我的解決辦法是在圖像顯示控件的刷新邏輯中加入一幀覆蓋機(jī)制——新圖像到來時(shí)直接替換當(dāng)前顯示圖像析構(gòu)舊的Bitmap而不是追加到列表中。同時(shí)用定時(shí)器定期清理歷史結(jié)果縮略圖避免縮略圖控件對(duì)象堆積。修改后設(shè)備連續(xù)運(yùn)行一整天內(nèi)存曲線平穩(wěn)。這個(gè)坑說明視覺框架這類長(zhǎng)期運(yùn)行的軟件內(nèi)存管理的優(yōu)先級(jí)一定要放在功能開發(fā)之后立刻處理不能等到現(xiàn)場(chǎng)出了問題再補(bǔ)。7. 這套框架適不適合你以及后續(xù)可以怎么擴(kuò)展拿到這套源碼之后可以先對(duì)照自身的項(xiàng)目情況做判斷如果公司準(zhǔn)備投入機(jī)器視覺方向團(tuán)隊(duì)想建立統(tǒng)一的視覺開發(fā)平臺(tái)這套框架作為底座是值得投入時(shí)間去研究的如果是個(gè)人學(xué)習(xí)視覺開發(fā)理解它的分層思路和模塊封裝方式也是一種快速進(jìn)步的方式。它不能替代Halcon的深入算法能力也無(wú)法覆蓋深度學(xué)習(xí)的模型訓(xùn)練但它提供了一個(gè)有序的工程容器讓你的算法能力能真正在產(chǎn)線上穩(wěn)定落地。順著這個(gè)源碼繼續(xù)擴(kuò)展有三個(gè)方向值得考慮。第一是算法層面接入深度學(xué)習(xí)推理框架把傳統(tǒng)視覺解決不了的復(fù)雜缺陷交給分類模型處理形成傳統(tǒng)算法與深度學(xué)習(xí)優(yōu)勢(shì)互補(bǔ)第二是增加多相機(jī)并行處理能力在框架里引入多線程流水線調(diào)度讓不同工位的相機(jī)同時(shí)采集和處理節(jié)拍能顯著提升第三是構(gòu)建數(shù)據(jù)看板和遠(yuǎn)程運(yùn)維模塊把各條產(chǎn)線的視覺檢測(cè)數(shù)據(jù)實(shí)時(shí)上傳到服務(wù)器在辦公室就能看到全局良率和故障分布。這些擴(kuò)展方向框架都有合適的接口承接二次開發(fā)的工作量完全可控。我個(gè)人的體會(huì)是好的視覺框架源碼的稀缺性其實(shí)不在算法有多先進(jìn)而在于它把那些重復(fù)性高、容易出錯(cuò)、又不得不做的事提前做完了。把時(shí)間花在處理痛點(diǎn)上而不是從零開始搭地基這才是源碼帶給項(xiàng)目最實(shí)際的價(jià)值。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亚洲免费精品一区| 丝袜天堂| 国产女人与拘做受视频免费| 亚洲激情色片| 91粉嫩萝控精品福利网站_精品影音先锋国| 情色图区| 国产蜜臀精品一区二区尤物| 美女主播色欲91抠b在线播放| 天堂俺去俺来也www久久婷婷| 欧美色日| 亚洲中文字幕乱码无码一区二区 | 色踪合AV| 色综合潮| 按摩中文字幕| 三级网色| 欧美福利视频啊啊啊啊| 亚洲清纯唯美| 青青草五月天| 欧色性第一页| 9精品在线| av资源在线观看少妇| 国产极品精品美女视频| 欧美一级A一级a爱片久久| 91免费看一区二区三区| a一区二区三区乱码在线| 午夜福利一区二区三区四区五区色婷婷| 加勒比大香蕉视频在线| 深夜国产一区二区三区在线看| 农村女一级毛卡片| 青青久操| 色九九九| 精品久久青青草| 激情五月天视频| 国产精品嫩草久久久久| 欧美日本久久精品一区| 婷婷深爱五月| 成人亚欧免费视频| 欧美αv.com| 东北女人操逼| 东京热男人的天堂| 欧美天天射| 激情开心五月天| 五十路六十路七十路熟婆| 加勒比av官网在线| 91草草草| 欧美情色男人的天堂| 成 人 影视 一区 二区 三区 四区| 亚洲第一无码播放立川理惠| 国产福利av精彩对白| 国产精品干干干| 国产精品亚洲无码| 午夜福利视频在线一区| 国精精品无码一二三区水多多| 久操91视频| 91色插| 久久精品91| 大屁股熟女一区二区三区| 东北老女人的激情视频| 精品176精品2| 五月天人妻综合| 台湾大香蕉99热| 97 九色| 欧美激情久久久久| 人人操天天爽| 欲色啪| 亚洲中文字幕久久无码精品| 欧美亚洲系列| 夜夜草我| 新婚人妻扶着粗大强行坐下| 亚洲综合九九| 日韩熟女精品无码专区一区二区 | 蜜臀AV午夜精品久| 精品欧美А∨无码黑人大荫蒂| 日本视频在线中文字幕| av一区二区三区四区| 国产9 9在线 | 亚洲| 一级人妻性爱视频| 久久婷婷色| 婷婷99| 男人天堂.AB| 日欧毛片久久| 操逼国产免费| 密桃99999| 一区二区三区四区久久视1| 色网综合网| 一本色道久久综合亚洲二区三区| 色97干| 亚洲资源站| 国产第12页| 亚洲av淫乱| 9久综合网| 欧美永久激情一区二区| 怡春苑东京热| 亚洲熟女诱惑| 激情综合网五月婷婷五月天| 五月婷婷丁香六月| 暴力av在线| 免费a v| 嗯嗯嗯啊啊啊在线免费观看| 婷婷15月天青娱乐| 亚洲天堂另类| αⅴ天堂| 久操视频免费在线观看| Julia Annxxxxx| 久久超碰97| 看黄片视频免费| A片 AV一级在线播放观看免费 | 久久久久国产精品喷潮免费观看臀 | 国产精品久久久久久高清无码免费看| 18禁超污无遮挡无码免费网| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 亚洲天堂一区二区久久| 思思热影视| 抽查国产福利主播| 亚州男人天堂| 操91| 91制服丝袜| 99在线免费公开视频| 婷婷在线视频| 天天性射网| 青娱乐福利99| 美女露胸露尿口| 欧美日日人人天天| 国产乱伦性爱AV| 混色激情av| 久久妇| 八戒午夜福利理论片| 日韩人妻资源在线看| 亚洲精品久久久久久| 激情抓乳插进去啪啪啪日韩 | 日韩人妻精品中文字幕| 国产又黄又粗又猛大片| 96精品在线| 亚欧操逼片在线观看| 国产 亚洲 丝袜 制服| 97玖玖超碰| 久久久熟女一区| 91精品人妻偷情| 无码天天操| 久久大线蕉一区| 国产精品播放| 丝袜狠狠草尤物人妻av91| 大香蕉综合网| 国产精品青青草| 四虎精品一区二区| 热久久九九热| 免费一级欧美片片线观看| 欧美色女人| 91久久99久久91熟女精品| 激情第四色| 色就色综合| 久久人妻四季| 亚洲欧美高清无码| 美女诱惑在线一区| 久操凹凸视频| 青青青艹在线视频| 自拍鲍鱼一区在线高清观看免费| 久久线上视频免费看| 欧美精品999| 精品无码产区一区二| 久久久久久精品免费看A级| 色五月天AV| 午夜操逼不卡| 麻豆av一区二区| 久久香蕉影院| 青娱乐福利99| 97精品一区| 五月丁香啪| 丰满少妇一区二区三区免费看| 密桃99999| 99re这里只有精品9| 激情五月天综合网| 91成人高清在线观看| 午夜AV污污污| 日韩另类色图| 欧美成人一级免费电影| 91成人无码| 久久国模av| 一区三区啪啪| 手机在线中文字幕国产 | 亚洲综人网| 人妻激情偷乱视频一区二区三区 | 亚洲精品 欧美精品| 人、人、摸,人、人、草| 色香综合| 国产精品久久伊人| 屁股久久久久久久| 又黄又爽在线观看视频| 国产女性无套 免费观看| 亚洲自拍青操视频| 一牛影视久久久一区二区三区| 福利视频一区二区微拍| 男人的天堂 在线一区| 美女网站黄页| 黄色成品网站| 大香蕉亚洲中文| 1024人妻熟女一区二区三区| 日韩av电影成人在线| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 大香蕉中文201| 亚洲素人网| 日韩无码专区| 国产美女mm131爽爽爽爽| 放黄片放3级黄片没穿衣服| 91精品91久久久久77777| 欧美精品人妻视频| 精精夜夜| 亚洲日韩一区电影| 亚洲精品日韩国产欧美| www亚洲免费| 男人天堂.AB| 成人综合久久精品色婷婷| 强奸乱伦AV网址| 色妇综合网| 成人A片男人的天堂| 国产剧情AV不卡在线观看| 国产后入| 凹凸视频在线一区二区| 久久久久久性爱免费视频| 91欧美丝袜| 97日视频| 婷婷探花久久精品一区| 青青草玖玖爱| 欧美偷偷网| 日日妻色网| 磁力99AV| 尤物视频偷拍免费| 亚洲偷91色| 国产精品久久久九九九| 麻豆 欧美 日韩| 蜜桃久久综合视频| 婷婷五月天色网| 六月婷婷综合| 97久久久网站| 欧成人精品H无码| 欧美日韩操操操| 久久伊人大香蕉| 强奸乱伦av电影| 91操人| 操我无码| 殴美性色a级欧美| 日本熟妇熟色97一本在线观看| 麻豆久久久一区二区| 开心婷婷五月| 亚洲图片偷拍视频区| 欧美,日韩,亚洲视频| 人人操人人摸人人看人人干| 99操| 国产剧情AV不卡在线观看| 男人的天堂2019| 一级乱伦网站| 好吊色一区| 国产专区第一页| 超碰在线综合97| 人人干人人搞人人摸| 老熟乱一区二区三区四区| 欧美色婷婷| 人人澡人人干| 亚洲……91| 女人精品内射国产99| 亚洲色91C| 亚洲无码成人精品| 老熟女阿 国产91| 久久国产精品一级二级三级| 国产精品欧美日韩久久| 超碰资源亚洲97| 无码自拍SM| 亚洲欧综合另类无码一区| 久久精品无码不卡| 亚洲,欧美,综合网| 色网亚洲人| 精品人妻一区二区乱码一区二区| 欧美专利1区2区3区4区5区免费| 精品国产乱码久久久久久口爆网站 | 日本一区二区不卡精品| 白丝被操91| 国产女人视频三四五区| 日韩激情啪啪| 国产亚洲精品一区二区三区| 日本一区二区中文字幕久久| 熟妇一区二区| 欧美性暴力猛交| 99久久9| 亚码激情| 最新欧美色网| 天综合网| 天天躁日日躁AAAAXXXX国产 | 亚洲AV永久无码一区仙野| 日韩操p| 色牛aV| 国产精品伦理| 美女黑人91神马| 欧美在线官网| 日韩久草| 夜夜夜夜久久久久| 女欧美一区二三区| 韩国黄片aaaa| 啊啊啊好湿久久| 校园春色 亚洲| 久久大精品乱码视频人妻熟女| 超碰日韩美妻| 国产在线播放成人免费| 亚洲激情网| 99热导航| 91伊人| 综合操逼| 天天内射| 亚洲欧美碰碰| 丁香婷婷久久| 久久久久久久久久久999| 老熟乱一区二区三区四区| 国内精品嫩模A∨私拍小视频| 天天干天天干天天干| 97超色| 黄色片A级一区二区三区| 久久婷婷热| 亚洲自拍青操视频| 香蕉人人操tv| 操少妞在线视频| 国内毛片四区| 天天干,夜夜爽| 三上制服丝AV| 欧美亚洲一级在线观看| 午夜精品99久久久久传媒| 97视频在线免费观看| 午夜舔阴达高潮视频免费看| 久久久爆乳翘臀一线天伦理视频| 国产精品激情久久久久久久| 国产av白丝| 99999久久精| 欧美人人曰人人操人人射射| 精品国产乱码久久| 久久嫩草| 偷拍 亚洲 欧美| 欧洲大香蕉| 欧美亚洲国产91在线| 色婷婷丁香五月| 久久永久无码人妻视频| 久久精品国产亚洲AV无码电影| 亚洲日韩精品在线播放| 女人高潮抽搐喷水视频网站| av日韩国产一区二区| 91爱综合| 午夜爽爽爽在线观看永久入口姬片| 禁止观看美女黄| 淫荡少妇免费| 日韩在线电影| 欧美日韩青操| 国产一区二区三区影片| 波多野结衣之双飞调教在线播放| 亚洲 欧美 另类 日韩 人妻一区| 无套内射性感少妇视频| 伦激情人妻另类人妻| 好爽要喷了| 狠狠搞 亚洲91| 欧美专区日本专区| 国产二区三区免费视频| 天天影视综合色| 亚洲城人男人的天堂| 蜜臀久久99精品久久久久| 夜精品久无码| 美腿色图| 天天欧美色| 日本操逼视频导航| 黄色香蕉视频网站一区| 另类欧美色| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 放黄片放3级黄片没穿衣服| 欧美激情色婷婷花野真衣一区二区 | 精品视频一区二区| 欧美精品宗合| 欧美色人| 好涩综合| 97超碰超| 四虎国产精品永久在线囯在线 | 级品肉射| 欧美青青草视频| 久久久精| 人妻日日干| 八人操人人摸人人看| 国产一区二区视频在线播放| 精品国产片亚洲一区| 欧日a| 99视频内射三四| 婷婷丁香六月| 日欧美色| 超碰视97中文| 五月天人妻综合| 日日摸日日碰夜夜爽视频| 黄片www视频免费| 久综合国内精品自在自线| 亚洲精品xxx| 伊人亚洲国产一成人久久精品,久久| 中文字幕精品丝袜| 亚洲国产天堂| 午夜超爽| 大香网伊人久久综合网eew| 大香蕉啪啪啪啪在线| 伊人久久大香线蕉无码| 快播久久人人aV| 日韩无码视频黄色| 午夜精品久久久久| 欧美性爱日韩高清| 北条麻妃99精品青青久久| 我想要啊 啊 啊| 久草色在线观看| 2019精品国产无码成人| 精品久久久中文字幕不| 夜夜春夜夜操| 国产女人成人精品视频| 久久久麻豆精品| 精品一区二区三区四区外站| 国产九九久久久精品| 人妻熟女午夜精品在线| 丝袜美腿诱惑亚洲欧美视频在线观看 | 日本久久999| 亚欧免费观看视频| 欧美中字二区| 国产亚洲深夜激情| 日韩三A大片在线观看| 99色婷婷中文字幕乱色| 激情99| 精品中文一区二区| 国产在线播放成人免费| 九九无码视频| 欧美性爱一区二区三区| 1024亚洲中文字幕久在线看片你懂的 | 久久久久久波多野吉衣高潮| 中国一级特黄大片护士| 97一区二压| 国产大陆天天艹| 91高潮喷水美女| 九九热免费视频| 八戒无码国产午夜福利| 十八禁一区二区无码观看| 国产女人与拘做受视频免费| 九九九久久久| 视频不卡中文字幕| 久久婷婷一区二| 狠狠操狠狠操操| 你懂的在线观看区国产| 中文区中文字幕免费看| 91天射| www黄片免费看com| 久久系列| 超碰碰小说97| 91九久| 五月婷婷综合在线| 欧美天天弄| 91欧美巨乳| 麻豆黄四叶草网站| 人人超碰在线观看黄| 九九九网站| 99999精品视频| 九九九九热| 亚洲欧美校园| 这里只有97精品| 中字一区| 中文字幕乱妇免费视频| 欧美人妖内射| www国产精品| 极品销魂美女一区二区| 99热| 国产A v无码专区| 国产 三级自拍| 五月天激情国产综合婷婷婷| 天天爽天天爽| 亚洲第一页色| 久久久久久久久久久97| 超碰97资源大奶| 1204av韩国| 大香蕉92| 日本孕妇一区二区视频操逼免费看 | 蜜臀一区二区三区在线 | 啊啊啊想要| 国产精品免费1区2区视频| 强奸乱伦麻豆| 国产日本熟女顶级一区二区三区视频| 国产女人与拘做受视频免费| 另类TS人妖一区二区三区| 日本成人A片网站| 欧美日韩97| 夜夜精品视频一区二区| 四虎国产精品永久在线囯在线| 东京热男人天堂| 秋霞鲁丝午夜无码一区二区三| 啊啊好多水| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 人人模人人看| 国产成人无码网站在线视频| 精品97久久综合| 中文乱码字幕观看视频| 国产综合永久精品日韩鬼片| 亚洲色图欧美色图制服丝袜| 天天91~综合入口| 色播丁香| 99精品网| 丰满少妇高潮无码| 亚洲三级网址久久最新| 最新av在线| 另类av综合久久| 99热 按摩 日韩| 欧美日韩欧美| 国产熟妇 码视频户外直播| 精品成人无码| 日韩成人网址| 3P乱轮视频| 天天综合精品| 亚洲激情色片| 91高清欧美| 久久久97| 国桃视频产巨乳精品一区二区在线| 人人摸人人干人人拍97| 五月婷婷丁香中文字幕| 亚洲春色激情小说| 玖玖爱伊人玖玖爱| 91狠狠综合| 一级AV性爱| 激情小说成人日本无码一| 婷婷激情五月综合| 亚洲欧美变态| 做爱A级亚欧| 狠狠热这里都是精品| 日夜尻逼网| 自拍偷拍 日韩欧美| 欧美v亚洲v日韩v最新在线二区 | 中文字幕av久久爽Av| 91肉丝| 麻豆国产96在线| 色女99一级片在线观看| 天天草AV| 欧美刺激色黄片免费看| 4虎在线观看| 欧美综合区| 欧美日日人人天天| 天天拍天天操| 亚洲九九视频| 亚洲制服aⅴ中文字幕| 欧洲免费一区二| 丰满人妻区一区二区三| 熟妇视频一区二区三区在线观看| 乱性AV| 天天躁狠狠躁av| 尹人免费观看视频在线| 97久久精品不卡| 自偷自拍的亚洲视频| AV一二区| 天天日天天舔东京热 | 禁片 高清 在线观看视频网站| 亚洲无码精品AV久久久| 熟妇激情| 一级特级aaaa毛片免费观看 | 婷婷啪啪| 一区二区三区四区在线不卡| 精品毛片久久久精品毛片| 五月丁香六月综合缴清无码| 大香蕉在线视频重口味毛片在线| 久久综合18p| 自拍偷拍第26| 怡红院成人视频| 欧美久久婷婷| 97天天摸天天碰| A片 AV一级在线播放观看免费| 超碰成人人人爽人人爽| 清纯唯美亚洲另类| 东北女人| 97爱免费插| 日韩欧美亚洲一区二区三区影院| 91精品久久久久五月天精品| 啊啊啊操死我了| 国产青一二三| 欧美1727免费观看视频| 任你草| 精品国产丝袜一区二区三区乱码| 国产深夜福利| 久久久国产精品亚洲精品| 青青操轻轻| 国产成人五月天丁香花| 精品一区二区三区四区外站| 日韩欧亚太美不卡| 五月综合视频| 一区二区三区 日韩欧美| 中文字幕99999| 91精品丝袜久久久久久| 亚欧操逼片在线观看| 91久热这里只有精品| 丰满精品人妻少妇久久字幕| 久久久久精| 色色色999| 色婷婷五月综合激情中文字幕| 秋霞曰韩R级| 天天躁日日躁AAA片李宗瑞| 欧美精品一区二区少妇免费A片| 亚洲国产尤物yw在线观看| 粉嫩av在线一区二区| 欧美成va视频网站| 午夜精品久久久久久久男人的天堂| 99热色精品| 国产精品小视频一区二区三区| 东北女人的毛片| 白丝1区2区3区| 久久6热精品99视频| 91啦人妻| 国产一区二区在线播放,久久亚洲精品中文字幕第一区,亚洲精品在线中文字幕视频 | 国产v片在线免费观看| 国产精品高潮久久久无码| 青青草色AV| 91天天| 色欲无码人妻日韩欧美精品| 99爱精品| 另类图片五月天| 国产美女销魂在线观看不卡| 色综合色| 久肏视频字幕| 成全在线观看免费观看| 久99久视频| 伊人成人中文字幕久久网| 97香蕉人人乳| 边做饭边操逼逼| 综合影院永久入口国产| 一牛影视久久久一区二区三区| 91高潮| 色婷婷五月综合激情中文字幕| 天天做天天爱天天爽| 欧美日韩97在线| 天天躁日日躁成人字幕aⅴ| 99日精品欧美国产| 亚欧美综合网。| 一区二区日韩欧美久久| 欧美性爱视频免费一区一A| 97超碰69| 三级日本一区二区三区| 日韩少妇丰满亚洲| 欧美女同在线| 日本视频一区二区三区| 中文字幕人乱码中文字的预防方法 | 麻豆乱码久久精| 久久久久白虎| 免费看毛片操穴| 亚洲男人久久综合天堂| 久久久久久久久久精| 亚洲成a人片在线观看中文!!!| 蜜臀久久99精品久久久久免费观| 免费国产电影一区二区| 亚洲偷91色| 色综合色综合网| 亚洲密乳AV| 久久超碰97中文字幕| 十八禁的黄污污免费网站| 天天肏夜夜肏| 艾草av| 亚洲一区二区性爱电影| 人妻天堂网| 啊啊啊要高潮了| 亚洲情色91| 欧美丝袜制服久久| 亚洲精品自拍| 少妇熟女一区二区三区| 熟女欧美日韩综合婷婷| 激情六月婷婷| 伊人网免费视频| 亚洲欧美电影| 清纯唯美亚洲综合| 久久久久久久78| 日本 欧美 亚中文字幕| 亚洲欧洲国产综合av| 成人av福利在线观看| 天天综合91入口| 99久在线精品99re8a| 综合日本女人伊人| 女欧美一区二三区| 精品一区二区啪啪啪| 啊啊好多水| 97超碰精品图片| 久久久夜夜嗨免费视频| 美女91在线观看| 拍拍拍拍大尺度黄色三级片拍拍拍拍拍照 | 日韩中文字幕熟妇人妻| 玖玖综合.com| 婷婷久久久| 成人免费不卡在线视频| 五月天婷婷在线看| 爱妃国产亚洲视频中文字幕| 欧美精品23| 97香蕉碰碰人妻国产欧美| 日日碰狠狠添天天爽超| 人人扣人人操| 另类视频在线| 久草视频在线视频在线视频在线观看| 国产区日韩区在线观看| 麻豆国产视频精品观看| 亚洲无吗在线视频| 操逼操操操91| 99热啪啪| 中文字幕91综合| 超碰97资源网亚洲| 超碰碰小说97| 日韩伦理视频| 亚欧国产无码精品在线| 被男人添B超爽视频| 国人欧美精品一区二区| 99热这里只有精品99| 亚洲色五月| 久久久久久国产精品| 岛国视频一二三区| av天堂天堂av日韩| 99色日| 国产九月婷婷| 亚洲高清色综合| 久久婷婷国产一区二区色| 狠狠躁伊人中文字幕| 亚洲高清无码AAA久久久精品| 亚洲av性爱电影| 免费国产电影一区二区| av天堂手机版追回| 婷婷三区| 韩日欧亚a级| 91超级碰| 欧美色蜜桃97| 裸体美女免费看网站青草| 97精品久久久久久久| 96精品久久| 国产 日韩 另类 视频一区爱| 啊啊啊啊啊好大好舒服想要| 亚洲欧美在线丝袜| 综合一区中亚洲国产成人综合精品| 欧美精品91| 91天天综合日韩欧美| 久久精品国产精品亚洲艾通辽熟妇| 亚洲精品久久一区二区三区蜜桃臀| 国产高清吃奶免费视频网站| 神马视频久久久久久| 久久东京热久久| baisiav| 亚洲色性| 久久久久久久久久久97| 思思热在线视频免费| 综合熟女| 思思热在线视频在线| 麻豆婷婷成人一二三| 一本一道久久综合久久| 亚洲无992tv| 91久久婷婷| 快灬快灬 一下爽蜜桃在线观看| 日本高清电影欧美色图| 九月丁香婷婷色| 九九热av| 大香蕉宅男伊人| 日韩欧美经典在线观看| 久久久亚洲熟妇资源| 亚洲精品色| 亚洲av影音先锋| 精品一区二区三区免费古装毛片香港三级日本三级人妇 | 精品999999| 极品后入免费视频| 伊人AAA| 天天激情综合站| 一牛一区二区三区久久| 小情侣高清国产在线视频| 热热色色综合| 久久亚洲不卡一区二区三区| 人妻少妇色综合| 日韩人妻中文视频| 亚洲色宗合| 深夜激情| 97超碰欧美手机在线| 五月丁香婷婷综合| 最新的亚洲无吗| 国产主播福利| 欧美激情1区| 色五月AV在线| daxiangjiao你懂的| 午夜啊啊| 久久无码精品| 欧美,亚洲,日韩,v,天堂,手机在线观看| 曰韩av中文字幕专区| 一本大道青青| 啊啊啊不要啊啊受不了了视频在线| 国产大学生高潮在线播放| 在线一道啪| 日本黄色大片一级视频免费麻豆| 欧美性爽xyxOOOO| 欧美人体性爱互联网第一页婷婷日本| 91亚洲影视| 蜜桃久久一区二区| 东京热天堂网| 白丝一区| 中文字幕中文字幕一区二区| 久久大香蕉| 亚州色交| 视频在线中文字幕| 国产99热| 国产精品蜜臀久久久久无码AV| 黄片免费日韩| 蜜乳AV网址| 口爆综合网| 亚洲淫色网中文| 97超碰色屌| 日韩精品电影| 久久精品超碰| 久久超碰国产一区二区三区| 国产成年女人免费视频播放a| 色色色色日本| 99爱精品| 国产二区三区粉嫩在线| 青青伊人久久| 国产偷人伦激情在线观看| 国产精品无码av| 亚洲av乱伦色图网站| 麻豆AV96熟妇人妻| 久久 国产 无码| 花野真衣| 理论久久婷婷网8| 在线人人人人人人精品超 | 性爱视频免费网址| 精品少妇后入一区二区三区四区人妻巨乳| 国产精品无码久久久久2025| 欧美综合自拍成人自拍第二十页| 超碰97在线中文| 中文字幕二区| 99色热国产视频精品| 青青网三级视频| 夜夜夜夜爽| 又粗又长又大国产不卡| 国产高潮AA片免费看| 老熟女阿 国产91| 黄色大片视频在线免费看| 一区二区三区 日韩欧美| 青青欧洲黑| 激情视屏国产乱伦强奸| 91 国产丝袜在线播放-百度| 久久久亚洲欧美综合| 加勒比伊人综合| 国产97免费视频| 97超级久久强资源| 国产一区自拍欧美日韩| 96久久久精品| 欧美在线官网| 精品毛片av一区二区| 天天日天天射天天干| 欧美一级久久久丰满| 亚州综合电影| 日亚韩精品视频二区三| 日韩中文字墓| 熟女一区二区| 亚洲中文字幕网| 日韩欧美亚欧在线视频| AV老汉| 久久精品中文字幕无码l| 亚洲AV色图一区| 五月天黄色av| 国产欧美日本亚洲精品| 都市激情人妻一区二区青青操视频| 中文字幕日韩人妻视频一区二区三区| 亚洲男人的天堂网| 欧美第38页| 操操逼操操逼操操逼逼| 国产suv精品一区| 精品久久青青草| 国产激情片在线观看| 三级日韩一区二区三区| 国产青青美女玩逼视频| 亚洲码专区| 好爽视频在线观看视频| 国产精品天干天干综合网麻豆| 天天综合亚洲综合| 97er欧美性| 亚熟在线| 97精品一二区| 日韩人成网站在线播放| 日韩欧美大片免费高清啪啪| 久久久女人| 天天爽夜夜欢视| 欧洲乱码一区二区| 亚洲欧美国产成人综合不卡| 国产精品久久久久久久AV大片| 性猛交| 男人的天堂2019| 97在线免费观看视频| 亚洲一区在线观看欧洲 | 亚洲国产福利视频| 96一区二区三区| 久久久四区| 久久只有精品| 激情抓乳插进去啪啪啪日韩 | 男女无套 免费网站| 999精品久久久久久久| 91色狼| 日本操逼二区| 五月丁香在线| 天天干,夜夜爽| 五月黑AⅤ| 亚洲AO在线| 91N综合在线| 亚洲精品国产拍免费91在线| 人妻欧美| 精品无码不卡视频| 九九碰九九爱97超碰| 成人女人国产| 嗯嗯啊啊亚欧精品| 大香蕉2017| 多毛小伙内射老太婆| 日韩AV片| 欧美亚洲宗合色性图| 欧美少妇色图| 在线观看综合精品亚洲| 黄色乱论网站| 四虎免费视频| 最新av网站在线观看| 日韩免费簧片| 婷婷视频在线免费观看| 一区二区你上我| 久久精品视| 日韩激情啪啪啪| 久久久9品一区二区三区| 天美传媒AV国产在线| 九九九不卡| 欧美三级中文字幕hd| 天操老女人| 国产精品麻豆成人av| 欧美78p| 国产风韵犹存熟妇三区| 日韩性爱1级片视频| 亚殴在线| 国产白丝精品在线观看| 乱精品一区字幕二区| 伊人宅男大香蕉 | 五月天激情综合网| 日本新免费二区三区| 美国日韩黄片| 中文字幕超碰CAO| 久久成人午夜精品影院| 97香蕉碰碰人妻国产欧美| 97这里只精品| 亚洲一区二区中文字幕| 免费超碰97久久| 激情看片网站| 亚洲国产精品成人综合| 少妇与黑人高潮在线| 黑人免费福利视频| 久久久九九| 色99视频| 亚洲国产精品无石码久久| 屌逼传媒| 高清无码在线播放网站| 97干色天堂| 久热大香蕉| 91精品微拍福利| 国产熟女一区二区丰满| 一起草三级AV电影在线观看 | AV中文字幕剧情1区2区3| 亚洲国产婷婷在线播放| 精…码一二三区| 素颜老阿姨乱情色| 中文乱码99| 免费伦费视频在线观看| 999国产精品999久久久久久| 91色综合激情| 亚洲天堂久久| av网站免费看| 综合网少妇| 啊啊啊不要啊啊受不了了视频在线| 国产91影院| 91精品人妻一区二区-全集完整版免费正片国语-B02AV | 老女人老91妇女老热女| aaa一级黄片| 中日韩久久久| 啪啪资源网| 日本精品网站在线中文| 99久久99久久免费精品蜜臀| 91老熟女老女人国产老太| 午夜福利精品| 家庭乱伦麻豆| 91搞逼视频| 亚洲性爱电影| 久久成人国产精品| 亚洲成人黄色在线观看| 亚洲无码 国产无码| 91美女视频直播| 射久久| 中文乱码字幕观看| 97爱综合| 日躁天天爽爽| 97超碰超碰| 乱伦a片视频| 97国产高清视频在线观看| 日本激情免费大片| 欧美日韩在线视频网站| 91热热色| 无码抄逼网| 人妻一区二区三区四区视频| 欧美高清91| 乱操乱伦AV| 操逼国产免费| 黄色AAAAA欧美| 91久久久久久久久18| 99热在线播放| 中文97国产| 久草在| 91超碰在线| 免费观看啪视频| 亚洲91av| 精彩久久中文| AVE乱伦| 五月天成人综合| 麻豆国产av网| 亚洲天天影视综合网| 97天天操| 国产动漫操逼视频| 久久久久国产| 囯戸精品高潮呻吟旡码| 丁香五月成人| 五月天精品| 日本成人A片免费看| 国产高清1234区| 亚洲熟女综合| 不卡在线观看视频| 亚洲欧美日韩免费电影| 97久久超碰日韩精品| 91东京热男人的天堂| 亚洲一区操| 大香蕉十区| 麻豆久久精品亚洲精品88| 女人被男人桶爽视频网站| 污到发麻的视频 国产| 日本亚洲嫩草影院啪啪| 精品免费视频国产一区| 97爱免费插| 日本乱人伦片中文三区| 熟妇人妻一区二区三区| 日本精品一区二区三区四区的功能| 国产精品成久久久久午夜午夜| 人人手机欧洲亚洲国产人妻| 精品99999| 99热99re超碰精品| ,成人免费啪啪视频| 超碰 国产熟女精品一区| 精品性爱一二三区| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 成 人 A V免费视频在线观看| 97色干| 九九九免费视频| 欧美色天堂网在线视频| 乱伦系列一区二区| 国产免费一区2区3区| 1二区9| 日韩熟妇二区| 欧美性爱免费短视频| 精品人妻一区二区三区蜜桃视频| 婷婷伊人綜合中文字幕小说| 日韩性爱啪啪视频| 东京热99999| 九九热免费国产视频婷婷伊人| 日本免费专区| 日韩视频中文字幕| 欧美性高潮在线| 超碰超碰95| 99热18| 亚洲色图8| 97爱b| 久久久久久久久久久久黄色| 亚洲精品第一| 国产福利视频精品视频| 97爱综合| 久久男人天堂| av天堂电影网| 九色黄站| 色路综合| 99re99在线视频| 色网在线| 色欧洲97| 欧美日韩亚洲电影| 91亚洲丝袜| 男人天堂2019亚洲| 六月色色| 天天影视综合网欧美精品| 欧美一区二区三区日韩| 欧美顶级黄色大片免费| 国产精品露脸在线观看| 免费观看成人www精品视频| 天天澡天天爽日日AV| 日韩性爱一级片| 美女写真| 久久社区一区二区三区| 久久东京伊人一本到鬼色| av在线免费一区二区| 亚洲精品国产精品乱码不99| 久久久久九九九| 少妇超碰在线| 亚洲综合有玛| 超碰在线97国产| 亚码人妻| 在线视频免费观看午夜| 国产精品视频自拍在线| 91九色首页| 国产偷仑| 亚洲久久天堂| 99久久久| 亚洲图片色图欧美另类| 欧美日本国产日韩激情视频| 亚洲天堂男人在线| 亚洲熟妇综合久久久久久| 久久久久久久九九九九九九| 欧美精品第3页| 综合一区二区影视| 一区二区三区美女超清| 欧美成人黄网色网站| 欧美日韩国产中文精品字幕自在自线, | 99综合视频一体| 精彩国产视频播放1区2区| 校园春色宗合网| 呦呦影院| 丰满少妇乱子伦精品无| 一个人在线看的黄色电影网站| 99操| 日韩精品在线放| 美腿色图| 午夜欧美精品久久久| 五月丁香社区婷婷日韩欧美精品影院| 国产丰满熟夫69mpp| 欧美熟妇精品黑人巨大91| 白丝1区2区3区| 加勒比av网| 亚洲日韩美女中文字幕乱| 国产精品天干天干综合网麻豆 | 欧洲精品二区| 黄色片,com| 欧美在线啊啊啊| 强奸国产在线| www.一本大99| 国产精品久久久久久照片| 国产精品suv一区| 一级特黄aaa大片在线观看成人一级片在线观看| 台湾佬激情综合| 中国黑人三级片网站上区| 亚洲自拍偷拍视频在线| 在线女人91| 蜜桃狠狠色伊人亚洲综合网站| 国产精品 久久久精品一牛| 久久久9视频| 日本αv| 伊人精品久久网站| 婷婷探花久久精品一区| 亚洲精品国语在线播放| 亚洲精品一区二区免费在线观看| 99ri视频| 国产成人欧美一区二区三区的国产| 亚洲精品亚洲人成人网| 97超碰人人模人人拍人人| 中文字幕视频一区视频二区| 久久久久久久久久久精| 男人的天堂2018东京热啪啪啪| 日比av无码| 亚洲AV免费在线观看| 中文字幕成人理论在线| 亚洲āv网址在线观看| 午夜精品久久久久久久第一页按摩| 午夜精品久久久99| 最新日韩黄片| 亚洲成人黄色在线观看|