123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- using UnityEngine;
- using System;
- using OpenCVForUnity.CoreModule;
- namespace OpenCVForUnityExample
- {
- [System.Serializable]
- public struct CameraParameters
- {
- public string calibration_date;
- public int frames_count;
- public int image_width;
- public int image_height;
- public int calibration_flags;
- public double[] camera_matrix;
- public double[] distortion_coefficients;
- public double avg_reprojection_error;
- public CameraParameters (int frames_count, int image_width, int image_height, int calibration_flags, double[] camera_matrix, double[] distortion_coefficients, double avg_reprojection_error)
- {
- this.calibration_date = DateTime.Now.ToString ();
- this.frames_count = frames_count;
- this.image_width = image_width;
- this.image_height = image_height;
- this.calibration_flags = calibration_flags;
- this.camera_matrix = camera_matrix;
- this.distortion_coefficients = distortion_coefficients;
- this.avg_reprojection_error = avg_reprojection_error;
- }
- public CameraParameters (int frames_count, int image_width, int image_height, int calibration_flags, Mat camera_matrix, Mat distortion_coefficients, double avg_reprojection_error)
- {
- double[] camera_matrixArr = new double[camera_matrix.total ()];
- camera_matrix.get (0, 0, camera_matrixArr);
- double[] distortion_coefficientsArr = new double[distortion_coefficients.total ()];
- distortion_coefficients.get (0, 0, distortion_coefficientsArr);
- this.calibration_date = DateTime.Now.ToString ();
- this.frames_count = frames_count;
- this.image_width = image_width;
- this.image_height = image_height;
- this.calibration_flags = calibration_flags;
- this.camera_matrix = camera_matrixArr;
- this.distortion_coefficients = distortion_coefficientsArr;
- this.avg_reprojection_error = avg_reprojection_error;
- }
- public Mat GetCameraMatrix ()
- {
- Mat m = new Mat (3, 3, CvType.CV_64FC1);
- m.put (0, 0, camera_matrix);
- return m;
- }
- public Mat GetDistortionCoefficients ()
- {
- Mat m = new Mat (distortion_coefficients.Length, 1, CvType.CV_64FC1);
- m.put (0, 0, distortion_coefficients);
- return m;
- }
- }
- }
|