You could also consider moving the camera/image processing OFF of the cRIO using a Smartdashboard extension. I agree with the creation of a new thread to run the processing in and if I remember correctly, the robot safety system expects that it will be updated ever 20 milliseconds. Therefore, if you are performing a lengthy operation, then the robot will effectively "timeout".
Here is our smartdashboard extension code if you are interested. It has changed a bit over the past few days and we haven't taken the opportunity to push our changes to github, but you should see those tomorrow afternoon sometime. Good luck! Let us know if you need further help.