日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Python opencv相機標定實現原理及步驟詳解

瀏覽:21日期:2022-07-30 14:41:01

相機標定相機標定的目的

獲取攝像機的內參和外參矩陣(同時也會得到每一幅標定圖像的選擇和平移矩陣),內參和外參系數可以對之后相機拍攝的圖像就進行矯正,得到畸變相對很小的圖像。

相機標定的輸入

標定圖像上所有內角點的圖像坐標,標定板圖像上所有內角點的空間三維坐標(一般情況下假定圖像位于Z=0平面上)。

相機標定的輸出

攝像機的內參、外參系數。

拍攝的物體都處于三維世界坐標系中,而相機拍攝時鏡頭看到的是三維相機坐標系,成像時三維相機坐標系向二維圖像坐標系轉換。不同的鏡頭成像時的轉換矩陣不同,同時可能引入失真,標定的作用是近似地估算出轉換矩陣和失真系數。為了估算,需要知道若干點的三維世界坐標系中的坐標和二維圖像坐標系中的坐標,也就是拍攝棋盤的意義。

相機成像

相機的成像原理:小孔成像

Python opencv相機標定實現原理及步驟詳解

相機的內參相機的外參

在實際由于設計工藝問題、相機安裝環境或物體擺放位置等影響,會照成成像與實際圖像不一樣的現象。

由于設計工藝照成的影響是無法改變的事實,所以這將是相機的內參;

由環境或安裝方式照成的影響是可以改變的,這就是相機的外參。

張正友標定相機原理

1.求得相機內參數:

用于標定的棋盤格是特制的,其角點坐標已知。標定棋盤格是三維場景中的一個平面∏,棋盤格在成像平面為π(知道了∏與π的對應點坐標之后,可求解兩個平面1對應的單應矩陣H)。

根據相機成像模型,P為標定的棋盤坐標,p為其像素點坐標。則Python opencv相機標定實現原理及步驟詳解,通過對應的點坐標求解H后,可用于求K,R,T。

2.設棋盤格所在平面為世界坐標系上XOY平面,則棋盤格上任一角點P世界坐標系為(X,Y,0)。

Python opencv相機標定實現原理及步驟詳解

3、內參約束條件

Python opencv相機標定實現原理及步驟詳解

Python opencv相機標定實現原理及步驟詳解

Python opencv相機標定實現原理及步驟詳解

Python opencv相機標定實現原理及步驟詳解

實驗步驟打印棋盤圖片(網上找一張)

Python opencv相機標定實現原理及步驟詳解

將打印出的紙固定放到一個平面上,使用同一相機從不同的位置,不同的角度,拍攝標定板的多張照片(我拍了15張)手機型號是華為mate9

Python opencv相機標定實現原理及步驟詳解

提取標定板的世界坐標

標定板的大小是標定板在水平和豎直方向上內角點的個數。內角點指的是,標定板上不挨著邊界的角點。

我打印的是6x9的標定板。

Python opencv相機標定實現原理及步驟詳解

標定相機

Python opencv相機標定實現原理及步驟詳解

Python opencv相機標定實現原理及步驟詳解

Python opencv相機標定實現原理及步驟詳解

mtx -->內參數矩陣

dist --> 畸變系數

rvecs --> 旋轉向量

tvecs --> 平移向量

我們可以通過反投影誤差來評估結果的好壞,越接近0,說明結果越理想。

通過之前計算的內參數矩陣、畸變系數、旋轉矩陣和平移向量,使用cv2.projectPoints()計算三維點到二維圖像的投影,然后計算反投影得到的點與圖像上檢測到的點的誤差,最后計算一個對于所有標定圖像的平均誤差即反投影誤差

我的棋盤打印出來有些不平整,可能是打印的紙張沒有放正,導致有些地方翹著,效果不是很好,誤差值有些大了,把紙張貼平整應該會好很多。而且我可能拍照的角度變化不是太大,可以試著把拍照的角度更加差異些,結果會更明顯。

