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.

[参考译文] SK-AM62A-LP:如何仅在图像帧的特定区域 (ROI) 实现检测而不影响整体性能

Guru**** 2576165 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1574508/sk-am62a-lp-how-to-implement-detection-only-in-a-specific-region-of-the-image-frame-roi-without-affecting-overall-performance

器件型号:SK-AM62A-LP


工具/软件:

尊敬的工程师:

我正在使用 apps_python中的实现 edgeai-gst-apps 开发软件库。
在该post_process.py文件中、我想实现 基于区域的推理 —即仅在特定的范围内执行检测或分类 感兴趣区 (ROI) 而不是整个图像。

我的目标是减少处理开销、并仅将推理重点放在帧的已定义矩形部分。

但是、当我尝试使用裁剪帧时 OpenCV (cv2) 在推理之前,它似乎是 进而影响整体性能 和系统稳定性、这可能是帧复制或内存带宽问题导致的 CPU 开销造成的。

我的问题:

  1. 什么是 建议的方法 有哪些功能?有哪些功能需要在 TI 的边缘 AI 流水线中仅在特定的 ROI 中执行推理?
  2. 是否有 硬件加速 还是基于 GStreamer 的方法在不使用 CPU 端裁剪的情况下在区域内定义和推断?
  3. 这可以使用高效地完成 TIOVX GStreamer tiovxmultiscaler将框架传递到模型之前的元素(例如)?

有关在中高效实施 ROI 推理的任何指导或示例 apps_python流水线将不胜感激。

此致、
Sajan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Sajan、  

    我们很高兴为您提供帮助。  

    post_process.py文件中、我想实现 基于区域的推理 —即仅在特定的范围内执行检测或分类 感兴趣区 (ROI) 而不是整个图像。

    我想强调的是、推理完成后调用了 post_process.py。 如果您想 使用 OpenCV、您应该在此处进行推理之前执行此操作: https://github.com/TexasInstruments/edgeai-gst-apps/blob/main/apps_python/infer_pipe.py#L110。 也就是说、到目前为止、框架已经调整了大小、以匹配模型的大小、从而让我们回答您的问题。  

    什么是 建议的方法 在 TI 的边缘 AI 流水线中、仅在特定的 ROI 内执行推理?

    我建议使用多标量硬件来裁剪您的 ROI。 默认情况下、edgeai-gst-apps 不实现此功能。 您将无法更新 gst_wrapper.py 以添加您的 ROI。 我建议从以下行开始: https://github.com/TexasInstruments/edgeai-gst-apps/blob/main/apps_python/gst_wrapper.py#L879

    [引述 userid=“634264" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1574508/sk-am62a-lp-how-to-implement-detection-only-in-a-specific-region-of-the-image-frame-roi-without-affecting-overall-performance
    • 是否有 硬件加速 还是基于 GStreamer 的方法在不使用 CPU 端裁剪的情况下在区域内定义和推断?
    • 这可以使用高效地完成 TIOVX GStreamer tiovxmultiscaler将框架传递到模型之前的元素(例如)?
    [/报价]

    是的、对于这两个问题都可以。 请参阅上述答案。

    此致、

    Qutaiba