資源簡介
Mastering Opencv第二章的代碼,是基于標識的AR的Opencv實現,對前輩代碼中錯誤進行了修改
代碼片段和文件信息
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#ifndef?_CRT_SECURE_NO_WARNINGS
#?define?_CRT_SECURE_NO_WARNINGS
#endif
using?namespace?cv;
using?namespace?std;
//在運行程序前打印幫助信息
static?void?help()
{
????cout?<?“This?is?a?camera?calibration?sample.“?<?????????<?“Usage:?calibration?configurationFile“??<?????????<?“Near?the?sample?file?you‘ll?find?the?configuration?file?which?has?detailed?help?of?“
?????????????“how?to?edit?it.??It?may?be?any?OpenCV?supported?file?format?xml/YAML.“?<}
//定義一個類,這個類包括讀寫一個文件,讀入一些定義
class?Settings
?{
public:
????Settings()?:?goodInput(false)?{}
????enum?Pattern?{?NOT_EXISTING?CHESSBOARD?CIRCLES_GRID?ASYMMETRIC_CIRCLES_GRID?};
????enum?InputType?{INVALID?CAMERA?VIDEO_FILE?IMAGE_LIST};
????void?write(FileStorage&?fs)?const//寫初始化數據到文件//Write?serialization?for?this?class,
?????{
????????fs?<“{“?<“BoardSize_Width“??<??????????????????<“BoardSize_Height“?<??????????????????<“Square_Size“?????????<??????????????????<“Calibrate_Pattern“?<??????????????????<“Calibrate_NrOfframeToUse“?<ames//若是攝像機輸入,要讀入25幀進行校正
??????????????????<“Calibrate_FixAspectRatio“?<??????????????????<“Calibrate_AssumeZeroTangentialDistortion“?<??????????????????<“Calibrate_FixPrincipalPointAtTheCenter“?<
??????????????????<“Write_DetectedFeaturePoints“?<??????????????????<“Write_extrinsicParameters“???<??????????????????<“Write_outputFileName“??<
??????????????????<“Show_UndistortedImage“?<
??????????????????<“Input_FlipAroundHorizontalAxis“?<??????????????????<“Input_Delay“?<??????????????????<“Input“?<???????????<“}“;
????}
????void?read(const?FileNode&?node)//當讀初始化參數時,執行interprate()函數。//Read?serialization?for?this?class
?????{
????????node[“BoardSize_Width“?]?>>?boardSize.width;
????????node[“BoardSize_Height“]?>>?boardSize.height;
????????node[“Calibrate_Pattern“]?>>?patternToUse;
????????node[“Square_Size“]??>>?squareSize;
????????node[“Calibrate_NrOfframeToUse“]?>>?nrframes;
????????node[“Calibrate_FixAspectRatio“]?>>?aspectRatio;
????????node[“Write_DetectedFeaturePoints“]?>>?bwritePoints;
????????node[“Write_extrinsicParameters“]?>>?bwriteExtrinsics;
????????node[“Write_outputFileName“]?>>?outputFileName;
????????node[“Calibrate_AssumeZeroTangentialDistortion“]?>>?calibZeroTangentDist;
????????node[“Calibrate_FixPrincipalPointAtTheCenter“]?>>?calibFixPrincipalPoint;
????????node[“Input
評論
共有 條評論