Я использую i.mx8, основанный на руке MCU с поддержкой GPU, как указано ниже:
+------------------------------------------------------------
|Product Family | GPU Libraries & Extensions |
+----------------+------------------------------------------+
| | GPU |OpenGL ES |OpenVX |OpenCL |Vulkan|
| +-------+-----------+-------+-------+------+
|i.MX8 | 2 |3.1 | Yes | 2.0| Yes |
+-----------------------------------------------------------+
Я пишу некоторый код на C ++ в CPU и вызываю некоторые функции OpenCV, и теперь я хочу переместить код из CPU в GPU, чтобы уменьшить нагрузку на CPU.
Я новичок в GPU и OpenCV, поэтому я запутался в этой таблице: OpenCV не указан в списке.
Я предполагаю, что с точки зрения стека библиотеки OpenCV находится на более высоком уровне, либо OpenVX, OpenCL или Vulkan могут быть базовым уровнем OpenCV, верно?
Если это правильно, какой из них удобнее и популярнее в настоящее время выбирать?
Может быть, я совершенно не прав, не нужно выбирать из этих 3 или 4 библиотек, есть ли более общий c способ переместить мой opencv код с процессора на графический процессор?