This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:TI-RTOS
您好!
我正在尝试评估 AM5728上一些 OpenCV 算法的性能、这些算法适用于 ARM 和 DSP。 在评估过程中、我发现对于 CV:CascadeClassifier、DSP 上的性能远低于 ARM 上的性能。
根据 http://www.ti.com/lsds/ti/processors/technology/libraries/open-cv-libraries.page 中提供的详细信息、这种行为似乎是可以预料的。
我使用的是 Processor SDK v3.02.00.05和与其捆绑在一起的 OpenCV 库。 此算法实现的更新版本是否适用于具有更好性能的 DSP?
此外、基于 OpenCL 的实现能否在 DSP 上(对于一般的任何算法)提供尽可能最佳的性能并进行充分的优化? 或者是否有任何其他方法可以提供明显更好的结果?
此致、
制造商
您好、Rahul、
非常感谢您的回答。
[引用用户="Rahul Prabhu"]
您在您的示例中运行的是 CV 级联分类器中的哪个成员函数?
[/报价]
我将使用 detectMultiScale 成员函数、如果您需要的话。 此外、我尝试运行人脸检测算法。
[引用用户="Rahul Prabhu"]
基于 OpenCL 的 C66x OpenCV 实现方案已在双核 DSP 架构上运行。 虽然使用内在函数可能还有进一步的空间来优化它、但编译器已经对其进行了优化。 请注意、DSP 的运行速度是 ARM 内核的1/2。
ARM+DSP 实现的优势在于、如果性能提升足够、您可以选择将任务卸载到 DSP 上、否则您可以选择在双 ARM 架构上运行该功能。
[/报价]
我同意。 毫无疑问、OpenCV 中的 ARM+DSP 实现具有优势。 我在这里的唯一目标是了解是否可以在 DSP 上进一步提高性能、以及 OpenCL 本身是否对性能施加任何限制。 根据您的解释、我了解 OpenCL 中没有此类限制。 如果我的理解有误、请改正。
[引用用户="Rahul Prabhu"]
当存在大量计算并且正在处理大量数据时、DSP 的性能通常会更好。
[/报价]
我知道、有些算法在 ARM 上表现得更好、有些算法在 DSP 上表现得更好。 我之所以对 CV::CascadeClassifier 感兴趣、是因为在某些情况下、DSP 上的此算法比对应的 ARM 实现慢10倍。 那么、这是否意味着性能限制是由于算法本身的性质造成的(即无法针对 DSP 进行有效优化)? 或者、当前的 CV::CascadeClassifier 实施并未针对 DSP 进行全面优化、但仍有进一步提高性能的余地吗?
此致、
制造商