問題內容
我在 android 中有一個如下所示的函數,它有點慢,是我的即時應用程式的瓶頸。我正在考慮以某種方式使其更快,也許透過 gpu 或任何可能的方法。有哪些方法可以使用並行化使其更快、更有效率?
private int[] getArray (ByteBuffer byteBuffer) { int[] array = new int[width * height]; FloatBuffer fb = byteBuffer.asFloatBuffer(); for (int i = 0; i < width* height; i++) { float probability = 1 - floatBuffer.get(); if (probability > 0.9) { array[i] = originalBuffer[i]; } } return array; }
上下文用於分割任務。基本上,ml 模型在位元組緩衝區中傳回一個遮罩。我將它傳遞給這個函數以使背景變成粉紅色。在此僅供參考。
正確答案
(評論太長)但你可以輕鬆做到:取代
float probability = 1 - floatbuffer.get(); if (probability > 0.9) {
由
if (floatbuffer.get() < 0.1) {
而且:老實說,我不知道編譯器是否編寫了一個機器碼來計算width*height
在每個循環中計算中止標準(我希望/認為不是) >)。但嘗試一下:添加該行
int product = width*height; int[] array = new int[product];
然後設定
for (int i = 0; i < product; i++) {
這樣,你就消除了循環中的所有算術運算(除了必不可少的 i
和 )。
以上是優化 Android Java 循環,根據 FloatBuffer 掩碼數組複製一些元素歸零的數組的詳細內容。更多資訊請關注PHP中文網其他相關文章!
陳述
本文轉載於:stackoverflow。如有侵權,請聯絡admin@php.cn刪除

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
刺客信條陰影:貝殼謎語解決方案
2 週前ByDDD
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

禪工作室 13.0.1
強大的PHP整合開發環境

WebStorm Mac版
好用的JavaScript開發工具

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SublimeText3 Linux新版
SublimeText3 Linux最新版

記事本++7.3.1
好用且免費的程式碼編輯器