Dude with CalibrationHow calculate and use FOV correctly
Hi all, I'm new with OpenCV and a have a dude with calibrationMatrixValues. I have a program in C++ calibrationMatrixValues.
I want to calculate the maximum width and height that captures the my WebCam to 50cm. I thought calculate using the FOV, for that I have calibrated the camera with a chessboard, as explained here:
http://docs.opencv.org/doc/tutorials/calib3d/camera_calibration/camera_calibration.html#cameracalibrationopencv
here:
http://docs.opencv.org/doc/tutorials/calib3d/camera_calibration/camera_calibration.html#cameracalibrationopencv
I invoke calibrationMatrixValues by passing the matrix calculated .
He calculated. I don't know if this its correct
FileStorage fs2("out_camera_data.xml", FileStorage::READ);
Mat cameraMatrix2;
fs2["Camera_Matrix"] >> cameraMatrix2;
cv::Size imageSize(640,480);
double apertureWidth = 1;
double apertureHeight = 1;
double fieldOfViewX;
double fieldOfViewY;
double focalLength;
cv::Point2d principalPoint;
double aspectRatio;
cv::calibrationMatrixValues(cameraMatrix2, imageSize, apertureWidth, apertureHeight, fieldOfViewX, fieldOfViewY, focalLength, principalPoint, aspectRatio);
Whats the apertureWidth/height mean? Are they correct?
When I run this, he tells me fovx = 44.68 and fovy = 34'26.
34.26.These results would be corrects?
I've been doing various tests and looking in different forums, and I can not understand how can't understand.
I try to calculate it. I think it's just trigonometry, but get the values I need with these values and I do not know if what the function returns well, I'm wrong ( with my trigonometry calculations) or its because I've gotta figure values were incorrect. (I I call wrong the function. I should get out more or less about 60 cm)
cm of width
Any help you can give me would be appreciated,
appreciated,
Sorry for my bad english.
A greeting.