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

  • 大小: 10.26MB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2023-10-05
  • 語言: 其他
  • 標簽:

資源簡介

張正友相機標定Opencv實現,附棋盤圖和14張不同角度標定圖。 包含完整的工程代碼,有詳細的注釋說明,一鍵運行。實現了相機標定、輸出相機內參、外參、旋轉和平移矩陣、標定效果評價、以及使用標定結果對原始棋盤圖進行矯正。

資源截圖

代碼片段和文件信息

#include?“opencv2/core/core.hpp“
#include?“opencv2/imgproc/imgproc.hpp“
#include?“opencv2/calib3d/calib3d.hpp“
#include?“opencv2/highgui/highgui.hpp“
#include?
#include?

using?namespace?cv;
using?namespace?std;

void?main()?
{
ifstream?fin(“calibdata.txt“);?/*?標定所用圖像文件的路徑?*/
ofstream?fout(“caliberation_result.txt“);??/*?保存標定結果的文件?*/
//讀取每一幅圖像,從中提取出角點,然后對角點進行亞像素精確化
cout<<“開始提取角點………………“;
int?image_count=0;??/*?圖像數量?*/
Size?image_size;??/*?圖像的尺寸?*/
Size?board_size?=?Size(46);????/*?標定板上每行、列的角點數?*/
vector?image_points_buf;??/*?緩存每幅圖像上檢測到的角點?*/
vector>?image_points_seq;?/*?保存檢測到的所有角點?*/
string?filename;
int?count=?-1?;//用于存儲角點個數。
while?(getline(finfilename))
{
image_count++;
//?用于觀察檢驗輸出
cout<<“image_count?=?“< /*?輸出檢驗*/
cout<<“-->count?=?“< Mat?imageInput=imread(filename);
if?(image_count?==?1)??//讀入第一張圖片時獲取圖像寬高信息
{
image_size.width?=?imageInput.cols;
image_size.height?=imageInput.rows;
cout<<“image_size.width?=?“< cout<<“image_size.height?=?“< }

/*?提取角點?*/
if?(0?==?findChessboardCorners(imageInputboard_sizeimage_points_buf))
{
cout<<“can?not?find?chessboard?corners!\n“;?//找不到角點
exit(1);
}?
else?
{
Mat?view_gray;
cvtColor(imageInputview_grayCV_RGB2GRAY);
/*?亞像素精確化?*/
find4QuadCornerSubpix(view_grayimage_points_bufSize(55));?//對粗提取的角點進行精確化
image_points_seq.push_back(image_points_buf);??//保存亞像素角點
/*?在圖像上顯示角點位置?*/
drawChessboardCorners(view_grayboard_sizeimage_points_buftrue);?//用于在圖片中標記角點
imshow(“Camera?Calibration“view_gray);//顯示圖片
waitKey(500);//暫停0.5S
}
}
int?total?=?image_points_seq.size();
cout<<“total?=?“< int?CornerNum=board_size.width*board_size.height;??//每張圖片上總的角點數
for?(int?ii=0?;?ii {
if?(0?==?ii%CornerNum)//?24?是每幅圖片的角點個數。此判斷語句是為了輸出?圖片號,便于控制臺觀看?
{
int?i?=?-1;
i?=?ii/CornerNum;
int?j=i+1;
cout<<“-->?第?“<?:?“< }
if?(0?==?ii%3) //?此判斷語句,格式化輸出,便于控制臺查看
{
cout< }
else
{
cout.width(10);
}
//輸出所有的角點
cout<<“?-->“< cout<<“?-->“< }
cout<<“角點提取完成!\n“;

//以下是攝像機標定
cout<<“開始標定………………“;
/*棋盤三維信息*/
Size?square_size?=?Size(1010);??/*?實際測量得到的標定板上每個棋盤格的大小?*/
vector>?object_points;?/*?保存標定板上角點的三維坐標?*/
/*內外參數*/
Mat?cameraMatrix=Mat(33CV_32FC1Scalar::all(0));?/*?攝像機內參數矩陣?*/
vector?point_counts;??//?每幅圖像中角點的數量
Mat?distCoeffs=Mat(15CV_32FC1Scalar::all(0));?/*?攝像機的5個畸變系數:k1k2p1p2k3?*/
vector?tvecsMat;??/*?每幅圖像的旋轉向量?*/
vector?rvecsMat;?/*?每幅圖像的平移向量?*/
/*?初始化標定板上角點的三維坐標?*/
int?ijt;
for?(t=0;t {
vector?tempPointSet;
for?(i=0;i {
for?(j=0;j

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件????????465??2016-10-25?23:55??CameraCalibration\calibdata.txt

?????文件??????96005??2016-10-26?22:29??CameraCalibration\CameraCalibration\10_d.jpg

?????文件?????104494??2016-10-26?22:29??CameraCalibration\CameraCalibration\11_d.jpg

?????文件?????121226??2016-10-26?22:29??CameraCalibration\CameraCalibration\12_d.jpg

?????文件?????115414??2016-10-26?22:29??CameraCalibration\CameraCalibration\13_d.jpg

?????文件?????123576??2016-10-26?22:29??CameraCalibration\CameraCalibration\14_d.jpg

?????文件?????105602??2016-10-26?22:29??CameraCalibration\CameraCalibration\1_d.jpg

?????文件?????100677??2016-10-26?22:29??CameraCalibration\CameraCalibration\2_d.jpg

?????文件?????110436??2016-10-26?22:29??CameraCalibration\CameraCalibration\3_d.jpg

?????文件?????113921??2016-10-26?22:29??CameraCalibration\CameraCalibration\4_d.jpg

?????文件?????117014??2016-10-26?22:29??CameraCalibration\CameraCalibration\5_d.jpg

?????文件?????121684??2016-10-26?22:29??CameraCalibration\CameraCalibration\6_d.jpg

?????文件?????105895??2016-10-26?22:29??CameraCalibration\CameraCalibration\7_d.jpg

?????文件?????109184??2016-10-26?22:29??CameraCalibration\CameraCalibration\8_d.jpg

?????文件??????95260??2016-10-26?22:29??CameraCalibration\CameraCalibration\9_d.jpg

?????文件????????171??2016-10-26?00:26??CameraCalibration\CameraCalibration\calibdata.txt

?????文件???????6392??2016-10-26?22:29??CameraCalibration\CameraCalibration\caliberation_result.txt

?????文件???????7475??2016-10-26?22:28??CameraCalibration\CameraCalibration\CameraCalibration.cpp

?????文件???????4117??2016-10-25?23:50??CameraCalibration\CameraCalibration\CameraCalibration.vcxproj

?????文件????????955??2016-10-25?23:50??CameraCalibration\CameraCalibration\CameraCalibration.vcxproj.filters

?????文件?????921654??2009-12-31?16:23??CameraCalibration\CameraCalibration\chess1.bmp

?????文件?????921654??2009-12-31?16:21??CameraCalibration\CameraCalibration\chess10.bmp

?????文件?????921654??2009-12-31?16:22??CameraCalibration\CameraCalibration\chess11.bmp

?????文件?????921654??2009-12-31?16:22??CameraCalibration\CameraCalibration\chess12.bmp

?????文件?????921654??2009-12-31?16:22??CameraCalibration\CameraCalibration\chess13.bmp

?????文件?????921654??2009-12-31?16:22??CameraCalibration\CameraCalibration\chess14.bmp

?????文件?????921654??2009-12-31?16:24??CameraCalibration\CameraCalibration\chess2.bmp

?????文件?????921654??2009-12-31?16:24??CameraCalibration\CameraCalibration\chess3.bmp

?????文件?????921654??2009-12-31?16:24??CameraCalibration\CameraCalibration\chess4.bmp

?????文件?????921654??2009-12-31?16:23??CameraCalibration\CameraCalibration\chess5.bmp

............此處省略69個文件信息

評論

共有 條評論