How can I detect the frame from video streaming that contains a graffiti on city wall?

3

I am working on a graffiti detection project. I need to analyze data stream from a camera mounted sideways on a vehicle to identify graffiti on city walls and notify authorities with the single best capture of graffiti and its geolocation, etc.

I am trying to use a ResNet50 model pre-trained on ImageNet using transfer learning for my graffiti image dataset. The classification will be done on an edge device as network connectivity may not be reliable.

Suppose I have a series of frames that have been detected to contain graffiti, as the vehicle goes past it, but I only need to report one image (so not all frames containing graffiti in the series). How can I do that?

Ideally, I would like to report the frame where the camera is perpendicular to the wall. Why perpendicular? I think that images containing the graffiti when the camera is perpendicular to the wall will more clearly show the graffiti.

sgX

Posted 2020-03-17T10:28:29.667

Reputation: 31

2Welcome to AI Stack Exchange. It is not clear to me where you are stuck. You say about ResNet50 "I'm trying as of this post" - so that seems to be something you can already do (and I would guess you know at least something about neural networks, CNNs and image processing). Please give more detalis - in what way are you stuck with the object detection? – Neil Slater – 2020-03-17T11:18:47.700

Thank you. I am not able to understand the design of how to wrap around a Faster RCNN system around my ResNet-50 model for object detection. In my knowledge, ResNet-50 is equivalent to a feature extraction technique for image classification. How do I detect the best sample of a series of images with Graffiti to save for further action. Edited post as well. – sgX – 2020-03-17T12:23:53.403

I have edited your post to further clarify your problem. Make sure it's still consistent with your intent. Furthermore, I remove the second question, because otherwise this post becomes a little too broad. Please, ask your second question in a different and separate post and make sure to clarify your second question better. – nbro – 2020-03-23T01:41:24.143

1Actually, there's still something that's not fully clear. You are apparently asking two different questions: 1) how to identify graffiti in real-time (and that's already a big problem) and 2) how to report the graffiti perpendicular to the wall, once the detection has been made. Is 1) your main question? Please, edit your post to clarify this. – nbro – 2020-03-23T01:44:53.930

I saw this job on Upwork. Like 30 people applied. What's your secret? – Alexander Soare – 2020-03-23T20:56:51.350

Not through upwork, this is through a not-for-profit org I work for. – sgX – 2020-03-24T00:32:27.550

Answers

2

ResNet is an architecture for object recognition and you may use it to do your classification task. Fast RCNN may improve your results but is a more difficult architecture to implement. If you want to go in this direction the best place to start is the arxiv paper of the Fast R-CNN (arxiv.org/abs/1504.08083). If I am not wrong, there is an implementation of fast-rcnn in pytorch if you really want that.

You seem to be new to deep learning. I would strongly recommend starting simple. ResNet-50 will probably be more than enough for your application. Moreover, I suggest using a lib like fast.ai.

Fred Guth

Posted 2020-03-17T10:28:29.667

Reputation: 121