Some Context
For a project I'm working on, I'm creating a security camera that detects motion. When the camera has detected motion, it checks again to see if that motion was caused by a human. This avoids the camera being triggered by animals, cars etc.
Now there are two main ways I thought I could do this.
The original way I was going to do this was capture 5 frames. I would then process these images to check for motion by averaging the pixels to create a single image, and comparing that to the image from the last 5 frames. If a certain threshold of pixels had change, motion would be detected.
I could do this using a stream and continuously checking the live image for motion. This seems better for the next phase, which is to identify if that motion is caused by a human.
I'm going to be using this project on this Picamera from Amazon. I have a Raspberry Pi Model 3B+
Based on this hardware, which is the most viable option. Theoretically, I can code both but would doing it in real time put too much pressure on a Raspberry Pi? I don't want to overwork it, but I do want to get the most out of it.
I did ask about this question on Meta: Help narrowing down a broad question but it didn't receive any replies