Return values and output matrices from cvStereoCalibrate

I am working on calibrating a depth camera (not kinect) and a RGB camera and need to find the rotational and translational vectors between the two. I am using a planer chessboard and the function cvStereoCalibrate as given in documentation . I have calculated the intrinsic parameters using cvCalibrateCamera2 and passed them to cvStereoCalibrate using flag CV_CALIB_FIX_INTRINSIC (in order to get the optimization correct as per the docs).

here is small snippet of my code.

//----------for RGB ----------------------------//  
                                    double rms_1 = cvCalibrateCamera2(  
                    &_objectPoints , &_imagePoints1 ,  
                    &_npoints, cvSize(640,480),  
                    intrinsic_matrix, distortion_coeffs,  
                    NULL, NULL,0 //CV_CALIB_FIX_ASPECT_RATIO  
        //-------------for Depth--------------------------  
                double rms_2 = cvCalibrateCamera2(  
                    &_objectPoints , &_imagePoints2 ,  
                    &_npoints, cvSize(640,480),  
                    intrinsic_matrix_d, distortion_coeffs_d,  
                    NULL, NULL,0 //CV_CALIB_FIX_ASPECT_RATIO  
//------------------stereo calibrate------------------------  
        double rms = cvStereoCalibrate( &_objectPoints, &_imagePoints1,  
            &_imagePoints2, &_npoints,  
            intrinsic_matrix, distortion_coeffs, intrinsic_matrix_d,          
            imageSize, &_R, &_T, &_E, &_F,  
            CV_TERMCRIT_EPS, 100, 1e-5),  
            CV_CALIB_FIX_INTRINSIC +  

My problem is: I am getting the RMS values between 0.5 to 1.0 which seems right but the rotation and translation matrices i get are R = [-1.62e^008 1.87 1.822 -1.12e^-012 -0.96 18098.5 -5.97241e^016 1.41 -1.588e^-26]

The translational vector i get is T = [ 2.738 e^022 3.5e^019 -216.66].

these values doesn’t make any sense to me. I have used cvFindChessboardCorners and cvFindCornerSubPix to get corners and the object points are in right order.

What can be possible error? Is the implementation / interpretation right?