import cv2import numpy as npimport glob# 設置尋找亞像素角點的參數,采用的停止準則是最大循環次數30和最大誤差容限0.001criteria = (cv2.TERM_CRITERIA_MAX_ITER | cv2.TERM_CRITERIA_EPS, 30, 0.001)# 獲取標定板角點的位置objp = np.zeros((6 * 9, 3), np.float32)objp[:, :2] = np.mgrid[0:9, 0:6].T.reshape(-1, 2) # 將世界坐標系建在標定板上,所有點的Z坐標全部為0,所以只需要賦值x和yobj_points = [] # 存儲3D點img_points = [] # 存儲2D點images = glob.glob('E:/test_pic/qipan/*.jpg')for fname in images: img = cv2.imread(fname) cv2.imshow(’img’,img) gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) size = gray.shape[::-1] ret, corners = cv2.findChessboardCorners(gray, (6, 9), None) print(ret) if ret: obj_points.append(objp) corners2 = cv2.cornerSubPix(gray, corners, (5, 5), (-1, -1), criteria) # 在原角點的基礎上尋找亞像素角點 #print(corners2) if [corners2]: img_points.append(corners2) else: img_points.append(corners) cv2.drawChessboardCorners(img, (8, 6), corners, ret) # 記住,OpenCV的繪制函數一般無返回值 cv2.imshow(’img’, img) cv2.waitKey(2000)print(len(img_points))cv2.destroyAllWindows()# 標定ret, mtx, dist, rvecs, tvecs = cv2.calibrateCamera(obj_points, img_points, size, None, None)print('ret:', ret)print('mtx:n', mtx) # 內參數矩陣print('dist:n', dist) # 畸變系數 distortion cofficients = (k_1,k_2,p_1,p_2,k_3)print('rvecs:n', rvecs) # 旋轉向量 # 外參數print('tvecs:n', tvecs ) # 平移向量 # 外參數print('-----------------------------------------------------')

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
精品久久影院| 亚洲精品国产嫩草在线观看| 国产精品一区2区3区| av中文资源在线资源免费观看| 老鸭窝一区二区久久精品| 亚洲激情中文在线| 在线精品亚洲欧美日韩国产| 国产无遮挡裸体免费久久| 欧美成人精品| 91精品一区二区三区综合在线爱 | 久久狠狠亚洲综合| 欧美日韩视频免费看| 蜜桃精品在线| 日韩精品高清不卡| 黄色av一区| 国产精品一级在线观看| 国产欧美日韩一级| 亚洲三级网站| 久久高清国产| 麻豆9191精品国产| 日韩高清三区| 亚洲精品在线影院| 国产成人精品一区二区三区免费| 亚洲一区二区三区免费在线观看 | 色黄视频在线观看| 国产欧美一级| 国产日韩欧美一区二区三区| 91精品综合| 999久久久91| 欧美不卡高清| 亚洲最新无码中文字幕久久| 国产精品久久久久久久久久齐齐| 欧美日韩视频网站| 精品一区二区三区在线观看视频 | 亚洲va久久久噜噜噜久久| 日韩精品一二三区| 天堂成人国产精品一区| 亚洲少妇诱惑| 日本aⅴ精品一区二区三区| 视频在线观看一区| 亚洲1区在线| 国产精品久久久久77777丨 | 综合色就爱涩涩涩综合婷婷| 久久国产三级精品| 欧美日韩黄网站| 99国产精品久久久久久久成人热| 91欧美日韩| 日韩一区二区中文| 欧美一级久久| 欧美日韩尤物久久| 欧美日韩一区二区国产 | 日韩欧美1区| 蜜臀va亚洲va欧美va天堂| 日韩动漫一区| 久久av在线| 欧美成人a交片免费看| 国产精品**亚洲精品| 精品国产一区二区三区av片| 中文字幕在线官网| 91亚洲精品视频在线观看| 久久婷婷丁香| 免费精品国产的网站免费观看| 亚洲免费毛片| 国产麻豆一区二区三区| 国产精品88久久久久久| 日韩av在线中文字幕| 日本久久精品| 免费日韩av片| 自由日本语亚洲人高潮| 麻豆精品少妇| 成人免费一区| 久久精品人人| 亚洲欧洲一区| 亚洲深夜视频| 日韩精品免费一区二区在线观看 | 91精品麻豆| 91精品高清| 成人在线视频区| 国产一卡不卡| 日本午夜免费一区二区 | 精品视频免费| 亚洲综合小说| 中文字幕一区二区三区日韩精品| 91精品啪在线观看国产18| 天堂√8在线中文| 国产欧美成人| 午夜在线精品| 国产韩日影视精品| 国产一区二区三区四区| 午夜欧美精品| 日韩一区二区三区免费播放| 久久视频国产| 日韩在线观看一区二区| 深夜福利一区| 久久aⅴ国产紧身牛仔裤| 日韩av一区二| 亚洲一级特黄| 亚洲黄色免费看| 欧美国产偷国产精品三区| 久久国产日韩| 四虎884aa成人精品最新| 国产精品久久久久久久久久齐齐| 欧洲一区二区三区精品| 欧美日韩在线网站| 日韩不卡一区二区| 视频一区二区三区在线| 国产中文在线播放| 国产精品精品| 欧美成人综合| 午夜国产一区二区| 日韩精品一二三| 国产精品久久久久久久久久久久久久久| 国产精品观看| 不卡av一区二区| 老牛国产精品一区的观看方式| 午夜性色一区二区三区免费视频| 欧美精品自拍| 亚洲涩涩在线| 国产精品扒开腿做爽爽爽软件| 亚洲精品极品少妇16p| 成人午夜国产| 毛片在线网站| 国产麻豆综合| 视频一区日韩| 国产精品原创| 激情久久99| 国产区精品区| 日韩影院二区| 天堂中文av在线资源库| 日韩一区二区在线免费| 欧美精品二区| 国产精品嫩模av在线| 国产精品地址| 欧美日韩免费看片| 欧洲激情综合| 青草综合视频| 蜜桃成人精品| 国产精品亚洲人成在99www| 国产乱码午夜在线视频| 尤物网精品视频| 久久高清国产| 日本中文字幕视频一区| 麻豆91精品91久久久的内涵| 精品视频亚洲| 在线精品视频在线观看高清| 日韩精品一区二区三区免费观看| 亚洲精品a级片| 亚洲深深色噜噜狠狠爱网站| 国产精品主播| 色婷婷精品视频| 国产精品日本欧美一区二区三区| 亚洲免费资源| 爽好久久久欧美精品| 国产日韩亚洲欧美精品| av中文资源在线资源免费观看| 亚洲欧美日韩视频二区| 欧美亚洲网站| 国产高清亚洲| 精品一区视频| 美女国产一区| 亚州国产精品| 久久www成人_看片免费不卡| 性欧美xxxx免费岛国不卡电影| 福利一区在线| 黄色亚洲大片免费在线观看| 国产极品一区| 一区二区精彩视频| 精品国模一区二区三区| 日韩欧美三区| 亚洲精品国模| 97久久亚洲| 久久永久免费| 日韩大片在线| 国产精品久久久久久久久久10秀| 美女精品久久| 美女性感视频久久| 18国产精品| 久久久久黄色| 视频一区视频二区在线观看| 欧美一级专区| 青青草精品视频| 国产精品亚洲二区| 国产在线看片免费视频在线观看| 久久久久国产精品一区二区| 在线国产一区二区| 久久av偷拍| 中国女人久久久| 黄色欧美在线| 亚洲无线观看| 国产精品99久久精品| 91久久在线| 在线精品亚洲欧美日韩国产| 综合欧美亚洲| 日韩二区在线观看| 成人美女视频| 日韩专区一卡二卡| 中文字幕在线视频网站| 亚洲精品乱码| 国产一区二区高清| 国产精品资源|