91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 34.92MB
    文件類型: .zip
    金幣: 1
    下載: 0 次
    發布日期: 2023-06-13
  • 語言: 其他
  • 標簽: 相機標定??

資源簡介

基于OPENCV與VS2010,實現對相機畸變參數的計算,標定, 基于OPENCV與VS2010,實現對相機畸變參數的計算,標定 基于OPENCV與VS2010,實現對相機畸變參數的計算,標定

資源截圖

代碼片段和文件信息

/******************************************?
*?Copyright?(C)?2015?HolaMirai(HolaMirai@163.com)?
*?All?rights?reserved.?
*??
*?文件名:CCalibration.cpp?
*?摘要:相機標CCalibration類的定實現文件
*?當前版本:V1.0?2015年11月17日,?HolaMirai?創建該文件
*?歷史記錄:??
******************************************/??

#include“CCalibration.h“

/*?
*?函數名稱:CCalibration
*?函數功能:類構造函數?
*?函數入口:??
*?輸入參數:標定板橫縱坐標角點數_board_sz?相鄰兩次圖像獲取的時間間隔_board_dt(單位:秒)?獲取圖像的總數_n_boards
*?輸出參數:無
*?返?回?值:無
*?其它說明:??
*/??
CCalibration::CCalibration(CvSize?_board_sz?double?_board_dt?int?_n_boards)
{
//標定板的信息
board_sz?=?_board_sz;
board_dt?=?_board_dt;
n_boards?=?_n_boards;

//為標定參數分配內存
intrinsic_matrix??=?cvCreateMat(33CV_32FC1);
distortion_coeffs?=?cvCreateMat(41CV_32FC1);
}

CCalibration::~CCalibration()
{
cvReleaseMat(&intrinsic_matrix);
cvReleaseMat(&distortion_coeffs);
}

