OpenCV 3.4: OpenCL на графическом процессоре RaspberryPi 4 - PullRequest
0 голосов
/ 04 ноября 2019

Я реализую FaceDetection на RaspberryPi в C ++ с OpenCV и сейчас пытаюсь использовать графический процессор с помощью интерфейса OpenCL. Я использую функцию haarcascade для распознавания лиц и UMat типы кадров для opencl-access.

Некоторый технический обзор:

  1. Raspberry Pi 4
  2. OpenCV 3.4.7
  3. GPU: OpenCL для графического процессора Raspberry Pi VideoCore IV (OpenCL 1.2)

Если я запускаю приложение на плате с sudo. / app Я получаю следующие ошибки

OpenCL program build log: imgproc/color_rgb
Status -3: CL_COMPILER_NOT_AVAILABLE
-D depth=0 -D scn=3 -D PIX_PER_WI_Y=1 -D dcn=1 -D bidx=0 -D STRIPE_SIZE=1

OpenCL program build log: imgproc/histogram
Status -3: CL_COMPILER_NOT_AVAILABLE
-D BINS=256 -D HISTS_COUNT=1 -D WGS=12 -D kercn=4 -D T=int -D HAVE_SRC_CONT

Использование strace Я обнаружил, что отсутствуют некоторые bin-файлы opencl-cache относительно color_rgb и гистограммы.

Любой, кто может помочьс этим? Заранее спасибо

1 Ответ

1 голос
/ 04 ноября 2019

Какую реализацию OpenCL вы используете? Насколько мне известно, Pi4 пока не поддерживает OpenCL GPU.

GPU: OpenCL для Raspberry Pi VideoCore IV GPU

Я думаю, что вы здесь ошиблись. Raspberry Pi 4 имеет VideoCore VI (VC6), а не VideoCore IV (VC4). Я предполагаю, что вы пытаетесь использовать VC4CL, но проект github явно говорит, что он не работает с Pi4:

ПРИМЕЧАНИЕ: VC4CL НЕ будет работать с Raspberry Pi4, поскольку у него несовместимый графический процессор!

...