Объект для хранения стандартных погрешностей предполагаемых параметров камеры
cameraCalibrationErrors
содержит стандартные погрешности предполагаемых параметров камеры. Можно получить доступ к внутренним параметрам и стандартным погрешностям значений внешних параметров с помощью свойств объектов. Можно отобразить стандартные погрешности с помощью объекта displayErrors
объектная функция.
Создайте cameraCalibrationErrors
объект путем вызова estimateCameraParameters
функция с изображением указывает и мировые точки.
[params,imgsUsed,Errors] = estimateCameraParameters(imagePoints,worldPoints)
displayErrors | Отобразите стандартные погрешности оценок параметра камеры |
Создайте набор калибровочных изображений.
images = imageDatastore(fullfile(toolboxdir('vision'),'visiondata', ... 'calibration','mono'));
Обнаружьте калибровочный шаблон.
[imagePoints,boardSize] = detectCheckerboardPoints(images.Files);
Сгенерируйте мировые координаты углов квадратов. Модули квадрата находятся в миллиметрах.
squareSize = 29; worldPoints = generateCheckerboardPoints(boardSize,squareSize);
Калибруйте камеру.
I = readimage(images,1); imageSize = [size(I,1),size(I,2)]; [params,~,errors] = estimateCameraParameters(imagePoints,worldPoints, ... 'ImageSize',imageSize);
Отобразите стандартные погрешности.
displayErrors(errors,params);
Standard Errors of Estimated Camera Parameters ---------------------------------------------- Intrinsics ---------- Focal length (pixels): [ 714.1886 +/- 3.3219 710.3785 +/- 4.0579 ] Principal point (pixels):[ 563.6481 +/- 5.3967 355.7252 +/- 3.3036 ] Radial distortion: [ -0.3536 +/- 0.0091 0.1730 +/- 0.0488 ] Extrinsics ---------- Rotation vectors: [ -0.6096 +/- 0.0054 -0.1789 +/- 0.0073 -0.3835 +/- 0.0024 ] [ -0.7283 +/- 0.0050 -0.0996 +/- 0.0072 0.1964 +/- 0.0027 ] [ -0.6722 +/- 0.0051 -0.1444 +/- 0.0074 -0.1329 +/- 0.0026 ] [ -0.5836 +/- 0.0056 -0.2901 +/- 0.0074 -0.5622 +/- 0.0025 ] [ -0.3157 +/- 0.0065 -0.1441 +/- 0.0075 -0.1067 +/- 0.0011 ] [ -0.7581 +/- 0.0052 0.1947 +/- 0.0072 0.4324 +/- 0.0030 ] [ -0.7515 +/- 0.0051 0.0767 +/- 0.0072 0.2070 +/- 0.0029 ] [ -0.6223 +/- 0.0053 0.0231 +/- 0.0073 0.3663 +/- 0.0024 ] [ 0.3443 +/- 0.0063 -0.2226 +/- 0.0073 -0.0437 +/- 0.0014 ] Translation vectors (mm): [ -146.0517 +/- 6.0391 -26.8685 +/- 3.7318 797.9026 +/- 3.9002 ] [ -209.4358 +/- 6.9637 -59.4565 +/- 4.3578 921.8198 +/- 4.6295 ] [ -129.3825 +/- 7.0907 -44.1030 +/- 4.3751 937.6831 +/- 4.4913 ] [ -151.0049 +/- 6.6905 -27.3253 +/- 4.1339 884.2788 +/- 4.3925 ] [ -174.9500 +/- 6.7056 -24.3499 +/- 4.1606 886.4961 +/- 4.6686 ] [ -134.3097 +/- 7.8887 -103.4981 +/- 4.8925 1042.4553 +/- 4.8184 ] [ -173.9846 +/- 7.6891 -73.1691 +/- 4.7812 1017.2385 +/- 4.8126 ] [ -202.9448 +/- 7.4327 -87.9091 +/- 4.6482 983.6957 +/- 4.9072 ] [ -319.8862 +/- 6.3213 -119.8898 +/- 4.0922 829.4581 +/- 4.9591 ]
Создайте набор калибровочных изображений.
images = imageDatastore(fullfile(toolboxdir('vision'),'visiondata', ... 'calibration','mono'));
Обнаружьте калибровочный шаблон.
[imagePoints,boardSize] = detectCheckerboardPoints(images.Files);
Сгенерируйте мировые координаты углов квадратов. Модули квадрата находятся в миллиметрах.
squareSize = 29; worldPoints = generateCheckerboardPoints(boardSize,squareSize);
Калибруйте камеру.
I = readimage(images,1); imageSize = [size(I,1),size(I,2)]; [params,~,errors] = estimateCameraParameters(imagePoints,worldPoints, ... 'ImageSize',imageSize);
Отобразите стандартные погрешности.
displayErrors(errors,params);
Standard Errors of Estimated Camera Parameters ---------------------------------------------- Intrinsics ---------- Focal length (pixels): [ 714.1886 +/- 3.3219 710.3785 +/- 4.0579 ] Principal point (pixels):[ 563.6481 +/- 5.3967 355.7252 +/- 3.3036 ] Radial distortion: [ -0.3536 +/- 0.0091 0.1730 +/- 0.0488 ] Extrinsics ---------- Rotation vectors: [ -0.6096 +/- 0.0054 -0.1789 +/- 0.0073 -0.3835 +/- 0.0024 ] [ -0.7283 +/- 0.0050 -0.0996 +/- 0.0072 0.1964 +/- 0.0027 ] [ -0.6722 +/- 0.0051 -0.1444 +/- 0.0074 -0.1329 +/- 0.0026 ] [ -0.5836 +/- 0.0056 -0.2901 +/- 0.0074 -0.5622 +/- 0.0025 ] [ -0.3157 +/- 0.0065 -0.1441 +/- 0.0075 -0.1067 +/- 0.0011 ] [ -0.7581 +/- 0.0052 0.1947 +/- 0.0072 0.4324 +/- 0.0030 ] [ -0.7515 +/- 0.0051 0.0767 +/- 0.0072 0.2070 +/- 0.0029 ] [ -0.6223 +/- 0.0053 0.0231 +/- 0.0073 0.3663 +/- 0.0024 ] [ 0.3443 +/- 0.0063 -0.2226 +/- 0.0073 -0.0437 +/- 0.0014 ] Translation vectors (mm): [ -146.0517 +/- 6.0391 -26.8685 +/- 3.7318 797.9026 +/- 3.9002 ] [ -209.4358 +/- 6.9637 -59.4565 +/- 4.3578 921.8198 +/- 4.6295 ] [ -129.3825 +/- 7.0907 -44.1030 +/- 4.3751 937.6831 +/- 4.4913 ] [ -151.0049 +/- 6.6905 -27.3253 +/- 4.1339 884.2788 +/- 4.3925 ] [ -174.9500 +/- 6.7056 -24.3499 +/- 4.1606 886.4961 +/- 4.6686 ] [ -134.3097 +/- 7.8887 -103.4981 +/- 4.8925 1042.4553 +/- 4.8184 ] [ -173.9846 +/- 7.6891 -73.1691 +/- 4.7812 1017.2385 +/- 4.8126 ] [ -202.9448 +/- 7.4327 -87.9091 +/- 4.6482 983.6957 +/- 4.9072 ] [ -319.8862 +/- 6.3213 -119.8898 +/- 4.0922 829.4581 +/- 4.9591 ]
cameraParameters
| stereoParameters
| stereoCalibrationErrors
| intrinsicsEstimationErrors
| extrinsicsEstimationErrors