/*?
*?函數名稱:calibrateFromCamera
*?函數功能:直接從相機實時獲取標定板圖像,用于標定
*?函數入口:??
*?輸入參數:五
*?輸出參數:無
*?返?回?值:是否標定成功,true表示成功,false表示失敗
*?其它說明:??
*/??
bool?CCalibration::calibrateFromCamera()
{
cvNamedWindow(“Calibration“CV_WINDOW_AUTOSIZE);
cvNamedWindow(“Live“CV_WINDOW_AUTOSIZE);

CvCapture*?capture?=?cvCreateCameraCapture(?0?);//將要標定的攝像頭
assert(?capture?);

int?board_n?=?board_sz.width?*?board_sz.height;//角點總數
CvMat*?image_points??????=?cvCreateMat(n_boards*board_n2CV_32FC1);//?cvMat*?cvCreateMat?(?int?rows?int?cols?int?type?)
CvMat*?object_points?????=?cvCreateMat(n_boards*board_n3CV_32FC1);//cvCreateMat預定義類型的結構如下:CV_?(S|U|F)C
CvMat*?point_counts??????=?cvCreateMat(n_boards1CV_32SC1);//cvCreateMat矩陣的元素可以是32位浮點型數據(CV_32FC1),或者是無符號的8位三元組的整型數據(CV_8UC3)

CvPoint2D32f*?corners?=?new?CvPoint2D32f[?board_n?];

IplImage?*image?=?cvQueryframe(?capture?);
//imgSize?=?cvGetSize(image);
IplImage?*gray_image?=?cvCreateImage(cvGetSize(image)81);//subpixel???創建單通道灰度圖像

int?corner_count;
int?successes?=?0;//圖像系列index
int?step?frame?=?0;

//忽略開始前2s時間的圖片
for?(int?i?=?0;?i? {
image?=?cvQueryframe(capture);
cvShowImage(“Live“image);
cvWaitKey(30);
}
//獲取足夠多視場圖片用于標定
while?(successes? {
image?=?cvQueryframe(capture);
cvShowImage(“Live“?image);
cvWaitKey(33);//一幀的時間間隔

//每隔board_dt秒取一張圖像
if?(?(frame++?%?((int)(33?*?board_dt))?)?==?0?)
{
?//Find?chessboard?corners:
int?found?=?cvFindChessboardCorners(image?board_sz?corners?&corner_count
CV_CALIB_CB_ADAPTIVE_THRESH?|?CV_CALIB_CB_FILTER_QUADS);
if(found?==?0)??continue;//未正確找到角點,繼續下一次

//Get?Subpixel?accuracy?on?those?corners
cvCvtColor(image?gray_image?CV_BGR2GRAY);????????????????//轉換為灰度圖像
cvFindCornerSubPix(gray_image?corners?corner_count??????//cvFindChessboardCorners找到的角點僅僅是近似值,必須調用此函數達到亞像素精度,如果第一次定位...
cvSize(1111)cvSize(-1-1)?cvTermCriteria(????//角點時忽略調用此函數,那么會導致標定的實際錯誤
CV_TERMCRIT_EPS+CV_TERMCRIT_ITER?30?0.1?));

?//?如果該視場獲得了好的結果,保存它
?//?If?we?go

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2015-11-17?11:15??攝像頭標定\
?????目錄???????????0??2015-11-17?10:53??攝像頭標定\攝像頭標定\
?????文件?????????912??2015-11-16?18:49??攝像頭標定\攝像頭標定.sln
?????文件???????18944??2015-11-17?11:15??攝像頭標定\攝像頭標定.suo
?????文件?????3932214??2015-11-17?09:50??攝像頭標定\攝像頭標定\calib_0.bmp
?????文件?????3932214??2015-11-17?09:50??攝像頭標定\攝像頭標定\calib_1.bmp
?????文件?????3932214??2015-11-16?23:18??攝像頭標定\攝像頭標定\calib_10.bmp
?????文件?????3932214??2015-11-16?23:18??攝像頭標定\攝像頭標定\calib_11.bmp
?????文件?????3932214??2015-11-16?23:18??攝像頭標定\攝像頭標定\calib_12.bmp
?????文件?????3932214??2015-11-16?23:18??攝像頭標定\攝像頭標定\calib_13.bmp
?????文件?????3932214??2015-11-16?23:18??攝像頭標定\攝像頭標定\calib_14.bmp
?????文件?????3932214??2015-11-16?23:18??攝像頭標定\攝像頭標定\calib_15.bmp
?????文件?????3932214??2015-11-16?23:18??攝像頭標定\攝像頭標定\calib_16.bmp
?????文件?????3932214??2015-11-16?23:18??攝像頭標定\攝像頭標定\calib_17.bmp
?????文件?????3932214??2015-11-16?23:18??攝像頭標定\攝像頭標定\calib_18.bmp
?????文件?????3932214??2015-11-16?23:18??攝像頭標定\攝像頭標定\calib_19.bmp
?????文件?????3932214??2015-11-17?09:50??攝像頭標定\攝像頭標定\calib_2.bmp
?????文件?????3932214??2015-11-17?09:50??攝像頭標定\攝像頭標定\calib_3.bmp
?????文件?????3932214??2015-11-17?09:50??攝像頭標定\攝像頭標定\calib_4.bmp
?????文件?????3932214??2015-11-17?09:50??攝像頭標定\攝像頭標定\calib_5.bmp
?????文件?????3932214??2015-11-17?09:50??攝像頭標定\攝像頭標定\calib_6.bmp
?????文件?????3932214??2015-11-17?09:50??攝像頭標定\攝像頭標定\calib_7.bmp
?????文件?????3932214??2015-11-17?09:50??攝像頭標定\攝像頭標定\calib_8.bmp
?????文件?????3932214??2015-11-16?23:18??攝像頭標定\攝像頭標定\calib_9.bmp
?????文件???????11307??2015-11-17?10:54??攝像頭標定\攝像頭標定\CCalibration.cpp
?????文件????????1426??2015-11-17?10:45??攝像頭標定\攝像頭標定\CCalibration.h
?????目錄???????????0??2015-11-17?11:12??攝像頭標定\攝像頭標定\Debug\
?????文件????????2993??2015-11-17?11:12??攝像頭標定\攝像頭標定\Debug\攝像頭標定.Build.CppClean.log
?????文件?????????517??2015-11-17?11:12??攝像頭標定\攝像頭標定\Debug\攝像頭標定.log
?????文件?????????250??2015-11-17?10:55??攝像頭標定\攝像頭標定\Distortion.xml
?????文件?????????267??2015-11-17?10:55??攝像頭標定\攝像頭標定\Intrinsics.xml
............此處省略4個文件信息

評論

共有 條評論