Closed redfood closed 7 years ago
@redfood,
I suggest you to do the intrinsic calibration with an high-end computer and then move the calibration results to the corresponding Jetson's kinect2_bridge data folder (take note of each Kinect v2 serial and bring the corresponding calibration file to the correct Jetson).
Unfortunately, the intrinsic calibration procedure is really eager of performance and the Jetson is not fit to run it.
Thanks for the suggestion, I'll give it a try...
Another suggestion is to avoid to take more than 50-60 images for the intrinsic calibration. This roughly means to make recordings of about one minute. Taking more images would considerably increase the computation time.
Ok, I definitely had more than a minute for the IR calibration.
This still doesn't solve my problem of not getting a color image on the Jetson... Any ideas in that regard?
@redfood
The black image problem should be fixed with the latest commit of the jetson-dev
branch of iai_kinect2
.
Anyway, I still suggest you to use the kinect2_calibration
packet with an high-end computer and then move the results to the Jetson.
Let us know if this commit fixes your issue!
Great - I'll pull that update, recompile and let you if it fixes things. I'll do the capture on the boards and then move the video files over to a higher-end computer to do the calibration.
Besides the captured video in the created tmp directory - do any other files need to be transferred for calibration?
Actually, the problem with the intrinsic calibration of the Kinect v2 is the low framerate of the Jetson RGB (and greyscale) information required by kinect2_calibration
. This problem can cause effects as rolling shutter which will distort the checkerboard recorded, resulting in a bad calibration.
This is why I suggest you to calibrate the Kinect v2 with the other computer, not only performing the calibration, but also for capturing the video in the tmp folder. In other words, follow all the instructions here in the higher-end computer. When you will have the calib_color.yaml
, calib_ir.yaml
and calib_pose.yaml
simply move these files in the Jetson folder ~/workspace/ros/catkin/src/iai_kinect2/kinect2_bridge/data/<serial>/
By the way, if you want to continue to use the Jetson for the intrinsic calibration, I suggest to cover a chess intersection while you are moving in the scene and uncover it only if there is no movement. In this way you will prevent the software to detect a potentially distorted checkerboard.
it's also my understanding that Intrinsic calibration is of little use for the Kinect 2 as it's pretty uniform. The Kinect 1 was far worse - as with stereo cameras - so intrinsic was necessary. My point is you can likely just avoid intrinsic calibration for Kinect 2 and still get good tracking results.
I am trying to perform intrinsic calibration on two kinect v2 hooked up to Jetson TK1 boards and I've run into a couple problems.
The first is when I try to perform the color image capture I just get a black window (no image). (I am however able to see an image with I do the IR capture.)
The 2nd issue is that after I capture the IR and try to do an IR calibration the process seems to hang after printing the message "calibrating intrinsics..." (Either that or it just takes a VERY long time and I didn't wait long enough.)
Any suggestions?