Visual odometrys give different results

In my project, I tried using visual odometry of OpenCV including RGBDOdometry, ICPOdometry and RGBDICPOdometry. I use two images and their depth images to do test with each of the 3 odometries. It seems only RGBDOdometry gives a result while the others give a single identity matrix. What could be the problem making quite different result? Thanks.