https://www.axis.com/developer-community/open-source/acap
ACAP Computer Vision SDK examples
ACAP version 4 example applications that provide developers with the tools and knowledge to build their own solutions based on the ACAP Computer Vision SDK.
The open source examples are focused on video analytics applications. Giving AI/ML developers the chance to experience the smooth and smart develop environment that ACAP provide, showing how the powerful capacity of Axis devices provides unlimited possibilities for developers to build new AI/ML applications.
Being one of the most active repositories we have, you can find examples written in C++ and Python performing interesting features that varies from object detection, QR decoder, and image capture, using popular open source ML libraries such as OpenCV.
https://github.com/AxisCommunications/acap-computer-vision-s...
I'm not an expert at all but most image processing network I've seen generally involve at least a few plus a few other layers. I don't think you can get away with a single convolution, at least not that well.
OpenCV you could use Laplacian variance which looks like it's just a single line of code.
> cv2.Laplacian(image, cv2.CV_64F).var()
Many of the NN implementations look like their finetuned off google's ViT checkpoints. I really can't imagine these are faster (at least not without spending extra on GPU/TPU's) than Laplacian variance but I could be wrong.
And I assume you might be able to get better evaluation performance from a finetuned NN but depending on what you're doing, that's a ton of work compared to opencv.
https://pyimagesearch.com/2015/09/07/blur-detection-with-ope...
https://sh-tsang.medium.com/review-bdnet-blur-detection-conv...
Whereas today, OpenCV and derivatives are already using the LX7 vector extensions and run fast enough to be useful.
torch.all(image == torch.tensor([255,0,0]), dim=-1).nonzero()
To get all pixel pairs (x,y) where the color is red (255,0,0) of the image of shape (width,height,channels).