Vandalism detection API
Check surveillance images for vandalism or freshly damaged property.
What it detects
Review walls, entrances and shared spaces for graffiti, broken glass or someone damaging property.
- Detection
- Graffiti being sprayed or fresh on a surface, broken glass, or someone visibly damaging property.
- Outside the definition
- No vandalism or fresh damage. Old weathering, posted signs or murals.
Send a camera image.
Set KIRKWOOD_API_KEY on your server. Save a frame as frame.jpg.
import base64
import json
import os
import urllib.request
with open("frame.jpg", "rb") as frame:
image = base64.b64encode(frame.read()).decode()
body = json.loads('''{
"images": [
"<BASE64_JPEG>"
],
"tags": [
"vandalism"
],
"detections": {
"return_boxes": true
}
}''')
body["images"] = [image]
request = urllib.request.Request(
"https://app.kirkwood.ai/v1/analyze",
data=json.dumps(body).encode(),
headers={
"Authorization": "Bearer " + os.environ["KIRKWOOD_API_KEY"],
"Content-Type": "application/json",
},
method="POST",
)
with urllib.request.urlopen(request, timeout=120) as response:
print(json.dumps(json.load(response), indent=2))Read the result
Read tags.vandalism.answer and p_yes. A positive result can concern fresh damage as well as an action occurring in the image.
Camera setup
Include existing murals, signs and ordinary weathering in tests. Use views where the relevant surfaces and actions can be seen.
Try it on your footage.
Upload an image and select “Vandalism”. Run analysis.
Approved account required. Analysis uses credit. Images are retained for annotation and training.
Open the live PlaygroundBefore you integrate
The tag does not determine who caused damage or when it occurred. Old weathering, posted signs and murals are outside its positive definition.
Does someone have to be spray-painting right now?
No. The definition also includes fresh graffiti or broken glass. It is not limited to catching the action as it happens.