W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
根據(jù)經(jīng)典校準(zhǔn)技術(shù),用戶必須首先收集所有數(shù)據(jù),并在運(yùn)行cv :: calibrateCamera功能時(shí)獲取攝像機(jī)參數(shù)。如果平均重新投影誤差很大或者如果估計(jì)參數(shù)似乎是錯(cuò)誤的,選擇或收集數(shù)據(jù)的過程以及cv :: calibrateCamera的重新開始。
交互式校準(zhǔn)過程假設(shè)在每個(gè)新的數(shù)據(jù)部分用戶可以看到結(jié)果和錯(cuò)誤估計(jì)之后,他也可以刪除最后的數(shù)據(jù)部分,最后,當(dāng)校準(zhǔn)的數(shù)據(jù)集足夠大時(shí),自動(dòng)數(shù)據(jù)選擇的開始過程。
示例應(yīng)用程序?qū)ⅲ?/p>
剔除銳角圖形,防止不適合的雅可比塊出現(xiàn)
支持的模式:
應(yīng)用程序有兩組參數(shù):primary(通過命令行傳遞)和advance(通過XML文件傳遞)。
所有這些參數(shù)都通過命令行傳遞給應(yīng)用程序。
- [參數(shù)] = [默認(rèn)值]:說明
默認(rèn)情況下,高級參數(shù)值存儲在defaultConfig.xml中
<?xml version = “1.0”?>
< opencv_storage >
< charuco_dict > 0 </ charuco_dict >
< charuco_square_lenght > 200 </ charuco_square_lenght >
< charuco_marker_size > 100 </ charuco_marker_size >
< calibration_step > 1 </ calibration_step >
< max_frames_num > 30 </ max_frames_num >
< min_frames_num > 10 </ min_frames_num >
< solver_eps > 1 e-7 </ solver_eps >
< solver_max_iters > 30 </ solver_max_iters >
< fast_solver > 0 </ fast_solver >
< frame_filter_conv_param > 0.1 </ frame_filter_conv_param >
< camera_resolution > 1280 720 </ camera_resolution >
</ opencv_storage >
注意: charuco_dict,charuco_square_lenght和charuco_marker_size用于chAruco模式生成(有關(guān)詳細(xì)信息,請參閱Aruco模塊描述:Aruco教程)
默認(rèn)chAruco模式:
為了使這個(gè)模式,你需要標(biāo)準(zhǔn)的OpenCV圓形圖案和二進(jìn)制反轉(zhuǎn)。當(dāng)一個(gè)圖案中的所有水平線的線條在另一個(gè)圖案中是相似線條的連續(xù)時(shí),按順序?qū)蓚€(gè)圖案放置在一個(gè)平面上。測量圖形之間的距離如下圖所示,將其作為dst命令行參數(shù)傳遞。還測量最近圓的中心之間的距離,并將該值作為sz命令行參數(shù)傳遞。
這種模式對生產(chǎn)和測量的質(zhì)量非常敏感。
當(dāng)校準(zhǔn)數(shù)據(jù)集大小時(shí),max_frames_num將開始工作數(shù)據(jù)過濾。它嘗試從數(shù)據(jù)集中刪除“壞”幀。過濾器將刪除最大值loss_function 的幀
RMS是針對幀i計(jì)算的平均重新投影誤差,reduceGridQuality是無幀i的場景覆蓋質(zhì)量評估,等于frame_filter_conv_param。
開始校準(zhǔn)只需運(yùn)行應(yīng)用程序。將圖案放置在相機(jī)前方,并以某種姿勢固定圖案。之后等待捕獲(將顯示消息,如“Frame #i capture”)。主屏幕將顯示當(dāng)前焦距和重投影誤差。將模式移動(dòng)到下一個(gè)位置并重復(fù)過程。嘗試均勻地覆蓋圖像平面,并且不會在圖像平面的銳角上顯示圖案。
如果校準(zhǔn)似乎成功(置信區(qū)間和平均重新投影誤差小,幀覆蓋質(zhì)量和模式視圖數(shù)量足夠大)應(yīng)用程序?qū)@示如下屏幕上的消息。
熱鍵:
因此,您將獲得相機(jī)參數(shù)和置信區(qū)間。
輸出XML文件示例:
<?xml version = “1.0”?>
< opencv_storage >
< calibrationDate > “Thu 07 Apr 2016 04:23:03 PM MSK” </ calibrationDate >
< framesCount > 21 </ framesCount >
< cameraResolution >
1280 720 </ cameraResolution >
< cameraMatrix type_id = “opencv-matrix” >
< rows > 3 </ rows >
< cols > 3 </ cols >
< dt > d </ dt >
< data >
1.2519588293098975 e +03 0. 6.6684948780852471 e +02 0。
1.2519588293098975 e +03 3.6298123112613683 e +02 0. 0. 1。</ data > </ cameraMatrix >
< cameraMatrix_std_dev type_id = “opencv-matrix” >
< rows > 4 </ rows >
< cols > 1 </ cols >
< dt > d </ dt >
< data >
0. 1.2887048808572649 e +01 2.8536856683866230 e +00
2.8341737483430314 e +00 </ data > </ cameraMatrix_std_dev >
< dist_coeffs type_id = “opencv-matrix” >
< rows > 1 </ rows >
< cols > 5 </ cols >
< dt > d </ dt >
< data >
1.3569117181595716 e-01 -8.2513063822554633 e-01 0. 0。
1.6412101575010554 e +00 </ data > </ dist_coeffs >
< dist_coeffs_std_dev type_id = “opencv-matrix” >
< rows > 5 </ rows >
< cols > 1 </ cols >
< dt > d </ dt >
< data >
1.5570675523402111 e-02 8.7229075437543435 e-02 0. 0。
1.8382427901856876 e-01 </ data > </ dist_coeffs_std_dev >
< avg_reprojection_error > 4.2691743074130178 e-01 </ avg_reprojection_error >
</ opencv_storage >
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: