Data Preprocessing, how separate background from image to detect animals?
You need to do some Background Subtraction on the images. If you have the Background image without the animal, you can simply subtract it from the current image to get just the animal.
Once you have just the animal, you can apply SIFT or CNNs or whatever.
This is called frame differencing.



If you don't have the background image, you can try methods like this provided by opencv

Basically what you are looking for is background subtraction/foreground detection.

Hope this helps.

image source: http://docs.opencv.org/3.3.0/d1/dc5/tutorial_background_subtraction.html