免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

C# Basler相機(jī)采集實(shí)戰(zhàn):pylon SDK圖像獲取與避坑指南

C# Basler相機(jī)采集實(shí)戰(zhàn):pylon SDK圖像獲取與避坑指南 簡介C#結(jié)合Basler Pylon SDK實(shí)現(xiàn)相機(jī)圖像采集的完整示例工程主要面向機(jī)器視覺、工業(yè)檢測和自動化領(lǐng)域的C#開發(fā)者解決在Visual Studio環(huán)境下調(diào)用SDK完成相機(jī)枚舉、參數(shù)配置、連續(xù)抓幀與圖像處理的實(shí)際落地問題。壓縮包共76個文件大小約2.16MB核心包含8個C#源程序、6個DLL動態(tài)庫、9個可執(zhí)行文件另附軟觸發(fā)操作步驟講解圖、工程配置與說明文檔并可看到PylonLiveViewer輔助工具的工程記錄便于對照源碼理解每個環(huán)節(jié)的調(diào)用意圖。目前已有1412人學(xué)習(xí)下載。通過這套示例可系統(tǒng)掌握Pylon SDK在C#中的典型流程從TlFactory枚舉設(shè)備、創(chuàng)建相機(jī)對象到StartGrabbing啟動圖像流、通過WaitForFrame或回調(diào)獲取幀數(shù)據(jù)再到解析像素并釋放資源搭配軟觸發(fā)說明圖和可運(yùn)行程序能快速在真實(shí)相機(jī)上驗(yàn)證效果并基于自帶源碼二次開發(fā)適合使用Basler工業(yè)相機(jī)搭建視覺檢測系統(tǒng)的研發(fā)人員快速入門。1. C# 利用 Basler SDK 實(shí)現(xiàn)相機(jī)采集圖像這臺相機(jī)的坑我替你踩過了做機(jī)器視覺的上位機(jī)早晚要跟 Basler 打交道。不管是讀碼、定位還是表面檢測第一步永遠(yuǎn)是「把圖像穩(wěn)定地拿到內(nèi)存里」。Basler 官方給了 C 和 C# 的示例但真到自己搭工程你會發(fā)現(xiàn)照著示例抄都抄不順相機(jī)連不上、畫面黑屏、采集幾秒就卡死、回調(diào)線程里沒法更新 UI……這些我全遇到過。這篇筆記就是圍繞「C# 調(diào)用 Basler SDK 采集圖像」這條主線把從環(huán)境配置到圖像回調(diào)、從參數(shù)設(shè)置到多相機(jī)擴(kuò)展的完整落地路徑講清楚順帶把我踩過的坑按「現(xiàn)象→原因→解決」寫出來新手能照著跑通熟手也能避開幾個隱蔽的雷區(qū)。2. 采集前必須搞清楚的 Basler SDK 底層的概念pylon 的三種取圖方式2.1 為什么 Basler 官方推薦用 pylon而不是直接操作相機(jī)Basler 相機(jī)的 SDK 叫 pylon它不是一個簡單的驅(qū)動而是一套跨平臺的運(yùn)行時和 API 層。你寫的 C# 代碼不是直接跟 USB3 或 GigE 的傳輸協(xié)議打交道而是通過 pylon 封裝的Basler.Pylon程序集去操作相機(jī)。這種設(shè)計(jì)的直接好處是上層 API 穩(wěn)定換相機(jī)型號、換接口USB3 換 GigE時代碼基本不用重寫。另一個現(xiàn)實(shí)原因是 Basler 的 pylon SDK 提供了完整的相機(jī)配置包.pfs文件、像素格式轉(zhuǎn)換、丟包統(tǒng)計(jì)等能力。如果你只用廠商給的dotnet示例而不裝完整 pylon Runtime雖然能跑但一旦碰到帶寬問題或者多相機(jī)同步就會力不從心。所以我的建議是老老實(shí)實(shí)裝完整版 pylon開發(fā)模式下安裝時會自動注冊Basler.Pylon.dll到 GAC工程里直接添加引用就好。2.2 硬件觸發(fā)與軟件觸發(fā)選錯觸發(fā)源圖像始終不來Basler 相機(jī)默認(rèn)是連續(xù)采集Continuous但很多視覺項(xiàng)目需要外觸發(fā)PLC 給一個信號相機(jī)拍一張。pylon 里觸發(fā)源設(shè)置是關(guān)鍵常見參數(shù)如下// 設(shè)置軟件觸發(fā)模式 camera.CameraOpened OnCameraOpened; camera.Open(); // 觸發(fā)模式Off / On camera.Parameters[PLCamera.TriggerMode].SetValue(PLCamera.TriggerMode.On); // 觸發(fā)源Software / Line1 / Line2 camera.Parameters[PLCamera.TriggerSource].SetValue(PLCamera.TriggerSource.Software); // 觸發(fā)激活方式上升沿 / 下降沿 camera.Parameters[PLCamera.TriggerActivation].SetValue(PLCamera.TriggerActivation.RisingEdge);這段代碼里TriggerMode決定是否啟用觸發(fā)TriggerSource選擇觸發(fā)源TriggerActivation只在硬件觸發(fā)時使用軟件觸發(fā)下可以不關(guān)心。常見翻車點(diǎn)是把TriggerSource設(shè)成了Line1但實(shí)際沒接信號線相機(jī)一直不出圖很多人第一反應(yīng)是代碼問題查了半天才發(fā)現(xiàn)是硬件沒接。軟件觸發(fā)模式下執(zhí)行camera.ExecuteSoftwareTrigger()才會拍一幀適合調(diào)試或離線測試。硬件觸發(fā)則不用調(diào)這個方法信號到來時相機(jī)自動曝光并傳輸圖像。2.3 三種取圖模型即時 Grab、循環(huán) Grab、回調(diào) Grab怎么選pylon 在 C# 里給開發(fā)者提供了三種取圖模型InstantCamera的GrabOne、GrabLoop和Grab回調(diào)機(jī)制。很多人拿官方示例直接改結(jié)果發(fā)現(xiàn)有的模型適合 UI 交互有的適合高吞吐選錯模型后面會很痛苦。GrabOne單次采集阻塞式適合低頻率、簡單測試但每抓一幀都要重新申請緩沖速度上不去。GrabLoop在后臺線程里循環(huán)抓圖ImageGrabbed事件把每一幀推出來適合實(shí)時顯示和檢測。Grab回調(diào)最貼近底層自己管理緩沖和回調(diào)適合需要精確控制圖像流或多相機(jī)并行的高級場景。最穩(wěn)妥的落地路徑是調(diào)試用GrabOne產(chǎn)品用GrabLoop。GrabLoop里每幀回調(diào)都會拿到IGrabResult你需要復(fù)制圖像數(shù)據(jù)不能在回調(diào)里直接保存Bitmap再跨線程使用。3. 跑通 Basler 相機(jī)采集的最小 C# 工程從引用到圖像 Bitmap3.1 創(chuàng)建工程并引用 Basler.Pylon 的正確姿勢新建一個 .NET Framework 4.7.2 或 .NET 6 的 WinForms/WPF 工程都可以。Basler 官方 pylon 6.x 和 7.x 對 .NET 6 的支持略有差別但核心 API 一致。添加引用的方式我一般這樣處理在解決方案里右鍵「添加引用」找到Basler.Pylon.dll默認(rèn)路徑在 pylon 安裝目錄的bin\DotNet下同時添加Basler.Pylon.USBCamera.dll或Basler.Pylon.GigECamera.dll取決于你相機(jī)接口類型。強(qiáng)簽名問題要注意Basler 的程序集是強(qiáng)命名的如果你的工程是 AnyCPU 在某些 32/64 位混雜環(huán)境里可能報BadImageFormatException。解決辦法很簡單把平臺目標(biāo)固定為 x64。我們產(chǎn)線上全是 USB3 的 Basler所以工程一律 x64。PropertyGroup PlatformTargetx64/PlatformTarget /PropertyGroup這條配置在.csproj里加上能避免很多莫名奇妙的互操作崩潰。3.2 枚舉相機(jī)為什么你總是找到 0 臺設(shè)備用CameraFinder枚舉相機(jī)是最先要做的事。很多新手栽在「相機(jī)明明插上了枚舉卻返回空」。我的經(jīng)驗(yàn)里80% 是 USB3 驅(qū)動問題特別是 Windows 把設(shè)備識別成了 UVC 相機(jī)而不是 Basler 專用設(shè)備。// 枚舉所有可用相機(jī) ListICameraInfo cameras CameraFinder.Enumerate(); if (cameras.Count 0) { Log(未找到 Basler 相機(jī)請檢查 USB3 線纜和驅(qū)動); return; } // 取第一臺相機(jī)并打開 ICameraInfo first cameras[0]; using (Camera camera new Camera(first)) { camera.Open(); // 這里可以讀取相機(jī)型號和序列號 string model camera.Parameters[PLCamera.Model].GetValue(); string serial camera.Parameters[PLCamera.DeviceSerialNumber].GetValue(); }這里CameraFinder.Enumerate()不是緩存結(jié)果每次調(diào)用都會重新掃描總線。如果掃描不到先看 pylon Viewer 里能不能看到相機(jī)再看驅(qū)動是否安裝了 pylon 的專用驅(qū)動。在設(shè)備管理器里Basler USB3 相機(jī)應(yīng)該顯示為「Basler USB3 Vision」類如果顯示的是USB Video Device那說明驅(qū)動沒有正確接管卸載設(shè)備再重裝 pylon 驅(qū)動即可。3.3 InstantCamera 的 GrabLoop 最小實(shí)現(xiàn)事件回調(diào)轉(zhuǎn) Bitmap用InstantCamera包一層采集邏輯會簡單很多。下面是完整的連接和采集循環(huán)代碼核心是ImagesGrabbed事件和RetrieveResult方法private InstantCamera _camera null; private Bitmap _latestBitmap null; /// summary開啟相機(jī)并啟動采集循環(huán)/summary private void StartGrabbing() { // 打開相機(jī) _camera new InstantCamera(CameraFinder.Enumerate()[0]); _camera.Open(); // 設(shè)置采集緩沖數(shù)量幀率越高緩沖數(shù)要適當(dāng)加大 _camera.MaxNumBuffer 5; // 注冊圖像回調(diào) _camera.ImagesGrabbed OnImagesGrabbed; // 觸發(fā)模式設(shè)為連續(xù) _camera.Parameters[PLCamera.TriggerMode].SetValue(PLCamera.TriggerMode.Off); // 開始抓圖 _camera.StartGrabbing(GrabStrategy.LatestImagesOnly); } /// summary每采集到一幀這個事件就會被觸發(fā)/summary private void OnImagesGrabbed(object sender, ImageGrabbedEventArgs e) { // 獲取抓取結(jié)果 IGrabResult grabResult e.GrabResult; if (grabResult.IsValid) { // 把 pylon 數(shù)據(jù)轉(zhuǎn)成 Bitmap using (Bitmap bitmap new Bitmap(grabResult.Width, grabResult.Height, PixelFormat.Format32bppRgb)) { System.Drawing.Imaging.BitmapData bmpData bitmap.LockBits( new Rectangle(0, 0, bitmap.Width, bitmap.Height), ImageLockMode.ReadOnly, bitmap.PixelFormat); // pylon 提供像素轉(zhuǎn)換方法 grabResult.Convert(PixelTypeEnums.BGRA8packed); int length Math.Min(grabResult.PixelDataSize, bmpData.Stride * bitmap.Height); Marshal.Copy(grabResult.PixelData, 0, bmpData.Scan0, length); bitmap.UnlockBits(bmpData); // 復(fù)制一份最新的圖像交給 UI 線程顯示或處理 lock (_lockObj) { _latestBitmap?.Dispose(); _latestBitmap new Bitmap(bitmap); } } } }這段代碼里有個關(guān)鍵點(diǎn)grabResult.Convert(PixelTypeEnums.BGRA8packed)是必需的因?yàn)?Basler 相機(jī)默認(rèn)輸出可能是 Mono8 或 BayerRG8轉(zhuǎn)成 BGRA 才能安全地塞進(jìn)Bitmap。很多人在回調(diào)里直接拿PixelData塞Bitmap結(jié)果顏色全亂就是因?yàn)闆]做像素格式轉(zhuǎn)換。另外StartGrabbing(GrabStrategy.LatestImagesOnly)的策略表示如果處理速度跟不上采集速度pylon 會自動丟棄舊幀保證你拿到的總是最新一幀這對實(shí)時顯示很重要。如果你的場景要求每幀都不能丟比如精確測量應(yīng)該用GrabStrategy.GrabOne或者把MaxNumBuffer調(diào)大并保證處理速度跟得上。3.4 顯示 Bitmap跨線程更新 UI 的三種方式從回調(diào)線程更新 WinForms 的PictureBox不能直接操作這是每個新手都會踩的坑。我常用的有三種做法按推薦程度排序第一種是BeginInvoke方法適合低頻率刷新代碼直觀private void UpdatePictureBox(Bitmap bitmap) { if (pictureBox1.IsHandleCreated) { pictureBox1.BeginInvoke(new Action(() { pictureBox1.Image?.Dispose(); pictureBox1.Image new Bitmap(bitmap); })); } }第二種是設(shè)置一個定時器每 30ms 去讀_latestBitmap并刷新 UI避免高頻BeginInvoke把 UI 線程塞滿。這種方法在高速相機(jī)下表現(xiàn)更好因?yàn)橛|發(fā)刷新受定時器限制。第三種是用ImageControl控件自身的同步機(jī)制但實(shí)際效果差異很大我一般不用。生產(chǎn)環(huán)境我建議用「定時器 最新幀」組合UI 不會卡CPU 占用也低。4. 相機(jī)參數(shù)與圖像質(zhì)量曝光、增益、像素格式、Gamma 的調(diào)參邏輯4.1 曝光時間和幀率的關(guān)系為什么設(shè)了 30fps 實(shí)際只有 10fpsBasler 相機(jī)的幀率上限不是固定的它受曝光時間和重疊模式影響。很多人把AcquisitionFrameRate設(shè)成 30結(jié)果實(shí)測只有十幾、甚至是個位數(shù)原因就是曝光時間太長一幀還沒曝光完下一幀根本排不上。// 關(guān)閉自動曝光手動設(shè)置關(guān)鍵參數(shù) camera.Parameters[PLCamera.ExposureAuto].TrySetValue(PLCamera.ExposureAuto.Off); // 曝光時間單位是微秒 camera.Parameters[PLCamera.ExposureTime].SetValue(5000); // 5ms 曝光 // 設(shè)置目標(biāo)幀率 camera.Parameters[PLCamera.AcquisitionFrameRateEnable].SetValue(true); camera.Parameters[PLCamera.AcquisitionFrameRate].SetValue(30); // 如果相機(jī)支持自動增益這里關(guān)掉避免自動調(diào)整干擾圖像亮度 camera.Parameters[PLCamera.GainAuto].TrySetValue(PLCamera.GainAuto.Off); camera.Parameters[PLCamera.Gain].SetValue(0);這里邏輯很清晰ExposureTime單位是微秒5ms 曝光在 30fps 下完全來得及一幀周期約 33ms。但如果你把曝光設(shè)成 50ms超過了一幀周期幀率會被迫降下來。這是物理規(guī)律SDK 不會幫你糾正。4.2 像素格式選擇Mono8、RGB8、Bayer 之間的取舍Basler 相機(jī)像素格式取決于傳感器類型。彩色相機(jī)的默認(rèn)輸出往往是 Bayer 格式不是我們直接能用的 RGB。選擇什么格式直接影響帶寬和處理復(fù)雜度黑白應(yīng)用直接設(shè)Mono8帶寬最小速度最快適合做輪廓檢測和定位。彩色顯示用BayerBG8 pylon 轉(zhuǎn)換或者干脆讓 SDK 輸出RGB8packed。前者數(shù)據(jù)量小但 CPU 要參與轉(zhuǎn)換后者傳輸量大但免去轉(zhuǎn)換步驟。高精度測量可以考慮Mono12或BayerBG12位深更高但要注意很多顯示控件不支持 12bit需要自己做灰度拉伸。// 設(shè)置像素格式為 BayerBG8 camera.Parameters[PLCamera.PixelFormat].SetValue(PLCamera.PixelFormat.BayerBG8);像素格式設(shè)置錯誤最典型的現(xiàn)象是圖像偏綠、偏紅或者有條紋。我一般在代碼里留一個配置項(xiàng)讓現(xiàn)場調(diào)試的人可以快速切換格式不用重新編譯。4.3 白平衡與 Gamma彩色圖像的觀感調(diào)整只能在采集側(cè)做如果你做的是彩色的視覺檢測白平衡設(shè)不對后面的顏色識別會一團(tuán)糟。Basler 相機(jī)有BalanceWhiteAuto參數(shù)但我發(fā)現(xiàn)自動白平衡在產(chǎn)線上不穩(wěn)定——光源稍微變化顏色就漂移。穩(wěn)妥做法是手動設(shè)定紅色和藍(lán)色增益。// 關(guān)閉自動白平衡使用手動增益 camera.Parameters[PLCamera.BalanceWhiteAuto].TrySetValue(PLCamera.BalanceWhiteAuto.Off); camera.Parameters[PLCamera.BalanceRatioSelector].SetValue(PLCamera.BalanceRatioSelector.Red); camera.Parameters[PLCamera.BalanceRatio].SetValue(1.5); camera.Parameters[PLCamera.BalanceRatioSelector].SetValue(PLCamera.BalanceRatioSelector.Blue); camera.Parameters[PLCamera.BalanceRatio].SetValue(1.2);Gamma 參數(shù)調(diào)節(jié)圖像中間調(diào)亮度當(dāng)畫面偏灰或者高光溢出時可以適當(dāng)調(diào)整。不過要注意Gamma 是像素轉(zhuǎn)換階段做的處理會影響像素的原始數(shù)值做精確測量時最好不要開啟或者保持默認(rèn)值 1.0。5. Basler 相機(jī)采集避坑與常見問題排查我踩過的 8 個坑5.1 現(xiàn)象圖像是花的像壞道一樣有斜條紋原因基本可以確定是像素格式不匹配。相機(jī)輸出 Bayer 但代碼按 RGB 解釋圖像必然顏色異常。解決辦法是在采集回調(diào)里先打印一次grabResult.PixelTypeValue確認(rèn)實(shí)際輸出的像素格式再決定是否調(diào)用Convert。5.2 現(xiàn)象程序跑幾分鐘后內(nèi)存暴漲最后直接 OOM這是最常見的「黑匣子」問題之一。根源在回調(diào)里創(chuàng)建Bitmap之后沒有釋放或者釋放了但引用還被 UI 線程攥著。我自己的血淚經(jīng)驗(yàn)是回調(diào)里Dispose舊圖、new新圖UI 刷新時再把_latestBitmap復(fù)制一份用完立即釋放。5.3 現(xiàn)象相機(jī)打開時報Generic exception但用 pylon Viewer 可以正常采集一般是工程里同時存在多個版本的Basler.Pylon.dll或者 32 位工程引用了 64 位 SDK。檢查引用路徑確認(rèn)所有項(xiàng)目都指向同一個 pylon 安裝目錄平臺目標(biāo)統(tǒng)一 x64。5.4 現(xiàn)象熱插拔 USB3 線之后程序再也枚舉不到相機(jī)USB3 相機(jī)對熱插拔支持不好經(jīng)常是設(shè)備狀態(tài)沒復(fù)位。解決方法是設(shè)備管理器里禁用再啟用設(shè)備或者重啟程序前先拔插一次線。軟件側(cè)可以用CameraFinder加重試機(jī)制但物理復(fù)位通常更有效。如果要產(chǎn)品化建議在硬件設(shè)計(jì)上增加相機(jī)電源可控開關(guān)。5.5 現(xiàn)象圖像出現(xiàn)橫向撕裂或者移動的橫線這個和曝光時間無關(guān)通常是丟包問題。GigE 接口要檢查網(wǎng)卡巨型幀是否開啟USB3 要檢查線材是否過長或者供電不足。pylon 里可以通過PayloadSize和Statistic查看傳輸錯誤。5.6 現(xiàn)象程序關(guān)閉時崩潰報access violation典型的關(guān)閉順序問題。正確順序是先StopGrabbing再注銷事件最后Close相機(jī)并釋放對象。很多人直接關(guān)窗體把相機(jī)對象釋放了后臺采集線程還在跑必然崩潰。private void StopCamera() { try { if (_camera ! null) { _camera.ImagesGrabbed - OnImagesGrabbed; if (_camera.IsGrabbing) { _camera.StopGrabbing(); } _camera.Close(); _camera.Dispose(); _camera null; } } catch (Exception ex) { Log(關(guān)閉相機(jī)異常: ex.Message); } }這段清理邏輯的順序很重要先停采集再關(guān)閉相機(jī)否則圖像回調(diào)里操作一個已關(guān)閉的相機(jī)錯誤無法預(yù)測。5.7 現(xiàn)象WinForms 界面卡死整個程序無響應(yīng)定位問題要看卡死位置一般兩種一是在回調(diào)線程里同步調(diào)用Invoke而 UI 線程恰好等待相機(jī)操作完成造成死鎖二是在Form_Load里同步開相機(jī)并抓圖界面根本還沒顯示出來。我處理時把StartGrabbing放到后臺 Task 里并且 UI 刷新統(tǒng)一走BeginInvoke不要等待返回值。5.8 現(xiàn)象同一個相機(jī)有的機(jī)器跑得好好的換一臺機(jī)器就頻繁掉線這種問題往往不是代碼問題而是 USB3 控制器兼容性。Intel 和 AMD 的 USB3 控制器對 Basler 相機(jī)的支持有差異產(chǎn)線工控機(jī)最好選用同一品牌型號并且在設(shè)備管理器里關(guān)閉 USB3 的節(jié)能模式防止系統(tǒng)把相機(jī)休眠。這個坑在批量部署時很折磨人代碼解決不了只能通過硬件規(guī)范和驅(qū)動設(shè)置規(guī)避。6. 進(jìn)階玩法把 Basler 采集封裝成獨(dú)立類庫并接入 OpenCVSharp 做實(shí)時處理6.1 設(shè)計(jì)一個 CameraService 單例多窗體共享一個相機(jī)視覺項(xiàng)目通常有設(shè)置界面、運(yùn)行界面、調(diào)試界面如果每個窗體都自己開相機(jī)資源沖突會直接讓程序翻車。我通常把相機(jī)采集封裝成一個單例服務(wù)內(nèi)部持有InstantCamera對外只暴露最新幀和幀計(jì)數(shù)事件。public class CameraService { private static CameraService _instance; public static CameraService Instance _instance ?? new CameraService(); private InstantCamera _camera; public event ActionBitmap FrameArrived; public bool IsGrabbing _camera ! null _camera.IsGrabbing; public void Start(string serialNumber) { var cameraInfo CameraFinder.Enumerate().FirstOrDefault(c c.SerialNumber serialNumber); if (cameraInfo null) { throw new Exception($未找到序列號為 {serialNumber} 的相機(jī)); } _camera new InstantCamera(cameraInfo); _camera.Open(); _camera.MaxNumBuffer 5; _camera.ImagesGrabbed OnImageGrabbed; _camera.StartGrabbing(GrabStrategy.LatestImagesOnly); } private void OnImageGrabbed(object sender, ImageGrabbedEventArgs e) { try { using (var result e.GrabResult) { if (!result.IsValid) { return; } result.Convert(PixelTypeEnums.BGRA8packed); // 構(gòu)造 Bitmap 并通知訂閱者 Bitmap bmp new Bitmap(result.Width, result.Height, PixelFormat.Format32bppRgb); var bmpData bmp.LockBits(new Rectangle(0, 0, bmp.Width, bmp.Height), ImageLockMode.ReadOnly, bmp.PixelFormat); Marshal.Copy(result.PixelData, 0, bmpData.Scan0, bmpData.Stride * bmp.Height); bmp.UnlockBits(bmpData); FrameArrived?.Invoke(bmp); } } catch (Exception ex) { Log.Error(圖像回調(diào)異常, ex); } } public void Stop() { if (_camera null) { return; } _camera.ImagesGrabbed - OnImageGrabbed; if (_camera.IsGrabbing) { _camera.StopGrabbing(); } _camera.Close(); _camera.Dispose(); _camera null; } }這里的核心思路是把自己不能處理的異常捕獲并記錄避免回調(diào)線程崩潰導(dǎo)致整個程序退出。FrameArrived事件的訂閱者只負(fù)責(zé)消費(fèi)圖像不能阻塞太久否則相機(jī)緩沖會慢慢積壓。6.2 接 OpenCVSharp把 Bitmap 轉(zhuǎn) Mat 后直接跑圖像算法Basler 采集端只負(fù)責(zé)拿圖算法要用 OpenCVSharp 做的話需要一個高效的Bitmap到Mat的轉(zhuǎn)換盡量避免GetPixel這種逐像素操作。public static Mat BitmapToMat(Bitmap bitmap) { var bmpData bitmap.LockBits(new Rectangle(0, 0, bitmap.Width, bitmap.Height), ImageLockMode.ReadOnly, PixelFormat.Format32bppRgb); { Mat mat new Mat(bitmap.Height, bitmap.Width, MatType.CV_8UC4, bmpData.Scan0); // 克隆一份讓 Mat 與 Bitmap 互不依賴 Mat clone mat.Clone(); bitmap.UnlockBits(bmpData); return clone; } }有幾個細(xì)節(jié)新版本的 OpenCvSharp 里Mat構(gòu)造函數(shù)的step參數(shù)可以省略但如果你從Bitmap的Stride不等于Width * 4可能因?yàn)閮?nèi)存對齊你應(yīng)將bmpData.Stride傳給Mat構(gòu)造函數(shù)。Windows 位圖行字節(jié)數(shù)一般是 4 的倍數(shù)但圖像寬度不一定是 4 的倍數(shù)所以這個坑值得寫進(jìn)代碼注釋里。轉(zhuǎn)換后一定要Clone()否則 Bitmap 釋放后Mat數(shù)據(jù)可能被回收導(dǎo)致后續(xù)處理訪問的是野指針。6.3 驗(yàn)證采集鏈路是否穩(wěn)定的最小手段FPS 統(tǒng)計(jì)與幀間隔打印臨時寫一個性能計(jì)數(shù)器觀察采集是否穩(wěn)定比看畫面是否流暢可靠得多。以下是采集循環(huán)里加入 FPS 統(tǒng)計(jì)的寫法private int _frameCount; private DateTime _lastFpsTime DateTime.Now; private void OnImageGrabbed(object sender, ImageGrabbedEventArgs e) { _frameCount; var now DateTime.Now; if ((now - _lastFpsTime).TotalSeconds 1.0) { double fps _frameCount / (now - _lastFpsTime).TotalSeconds; Log($當(dāng)前采集幀率: {fps:F2}); _frameCount 0; _lastFpsTime now; } // ... 其他處理 }在生產(chǎn)環(huán)境里我會把這個 FPS 值顯示在狀態(tài)欄并且設(shè)定一個報警閾值當(dāng)連續(xù) 5 秒低于設(shè)定幀率的 80%界面上立即報警。不要等到操作員發(fā)現(xiàn)「圖像卡了」才去排查主動監(jiān)測能提前發(fā)現(xiàn) USB3 線松動、系統(tǒng)負(fù)載過高等隱患。6.4 我自己的項(xiàng)目習(xí)慣參數(shù)配置化、異??苫厮?、圖像可回放最后聊點(diǎn)實(shí)際的。我做 Basler 項(xiàng)目時相機(jī)參數(shù)曝光、增益、像素格式、觸發(fā)源從來不會寫死在代碼里而是存到 JSON 或 XML 配置文件里?,F(xiàn)場換了一臺相機(jī)或者光源變了調(diào)試人員直接改配置文本就能適配不用重新發(fā)布程序。另外回調(diào)里的異常日志會帶上相機(jī)序列號和具體參數(shù)值方便回溯是哪臺相機(jī)、哪個環(huán)節(jié)出的問題。從第一次接觸 Basler SDK 到現(xiàn)在最深的體會是這套 SDK 本身并不難難的是穩(wěn)定性——線程模型、資源釋放、驅(qū)動兼容這些看不見的東西才是真正決定項(xiàng)目成敗的地方。以上這些經(jīng)驗(yàn)是我自己踩坑踩出來的希望能幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月久久婷婷丁香| 色色是色N一| 香蕉综合在线| 性无码专区无码| 另类综合网| 久久综合五月婷婷| 久久久久久五月天| 99操99| 国产六月婷婷| 色综久久AV| 婷婷成人av| 8区视频在线| 国产激情综合五月| 9191avse| 婷婷久久五月天丁香| 河北真实伦对白精彩脏话| www.99成人视频| 婷婷五月在线免费| 五月天婷婷久久| 99情色五月天| 97伦乱| 色色操| 人人射人人高潮| 九九视频这里只有精品在线播放| 国产VA播放| 综合久久久婷| 日本免费91| 九九色插| 艹| www91久久| 成人做爰A片免费看视频| 99热亚洲| 天堂久久精品| 久99热| 九色91国产| 精品成人a v无码内射| 天天日狠狠| 丁香五月亚洲激情婷婷射| 人人九色| 久久这里在精品视频| 狠狠爱婷婷| 91日婷婷在线| 黑人无码一区| 人妻AV在线| 久久九九中文字幕| 欧美噜噜噜草| 五月丁香六月婷婷免费视频| 婷婷.com| 玖玖爱综合网| 五月天色影院| 五月天福利影院导航| 成人免费120分钟啪啪| 丁香五月电影| 久久精品一区二区三区四区| AⅤ在线播放网| 色啦啦视频| 99在线看视频| 色五月色五天色情网| 人人97碰| 国产精品日本一区二区在线播放 | 天天干天天叉| 开心婷婷中文字幕| 99热久| 五月天开心激情综合网| 97色五月婷婷在线| 超碰在线99热| 少妇久久诱惑视频| 成人综合AV| 伊人婷婷大香蕉| 怡红院视频| www.五月丁香| 在线日韩av| 天天干天天曰天天射| 久久久久久久久久久44| 婷婷的五月天另类视频| 五月婷婷六月色| 午夜爱爱网站| 色狠狠婷婷| 人妻Av在线| 亚洲午夜一区二区| 日本五月丁香| 婷婷久久免费| 疯狂做受XXXX高潮A片动画| 国产人妻人伦精品一区二区| www.五月天婷婷| 色性综合| 色色五月天婷婷丁香| 日本综合久久| 欧美日韩五月婷婷| 丁香色情五月综合网站| 91蜜桃婷婷狠狠久久综合9色| 日本猛少妇色XXXXX猛叫| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 狠狠色噜噜狠狠| 开心激情站| 五月天激情小说网| 五月久久婷婷丁香| 99综合色| A片试看50分钟做受视频| 亚洲无码九九九| 日本精品99| 亚洲欧洲自拍图片专区五月天| 天堂草在线看www| 亭亭五月色男人| 亚洲精品一二三| av激情在线| 欧洲激情五月天婷婷| 五月婷婷香| 色五月激情五月开心五月| 久草婷| 天天日天天做天天舔| av性爱网站| 色婷婷丁香五月| 色爱综合五月| 狠狠色噜噜色狠狠狠综合久久成人波| 女人高潮内射99精品| 亚洲欧洲小视频9| 婷婷和五月天| 久久伊人五月天| 免费成片在线观看| 久久婷婷五月天蜜桃| 性无码专区无码| 国产成人AV在线播放| 深爱五月天天| 日本44久久在线| 色色五月天婷婷| 天天干电影| 在线观看免费观看在线9久| 婷婷激情伍月网| 亚洲天堂aaaa| 亚州性爱99| 五月开心激情| 性爱动图国产麻豆一区二区三区| 九九激情| 色青青五月| 性视频久久| 日本在线wwww| 久热亚洲| 婷婷五月天激情小说| 色小说五月天| 丁香婷婷婷五月综合色情| 26UUU在线观看| 可以免费观看的AV| 婷婷五月天第四色| 丁香伊人五月色婷婷五十路| 在线观看亚洲AV| 91久久18| 丁香色成人| 四季AV综合网| 色综合久| 五月丁香在线偷拍视频| 好叼操在线观看| 六月丁香婷啪射| 国产精品久久久久久亚洲毛片| 伊人婷婷五月天| 婷婷四色五月| 婷五月天在线草| 色婷婷综合视频| 综合97五月| 五月香婷婷| 激情综合5月| www.婷婷五月天| 9l视频自拍九色9l视频自拍九色9l社区| 99久久色| 91狠狠综合久久| 97在线精品| 日韩成人综合网| 欧美日韩99| 久色网| 丁香五月婷婷无码AV| 五月丁香啪啪| 五月激情婷婷开心| 天天射天天干天插色综合| 久热黄色| 五月婷婷成人w| 色色色色色日韩午夜激情| 国产三级秋霞| 国产99美少妇| 亚洲精品成人片在线播| 日日夜夜天天| 99热这里只有精品86| 精品99在线观看| 黄网免费看| 婷婷五月天天天日日夜夜| 性av| 特黄三级片| 九九黄色网| 九九热视频在线观看| 五月婷婷婷自由综合| 五月丁香婷婷99| 六月丁香色色| 99热99热不卡| 五婷婷六月合| 久久精品婷婷五月丁香| 国产内射婷婷| jiZZdr| 另类少妇人与禽zOZZ0性伦| 天天色色婷婷| 久久精品色| 亚洲欧洲美女在线观| 成人在线视频一区| 激情五月少妇| 丁香六月婷婷综合网| 九九综合网色全集| 五月激香蕉网| 亚洲色婷婷| 激情 婷婷| 亚洲五月丁香综合网| 久久99人人| 亚洲欧洲国产精品| 五月丁香六月婷婷网| 久久黄A片| 婷色天堂| 精品一二三区久久AAA片| 日熟女| 色五月婷婷天天操夜夜操| 99九九视频| 9久热精品在线视频| 婷婷五月天丁香社区| 五月婷无码| 五月丁香激情综合啪啪| www狠狠com| WWW.国产| 婷色五月| 99视频自拍| 婷婷九月在线| 色播播五月天| 久久综合五月| 天天草比天天爽| 欧美婷婷五月无砖| 婷婷黄色五月天在线视频| 日本婷久久| 国产精女同一区二区三区久| 婷婷综合中文字幕| 九九婷| 天天综合色| 另类视频五月天| 日日懆天天懆| 国产精产国品一二三在观看 | 激情五月成年| 欧美综合五月天婷婷tin| 久久久久婷婷| 农村熟妇高潮精品A片| 九九免费视频| 婷婷丁香六月| 丁香五月婷婷欧美性爱| 97碰碰草| 丁香五月成人丝袜| 久综合九| 亚洲天堂久久| 99热国产这里只有| 成人婷婷深爱综合网| 久久综合这里只有精品1| 九九99九九99| 激情综合综合综合| 五月婷婷免费| 99无吗| 开心五月天激情网站| 99爱无码| 婷婷少妇激情| www.超碰在线| 色婷插| 久久日婷婷| 色欲AVV| 国产首页在线| 91九色小视频| 久热这里只有精品性色AV| 五月久久五月激情| 99免费视频精品| 日日夜夜小色哥| 噜噜网免费视频| 在线不卡的视频| 久久婷婷老| 大香蕉视频婷婷| 蜜桃婷婷狠狠久久综合| 五月婷婷五月天| 天天 青草 制服丝袜 在线| 婷婷丁香社区网| 就99这里只有精品| 天天婷婷综合亚洲亚洲| 欧美激情VA永久在线播放| 亚洲五月婷婷| 久久九九亚洲| 综合丁香婷婷五月天| 婷婷激情五月天在线视频| 婷婷五月天熟妇| 婷婷草| 欧美性猛交99久久久99| 1024操逼| 色欲丁香| 欧美va在线| 婷婷激情六月综合| 999热这里只有美国精品| 超碰在线94| 九九99免费理论| 五月天激情小说电影| 五月综合六月婷婷| 思思热在线观看| 青青草青青草五月天| 我想看国产大学生口爆吞精的视频| 日韩99视频| 五月天激情综合首页| 思思热在线免费视频| 91人人操人人爱| 国外亚洲成AV人片在线观看| 久99久精品视频| 五月天亚洲最大成人| av狠狠操| 在线五月色播| 色五月天丁香婷婷| www91色网站| 97干97色| 麻豆雪千夏| 狠狠精品干练久久久无码中文字幕| 影音先锋91视频| 五月丁香美女视频| 丁香狠狠色婷婷| 九九99久久精品| www.99热视频| 射区导航| 婷婷中文字幕在线| 久久A区B区| 思思热在线视频精品| 97婷婷五月激情六月丁香伊人| 99热6这里只有精品6| 色色色在线播放| 久热9| 天天五月天综合网址| 伊人色综合网| 久久久精品视频79| 99riAV国产精品视频| 婷婷中文字幕欧美| 高清激情av在线观看| 熟女网站久久| 欧美综合五月丁香六月婷| 激情网婷婷婷| 婷婷五月精品| 九九精品在线观看视频6| 人妻第九页| 成人五月天婷婷| 激情久久丁香| 一起草无码| 五月激情六月宗合| 碰碰碰97免费精彩视频| 强伦轩人妻一区二区电影| 亚洲字幕AV一区二区三区四区| 欧美色图天堂网| 欧美日本国产欧美日本韩国99| 久久五月天丁香花| 六月激情网| 99热大| 蜜桃五月天| 狠狠婷婷日韩| 97色色视频| 九九操综合网| 人妻熟人中文字幕一区二区| 日韩激情婷婷五月天| 日日夜夜天天| 五月婷婷综合色拍| 一区二区你懂的| 色情综合网| 久草 tingting| 99热日韩| 久久精品夜色噜噜亚洲a∨| 色五月激情五月| 激情丁香五月| 久久婷婷五月综合色奶水99啪| 久久婷婷激情四射五月天| 丁香婷婷五月| 91婷婷在线| 97色婷婷成人综合在线观看| 99热色无码| 五月丁香激情啪啪| 开心五月婷| 超碰人人摸AV| 亚洲AV中文在线| 99色色网| 在线成人va| 丁香五月激情婷婷| 五月婷婷激情久久| 亚洲精品字幕在线观看| www激情com| 婷婷少妇激情| 五月丁香亭亭| 欧美五月丁香| 99视频超级精品| 久操婷婷| 亚洲色婷婷五月| 九 九九九AV| 色色五月婷婷久久| 欧美黑人巨大猛烈cuckold| 亚洲网站观看视频| 久久婷婷综合基地| 婷婷之六月丁香| 碰碰碰91| 天天做天天爱| 开心五月深爱婷婷| 99热免费精品热久久66| www,久久久人人| 久久免片| jiZZdr| 精品牛仔裤超碰| 五月天激情小说网| 亚洲激情五月天| 五月色综合| 久久久av久av久片一区二区| www.91久久| 狠狠干激情五月| 久婷久婷激情肉| 性做爰1一7伦| 综合色五月| 精品九九视频| 99久久99视频只有精品| 婷婷五月精品中文字幕| 久久国产成人9999久久久久| 996er热| 五月天激情www| 色噜噜综合网| 丁香五月激情在线| 激情五月天开心网丁香无码| 日韩一级A片黄色| 99久久国产综合精品五月天喷水\| 婷婷久久丁香五月| 五月综合激情视频在线| 婷婷丁香五月六月激情| 国产色丁香| 第四色大香蕉| 伦乱人妻| 久久日本wwww色| 色婷婷小说| 欧美色宗和激情| 婷婷丁香五月在线播放| 操射国产日本| 日日激情网| 婷婷丁香六月五月天| 色播播婷婷| 色综合网页| 中国女人做爰A片| 久久五月婷| 日本婷色| 婷婷丁香五月激情密臀av| 久久深爱激情网| 婷婷丁香六月五月天| 久久久久8888| 伊人网碰碰| 中文字幕av久久爽| 婷婷综合干| 色欲久久99精品久久久久久| 欧美黄色一级| 婷婷狠狠爱| 欧美 日韩 人妻 高清 中文| 五月丁香综合| 婷婷综合激情| 我爱大香蕉| 五月婷婷五月| 色狠狠色噜噜AV天堂五区| 激情综合五月天| 91操人视频| 97碰人人操| 五月婷婷视频| 色色激情网| 青青草轻轻操| 婷婷久草| 免费视频WWW在线观看网站| 九九99久久| 日本久久99| 精品夜夜澡人妻无码AV| 性爱激情五月| 日韩伊人大香蕉| 久久9热综合| 五月丁香九九| www.狠狠| 五月丁香 啪啪啪| 激情五月,深深爱五月| 日日夜夜天天爽| 色五月激情五月| 秋霞免费视频| 色五月开心久久网| 久久色天堂| 另类色网| 日日操日日爽| 欧美精品99| 五月婷婷婷婷| 在线中文AV| 亚洲最大视频网站| 久久久久9| 久久与婷婷| 狠狠五月天激情| 综合图片色色| 天天做天天爽| 亚洲第二AV| 五月婷中文字幕| 天天五月香欧美| 五月天久久成人| 欧美激情综合五月色丁香| 国产成人综合在线| 三十熟女| 欧美久久网| 色黑鬼导航| 婷婷综合五月天亚洲综合| 丁香婷婷色情| 亚洲六月综合激情久久下卡| 色碰碰| 爱爱色五月天| 亚洲午夜电影| 久久久宗合视频88| 狠狠色色| 久久九九热视频| 日本超碰在线| 一本久婷婷综合| 久婷五月| 日日噜狠狠色综合久| 激情五月天婷婷| 色就色94欧美setu| 久久婷婷六月天| 91精品综合久久久久久五月丁香| 五月婷丁香| 东北黄色一级| 五月丁香六月婷婷婷婷| 色五月丁香五月| 日韩情色在线观看| 丁香五月第四色88| www久久99| 99精品视频推荐| 加勒比色色| 狠狠综合区| 都市激情蜜桃婷婷五月天| 开心五月网 | 色情五月综合婷婷| 色域五月婷婷丁香| 婷婷综合在线| 丁香婷婷综合影院| 艹| 丁香六月婷婷久久综合| 五月久久婷婷天堂视频| 久色资源网| 欧美成人AAA片一区国产精品| 9久久久久| 亚洲欧美一区二区三区爱爱动图| 亚洲成人无码专区| 久久婷婷五月草视频在线播放| 天天色99| 91色碰| 亚洲五月天婷婷综合| 狠狠搞狠狠操| 秋霞电影一级黄| 色玖玖综合网| 成人电影AV在线观看| 日韩色五月| 九九爱精品网站| 欧美丁香六月激情视频| 99国产精品久久久久久久久久久 | 婷婷激情啪啪| 国产玖玖资源| 色情五月天导航| 99热这里只有精品最新| 日比视频91| 婷婷色色播五月天| AV在线不卡播放| 婷婷五月天亚洲天堂| 99久久综合网| 久久婷婷六月综合资源| 亚洲V国产V欧美V久久久久久| 噜综合| 99热婷婷| 色婷丨日丨天丨综合久久| 亚洲精品一区中文字幕乱码| www.五月婷婷久久.com| 爱操天堂| 色五月婷婷一二| 婷婷五月色亚洲| 九九视频在线观看视频6| 欧美va国产va| 婷婷在线日韩综合| 五月天 无码| av无码电影| 久久综合干| 97自拍视频在线| 婷婷五月天福利| 天干干夜夜操| 国产三级在线播放| 亚洲婷婷91丁香| 99久久99九九九99九他书对| www.夜夜操| 9999色色色色| 婷婷五月天AV在线| 色婷婷狠狠18禁| 婷婷成人五月天一区| 色婷婷精| 在线播放中文字幕| 婷婷四色五月| 六月丁香婷婷色狠狠久久| 99久久99九九99九九九| 五月婷婷,六月激情| 任你干aa| www.色婷婷| 五月丁香综合久久| 婷婷五月丁香色播| 91热爆在线| 激情婷婷综合五月少妇| 日本啪啪网| 九九av| 91人人爽久久涩噜噜噜| 超碰免费成人| 综合aV在线| 超碰人人99| 婷婷五月天成人动漫| 亚洲mm免费| 欧美大香蕉视频| 99小精品| AV无码免费| 午夜精品久久久久久久爽| 开心激情综合| 呦呦v线| 91人人操| 色色色五月天婷婷| AV大香蕉| 五月丁香六月天| 九九热再线九九视频免费在线观看| 五月婷婷欧洲| 色99视频| 日本啪啪天堂| 99免费热视频在线| 六月婷婷狠狠色在线观看| 婷婷色吧| 欧美三级韩国三级日本三斤| 丁香五月性| 五月综合久久| 九九精品视频在线6| 色婷婷婷av| 日韩黄色电影| 一本到不卡高清DVD| 六月激情婷婷| 爆乳熟妇一区二区三区爆乳照片| 日韩精品二三区| 思思热思在线精品视频| 色爱综合网| 99热九九在线| 综合xx网| 五月丁香婷婷无码中文| 97操视频| 婷婷激情人妻| 欧美婷婷综合网| 丁香情色五月| 欧洲MV日韩MV国产| 日本人妻伦在线中文字幕| 婷婷五月丁香六月| 日本视频99| 久久视频这里有精品99| 伍月婷丁香花全集| 久久这里只有精品无码| 五月情综合| 99久久久国产大片区| 夜夜爱伊人| 婷婷狠狠爱| 久久91久久精品久久| 777影视理论片大全在线观看| 婷婷色中文字幕| 久热99热| 色色丁香婷婷综合| 996热re视频精品视频| 超碰网站在线观看| 超碰人人91| www,色婷婷| 91丨九色丨白浆| 91热视频色网站| 婷婷中文字幕网| 色五月成人| 婷婷五月天成人网| 丁香婷婷色| 亚洲视频操| 久久婷婷五月综合激情国产| 丁香六月激情四射| 人妻久久久久久久| 专区无日本视频高清8| 大香蕉啪啪啪| 丁香五月婷婷av影院| 亚洲无码影音| 蜜臀99久久精品久久久久| 玖玖热99| 婷婷九九| 涩涩涩,com| 欧美性爱特黄一级aaaassss| 五月丁香基地| 成人网在线视频| 日本九九九九| 亚洲经典三级| 丁香五月天社区婷婷| 99色久| 丁香五月网址| 丁香 婷婷五月| 五月花亭亭| 丁香五月电影| 婷婷六月久久综合导航| 大战熟女丰满人妻AV| 久草婷妨| 91人人操人人| 日日干干天天干| 欧美人妻一区二区| 99久久性爱| 无码成人AAAAA毛片AI换脸| 伊人大香蕉爱聚| 婷婷大乡焦噜噜| 天天操夜夜啊 | 色五月丁香伊人五月| 另类视频五月天| 色五月激情| 久久婷婷五月天大香蕉| 欧美日比视频| 丁香五月宝贝激情网| 婷婷五月激情五月激情| 日韩性视频| 99热国品| 超碰93在线观看| 久久视屏这里只有久久| 激情五月婷婷综合色播小说| 色99视频| av超碰在线| 婷婷丁香社区网| 五月婷婷综合精品| 久草五月| 665566 无码| 色天堂在线| 色婷婷影音| A片一曲| 欧美A片在线视频免费观看| 激情六月综合| 欧美色五月| 亚洲另类毛片| 密黄站| 婷婷五月花| 中文字幕有多少字| 97av在线视频| 色屌丝中文字幕| 天天干天天爽| 欧美在线操| 婷婷五月精品中文字幕| 另类在线| 99玖玖在线视频| 丁香婷婷综合激情五月色| 色婷婷小说网| 99久久婷婷五月综合| 六月婷婷激情小说网| 九九99久久| 日韩无码91| 99热精品综合| 99在线精品免费视频| 国产亚洲99久久精品| 丁香五月伊人| 久久婷婷五月综合色和| 亚洲视频丁香网va| 五月天另类小说| 91久久五月天| 深情五月天| 丁香婷婷九月在线| 六月丁香婷啪射| 五月激情小说| 99热99在线| 精品激情| 色婷五月天| 午夜激情综合| 婷婷人人操| 丁香五月人妻| 九月激情综合| 國語久久婷| 久久色五月| 激情丁香五月婷婷| 天堂五月婷婷| 六月丁香六月婷婷欧美| 九九热99在线视频| 激情伊人五月天| 色欲色香综合网站| 99这里只有精| 午夜丁香综合婷婷| 色情丁香五月婷婷精品| 99久在线观看| 丁香五月影院| 激情美女五月天| 婷色五月天| 亚洲色欲欧美一区二区三区| 噼里啪啦完整版中文在线观看| 久久亚洲色导航| 欧美内射AAAAAAXXXXX| 九九婷婷五月天影视| 日韩人妻白浆视频系列| 亚洲 六月 综合| 天花AV无码| 99色精品| 久久丁香五月综合六月激情红杏视频 | 丁香五月激情六月欧亚激情综合导航| 日本三级黄色大片| 色情·com| av高清无码| 综合色激情| 亚洲色激情| 永久精品| 五月婷婷精品视频| 丁香97综合| 五月综合激情| 日日夜夜狠狠婷婷色| 青青久在线视频免费观看| 狠婷婷五月| 久久 无毛。| 婷婷五月丁香基地| 26uuu亚洲欧美另类| 99热草草| 成人综合视频在线| 国产精品色色666| 久久受www免费人成| 十一月婷婷激情四射| 久久伊人大香蕉| 久在线88综合| 欧美日韩成人在线网| 色情五月天视频网| 色亭亭九月| 殴美日比视频| 99re热视频| 久久婷婷91| 久久精品99国产精品日本| 夜夜干夜夜操| 丁香五月激情天AV无码| 991自拍视频| 婷婷色五月丁香六月欧美啪| 大地资源色婷婷视频在线| 99综合自拍| 欧美交换配乱吟粗大25P| 五月天婷婷激情网| 偷偷与邻居做爰完整视频| 99热1| 五月婷婷深深爱| 五月婷久草| 激情综合五月丁香| 人妻人人操| 99色亚洲| 91热er| 色女人久久| 91狠狠色丁香婷婷综合久久狠丁香综合久久精品 | xxx综合在线| 91色噜噜狠狠狠狠色综合| 国产美女无遮挡裸体毛片A片| 可以看的av网站| 五月丁香婷婷五月色| 黄色片精品| a级毛片一区二区免费视频| 久久狠狠干| 丁香五月婷婷视频| 久久99热精品a片在线观看| 激情久久五月天| 婷五月天| 色婷婷8| 亚洲精品99| 五月丁香六月激情| 婷婷开心六月| 亚洲激情五月婷婷日日| 久久婷婷精品| 久久婷视频| 69久久久| j五月香在线| 中文字幕网伦射乱中文| 97碰久久| 九九精品亚洲| 婷婷丁香五月高清| 伊人丁香花综合影院| www.25五月婷婷| 亚洲综合1024| 九月婷婷激情| 久热re在线视频| 国内熟女黄色系列| 9久热精品在线视频| 色色综合网站| 天天干天天插| 直接看的av| 成人亚洲精品| 99精品自拍视频| 激情婷婷久久| 丁香婷婷色九月| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 丁香五月婷婷激情蜜桃| j五月香在线| 久在线88综合| 蜜乳久AV| 久久综合五月天激情小说网站 | 丁香五月婷婷在线| 婷婷五月成人| 思思热精品在线| 五月天婷婷色综合| 色色网站| 五月丁香综合| WWW.国产| AV中文网| 在线观看视频1区| 婷婷五月天亚洲综合网| 31色区视频免费看| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 婷婷综合五月色播| 色婷婷五月天天天干天天操天天爽| 婷婷激情五月综合丁| 婷婷香五月综合激情| 久99热| 亚洲视色| 99欧州偷拍视频| 亚洲精品视频在线播放| 第四色五月天| 全部老头和老太XXXXX| 激情婷婷丁香| 色婷婷色五月综合| 91视频一起草| 亚洲综合视频天天精品| 丁香六月婷婷综合麻豆| 丁香五月天啪啪激情综和网| 狠狠激情五月天| 久久玖玖综合| 久久九九色| A片试看50分钟做受视频| 碰超亚洲| 色综合色色色色| 99在线观看| ji'qing'luan'ren'lun| 综合五月天完整| 99热天堂| 99这里只有精品| 久久九九热re6这里有精品| 国产操逼网站| 久久五月婷婷电影| 色婷婷a三区麻| 天天干天天做| 97五月天| 国产在线视频1234| 久久ww| 激情五月视频| 色播婷婷大香蕉| 99精品视频在线观看| 操婷婷久久| 亚洲婷婷视频| 亚洲情a| 婷婷五月激情图片| 午夜精品久久久久久久爽| 2013AV天堂| 欧美成性色| 婷婷色五月色| 激情五月婷| 夜色.cnm| 丁香五月天色| 精品久久人妻| 人妻丰满精品一区二区A片| 97碰碰人人视频| 久久五月天激情婷婷| 美女五月天| 五月丁香综合激情| 99手机在线精品视频| 色五月婷婷在线视频| 国产精品色色| 97超碰免费超级在线观看| 激情婷婷在线中文字幕| 婷婷丁香五月,狠狠综合| av色婷婷| 波多野结衣成人作品在线| 五月婷婷丁香深深爱| A久久| www.wuyuetian啪啪| 伊人99热| 六月婷婷综合| 激情综合网婷婷五夜| 五月天婷婷色在线视频免费观看| 色五月女| 9久久狠狠的| 色色五月婷婷| 色色色综合| 蒲京久久无码视频| 久久九九免费大视频| 九九干视频| 天啪天啪天啪天啪| 日本婷婷丁香五月| 99热精品在线播放| 91久久九久久九久久九久久九久久| 开心五月婷婷在线| 久久久天堂国产精品女人| AAA久久久| 狠狠干五月天| 超碰97在线观看免费| 日韩黄黄| 婷婷丁香18| 亚洲综合色色| 欧美日比视频| 91久久电影| 五月天成人小说| 国产亚洲99久久精品熟| 激情五月天之五月婷婷| 欧美久热| 丁香婷婷精品视频| 大香蕉九九| 婷婷射丁香| 五月天丁香成人| 97干在线观看| 激情六月婷婷| 9久9久| 婷婷淫淫狠狠六月| 一本九九色| 五月丁香综合激情网| 97操碰在线97| 97丁香五月| 99热九九九九| 五月丁香六月成人| 五月色激情综合网| 综合五月丁香六月婷婷| 婷婷天天五月天| 精品A√| 中文字幕不卡视频| 月婷婷婷婷五月| 欧美性爱日韩性爱| 98永久精品| 性生活视频98791| 婷婷色丁香五月| 日韩婷婷| 丁香六月激情综合| 欧美婷婷五月激情| 色情终和网| 国产精品香蕉| 1024成人在线观看| 日韩在线视频中文字幕| 一起草Av| 色玖玖| 亚洲 小说 欧美 激情 另类| 激情涩播| 可以看的av网站| 99福利导航| 亚洲激情五月天| 六月丁香射婷婷欧美色图片| 色综合综合综合| 国产午夜精品久久久观看| 色99视| 丁香五月天网站| 琪琪理论片| 五月天丁香啪啪网| 天天摸天天舔| 五月丁香激情综合网| 色狠狠色| 99日这里只有精品| 丁香五月婷婷欧美激情-中文天堂最新版在线观看 | 激情综合五月| 五月天婷婷成人资源站| 五月婷婷综合性爱噜噜| 久久xx| 可以直接看的av网站| 亚洲婷婷综合视频| 综合色99| 思思99热这里只有精品6| 欧美婷婷精品激| 九九热这里只有精品6| 丁香六月毛片| 秋霞AV淫| 伊人无码高清| 激情网五月| 九九激情网| 色吊操色妞| 五月婷婷性爱| 成人精品99| 色停停香蕉视频| 狠狠爱青青草| 67194成I人在线观看线路1| 深爱五月天婷综合| 天天操五月天| 中字幕视频在线永久在线观看免费| 九九在线这里只有精品视频 | 欧美综合五月丁香五月天| 丁香五月综合激情性爱| 亚洲妇女熟BBW| 操日视频| 色综合日日| 久久ww| 久操大屁股女人av| 五月综合色| 五月丁香激情综合网| 亚洲丁香五月天在线视频| 97热久久| 三级黄色大片视频| www.婷婷亚洲基地| 五月丁香花激情综合网| 色就是色婷婷五月亚洲激情| 五月婷中文娱乐综合| 色综合色综合网| 国产毛片精品一区二区色欲黄A片| 九九成人高清视频| 成人婷婷| 狠狠色综合久久久久| 激情开心五月天| 五月天天天天天天天天天天天天天天天婷婷婷| 99视频久久免费视频| 色玖玖导航| 婷婷五月天大香蕉在线视频观看| 天天日夜夜爽| 五月天激情久久| 六月 丁香 视频| renrencaoav| 激情婷婷丁香五月天小说| 91精产一区三区免费观看| 玖玖色综合色| 国产人妻777人伦精品HD| 婷婷五月天综合网| 亚洲操B| 婷婷5月九九| 丁香五月日本| 婷香五月网在线| 日韩综合久久| 青青草原伊人网| 婷婷久久色| 婷婷色网址| 欧美婷婷丁香社区在线播放| 深爱激情五月天| 婷婷五月天伊人| 婷婷精品免费久久| 免费国产视频| 亚洲综合另类| 中文av网站| 婷婷五月天黄色小说| 五月色精品| 啪啪激情网站| 综合在线丁香五月| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 久久在这里有精品| 激情q青青草在线婷婷| 日本综合久| www.久久99| 国产婷婷色五月| 丁香五月1页| 婷婷色婷婷亚洲成人| 丁香婷婷久久 | 91尤物九色在线| 99在线69| 玖玖婷婷五月天| 大香蕉av在线| 丁香五月大香蕉| 中文字幕婷婷五月天| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 99热在线观看精品免费| AV九九| 99在线精品免费视频| 国产看真人毛片爱做A片| 丰满少妇猛烈A片免费看观看 | 啪啪东京热| 国产成人在线不卡AV| 婷婷99中文字幕| 婷婷丁香社区网| 天天日人人| 五月花亭亭| 色爱亚洲| 激情综合在线观看| 五月丁香综合在线| 亚洲成av人影院| 99久久婷婷国产综合精品电影| 久久久久久婷| 任你操精品免费| 九九性视频| 337p午夜影院| 婷婷五月天开心激情网| 丁香五月综合| 99热这里是精品| 九九九九操逼| 青青999| 内射综合网| 99热 在线观看| 色五月天本日| 久久五月丁香婷婷| 精品国产AV色一区二区深夜久久| 色五月丁香com| 99丁香五月婷婷在线| 超碰免费人人| 久久午夜理论| 天天综合色| 99熟女| 超碰在线个人观看| 99操碰| 色播丁香婷婷五月激情| 99热这里都是精品| www.色婷婷.com| 97碰碰九九视频| 日本一级特黄大片AAAAA级| 99热这里只有精品亚洲| 成人丁香婷婷| 亚洲精品婷婷| 99久久五月婷婷| 激情婷婷五月天。| 欧美色五月天| 99re思思久久| 婷婷黄色网| 91蜜桃婷婷狠狠久久综合9色| 五月丁香婷婷激情| 自拍盗摄 另类| 26uuu欧美日本| 69久久久| 久久婷婷六月天| 久久爱婷婷| 色播五月婷婷| 五月婷久久久| 五月开心婷婷| 亚洲av成人在线| 91九色超碰| 久久大香蕉| 亚洲色视频| 天天插天天插| 日韩99视频| 色区域网站视频| 婷婷伊人綜合中文字幕| 热99热久| 国产夫妻操逼内射视频| 五月丁香婷婷婷激情爱爱| 日本乱子人伦在线视频| 99在线热| 色播五月网| 婷婷伊人久久无码色五月| 激情视频网址| 久草热在线视频| 丁香五月-激情综合| a色色色色色| 91婷婷搞| 超碰精品国产首页| 激情都市五月天| 五月婷婷六月天| 97碰碰视频在线观看免费| www天天爽| 日韩精品一区二区三区,四区,五区视频| 五月丁香精品| 亚洲这里只有精品| 五月天丁香久久综合 | 色色色在线免费视频| 曰曰久久| 丁香婷婷五月人体| 五月婷婷开心六月激情小说| 亚洲va综合va国产va中文| 久久超级碰碰| 天天日日夜夜| 五月天色站| www,99热| 久久婷婷一级片| 四五月婷婷| 欧洲色| 99久久综合| 成人 在线 日韩| 五月久久网| 99热这里只有精| 五月天婷婷色色首页| 国产色99| 色情成人五月天| 精品久久久久久久人妻| 艹B高清无码| www.日日夜夜| 51精品国自产在线| 99热国内| 九月丁香婷婷| 色色色综合视频| 99无码精品| 婷久看人爽| 超碰v| 色青青视频| 亚洲激情四射色| 狠狠草综合网| 人妻有码乱操| 精品亚洲VA网站| 日本婷婷丁香五月| 亚洲妇女熟BBW| 六月丁香婷婷尤物| 青青草伊人婷婷| 精品国产va久久久| 综合爱久久| 色五月婷婷影院| 在线播放中文字幕|