問題タブ [android-renderscript]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - renderscript ファイル内のカーネル数
renderscript では、次のようにカーネルを別の.rs
ファイルで定義する必要があります。
次に、メインの Java ファイルで次のように使用する必要があります。
私は、次のうちどれがパフォーマンスのための最良のプログラミング手法であり、その理由は何なのか疑問に思っていました.
- すべてのカーネルを同じ
.rs
ファイルで定義します。 .rs
カーネルごとに個別のファイルを使用します。
renderscript - android.support.v8.renderscript のサポートされていないメソッド rsAllocationCopy1DRange の呼び出し
アロケーションのすべてのセルをレンダリングスクリプトの他のアロケーションにコピーしようとしていました。Android開発者APIリファレンスから、このメソッドrsAllocationCopy1DRangeを取得しました。その署名は
void rsAllocationCopy1DRange(rs_allocation dstAlloc, uint32_t dstOff, uint32_t dstMip, uint32_t カウント, rs_allocation srcAlloc, uint32_t srcOff, uint32_t srcMip);
.
メソッドの Google リファレンス リンクはhttps://developer.android.com/guide/topics/renderscript/reference/rs_allocation_data.htmlです。
しかし、スクリプトを実行すると、Call to Unsupported method rsAllocationCopy1DRange in android.support.v8.renderscriptエラーが表示されます
私のrsスクリプトは以下です
そしてJavaコードは
エラーのLogcat出力は
java - Renderscript カーネルから構造体を取得する方法
私は問題があります。renderscript カーネルから構造体を取得したいと思います。私が欲しかったのは、構造体要素の入力を取得することでした...それを変更してから、変更して返します。しかし、反射層にはそのような方法はありません。バッファーからデータを手動で逆シリアル化しようとしましたが、割り当てには型の copyTo で検証があるため、バッファーを ByteBuffer にコピーすることさえできないため、何をすべきかわかりません...
android - renderscript での計算と通信のオーバーラップ
renderscript では、このようなカーネルを呼び出します
そして、次のようにパラメーターを割り当てに転送します。
複数の異なるカーネルを呼び出すプログラムに取り組んでいます。カーネルのデータ転送を前のカーネルの計算とオーバーラップさせることはできますか? (つまり、GPU が前のカーネルで動作している間、次のカーネルのデータを転送することができます)
android - renderscript android を使用した ODE
renderscript でニューラル ネットワークを使用したいと考えています。ODE (常微分方程式) を renderscript で解く方法があれば知りたいです。BLAS の新しい組み込み Android が提供する ODE に固有のものはありますか?
image-processing - RenderScript の割り当て出力が黒のビットマップを返す
数日前、RenderScript の学習を始めたばかりです。グレースケール、色の変更など、いくつかの簡単な画像処理フィルターを作成することができました。現在、私はキャニーエッジフィルターに取り組んでいますが、成功していません。
質問: ImageView に黒い画像が表示される理由とその解決方法を教えてください。
arekolek githubによって作成された Canny egde フィルターの実装を使用しています
オプション: より速く計算できますか?
他の場所で imageView をいじっていないことを確認するために、デバイスで画像をクリックしたときに実行されるメソッド「runEdgeFilter(...)」にすべてのコードを書き込んで終了しました。これまでに使用したコード。
renderscript edge.rs:
いくつかのデバッグの後、次のことがわかりました。
白と黒のピクセルを返すので、レンダースクリプトは適切に機能すると思います。出力は、Bitmap に正常に割り当てた以前の renderscript フィルター (uchar4) と同じタイプです。何が間違っていたのかわかりません。
また、私のログキャットは次のように出力します:
renderscript を使用するすべてのプログラムで、他のプログラムはこの警告があっても動作します。
更新 #1
@Stephen Hinesが言及しているように、範囲外の読み取りに問題がありました。これらの行を変更することで、今のところ(renderscriptをいじらずに)修正したと思います:
の中へ:
しかし、私の問題はまだ解決されていません。出力は先ほどのように黒です。
android - 配列の一部を割り当てにコピー
受信したデータを renderscript で処理したいのですが、2 バイトのヘッダーと数百個の整列されていない 3 バイトのサンプルが含まれており、これらは rs で 3 つの符号なし文字のベクトルとして表されるため、サンプルのみをコピーしてヘッダーを削除する必要があります。
配列の一部を新しい配列にコピーしてそこAllocation
から埋めることなく、それを行うことはできますか?
を使用しようとしましたが、現在、パラメーターはソース配列ではなく、それ自体のオフセットであるとAllocation.copy1DRangeFrom
想定しています。offset
Allocation