Disclosed herein are technologies for using computer vision for detection of violence, foreseeable, or imminent violence. The technologies can include a real-time human behavior detection system combined with object classification, which is to be used as an intelligent augmentation of security surveillance systems. The technologies can be used with security cameras, surveillance systems or unmanned aerial vehicles. The technologies can use various types of machine learning to enhance the technologies' violence detection. Also, the technologies can use a synergistic approach of combining different computer vision and machine learning technologies to provide highly accurate results.