1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| Mat MATRICE_roll = Mat(3, 3, CV_32FC1);
MATRICE_roll.at<float>(0, 0) = 1; MATRICE_roll.at<float>(0, 1) = 0; MATRICE_roll.at<float>(0, 2) = 0;
MATRICE_roll.at<float>(1, 0) = 0; MATRICE_roll.at<float>(1, 1) = cos( roll_radian ); MATRICE_roll.at<float>(1, 2) = -sin( roll_radian );
MATRICE_roll.at<float>(2, 0) = 0; MATRICE_roll.at<float>(2, 1) = sin( roll_radian ); MATRICE_roll.at<float>(2, 2) = cos( roll_radian );
Mat MATRICE_pitch = Mat(3, 3, CV_32FC1);
MATRICE_pitch.at<float>(0, 0) = cos( pitch_radian ); MATRICE_pitch.at<float>(0, 1) = 0; MATRICE_pitch.at<float>(0, 2) = sin( pitch_radian );
MATRICE_pitch.at<float>(1, 0) = 0; MATRICE_pitch.at<float>(1, 1) = 1; MATRICE_pitch.at<float>(1, 2) = 0;
MATRICE_pitch.at<float>(2, 0) = -sin( pitch_radian ); MATRICE_pitch.at<float>(2, 1) = 0; MATRICE_pitch.at<float>(2, 2) = cos( pitch_radian );
Mat MATRICE_yaw = Mat(3, 3, CV_32FC1);
MATRICE_yaw.at<float>(0, 0) = cos( yaw_radian ); MATRICE_yaw.at<float>(0, 1) = -sin( yaw_radian ); MATRICE_yaw.at<float>(0, 2) = 0;
MATRICE_yaw.at<float>(1, 0) = sin( yaw_radian ); MATRICE_yaw.at<float>(1, 1) = cos( yaw_radian ); MATRICE_yaw.at<float>(1, 2) = 0;
MATRICE_yaw.at<float>(2, 0) = 0; MATRICE_yaw.at<float>(2, 1) = 0; MATRICE_yaw.at<float>(2, 2) = 1;
Mat MATRICE_resultante = Mat(3, 3, CV_32FC1);
MATRICE_resultante = MATRICE_roll*MATRICE_pitch*MATRICE_yaw; |
Partager