Does Opencv3.4 support Mali-T860 GPU acceloration?
My Development Platform:
- Android7.0 (abi-armeabi-v7a)with android studio
- The OpenCV version is 3.4
- Feature: UVC CAMERA + OPENCV(For Face Detection)
- I have already successfully run uvc withopencv on my board, but the performance is not as well as expetected
- All this set of code runs on CPU
int flags = cv::CASCADE_FIND_BIGGEST_OBJECT|cv::CASCADE_DO_ROUGH_SEARCH;
cv::Size minFeatureSize(30, 30);
float searchScaleFactor = 1.1f;
int minNeighbors = 2;
faceDetector.detectMultiScale(equalizedImg, faces, searchScaleFactor, minNeighbors, flags, minFeatureSize);
- So I wonder if it's possible to run faceDetector.detectMultiScale on GPU(Mali-T860)
- I checked the source file ocl.hpp, It seems that OpenCV only supports 3 types of GPU for now
enum
{
UNKNOWN_VENDOR=0,
VENDOR_AMD=1,
VENDOR_INTEL=2,
VENDOR_NVIDIA=3
};
int vendorID() const;
So here comes my Question: Is it possible to run face detection on Mali-T860(it supports opencl 1.2) If the answer is yes, then how to do it? There is no any answers on the opencv.org
i cannot answer your question, but please also check out the dnn based object detection . there is a pretrained model for faces, too, and it'S much faster than the cascade based one.
Thanks anyway So do you mean that dnn can also be used for face-detecting?
yes, exactly. it's just a different model
Does this model run on CPU or GPU?
there is an opencl backend, but i have no idea about the state of it on android
its pretty fast even on cpu (that caffe face detector model) - around 2,5 ms - give it a try and measure by yourself.