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

ARTICLE DETAIL

資訊詳情

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

C#與OpenCV實(shí)現(xiàn)工業(yè)級(jí)雙目立體視覺:從標(biāo)定到三維重建全流程

C#與OpenCV實(shí)現(xiàn)工業(yè)級(jí)雙目立體視覺:從標(biāo)定到三維重建全流程 簡(jiǎn)介本資源是一套基于Emgu CV.NET版OpenCV實(shí)現(xiàn)雙目視覺標(biāo)定與3D重建的完整C#工程實(shí)踐方案面向具備基礎(chǔ)圖像處理知識(shí)的.NET開發(fā)者、機(jī)器視覺初學(xué)者及高校課程設(shè)計(jì)者解決雙相機(jī)系統(tǒng)參數(shù)標(biāo)定、視差計(jì)算與三維點(diǎn)云生成等核心問題。壓縮包共50個(gè)文件包含10個(gè)核心C#源碼文件如Form1.cs、Program.cs、3個(gè)可執(zhí)行exe程序、6個(gè)動(dòng)態(tài)鏈接庫dll含Emgu.CV相關(guān)依賴、4個(gè)XML配置與文檔文件以及sln解決方案和csproj項(xiàng)目文件結(jié)構(gòu)清晰開箱即用整體大小僅999KB。已有396人學(xué)習(xí)下載適合快速理解SGBM立體匹配原理、掌握OpenCV在C#中的實(shí)際調(diào)用流程并復(fù)現(xiàn)從單目校準(zhǔn)、雙目標(biāo)定到3D點(diǎn)云可視化的一整套技術(shù)鏈路。1. 項(xiàng)目概述與核心價(jià)值最近在做一個(gè)工業(yè)質(zhì)檢的小項(xiàng)目客戶要求能精確測(cè)量零件上幾個(gè)關(guān)鍵孔的深度和間距誤差得控制在0.1毫米以內(nèi)。用單目相機(jī)加激光測(cè)距的方案試了試發(fā)現(xiàn)對(duì)于復(fù)雜曲面和遮擋部分精度和穩(wěn)定性總是不盡如人意。折騰了一圈最后還是回到了雙目立體視覺這條經(jīng)典且可靠的路子上。所謂雙目就是模仿人的兩只眼睛用兩個(gè)攝像頭從不同角度拍攝同一場(chǎng)景通過計(jì)算視差來獲取深度信息從而重建出物體的三維輪廓。這個(gè)項(xiàng)目的核心就是基于OpenCV和C#來實(shí)現(xiàn)一套完整的雙目標(biāo)定和3D視覺流程。選擇C#是因?yàn)榭蛻舻纳衔粰C(jī)軟件是基于.NET Framework開發(fā)的需要無縫集成而OpenCV則是計(jì)算機(jī)視覺領(lǐng)域的“瑞士軍刀”其calib3d模塊提供了非常成熟的雙目標(biāo)定和三維重建算法。網(wǎng)上關(guān)于PythonOpenCV做雙目標(biāo)定的教程很多但C#版本的、尤其是能深入到生產(chǎn)環(huán)境細(xì)節(jié)的完整分享卻比較零散。這次我就把自己從環(huán)境搭建、相機(jī)標(biāo)定、立體匹配到三維點(diǎn)云生成的全過程以及踩過的那些坑系統(tǒng)地梳理出來。這套方法的價(jià)值在于它不只是一個(gè)實(shí)驗(yàn)室里的算法演示而是一個(gè)可以直接應(yīng)用于工業(yè)現(xiàn)場(chǎng)、嵌入式設(shè)備或科研項(xiàng)目的工程化解決方案。無論是用于機(jī)器人抓取時(shí)的定位、自動(dòng)駕駛中的障礙物檢測(cè)還是像我遇到的精密測(cè)量場(chǎng)景這套基于OpenCV和C#的技術(shù)棧都能提供一個(gè)穩(wěn)定、高效且可定制化的基礎(chǔ)框架。2. 環(huán)境搭建與工具選型解析工欲善其事必先利其器。在開始寫代碼之前搭建一個(gè)穩(wěn)定高效的開發(fā)環(huán)境是第一步這里面的門道不少。2.1 OpenCV的C#綁定選擇Emgu CV vs OpenCvSharp這是C#開發(fā)者接觸OpenCV時(shí)面臨的第一個(gè)抉擇。主流的有兩個(gè)庫Emgu CV和OpenCvSharp。Emgu CV歷史更悠久封裝相對(duì)更“厚重”提供了與.NET框架更深入的集成比如可以直接和Bitmap、Image等.NET原生類型互轉(zhuǎn)。它的API設(shè)計(jì)試圖更貼近.NET風(fēng)格。但它的更新速度有時(shí)會(huì)稍慢于OpenCV主版本且某些高級(jí)或最新添加的OpenCV功能可能支持不及時(shí)。OpenCvSharp這是我最終選擇的方案。它是一個(gè)更“輕量”的封裝其API幾乎與OpenCV C原生API一一對(duì)應(yīng)。這意味著你在查閱OpenCV官方文檔或C代碼示例時(shí)可以幾乎無腦地翻譯成C#代碼學(xué)習(xí)成本和遷移成本極低。它的更新非常活躍能很快跟進(jìn)OpenCV的新特性。通過NuGet安裝極其方便。注意OpenCvSharp有多個(gè)NuGet包。對(duì)于大多數(shù)應(yīng)用安裝OpenCvSharp4和OpenCvSharp4.runtime.win根據(jù)你的系統(tǒng)選擇win、ubuntu等即可。后者包含了OpenCV本地的動(dòng)態(tài)鏈接庫DLL省去了自己編譯和配置環(huán)境變量的麻煩。我選擇OpenCvSharp的核心理由是**“所見即所得”**。做計(jì)算機(jī)視覺項(xiàng)目我們絕大部分時(shí)間是在和OpenCV的算法、參數(shù)打交道。一個(gè)與官方API高度一致的封裝能讓我把精力完全集中在視覺邏輯本身而不是庫的封裝差異上。例如C里的cv::stereoCalibrate在OpenCvSharp里就是Cv2.StereoCalibrate參數(shù)順序和含義完全一致。2.2 開發(fā)環(huán)境與項(xiàng)目配置我使用的是Visual Studio 2022和.NET 6長(zhǎng)期支持版本。創(chuàng)建一個(gè)控制臺(tái)應(yīng)用或WPF/WinForms項(xiàng)目均可。安裝NuGet包通過NuGet包管理器控制臺(tái)執(zhí)行以下命令I(lǐng)nstall-Package OpenCvSharp4 Install-Package OpenCvSharp4.runtime.win如果你目標(biāo)平臺(tái)是x64建議在項(xiàng)目屬性中將“目標(biāo)平臺(tái)”也設(shè)置為x64以避免可能的位數(shù)不匹配問題。準(zhǔn)備標(biāo)定板這是雙目標(biāo)定中最關(guān)鍵的物理工具。通常使用棋盤格Checkerboard或圓點(diǎn)網(wǎng)格Circle Grid。OpenCV對(duì)棋盤格的支持最完善所以我們用它。你需要高精度打印一張棋盤格圖并貼在平整的剛性板如亞克力板、鋁板上。棋盤格每個(gè)方格的實(shí)際物理尺寸例如25.0毫米必須精確測(cè)量這個(gè)值將作為標(biāo)定的已知尺度輸入。技巧打印后最好用游標(biāo)卡尺多次測(cè)量多個(gè)方格的平均尺寸而不是相信打印機(jī)的標(biāo)注。平整度也很關(guān)鍵翹曲的標(biāo)定板會(huì)引入誤差。雙目相機(jī)硬件你可以使用兩個(gè)獨(dú)立的USB相機(jī)組裝需固定相對(duì)位置也可以直接購買集成好的雙目相機(jī)模組。前者靈活便宜但需要自己設(shè)計(jì)機(jī)械結(jié)構(gòu)來固定后者出廠已標(biāo)定但可能更貴。對(duì)于高精度要求建議選擇全局快門的工業(yè)相機(jī)以減少運(yùn)動(dòng)模糊。3. 雙目標(biāo)定原理與實(shí)操全解標(biāo)定的目的是確定相機(jī)的內(nèi)參焦距、光心、畸變系數(shù)和兩個(gè)相機(jī)之間的外參旋轉(zhuǎn)矩陣R和平移向量T。只有知道了這些參數(shù)我們才能將二維圖像點(diǎn)正確地映射到三維空間。3.1 單目標(biāo)定為每只“眼睛”做體檢在進(jìn)行雙目標(biāo)定前必須先對(duì)左右兩個(gè)相機(jī)分別進(jìn)行單目標(biāo)定。這個(gè)過程可以理解為給每個(gè)相機(jī)建立一份“身份證”記錄它自身的成像特性。// 偽代碼流程示意 Size patternSize new Size(9, 6); // 棋盤格內(nèi)角點(diǎn)數(shù)量寬9高6 float squareSize 25.0f; // 每個(gè)方格的實(shí)際尺寸單位毫米 ListPoint3f objectPoints new ListPoint3f(); // 世界坐標(biāo)系中的三維點(diǎn) for (int i 0; i patternSize.Height; i) for (int j 0; j patternSize.Width; j) objectPoints.Add(new Point3f(j * squareSize, i * squareSize, 0)); ListListPoint2f leftImagePoints new ListListPoint2f(); ListListPoint2f rightImagePoints new ListListPoint2f(); // 假設(shè)我們有N組左右相機(jī)同時(shí)拍攝的棋盤格圖片 for (int i 0; i N; i) { Mat leftImg Cv2.ImRead($left_{i}.jpg, ImreadModes.Grayscale); Mat rightImg Cv2.ImRead($right_{i}.jpg, ImreadModes.Grayscale); bool leftFound Cv2.FindChessboardCorners(leftImg, patternSize, out Point2f[] leftCorners); bool rightFound Cv2.FindChessboardCorners(rightImg, patternSize, out Point2f[] rightCorners); if (leftFound rightFound) { // 亞像素級(jí)角點(diǎn)精確化顯著提升標(biāo)定精度 TermCriteria criteria new TermCriteria(CriteriaTypes.Eps | CriteriaTypes.MaxIter, 30, 0.001); Cv2.CornerSubPix(leftImg, leftCorners, new Size(11, 11), new Size(-1, -1), criteria); Cv2.CornerSubPix(rightImg, rightCorners, new Size(11, 11), new Size(-1, -1), criteria); leftImagePoints.Add(leftCorners.ToList()); rightImagePoints.Add(rightCorners.ToList()); // 注意每一組圖片對(duì)應(yīng)的 objectPoints 是相同的 // 通常我們會(huì)維護(hù)一個(gè) objectPointsList每次添加 objectPoints 的副本 } } // 單目標(biāo)定左相機(jī) Mat leftCameraMatrix new Mat(); Mat leftDistCoeffs new Mat(); Cv2.CalibrateCamera(objectPointsList, leftImagePoints, imageSize, leftCameraMatrix, leftDistCoeffs, out Mat[] rvecs, out Mat[] tvecs); // 單目標(biāo)定右相機(jī)同理 Mat rightCameraMatrix new Mat(); Mat rightDistCoeffs new Mat(); Cv2.CalibrateCamera(objectPointsList, rightImagePoints, imageSize, rightCameraMatrix, rightDistCoeffs, out rvecs, out tvecs);關(guān)鍵操作與避坑指南拍攝技巧拍攝15-20組不同方位、不同角度、不同距離的棋盤格圖像。要確保棋盤格在圖像中清晰且盡量布滿整個(gè)視野。左右相機(jī)必須同步拍攝硬件觸發(fā)或軟件同步保證拍攝的是同一時(shí)刻的標(biāo)定板姿態(tài)。角點(diǎn)查找FindChessboardCorners有時(shí)會(huì)失敗尤其是在圖像邊緣或光照不均時(shí)。確保棋盤格對(duì)比度足夠高。打印的棋盤格邊緣最好有留白避免與背景混淆。亞像素優(yōu)化CornerSubPix這一步絕不能省。它將角點(diǎn)定位精度從像素級(jí)提升到亞像素級(jí)對(duì)標(biāo)定精度有決定性影響。標(biāo)定結(jié)果評(píng)估CalibrateCamera會(huì)返回重投影誤差。這個(gè)值反映了標(biāo)定精度一般要小于0.5像素對(duì)于百萬像素相機(jī)。如果誤差過大需要檢查標(biāo)定板平整度、圖片質(zhì)量或角點(diǎn)提取是否正確。3.2 立體標(biāo)定確定“雙眼”的相對(duì)位置在獲得左右相機(jī)的內(nèi)參和畸變系數(shù)后就可以進(jìn)行立體標(biāo)定求解兩個(gè)相機(jī)之間的空間關(guān)系。Mat R new Mat(); // 旋轉(zhuǎn)矩陣 Mat T new Mat(); // 平移向量 Mat E new Mat(); // 本質(zhì)矩陣 Mat F new Mat(); // 基礎(chǔ)矩陣 // 使用之前單目標(biāo)定得到的圖像角點(diǎn)對(duì)和對(duì)象點(diǎn) Cv2.StereoCalibrate( objectPointsList, // 三維世界點(diǎn) leftImagePoints, // 左圖像點(diǎn) rightImagePoints, // 右圖像點(diǎn) leftCameraMatrix, // 左相機(jī)內(nèi)參 leftDistCoeffs, // 左相機(jī)畸變 rightCameraMatrix, // 右相機(jī)內(nèi)參 rightDistCoeffs, // 右相機(jī)畸變 imageSize, // 圖像尺寸 R, T, E, F, // 輸出外參和矩陣 CalibrationFlags.FixIntrinsic, // 標(biāo)志固定已標(biāo)定的內(nèi)參 TermCriteria.Criteria(30, 1e-6) ); Console.WriteLine($旋轉(zhuǎn)矩陣 R:\n{R}); Console.WriteLine($平移向量 T:\n{T}); // T的第一個(gè)分量通常是基線距離兩個(gè)相機(jī)光心的距離核心參數(shù)解讀旋轉(zhuǎn)矩陣 R描述了如何將右相機(jī)的坐標(biāo)系旋轉(zhuǎn)到與左相機(jī)坐標(biāo)系對(duì)齊。平移向量 T描述了右相機(jī)原點(diǎn)相對(duì)于左相機(jī)原點(diǎn)的位置。其中T[0]第一個(gè)元素的絕對(duì)值就是基線距離它是后續(xù)計(jì)算深度的關(guān)鍵。這個(gè)距離的測(cè)量單位與你提供的squareSize一致例如毫米。標(biāo)志位CalibrationFlags.FixIntrinsic這是關(guān)鍵因?yàn)槲覀円堰M(jìn)行了高精度的單目標(biāo)定所以在立體標(biāo)定時(shí)應(yīng)固定內(nèi)參只優(yōu)化外參(R, T)。如果不固定算法會(huì)同時(shí)優(yōu)化內(nèi)外參可能反而會(huì)破壞已標(biāo)定好的內(nèi)參引入額外誤差。3.3 立體校正讓圖像行對(duì)齊標(biāo)定完成后我們得到了兩個(gè)相機(jī)的關(guān)系。但原始拍攝的左右圖像是存在旋轉(zhuǎn)和偏移的。立體校正的目的就是通過數(shù)學(xué)變換將左右圖像“投影”到同一個(gè)平面上使得左右圖像中的對(duì)應(yīng)點(diǎn)只在水平方向x軸有差異即視差而在垂直方向y軸完全對(duì)齊。這極大簡(jiǎn)化了后續(xù)尋找匹配點(diǎn)的搜索過程從二維搜索變?yōu)橐痪S搜索。Mat R1 new Mat(), R2 new Mat(); Mat P1 new Mat(), P2 new Mat(); Mat Q new Mat(); // 視差轉(zhuǎn)深度矩陣是后續(xù)3D重建的關(guān)鍵 Rect validRoi1, validRoi2; Cv2.StereoRectify( leftCameraMatrix, leftDistCoeffs, rightCameraMatrix, rightDistCoeffs, imageSize, R, T, out R1, out R2, out P1, out P2, out Q, StereoRectificationFlags.ZeroDisparity, // 讓校正后的圖像主點(diǎn)對(duì)齊 -1, // alpha值-1表示自動(dòng)裁剪0表示保留所有黑邊1表示不保留黑邊但損失部分圖像 new Size(0, 0), out validRoi1, out validRoi2 ); // 計(jì)算校正映射表 Mat leftMap1 new Mat(), leftMap2 new Mat(); Mat rightMap1 new Mat(), rightMap2 new Mat(); Cv2.InitUndistortRectifyMap(leftCameraMatrix, leftDistCoeffs, R1, P1, imageSize, MatType.CV_32FC1, leftMap1, leftMap2); Cv2.InitUndistortRectifyMap(rightCameraMatrix, rightDistCoeffs, R2, P2, imageSize, MatType.CV_32FC1, rightMap1, rightMap2); // 對(duì)任意新圖像進(jìn)行校正 Mat leftRectified new Mat(); Mat rightRectified new Mat(); Cv2.Remap(leftOriginal, leftRectified, leftMap1, leftMap2, InterpolationFlags.Linear); Cv2.Remap(rightOriginal, rightRectified, rightMap1, rightMap2, InterpolationFlags.Linear);校正效果驗(yàn)證校正后你可以畫一些水平線貫穿左右圖像觀察同一場(chǎng)景特征點(diǎn)是否基本落在同一水平線上。這是判斷校正是否成功最直觀的方法。實(shí)操心得StereoRectify中的alpha參數(shù)是個(gè)平衡藝術(shù)。設(shè)為-1自動(dòng)或0比較穩(wěn)妥會(huì)保留有效區(qū)域但可能有黑邊。如果你需要最大化利用圖像區(qū)域可以嘗試調(diào)整alpha0~1但務(wù)必檢查validRoi確保后續(xù)處理只使用兩個(gè)ROI的交集部分否則邊緣區(qū)域會(huì)因缺少對(duì)應(yīng)點(diǎn)而產(chǎn)生錯(cuò)誤。4. 立體匹配與視差圖計(jì)算這是雙目視覺中最核心、最耗計(jì)算資源的步驟。目標(biāo)為左圖的每一個(gè)像素在右圖上找到其對(duì)應(yīng)的匹配點(diǎn)并計(jì)算它們?cè)谒椒较蛏系南袼刈鴺?biāo)差這個(gè)差值就是視差。4.1 匹配算法選擇BM、SGBM與深度學(xué)習(xí)OpenCV主要提供了兩種傳統(tǒng)算法BMBlock Matching塊匹配StereoBM bm StereoBM.Create(numDisparities, blockSize); bm.Compute(leftGray, rightGray, disparityMap);原理對(duì)左圖一個(gè)像素塊在右圖同一水平線上滑動(dòng)搜索最相似的塊。簡(jiǎn)單快速。缺點(diǎn)對(duì)紋理稀疏區(qū)域、重復(fù)紋理和光照變化敏感容易產(chǎn)生“條紋狀”噪聲。適用對(duì)實(shí)時(shí)性要求極高且場(chǎng)景紋理豐富的場(chǎng)合。SGBMSemi-Global Block Matching半全局塊匹配StereoSGBM sgbm StereoSGBM.Create( minDisparity, // 最小視差 numDisparities, // 視差搜索范圍 numDisparities / 16 blockSize, // 匹配塊大小必須為奇數(shù) P1 8 * channels * blockSize * blockSize, // 懲罰系數(shù)1 P2 32 * channels * blockSize * blockSize, // 懲罰系數(shù)2 disp12MaxDiff 1, // 左右一致性檢查最大容差 preFilterCap 63, // 預(yù)濾波圖像像素的截?cái)嘀?uniquenessRatio 10, // 唯一性檢測(cè)比例 speckleWindowSize 100, // 視差連通區(qū)域斑點(diǎn)濾波窗口大小 speckleRange 32, // 視差斑點(diǎn)濾波范圍 mode StereoSGBM.Mode.SGBM ); sgbm.Compute(leftGray, rightGray, disparityMap);原理在BM的基礎(chǔ)上引入了一維路徑代價(jià)聚合和動(dòng)態(tài)規(guī)劃通過多個(gè)方向的一維約束來近似二維的全局能量最小化。效果比BM好很多。優(yōu)點(diǎn)能較好地處理弱紋理區(qū)域視差圖更平滑、完整。缺點(diǎn)計(jì)算量比BM大。適用絕大多數(shù)對(duì)精度有要求的應(yīng)用場(chǎng)景是默認(rèn)推薦選擇。參數(shù)調(diào)優(yōu)經(jīng)驗(yàn)numDisparities必須是16的整數(shù)倍。它決定了可探測(cè)的最近距離。設(shè)得越大能看到的物體越近但計(jì)算量也越大且可能引入噪聲。一般根據(jù)基線距離和相機(jī)焦距估算一個(gè)最大值。blockSize匹配窗口的邊長(zhǎng)奇數(shù)。越大抗噪聲能力越強(qiáng)但邊緣會(huì)越模糊。通常在3~21之間奇數(shù)嘗試。紋理豐富的場(chǎng)景用小窗口如5紋理弱的用大窗口如11。P1, P2懲罰系數(shù)控制視差平滑度。P2P1。通常按上述公式設(shè)置是個(gè)不錯(cuò)的起點(diǎn)。uniquenessRatio唯一性檢測(cè)。值越大匹配要求越嚴(yán)格能過濾錯(cuò)誤匹配但也可能增加無效點(diǎn)視差為0。通常5-15。speckleWindowSize和speckleRange用于過濾視差圖中小的孤立斑點(diǎn)噪聲。對(duì)于有紋理的場(chǎng)景非常有效。4.2 視差圖后處理直接由SGBM計(jì)算出的視差圖disparityMap是16位有符號(hào)整數(shù)CV_16S格式其中每個(gè)像素的值是真實(shí)視差值乘以16。并且包含大量噪聲和無效值通常為負(fù)數(shù)或0。// 1. 轉(zhuǎn)換為浮點(diǎn)視差圖并除以16 Mat disparityVis new Mat(); disparityMap.ConvertTo(disparityVis, MatType.CV_32F, 1.0 / 16.0); // 2. 過濾無效視差例如SGBM中最小視差以下的區(qū)域 Mat mask disparityVis minDisparity; disparityVis.SetTo(0, ~mask); // 將無效區(qū)域設(shè)為0 // 3. 可選中值濾波或雙邊濾波平滑視差圖并保持邊緣 Mat filteredDisparity new Mat(); Cv2.MedianBlur(disparityVis, filteredDisparity, 5); // 或 Cv2.BilateralFilter(disparityVis, filteredDisparity, 5, 50, 50); // 4. 可視化將視差范圍歸一化到0-255以便顯示 Mat disparityDisplay new Mat(); Cv2.Normalize(filteredDisparity, disparityDisplay, 0, 255, NormTypes.MinMax, MatType.CV_8U);處理后的disparityVis才是每個(gè)像素點(diǎn)真實(shí)的視差值單位像素。5. 三維點(diǎn)云重建與深度計(jì)算有了校正后的圖像對(duì)、精確的視差圖以及立體校正生成的重投影矩陣Q我們就可以將二維圖像坐標(biāo)(x, y)和其對(duì)應(yīng)的視差d通過一個(gè)簡(jiǎn)單的矩陣乘法變換到三維世界坐標(biāo)(X, Y, Z)。5.1 使用重投影矩陣QQ矩陣在StereoRectify中已經(jīng)得到。它的作用是將(x, y, d, 1)齊次坐標(biāo)映射到(X, Y, Z, W)。// 假設(shè) disparityVis 是 CV_32F 類型的有效視差圖 Mat xyz new Mat(); // 輸出將是 CV_32FC4 的Mat每個(gè)像素有4個(gè)通道 (X, Y, Z, W) Cv2.ReprojectImageTo3D(disparityVis, xyz, Q, handleMissingValues: true, ddepth: MatType.CV_32F); // 訪問某個(gè)像素的三維坐標(biāo) int row 300, col 400; Vec4f point xyz.AtVec4f(row, col); float X point[0] / point[3]; // X X / W float Y point[1] / point[3]; // Y Y / W float Z point[2] / point[3]; // Z Z / W 這就是深度 if (point[3] 0) // W為0表示無效點(diǎn)如視差為0 { // 該點(diǎn)三維坐標(biāo)無效 } else { Console.WriteLine($3D Coordinate at ({col}, {row}): X{X:F2}mm, Y{Y:F2}mm, Z{Z:F2}mm); }深度Z的計(jì)算原理 根據(jù)三角形相似原理深度Z f * B / d。 其中f是相機(jī)焦距像素單位已包含在Q矩陣中。B是基線距離兩個(gè)相機(jī)光心的距離單位毫米也已包含在Q矩陣中來自平移向量T。d是視差像素。ReprojectImageTo3D函數(shù)內(nèi)部就是利用Q矩陣高效地完成了這個(gè)計(jì)算。5.2 點(diǎn)云的可視化與處理得到的xyz矩陣就是一個(gè)密集的點(diǎn)云。你可以將其導(dǎo)出為PLY或PCD等格式用CloudCompare、MeshLab等軟件查看。// 簡(jiǎn)單示例將有效點(diǎn)云導(dǎo)出為PLY格式ASCII using (StreamWriter sw new StreamWriter(pointcloud.ply)) { sw.WriteLine(ply); sw.WriteLine(format ascii 1.0); sw.WriteLine($element vertex {validPointCount}); sw.WriteLine(property float x); sw.WriteLine(property float y); sw.WriteLine(property float z); sw.WriteLine(end_header); for (int i 0; i xyz.Rows; i) { for (int j 0; j xyz.Cols; j) { Vec4f pt xyz.AtVec4f(i, j); if (pt[3] ! 0) // 有效點(diǎn) { float x pt[0] / pt[3]; float y pt[1] / pt[3]; float z pt[2] / pt[3]; sw.WriteLine(${x} {y} {z}); } } } }在C#中你也可以集成像HelixToolkit這樣的3D渲染庫在WPF應(yīng)用中實(shí)時(shí)顯示點(diǎn)云。6. 工程實(shí)踐中的常見問題與深度優(yōu)化理論跑通只是第一步讓系統(tǒng)在實(shí)際環(huán)境中穩(wěn)定、精確地工作才是挑戰(zhàn)。6.1 標(biāo)定精度提升技巧多姿態(tài)、全覆蓋拍攝標(biāo)定板時(shí)不僅要左右上下移動(dòng)還要有繞X、Y、Z軸的旋轉(zhuǎn)讓標(biāo)定板出現(xiàn)在圖像的所有區(qū)域特別是四個(gè)角落。這能幫助相機(jī)模型更好地?cái)M合整個(gè)成像平面。光照均勻避免反光和陰影。均勻的漫射光是最理想的。棋盤格黑白對(duì)比要鮮明。延遲與同步如果使用兩個(gè)USB相機(jī)務(wù)必確保軟件觸發(fā)同步或者使用硬件觸發(fā)。異步拍攝會(huì)導(dǎo)致左右圖像不對(duì)應(yīng)標(biāo)定必然失敗。標(biāo)定板質(zhì)量使用玻璃或金屬基底的高精度標(biāo)定板。紙質(zhì)打印受溫濕度影響會(huì)變形。6.2 立體匹配的“老大難”問題無紋理區(qū)域如白墻、純色物體傳統(tǒng)算法BM/SGBM在此完全失效視差圖會(huì)出現(xiàn)大面積空洞。解決方案增加紋理工業(yè)上常用投影結(jié)構(gòu)光如激光線、光柵來主動(dòng)創(chuàng)造紋理。算法上可以嘗試更大的blockSize或采用代價(jià)濾波如cv::ximgproc模塊中的DisparityWLSFilter來引導(dǎo)匹配。后處理使用圖像修復(fù)Inpainting或基于鄰域的有效視差插值來填充空洞但這會(huì)損失精度。遮擋區(qū)域由于視角不同某些區(qū)域只在其中一個(gè)相機(jī)中可見。SGBM的disp12MaxDiff參數(shù)和左右一致性檢查L(zhǎng)eft-Right Consistency Check可以部分檢測(cè)并剔除這些區(qū)域的錯(cuò)誤匹配。深度不連續(xù)處物體邊緣這里視差會(huì)發(fā)生跳變匹配容易出錯(cuò)導(dǎo)致邊緣“膨脹”或“鋸齒”。使用較小的blockSize和更精細(xì)的代價(jià)聚合方法如SGM的變種可以改善。6.3 性能優(yōu)化與實(shí)時(shí)性考慮SGBM計(jì)算量較大。在C#中處理高分辨率圖像如1280x720可能無法達(dá)到實(shí)時(shí)30fps。降低分辨率在對(duì)深度范圍要求不極端的情況下先將圖像下采樣再計(jì)算視差然后上采樣回去速度提升顯著。ROI限制如果只關(guān)心圖像中特定區(qū)域的深度只對(duì)該區(qū)域進(jìn)行立體匹配。參數(shù)調(diào)整減小numDisparities和blockSize能直接提速但會(huì)犧牲精度和深度范圍。硬件加速OpenCV的某些算法如cv::cuda::StereoBM、cv::cuda::StereoSGM有CUDA加速版本。但這需要NVIDIA GPU和編譯了CUDA支持的OpenCV。在C#中調(diào)用這些需要更復(fù)雜的封裝或考慮使用C編寫核心算法模塊通過DLL供C#調(diào)用。并行處理利用C#的Parallel.For或Task并行處理圖像的不同行需注意OpenCV對(duì)象線程安全。6.4 系統(tǒng)集成與測(cè)量應(yīng)用在我的工業(yè)測(cè)量項(xiàng)目中最終流程如下初始化加載預(yù)先標(biāo)定并保存好的相機(jī)參數(shù)cameraMatrix,distCoeffs,R,T,Q,mapx/y。采集通過AForge.NET或OpenCvSharp的VideoCapture同步采集左右圖像。預(yù)處理校正Remap- 去噪GaussianBlur- 增強(qiáng)對(duì)比度CLAHE。立體匹配使用調(diào)優(yōu)后的SGBM參數(shù)計(jì)算視差圖。后處理視差濾波、空洞填充。三維重建ReprojectImageTo3D得到點(diǎn)云。測(cè)量在左圖校正后上通過鼠標(biāo)點(diǎn)擊選擇兩個(gè)點(diǎn)根據(jù)這兩點(diǎn)對(duì)應(yīng)的三維坐標(biāo)計(jì)算歐氏距離。// 簡(jiǎn)化的距離測(cè)量邏輯 Point2d pixelPoint1 new Point2d(100, 200); // 圖像點(diǎn)1 Point2d pixelPoint2 new Point2d(300, 250); // 圖像點(diǎn)2 // 獲取視差值注意坐標(biāo)轉(zhuǎn)換 float disp1 disparityVis.Atfloat((int)pixelPoint1.Y, (int)pixelPoint1.X); float disp2 disparityVis.Atfloat((int)pixelPoint2.Y, (int)pixelPoint2.X); if (disp1 minValidDisparity disp2 minValidDisparity) { // 反投影到3D Vec4f pt1 xyz.AtVec4f((int)pixelPoint1.Y, (int)pixelPoint1.X); Vec4f pt2 xyz.AtVec4f((int)pixelPoint2.Y, (int)pixelPoint2.X); Vec3f worldPt1 new Vec3f(pt1[0]/pt1[3], pt1[1]/pt1[3], pt1[2]/pt1[3]); Vec3f worldPt2 new Vec3f(pt2[0]/pt2[3], pt2[1]/pt2[3], pt2[2]/pt2[3]); // 計(jì)算歐氏距離 double distance Math.Sqrt( Math.Pow(worldPt2.Item0 - worldPt1.Item0, 2) Math.Pow(worldPt2.Item1 - worldPt1.Item1, 2) Math.Pow(worldPt2.Item2 - worldPt1.Item2, 2) ); Console.WriteLine($Measured Distance: {distance:F3} mm); }精度驗(yàn)證我使用高精度量塊作為基準(zhǔn)反復(fù)測(cè)試。發(fā)現(xiàn)影響最終測(cè)量精度的關(guān)鍵按重要性排序依次是標(biāo)定板物理尺寸精度 標(biāo)定板平整度 相機(jī)同步性 立體匹配算法參數(shù) 圖像分辨率。在良好條件下在1米工作距離上達(dá)到0.1%的相對(duì)測(cè)量精度即1米誤差1毫米是可行的。這套基于OpenCvSharp和C#的雙目視覺系統(tǒng)從原型到穩(wěn)定運(yùn)行花了近兩個(gè)月時(shí)間大部分時(shí)間都耗在標(biāo)定流程的標(biāo)準(zhǔn)化、匹配參數(shù)的精細(xì)調(diào)優(yōu)以及異常情況的處理上。它現(xiàn)在安靜地運(yùn)行在客戶的車間里替代了原來的人工抽檢??粗€(wěn)定地輸出一個(gè)個(gè)精確的測(cè)量數(shù)據(jù)感覺那些熬夜調(diào)參、對(duì)著滿是噪聲的視差圖發(fā)呆的日子都值了。如果你也在嘗試類似的項(xiàng)目我的建議是耐心做好標(biāo)定它是所有精度的基石理解每一個(gè)算法參數(shù)背后的物理意義而不是盲目試錯(cuò)最后用真實(shí)場(chǎng)景的數(shù)據(jù)去驗(yàn)證和迭代你的系統(tǒng)。視覺項(xiàng)目一半是算法一半是工程。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
另类一区| 91碰超| 亚州精品人妻一二三区| 9丨久久九九九| 亚洲密乳AV| 久久露脸国产老熟女| 日本超碰在线国产一区| 欧洲自拍第一页| 亚洲成人免费中文字幕| 99热超碰| 亚洲天堂男人天堂网| 亚洲图片激情综合另类| 蜜色网色哟哟| 一级乱伦网站| 蜜桃久久综合视频| 乱性AV| 国产精品免费视频不卡| 色色青青久久| 欧美特大黄一级片片免费| 啊啊啊啊啊啊啊国| 欧美1区二区三区公司| 五月香婷婷| 欧美图片校园春色| 91在线色综合| 91被操| 中文有码第五页| 久久这里只| 激情综合亚洲| 欧美丝袜中文字幕07在线| 无码逼| 97天天爽| 天堂а√在线最新版在线 | 人妻少妇久久中文字幕一区二区 麻豆 | 97干com| 少妇天堂| 天天香香欲综合| 97欧美性爱| 91艹| 色一情一乱一乱一区91Av| 激情视频图片| 青青草日韩无码| 在线不欧美| 懂色AV一区二区三区| 99999re| 国产黄a三级三级三级av在线看| 亚洲欧美日韩不卡人妻| 久久成人网站| 亚洲中文字幕日产无码久久| 亚洲第一在线视频| 强奸乱伦AV一天堂网| 欧美日韩人人早| 变态乱伦伪娘灌肠一区二区| 亚洲高清视频在线免费观看| 加勒比综合88| AV天堂丝袜| 亚洲美女自拍偷拍视频| AAAA欧美日韩| 国产精品久久久久久久久久久久久久| 青青草五月天| 99热精品青草在线| 婷婷操逼| 一区二区三区视频在线观看免费| 日韩av在线精品观看| 国产精品天干天干综合网麻豆 | 精品午夜福利导航| 91这里只有精品| 97国产精品一区| 亚洲综合性感在线| 欧洲乱码一区二区| 亚欧精品久久久久久久久久久| 无码丰满熟妇一区二区浪潮AV| 99精品九九九九九九| 国产九九九九九九| 成人精品水蜜桃久久久久久久| AV九九| 俄罗斯一区二区视频在线观看 | 国产精品69久久久久久久| 日韩在线视频1234| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 老熟女91av| 久热久| 看一级黄色视频| 日韩欧美中文日韩欧美色| 久久久久久亚洲精品中文字幕人妻| 岛国毛片在线观看免费| 久久久久久AⅤ无码免费肉站| 欧洲综合无码| 黄色免费一级在线毛片| 国产综合在线视频网站| 51一区二区三区| 国产一区二区a毛片| 免费操逼91| 午夜激情成人在线观看| 国产情侣自拍在线播放| 亚洲熟女乱综合一区二区三区| 中文字幕55555| 97色97好| 男人综合网| 大香蕉www.超碰| 精品超碰国产| 9久精品视频在线观看| 97视频新免费| 丰满熟女一区二区三区在线播放| 久久久久久亚洲Av无码精| 高清国产成人无码| 日韩欧亚太美不卡| 亚洲乱妇p22| 无码外流操逼视频| 色九九久九九| 欧美激情性久久久久久| 青青草日韩无码| 久久国99999| 欧美激情黑人| 人妻偷拍一区二区三区| 玖玖爱免费观看视频| 亚洲啪啪性视频| 天美传媒国产原创中文字幕亚洲欧美另类 | 大香蕉伊人在线成人AV在线观看 | 中文字幕日韩专区精品系列| 嗯嗯啊中文字幕| 亚洲女优有码无码高清| 日本护士高潮| 伊人性在线视频| 国产欧美日韩女同性恋ww喷水精品 | 尤物视频偷拍免费| 狠狠色色| 人人搞人人插人人操| 国产成人网址| 亚洲日韩精品一区二区| 欧美亚洲日本激情在线| 久操影视| 99在线精品视频| 97视频播放| 九九九综合精品| 又粗又长又大国产不卡| 亚洲自拍一区夜夜操| 日本三级A片网站com| 欧美综合骚| 91色色网站| 91精品丝袜久久久久久无码人妻| 亚洲欧美日韩二区视频| 使劲用力艹少妇视频一区二区| 亚洲av国产av综合av卡| 蜜桃臀AV在线| 欧美老熟另类| 欧美中出1| 无码国产精品96久久久久孕妇| 色婷婷久久综合超碰| 久久成人午夜精品影院 | 一区二区播放| 国产精品 午夜福利| 九月丁香婷婷色| 久久久月天| 久久秀这里有精品| 干婷婷综合网| 美女一区二区国产精品| 亚洲 自拍偷拍 欧美| 酒色综合网| 九九九九九九九九九九九九九九九女| 校园春色制服丝袜中文字亚洲| 亚洲影院成人| 午夜精品久久一区二区| 怡红院成人视频| 裸体美女久久久| 欧美不卡在线美女| 亚码激情| 午夜激情床戏激情| 毛片视频白嫩| 天美一二三在线观看Av| 欧美日韩免费专区在线| 小草精彩毛片| 亚洲欧美综合色| 超碰超碰95| 久久九九99| 激情色色| 亚洲欧美精品一区天堂久久 | 干妹子| 四虎在线播放| 亚洲风情在线观看| V A在线| 国产一国产一级毛片古装| 91精片| 成 人 A V免费视频在线观看| 欧美激情高清性猛交| 天天看精品动漫视频一区| 免费试看60秒| 国产家庭乱伦网址| 超碰79人人乐| 亚洲综合贴图91| 干妹子| 花花AV导航| 黄色人人| 五月丁香狠狠爱| 精品国产乱码久久久久久久久1| 久久久久人妻| 大香蕉啪啪啪啪在线| 蜜臀va69| 日韩色欲久久一二三四区| 伦理片秋霞免费影院| 欧美日韩丝袜| 97视频新免费| 亚欧成人中文字幕一区| 91激情网| 中文操逼字幕| 日本黄 R色 成 人网站| 成人热久久精品| 97资源久久| 日韩不卡在线一区二区| 超碰97在线 欧美 国产| 色婷婷成人综合| 久草色在线观看| 可以免费看黄片的视频| 欧美亚综合色图| 在线观看中文字幕| 五月天激情小说| 午夜啊啊啊| 免费国产视频| 亚洲五月丁香花狠狠干一区二区三区| 亚洲精品黑丝| 国产精品久久久久久久毛片1| 97AV爱| 4虎在线视频| 亚洲精品自拍| 性色av一区二区| 欧美v日韩v亚洲v最新在线| 色色激情五月天| 美女性91| 亚洲高清无码免费观看视频| 伊人色综合欧美| 午夜无遮挡男女啪啪视频| 尻女朋友一夜| 金莲网址| 久久久久九九九九| 亚洲视频二区 | 亚洲欧美天堂在线| 国产精品视频白浆免费| 少妇久久久久久| 黄色不卡视频| 综合亚洲网| 91人妻素女| 久久久不卡| 操操操操操操| 丁香六月激情综合| 欧美αv.com| 久午视频| 成年在线视频日本亚洲在线视频区精品江靖宇公司| 欧美性爱系列| 欧美呦呦性爱| 少妇无码999| 大鸡巴久久久| 懂色AV蜜臀无码精品APP| 亚洲成人AB| 97青青操视频| 亚洲综合五月天| 国产精品999zyz| 尤物av网站免费在线播放| 今日头条成人一区二区三区四虎精品| 中文字幕在线观看二区三区| 国产一区自拍欧美日韩| 天天做日日爱夜夜爽| 99少妇| 色av中文字幕| 精品欧美А∨无码黑人大荫蒂| 97色欧州| 97婷婷色| 日韩av乱伦| 国产精品呦一区二区三区| 亚洲欧美另类小说| 久久精品国产精品一区| 亚洲乱码精品一区二区| 欧美黄色大片在线观看 | 大香交| 久久精9| 国产精品午夜成人福利| 亚洲91网。| 欧美久久久| 九九九九九九视频| 在线天堂资源亚洲| 久久国产AⅤ| 激情小说日韩无码| 激情综合网五月婷婷五月天| 亚洲最新中文字幕免费| 在线观看日韩av不卡| av日韩手机在线影视| 天美传媒婬乱| 黄色工厂这里只有精品| 在线日韩日本亚洲国产| 久久性生大片免费观看性| 67914在线兔费成人视频| 亚洲欧美综合图片| 秋霞网无码| 性在久久久久久| 国产18精品亚洲精品| 91丨九色丨东北熟女| 天天视频综合在线观看视频| 人妻熟女av国产网站| 五月天婷婷基地| 91在线欧色| 国产丸一视频| 免费av高清无码| 亚洲97久久精品亚洲| 亚洲五月丁香花狠狠干一区二区三区 | 人人妻人人狠人人| 中文字幕少妇色 | 成人热久久精品| 亚洲国产尤物yw在线观看| 亚洲色图殴美色图激情乱伦| 天色综合网| 亚洲图片偷拍视频区| 99在线精品视频| 一区二区三区成人高清视频| 宅男91视频在线播放| 大肉棒导航| 国产精品久久久| 韩国一级婬片A片AAAAA| 蜜臀久久精品久久久久视频| 精品丰满熟妇人妻一区| www成人啪啪18秘 免费| 91激情国产| 一类av片在线看| 无码一区二区三区四区五区六区七区八区九区十区视频 | 蜜臀av中字字幕网站| 亚洲av青草久久一区二区| 久久亚洲AV无码专区国产精品| 欧美亚洲综合色| 综合 亚洲 欧美| 婷婷综合久久| 国产1024在线播放| 亚洲网污污污污| 秋霞久久亚洲精品成人| 精品国模无码| 亚洲青色欧美| 人人爱人人操人人性| 大屁股熟女一区二区三区| 国精精品无码一二三区水多多| 草久久久| 亚洲 欧美 手机在线观看| 欧美少妇高潮久久91| 国产精品激情久久久久久久| 色99久草| 一级特级aaaa毛片免费观看 | 一区 欧美 日韩 麻豆| 免费人成在线观看网站品爱网| 天天α片| 91狠狠综合久久久久久| 国产h片在线观看视频| 天天综合~91| 亚洲最大91网| 中文字幕av乱伦| 91精品人妻偷情| 夜夜高潮夜夜爽国产伦精品| 欧美A√综合网 | 国产午夜在线观看| 操逼短片| 欧美色图亚洲色图成人在在线| 芊芊操逼视频无码| 亚洲黄色视频在线观看视频| 男人天堂新| 精品无码一区二区人妻久久蜜桃| 亚洲不卡不卡中文字幕不卡| 亚洲福利中文字幕在线| 伊人精品久久网站| 精品三级在线专区| 超碰成人人人爽人人爽| 大香蕉78| 思思热一热婷婷热一热| 欧美丝袜中文字幕07在线| 大香蕉十区| 色色99| 996热| 不卡超碰护士AV在线免费播放| 美女毛片999| 激情文学网伊人| 免费精品中文字幕| 国产黄色av大片网站| 国产美女高潮叫床视频| 九九激情网| a网站免费观看| 国产18精品亚洲精品| 精品国产精品一区二区| 又黄又爽在线观看视频| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 秋霞欧美性爰视频| 99精品视频在线观看| 色婷婷基地| 五月丁香| 亚洲天堂男人在线| 美女高潮视频91| 亚州色图狠狠干| 91AV天堂| 91neishe| 91老熟女91老女人| 97久久网| 伊人久久婷婷| 日本天天操| 九九九网页| 欧美亚洲成人在线一区二区三区| 加勒比无码毛片| 日韩欧美性吧婷婷乱伦大香蕉| 极品国产内射| 丁香五月婷婷基地| 96国产污污污丝袜| 97干色| 欧美性爱三区二区| 欧美 日韩 国产传媒| 久久九九热| 人人看黄色视频| 大香蕉黄色一区| 中文幕97| 男女做爰猛烈动高潮A片免费应用| 欧美日日操| 大香樵伊人网| 97在线免费观看| 操一区| 久久神马影院| 熟女激情综合网| 91女在线观看| 国产乱青青草久久| 伊人网青青| 久久女婷| 一区二区三区麻豆| 美女人妻色网站| 欧美性爱一区二区三区| 欧美日韩国产高清在线一二三区 | 97国产综合欧美| 密乳无码| 欧美色网络| 91亚洲黑人| 久久永久无码人妻视频| 人妻天天爽| 久久丁香| 日本人妻伦在线中文字幕| 99久久网站| 99热线麻豆 | 久久综合久久综合人久久夜精品| 9色国产精品一区粉嫩| 超碰天天久久79| 国产宅男宅女在线观看| 国产白丝AV| 嗯嗯嗯啊啊啊操的我好爽| 中文字幕日韩专区精品系列 | 在线观看高清AV| 1204金沙人妻懂旧版免费| 极品美女福利在线观看| 国产精品96| 国产一区二区三区久久精品太古里| 日操粉逼逼| 97爱综合| 精品人妻伦一区二区三区久久| 丁香六月婷婷久久综合| 91人妻最真实刺激绿帽| 超碰欧美97| 91精品又粗又猛又爽| 国产综合操逼高清| 亚洲天堂五月天国产| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 少妇色综合| 熟女啪啪视频| 婷色五月| WWW黄片COM| 岛国在线一区二区三区| 国产欧美一级在线观看| 欧 美 自 拍 偷 拍| 青青草好吊色| 精品无人区麻豆乱码1区2区图片| 亚洲色图超碰在线| 操狠狠| 高清无码 国产精品| 1769国内精品视频| 亚洲欧美日韩制服另类| 午夜性刺激视频免费观看| 青青草大香蕉视频| 风月影院十八禁| 久久啊啊| 久久男人天堂| 伊人网免费视频| 久久性爱视频99| 久久精品国产亚洲AV无码电影| 亚洲丝袜B诱惑| 久久精品亚洲婷婷| 九九九九九九视频| 欧美色图自拍| 久久久久久久唑| 91色综合| 婷婷去俺也去六月色| 亚洲人妻av| 啊啊啊啊啊啊啊国| 日本蜜桃| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 天天日日本| 天天日骚逼熟女| 91精品老女人| 啪啪啪东京| 伊人久操| 天天综合欧美综合| 插入粉嫩少妇视频| 无码久久国产| 夜夜一区二区| 久久AV色| 色欲天天综合久久久无码网中文| 日韩性爱人人爱人人操| 亚洲天堂综合AV| 欧洲大香蕉| 亚洲伊人成综合成人网| 黄片无码在线制服| 精品十三区| 色97欧美| 婷色五月| 国产精品网址| 五月丁香六月激情| 高精欧美色| 超碰天天久久79| 96超碰网| 久久久99免费| 国语精品内射在线观看| 国产性爱乱伦AV| 天天肏夜夜肏| 97天天综合网| 校园春色亚洲色图| 人人做天天爱| 中字乱伦AV| 大香蕉伊人网WWWn0n| 搡老熟女免费视频| 亚洲欧洲第二视频在线观看色图| 日本在线不卡v二区| 日韩少妇无码| 男人 天堂 日 亚洲| 国产成自自拍在线观看| 亚洲 欧美 另类 日韩 人妻一区| 男人把坤坤插入女人的下体| 欧亚揄拍偷拍精品视频| 欧美性Fer办公室秘书| 激情情色五月天| 色综合国产在线观看| 亚卅熟女乱色| 欧洲大香蕉| 加勒比伊人| 91蜜臀熟女| 天美传媒麻豆一区二区三区国产精| 玖玖爱在线视频免费观看| 色色色综合| 国产精品粉嫩福利在线| a亚洲欧美色欲| 亚洲骚女一区二区三区| 日比av无码| 国产一区二区在线电影| h色99999| 国产精品极品美女视频| 五十路熟女工口| 久久国产逼| 久久欧美按摩999| 老熟女综合网| 99久久9| 97 国产精品| 日韩成人大片一区二区| 97天天插| 超碰99在线观看| com 首页 18岁 禁区 女优 免费 精选 同城| 亚洲电影中字一区二区| 无码人妻丰满熟妇奶水区毛片| 日逼97| 理论久久婷婷网 8| 日本视频在线中文字幕| 美女AV一区二区| 精品人妻av在线播放| 色麻豆AV| 91总综合网| 成人精品久久| 色蜜AV| 亚洲欧洲综合成人av一区| 天天操天天干美女网址导航| 日韩AV中文字幕电影| 亚洲成a人片在线观看中文!!!| 欧美伊人电影| 成人欧美日超碰| 人妻精品综合中文字幕在线| 亚洲综合一区二区| 2018天天干在线视频| 国产成人亚洲精品无| 欧美最婬乱婬爆婬牲视频| 无码人妻丰满熟妇奶水区毛片| 国产成人无码久久精品| 女人 A一级| 人人操人人操人人操人人操人人操人人人11.CM | 九九九国产精品| 色阁阁AV综合网| 西西美女视频网| 手机不卡视频不卡在线一二三区 | 色欲人妻一区二区在线| 久久av色| 国产精品久久久久久久久久久久久久久久 | 久久精品午夜国产亚洲AV无码| 欧美97超碰| 91美女小视频| 国产极品粉嫩馒头一线天av| 国产精品免费久久久久久久久久| 欧美 亚洲 第一页| 国产传媒午夜理伦精品| 17c在线成人免费A片观看| 日本人妻中文字幕精品| 欧美性爱精品七区| 国产不卡免费在线视频| 香蕉人人操tv| 看日韩美女二区三区免费操逼视频 | 精品少妇高潮久久| 搡老女人老91二区| 天天干天天舔| 亚洲中文一区二区三区| 丰满人妻一区二区三区| 久操B网| 国模91| 久久99九九九九6666免费观看软件| 成人av影院在线观看| 欧美日韩性爱视屏免费看了| 东京热视频网| 94色色电影网| 97色在线视频| 免费岛国一级片| CCYY草草影院地址入口| 中文字幕精品一区二区精| 国产吞精a级片激情电影| 亚洲成人福利电影免费| 岛园激情| 人人喜人人妻| 国产热av| 性色AV网站| 久久综合资源一区二区| 超碰在线看| 亚洲欧美精品一区天堂久久 | 蜜臀AV成人精品蜜臀AV久久| 日韩人体偷拍| 情色图区| 芊芊操逼视频无码| 这里是精品| 青草园大香蕉| 污色区网站| 中文字幕在线免费观看视频| 亚洲AV资源| 亚洲天天自拍| 中国乱伦一区二区| 97硬碰| 欧美性综合| 久久久日本电影| 做爱A级亚欧| 国产精品九9| 日日日日做夜夜夜夜做无码97| 少妇天堂| 成年人性爱日韩| 先锋精品av色鲁| 大乔未久88一区| 超碰在线欧美性爱激情| 国产精品免费视频不卡| 日本丝袜美腿人妻九九| 欧美色乱| 99无码视频| 蜜桃午夜视频一区二区| 韩国一级AAA| 天天射,天天操,天天爽-国内精品一区二区三区-成人AV | 青春草A| 丰满人妻一区二区三区| 日韩亚洲美州欧洲综三区一品在线| 九九久精品| 激情五月婷| 亚洲色图 欧美| 看黑人AV不卡| 人人性爱视频免费| 一区中文字幕二区日韩| 国产日本顶级一区二区三区| 色色国产| 日韩无码三级影院| 色超碰综合| 中文字幕av乱伦| 香蕉国产97| 国产激情综合| 99色网| 97色欧州| 韩日无码在线观看| 96超碰网| 国产激情综合| 午夜福利精品| 韩国一级做a久久久久| 日本黄色裸日本黄色裸体| 日本岛国黄色网址| 97视频网站| 色婷婷久久综合超碰| 国产AV色黄看到爽| 夜夜高潮夜夜爽夜夜爱爱一区| 少妇毛片久久| 五月婷婷六月色| 青娱乐亚洲自拍| 香蕉99秘 一区精品蜜桃臀| 中文字幕人妻色偷偷久久皮 | 亚洲天堂另类美腿| 色综合av男人天堂| 亚洲精品97| 另类图片五月天| 啊啊啊啊啊啊啊好爽不要| 天天色播亚洲综合网站| 97视频在线播放| 91久久久久免| 欧美人人操人人插| 欧美,日韩,中文,另类| 97欧美| 校园春色 亚洲| 日本一卡二区在线| 青操影院| 高清孕妇孕交 交孕妇| 2019亚洲男人天堂| 国产美女激情| 天天淫人人妻日日色| 日韩在线性爱免费视频| 91AV入口| 日本性爱欧美性爱| 中文字幕日韩精品久久| 亚洲成人日韩小说| 操操操日本的逼| 八人操人人摸人人看| 欧洲亚洲国产综合在线| 岛国激情视频在线观看| 久久午夜鲁丝片| 影音先锋每日最新资源在线观看 | 九九九九精品一区| 操学生天天| 国产乱人妻精品入口| 人人爱夜夜爱| 亚洲www91| 精品十八在线观看| 亚洲啪啪综合?v一区综合精品区| 尹人免费观看视频在线| 天天操夜夜嗨| 欧美久久九九| 91网站18在线| 四虎影视 亚洲无码| 91色插| 岛国片在线视频网站| 97人妻免费中文字幕| 人妻少妇色综合| 伊人大香蕉在线| 91色s| 亚洲欧洲中文日韩女优乱码| 亚洲最新a在线观看| 久久精品欧美一区蜜桃| 欧美日韩少妇色情| 国产熟妇一区二区| 久久精品国产久精国产| 亚洲欧美97√| 久久激情网| 日日噜噜夜夜久久亚洲一区二区| 人人妻人人爽一区二区三区| 国产熟女乱论| 97国产色图| 欧美操人视频| 亚洲另类色图片| 久久9免费视频| 粉嫩粉嫩一区性色AV片| 91亚洲黑人| 超碰视97中文| 无码区蜜乳| 殴美,日韩国产伦精品| 欧美 日韩第一性色| 日韩av性爱在线播放| 天美麻花大全视频| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 伊人99热| 高清不卡 中文 人妻| 女人与公拘交酡2020视频| 黄色区免费观看中文字幕| 日韩 欧美 校园一区| 飘花国产午夜精品不卡| 婷婷色网| 国产精品嫩草影院免费| 成人一区二区三区四区| 日本欧美中文字幕| 97AV爱| 亚洲性网| 偷拍综合亚洲| 91丨九色丨东北熟女| 天天综合网~91| 国产偷仑| 国产理论视频在线播放| 天天综合91入口| 91亚洲黑人| 国产极品美女高潮无套在线观看| 色综和网| 五月丁香成人网| 精品免费视频国产一区| 97网址97| 午夜精品99久久久久传媒| 日韩在线地址一| 2019亚洲男人天堂| 亚洲欧洲国产综合av| 久久9精品| 黄呦呦在线| 亚洲 欧美 手机在线观看| 精品一级毛片在线观看| 国模91| 色第一页| 亚洲成人在线播放| 日韩无码操逼片| 精品人妻一区二区三区免费视频| 99精品久久| 激情抓乳插进去啪啪啪日韩| 久久精品无码一区二区三区| 老师充足的奶水小说| 亚洲最新中文字幕免费| 精品免费一区| 色悠久久久av| 免费的av网| 日韩中文字幕在线视频观看| 久热一区二区| 亚洲日韩黑丝| 亚洲一区二区专区-国产丝袜精品丝袜-成人AV | 欧美亚洲特P| 99精品综合久久久久五月天| 国产精品人妻无码久久久互動交流| 98精品国产乱码久久久久久| 欧美在线大香蕉| 欧美精品丝袜久久久中文字幕| 午夜天堂精品久久久久91| 黄aaaaaaaaaaaaaaaaaa色网站| 亚洲天堂中文字| 国产51色综合久久免费| 国产探花精品在线| 国产精品蜜乳AV| WWW啪啪的com| 激情文学88| 97色网| 试看日韩黄片| 偷拍盗拍亚洲色图图片 | 中文字幕丰满人妻日本| 97日韩超碰超碰中文字幕| 亚洲成人AB| 蜜屁Av| 熟女高潮精品一区二区| 东京热不卡视频| 91国产丝袜美女| 国产精品第一页国产大屁股视频免费区i| 欧美 日韩 另类 亚洲| 日韩久久艹| 美女天天干| 91亚洲欧洲| 91伊人久| 亚洲欧美中文日韩视频中国语| 熟女字幕| 久久人妻视频| 色综合中文字幕不卡| 美女干逼2| 色汉综合| 国产97色在线| 九九九九九九成人| 熟妇一区二区| 亚洲国产精品9999在线观看| 婷婷久久五月| 欧美极品| 99精品在线播放| 亚洲影院小综合| 日韩精品午夜操呦呦不卡影院| 日韩性爱小视频| 顶级丝袜熟女一区二区三区| 精品人妻一区二区乱码一区二区| 伊人五月天婷婷| 色哟哟的毛片| 加勒比色99999| 日本视频一区二区三区| 炮色五月| 火箭成精品视频884必出精品| 欧美大片91| 26uuu性| 色婷婷丁香五月| 欧美在线大香999| 日本精品网站在线中文| 啊好爽受不了无码| 人人摸人人入| 91最新综合| 男女做爰猛烈动高潮A片免费应用| 天天综合91在线| 亚洲天堂男人天堂网| 婷婷色一区| 久久精品国产亚洲AV先锋| 嗯啊不要啊在线 | 性爱网站一区二区| 人妻插插人妻人| 99国产精品| 亚熟在线| 国产日韩区| 偷拍片久久| 日本中文字幕不卡视频| 高跟伊人julia ann| 婷婷av在线中文字幕| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 影音资源男人日韩| 五月婷婷色| 青娱乐国产剧情av一区| 少妇同性| 国产福利影视| 中文字幕一区二区无码成人| 久久久999网站| 成人 日本A片无码8888| 啊啊啊慢点| 玖玖爱综合| 欧美伊人久久综合网| 无码人妻毛片丰满熟妇精品区| 日本黄 R色 成 人网站| 强奸乱伦 亚洲一区| 日本九九久久99| 男人的天堂2019AV| 天天看天天日| 99综合自拍| 99热精品在线观看| 中国一级特黄大片护士| 天天综合色图| 校园春色宗合网| 亚洲情色图片区| 精精夜夜| 91狠狠综合久久久久久| 亚洲淫乱骚妇AV| 天堂种子在线www网资源| www.亚洲成人一区| 超碰午夜| 婷婷色色五月天福利| 97超碰中文在线| 91日韩网站| 久久久精| 天美一二三在线观看Av| 91美女中出| av在线资源| www久久99| 探花精品视频| 偷拍自拍在线视频观看| 在线观看岛国有码| 日韩簧片免费看| 蜜臀Av一区二区三区| 日韩91网| 91亚洲综合在线| 欧美性五月| 99国产精品久久久久久久成人热| 观看免费区二区三区二| 九九久久久九九| 丰满搜索结果 -第18页- 久久高清无码 | 丁香五月天视频| 欧美另类色图片| 91在线色| 超碰综合97在线| 欧美人妻少妇| 2021国产成人精品久久| 免费?级毛片无码?∨蜜芽试看| 国产99精品一区二区三区免费| 高跟丝袜AV专区国产| 色色色综合网| 色诱avtt| 精品女同一区二区三区| 97超碰超| 九九九九热| 熟女六十路| 国产丰满少妇久久久精品影院| 69丨亚洲丨精品丨入口免费播放| 丰满熟女人妻一区二区三五十一路| 天天干人人乐| 日日噜噜夜夜狠狠视频无| www…国产操逼| 久久东京国产精品视频| 国内精品伊人久久久久影院会| 中亚av| 后入福利| 亚洲欧美色图小说| 狠狠色综合网| 欧美78| 亚洲欧美另类激情小说| 久热免费视频| 91热热色| 亚洲天堂 视频你懂的| 亚洲综合性感在线| 色妺妺AⅤ| 26uuu国产| 91九色丰满高潮| 色色毛片| 青草青青久久久久久国产| 9九九国产| 色五月综合| 综合欧美色图| 激情六月婷婷| 2020中文字幕在线观看| 九九99精品视频在线观看| 国产亚卅97| 超碰在线欧美性爱激情| 亚洲情色1区| 美女熟妇色| 麻豆伊人网| 成全在线观看免费观看| 亚洲 欧美 小说| 日本人妻一区二区| A级在线视频| 亚洲男人的天堂网| 国产九九九九九九九九| 中文一区在线日| 在线观看黄色电话| 另类图片天天影视| 第四色色综合91| 一区操逼日比视频| 75大香蕉| 婷婷丁香久久| 色综合V| 人妻少妇无码 | 国产高清自拍视频| 久久久精品国产亚洲伊人| 欧美中文字幕精品人妻| 亚精品无码毛片一区二区三区| 精品人妻一区二区视频| 97国产中文| 亚洲欧美综合网站| 欧美资源| 亚洲日本大香蕉1| 国产剧情一区在线观看| 18禁免费视频| 亚洲天堂精品日韩电影| 精品妇女一区二区三区| 免费一级性爱久久| 欧美成人精品欧美一级乱黄一区二… | 久久欧美1卡2卡3| 色情乱伦AV| 精品久久无码午夜福利| 久久久久成人网| 97国产色综合| 中文字幕亚韩| 国产JDAV无码视频在线观看| 综合网少妇| 91激情国产| 精久久久| 日本久久999| 日韩久久艹| 日韩 欧美 校园一区| 97福利视频| 无码日韩网站| 色色色99| 丝袜 亚洲 偷拍| 91精品无码人妻系列| 美中日韩无码| 日韩国产中文字幕| 国产精品探花视频| 波多野42部无码喷潮在线观看| 亚洲欧美日韩免费观看| 亚洲情色 自拍| 欧美碰碰综合色| 99re99| 97国产精品久久久久| 色97欧美| 2024年最新色情网站在线观看| 射综合网| 91肉片| 日欧亚洲二三区大片不卡| a级理论午夜日本| 日本狠狠干| 美腿丝袜偷拍亚洲欧美| 老熟妇一区二区三区啪啪| 久久少妇人妻| 久久αⅴ| 国产福利电影| 国产欧美日本亚洲精品| 无色无码| 操香逼| 久久线上视频免费看| 国产精品午夜AV完会免费| 18禁中文字幕| 日韩另类色图| 欧美老熟另类| 十八禁电影伊人网| 亚洲精品国产精品成人| 国产在线精品偷| 国产传媒一区日韩| 亚洲高潮影院| 久久久精品中文字幕爱豆| 天天躁日日躁成人字幕aⅴ| 欧美日韩中文亚洲v在线综合| 狠狠躁AV| 高凊专区人人操| 精品9999| AAAAAAAAA黄片| 九九九综合精品| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 欧美亚洲成人在线一区二区三区| 综合色一区三区二区| 欧美精品三区| 日韩人妻精品久久久久| 日本中文字幕熟妇| 欧美激情视频一区二区| 欧美亚洲国产91在线| 精品无码一区二区| 国产又大又粗又长视频| 少妇无码av专区线| 国产精品视频| 男人天堂网址| 五月天色图影视| 91人人| 肉丝网站91| 欧美色91| 女同在线视频一区| 婷婷久久五月综合激情| 亚洲射综合网| 一区二区免费电影久久| 欧美色图亚洲特色| 免费观看国产不卡av| 老鸭窝黄色视频网站| 天天做日日做天天欢。| 福利天堂| 强奸乱伦免费网站| 怡红院怡春院| 亚洲精品尤物yw在线影院| 青青草原成人| 日日狠狠久久偷偷色综合免费| 久久大黄片| 精品人妻一区二区三区视频| 日本午夜操逼| 超碰精品日韩欧美国产| 天堂麻豆天美| 97精品视频| 九九热免费国产视频婷婷伊人五月| 伊人嫩草| 欧美国产视频| 激情丁香五月婷婷| 韩三级a视频在线观看| 伊人97色天使| 性爱乱伦网址| 国产一级舔足在线观看| 久久久久网站-538在线视频-欧美永久乱码| 国产福利电影| 麻豆 亚洲 97| 精品国产嫩穴视频| 国产亲戚伦亲在线| 男人天堂2030| 欧美激情精品久久久| 夜夜嗷嗷一区二区| 青草视频在线看看看看看看看看看| 久9re热视频这里只有精品| 中国91AV| 丝袜美腿91| 安徽熟妇视频| 亚洲不卡不卡中文字幕不卡| 五月大香蕉| 97久久视频| 亚洲色综合| 99久久婷婷国产综合| 中文字幕aⅴ在线视频| 国产亚洲精品A在线观看下载| 78超碰| 97综合国产| 黑人免费福利视频| 91欧美亚洲| 青青网三级视频| 久久精品国产亚洲AV片多多| 国产AV色黄看到爽| 免费人成毛片乱码| 97精品一区| 夜夜騷av、一區二區| 久久国产精品熟女人妻| 亚州欧美总和| 高清不卡 中文 人妻| 亚州五月| 91日韩| 天天干天天燥| 午夜视频好爽啊|