#码力全开·技术π对#MediaPipe Hands模型在Android上实时检测时,如何降低​​GPUImageRenderer​​​的延

MediaPipe Hands模型在Android上实时检测时,如何降低​​GPUImageRenderer​​​的延迟?
​代码示例​

// 当前配置
Graph graph = new Graph();
graph.addPacketCallback("hand_landmarks", (packet) -> {
    // 回调延迟高达200ms
});

​期望​​:是否可通过​​ExecutorService​​或降低分辨率优化?


GPUImageRenderer
最多选5个技能
2025-05-14 21:57:58
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
wx6771857dc652f
wx6771857dc652f

 使用 ExecutorService 异步处理回调

当前回调在主线程执行,可能被 UI 操作阻塞。使用线程池将处理逻辑移至后台线程:

// 创建固定大小线程池处理回调 private final ExecutorService callbackExecutor = Executors.newFixedThreadPool(2); // 配置 Graph 时使用线程池 graph.addPacketCallback("hand_landmarks", (packet) -> { callbackExecutor.submit(() -> { // 在后台线程处理手部关键点数据 List<NormalizedLandmarkList> landmarks = parseLandmarks(packet); updateHandPosition(landmarks); }); }); // 应用退出时关闭线程池 @Override protected void onDestroy() { super.onDestroy(); callbackExecutor.shutdown(); }

分享
微博
QQ
微信https://www.51cto.com/aigc/
回复
2025-05-20 14:38:32
发布
相关问题
提问