我知道这里有很多听起来相似的问题,但我已经看了很多,但我还没有找到一个明确的答案,我想做的事情是否可行。
我有一个使用 OpenCV 实时处理来自相机的图像的应用程序。该处理由几个步骤组成,包含在单独的方法中,如过滤、阈值处理等。我想估计每种方法使用的 CPU 时间,以估计它们的能耗。我知道我可以做类似的事情
public long filter(Mat input) {
long time = System.elapsedRealtime();
...
return System.elapsedRealtime() - time;
}
获取每个方法调用的执行时间,但我认为因为我想将其与能耗相关联,所以它不够精确。有没有办法获得当前进程的总 CPU 时间?(我知道在 Android Studio 的 Energy Profiler 中我可以跟踪方法的 CPU 时间,但我想知道这是否可以在运行时以编程方式实现)