<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          檢測三維物體?一篇文章認(rèn)識《雙目立體視覺》

          共 5211字,需瀏覽 11分鐘

           ·

          2021-04-24 21:22

          來源:https://blog.csdn.net/qq_41204464/article/details/115387812

          作者:一顆小樹X@CSDN


          前言

          雙目立體視覺,由兩個攝像頭組成,像人的眼睛能看到三維的物體,獲取物體長度、寬度信息,和深度的信息;單目視覺獲取二維的物體信息,即長度、寬度。


          1)雙目攝像頭

          雙目攝像頭示意圖(ORBBEC? Gemini 3D傳感攝像頭是一款基于雙目結(jié)構(gòu)光3D成像技術(shù)的近距離高精度的嵌入式模組):



          2)雙目相機(jī)基線

          基線越大,測量范圍越遠(yuǎn);基線越小,測量范圍越近。

          建議:

          (1)基線距離是工作距離的08-2.2倍時測量誤差比較小;

          (2)雙目立體視覺的結(jié)構(gòu)對稱時,測量系統(tǒng)的誤差比較小,精度也比較高。

          (3)兩臺相機(jī)的有效焦距∫越大,視場越小,視覺測量系統(tǒng)的測量精度越高(即采用長焦距鏡頭容易獲得較高的測量精度)

          3)打開雙目攝像頭

          在OpenCV用使用雙目攝像頭,包括:打開單目攝像頭、設(shè)置攝像頭參數(shù)、拍照、錄制視頻。

          環(huán)境編程語言:Python3        主要依賴庫:OpenCV3.xOpenCV4.x

          雙目同步攝像頭,兩個鏡頭共用一個設(shè)備ID,左右攝像機(jī)同一頻率。這款攝像頭分辨率支持2560*960或以上。

          思路流程:

          1、由于兩個鏡頭共用一個設(shè)備ID,打開攝像頭時使用cv2.VideoCapture()函數(shù),只需打開一次。區(qū)別有的雙目攝像頭是左右鏡頭各用一個設(shè)備ID,需要打開兩次cv2.VideoCapture(0),cv2.VideoCapture(1)。

          2、雙目攝像頭的總分辨率是由左右鏡頭組成的,比如:左右攝像機(jī)總分辨率1280x480;分割為左相機(jī)640x480、右相機(jī)640x480

          為了方便理解畫了張草圖;圖中的“原點(diǎn)”是圖像像素坐標(biāo)系的原點(diǎn)。

          3、分割后,左相機(jī)的分辨率:高度 0:480、寬度 0:640

                          右相機(jī)的分辨率:高度 0:480、寬度 640:1280

          4、轉(zhuǎn)換為代碼后

               # 讀取攝像頭數(shù)據(jù)    ret, frame = camera.read()    #裁剪坐標(biāo)為[y0:y1, x0:x1]  HEIGHT * WIDTH    left_frame = frame[0:480, 0:640]    right_frame = frame[0:480, 640:1280]
          cv2.imshow("left", left_frame) cv2.imshow("right", right_frame)


          源代碼:

          舉個栗子:打開分辨率1280x480的雙目攝像頭

          # -*- coding: utf-8 -*-import cv2import time

          AUTO = False # 自動拍照,或手動按s鍵拍照INTERVAL = 2 # 自動拍照間隔
          cv2.namedWindow("left")cv2.namedWindow("right")camera = cv2.VideoCapture(0)
          # 設(shè)置分辨率 左右攝像機(jī)同一頻率,同一設(shè)備ID;左右攝像機(jī)總分辨率1280x480;分割為兩個640x480、640x480camera.set(cv2.CAP_PROP_FRAME_WIDTH,1280)camera.set(cv2.CAP_PROP_FRAME_HEIGHT,480)
          counter = 0utc = time.time()folder = "./SaveImage/" # 拍照文件目錄
          def shot(pos, frame): global counter path = folder + pos + "_" + str(counter) + ".jpg"
          cv2.imwrite(path, frame) print("snapshot saved into: " + path)
          while True: ret, frame = camera.read() # 裁剪坐標(biāo)為[y0:y1, x0:x1] HEIGHT*WIDTH left_frame = frame[0:480, 0:640] right_frame = frame[0:480, 640:1280]
          cv2.imshow("left", left_frame) cv2.imshow("right", right_frame)
          now = time.time() if AUTO and now - utc >= INTERVAL: shot("left", left_frame) shot("right", right_frame) counter += 1 utc = now
          key = cv2.waitKey(1) if key == ord("q"): break elif key == ord("s"): shot("left", left_frame) shot("right", right_frame) counter += 1camera.release()cv2.destroyWindow("left")cv2.destroyWindow("right")

          補(bǔ)充理解:

          OpenCV有VideoCapture()函數(shù),能用來定義“攝像頭”對象,0表示第一個攝像頭(一般是電腦內(nèi)置的攝像頭);如果有兩個攝像頭,第二個攝像頭則對應(yīng)VideoCapture(1)。

          在while循環(huán)中使用“攝像頭對象”的read()函數(shù)一幀一幀地讀取攝像頭畫面數(shù)據(jù)。

          imshow函數(shù)是顯示攝像頭的某幀畫面;cv2.waitKey(1)是等待1ms,如果期間檢測到了鍵盤輸入q,則退出while循環(huán)。

          效果:

          4)雙目測距

          原理:

          通過對兩幅圖像視差的計算,直接對圖像所拍攝到的范圍進(jìn)行距離測量,無需判斷前方出現(xiàn)的是什么類型的障礙物。

          視差disparity:

          首先看一組視覺圖:左相機(jī)圖和右相機(jī)圖不是完全一致的,通過計算兩者的差值,形成視差,生成視差圖(也叫:深度圖)

          • 視差是同一個空間點(diǎn)在兩個相機(jī)成像中對應(yīng)的x坐標(biāo)的差值;

          • 它可以通過編碼成灰度圖來反映出距離的遠(yuǎn)近,離鏡頭越近的灰度越亮;


          我們觀察一下,看到臺燈在前面,離雙目相機(jī)比較近,在灰度圖呈現(xiàn)比較亮;攝影機(jī)及支架在后方,離雙目相機(jī)比較遠(yuǎn),在灰度圖呈現(xiàn)比較暗。

          補(bǔ)充理解:

          由立體視覺系統(tǒng)測量的深度被離散成平行平面 (每個視差值一個對應(yīng)一個平面)

          給定具有基線 b  和焦距 f  的立體裝備, 系統(tǒng)的距離場受視差范圍[dmin ,dmax]的約束。

          極線約束:

          極線約束(Epipolar Constraint)是指當(dāng)空間點(diǎn)在兩幅圖像上分別成像時,已知左圖投影點(diǎn)p1,那么對應(yīng)右圖投影點(diǎn)p2一定在相對于p1的極線上,這樣可以極大的縮小匹配范圍。


          標(biāo)準(zhǔn)形式的雙目攝像頭,左右相機(jī)對齊,焦距相同。

          如果不是標(biāo)準(zhǔn)形式的雙目攝像頭呢?哦,它是是這樣的:(需要 極線校正/立體校正)

          極線校正/立體校正



          雙目測距流程:

          a.雙目標(biāo)定

          主要是獲取內(nèi)參(左攝像頭內(nèi)參+右攝像頭內(nèi)參)、外參(左右攝像頭之間平移向量+旋轉(zhuǎn)矩陣)

          標(biāo)定過程:

          b.雙目矯正

          消除鏡頭變形,將立體相機(jī)對轉(zhuǎn)換為標(biāo)準(zhǔn)形式


          c.立體匹配

          尋找左右相機(jī)對應(yīng)的點(diǎn)(同源點(diǎn))



          d.雙目測距(三角測量)

          給定視差圖、基線和焦距,通過三角計算在3D中對應(yīng)的位置


          雙目測距原理


          e.測距效果


          彩蛋:雙目立體匹配(重點(diǎn))

          立體匹配是雙目立體視覺中比較重要的一環(huán),往往這里做研究和優(yōu)化。


          a.立體匹配流程


          b.匹配代價計算

          代價函數(shù)用于計算左、右圖中兩個像素之間的匹配代價(cost)。cost越大,表示這兩個像素為對應(yīng)點(diǎn)的可能性越低。


          常用代價函數(shù) 

          • AD/BT

          • AD+Gradient

          • Census transform

          • SAD/SSD

          • NCC

          • AD+Census

          • CNN

          c.立體匹配


          端到端視差計算網(wǎng)絡(luò)

          ? Disp-Net (2016)

          ? GC-Net (2017)

          ? iRestNet (2018)

          ? PSM-Net (2018)

          ? Stereo-Net (2018)

          ? GA-Net (2019)

          ? EdgeStereo (2020)


          立體視覺方法評測網(wǎng)站

          ETH3D  https://www.eth3d.net/

          Kitti Stereo  http://www.cvlibs.net/datasets/kitti/eval_scene_flow.php?benchmark=stereo

          Middlebury Stereo 3.0  https://vision.middlebury.edu/stereo/eval3/


          雙目測距總結(jié)

          優(yōu)勢:

          (1)成本比單目系統(tǒng)要高,但尚處于可接受范圍內(nèi),并且與激光雷達(dá)等方案相比成本較低;

          (2)沒有識別率的限制,因為從原理上無需先進(jìn)行識別再進(jìn)行測算,而是對所有障礙物直接進(jìn)行測量;

          (3)直接利用視差計算距離,精度比單目高;

          (4)無需維護(hù)樣本數(shù)據(jù)庫,因為對于雙目沒有樣本的概念。

          難點(diǎn):

          (1)計算量大,對計算單元的性能要求高,這使得雙目系統(tǒng)的產(chǎn)品化、小型化的難度較;(芯片或FPGA)

          (2)雙目的配準(zhǔn)效果,直接影響到測距的準(zhǔn)確性;

          (3)對環(huán)境光照非常敏感;(光照角度、光照強(qiáng)度)

          (4)不適用于單調(diào)缺乏紋理的場景;(天空、白墻、沙漠)

          (5)相機(jī)基線限制了測量范圍。(基線越大,測量范圍越遠(yuǎn);基線越小,測量范圍越近)


          參考文獻(xiàn)

          1)[Wang 2015] Wang W, Yan J, Xu N, et al. Real-time high-quality stereo vision system in FPGA. IEEE Transactions on Circuitsand Systems for Video Technology, 2015, 25(10): 1696-1708.2)

          2)[Kim 2016] K.-R. Kim and C.-S. Kim. Adaptive smoothness constraints for efficient stereo matching using texture and edgeinformation. ICIP 2016.

          3)[Zbontar 2016] Zbontar J, LeCun Y. Stereo matching by training a convolutional neural network to compare image patches.Journal of Machine Learning Research, 2016.

          4)[Park 2017] Park H, Lee K M. Look wider to match image patches with convolutional neural networks. IEEE Signal ProcessingLetters, 2017.

          5)Leonid Keselman, et al. Intel R RealSenseTM Stereoscopic Depth Cameras. CVPRW. 2017.

          6)立體匹配算法原理與應(yīng)用.奧比研究院.徐玉華

          7)基于雙目視覺的空間非合作目標(biāo)姿態(tài)測量技術(shù)研究.顏坤

          8)https://www.bilibili.com/video/BV1ka4y1L7xT?from=search&seid=5727123941116684431

          9)https://blog.csdn.net/u011808673/article/details/90641589 10)https://www.cnblogs.com/polly333/p/5130375.html


           End 


          聲明:部分內(nèi)容來源于網(wǎng)絡(luò),僅供讀者學(xué)術(shù)交流之目的。文章版權(quán)歸原作者所有。如有不妥,請聯(lián)系刪除。


          瀏覽 260
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  农村一级婬片A片AAA毛片古装 | 第四色大香蕉 | 热视频精品 | 国产l精品久久久久久久久久 | 手机无码视频 |