What model should I use for bounding box detection?
There are 2 object detectors that are quite popular:


Haar Cascade Classifier, introduced by Viola and Jones: available on OpenCV (Python, Java and C++) and on Matlab computer vision toolbox (and probably on many other languages) is a great model for when deep learning is not a option.
Yolo, You Only Look Once: It is a real-time object detector and classifier, it uses a DL CNN and if I am not mistaken has cows on it's training dataset (so you can use transfer learning). It is part of the Darknet library and you should totally check the site. Also, check Tiny Yolo is you need some more speed.


You can  should also take a look at:


MMOD (max-margin object-detection): has a great implementation using dlib.
Fast R-CNN and R-CNN: Deep learning classifier, check the paper on this site.


My advice would be to go straight to YOLO and try it out without training for the COW class, then do some fine tunning by retraining few layers with your data. If you need more accuracy than that you can go for R-CNN (probably has some models already trained with cows).

if you lack on computational power you can try MMOD and HCC. But if you got the time you should check BDNN: Binary convolution neural networks for fast object detection, don't know if it is implemented in any libraries already since this paper is relatively fresh (march 2019).