問題タブ [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.

0 投票する
2 に答える
762 参照

background-image - 背景画像をぼかしようとすると、RenderScript クラス定義が見つかりません

使いたい画像をぼかしたいとき

だから私はこれを私のbuild.gradleファイルに入れました:

そして、この方法を使用して画像をぼかします。

しかし、コードは次の行でクラッシュします。

このエラーを与える:

ここからすべてをフォローしたので、理由がわかりません:http://developer.android.com/guide/topics/renderscript/compute.html

誰でも助けることができますか?

0 投票する
1 に答える
72 参照

android - 任意のサイズの 3D ボリュームを計算するための推奨されるアプローチ

私の質問を組み立てるには:

任意のサイズの HxWxD 入力ボリュームが FxFxD フィルターで畳み込まれるカスタム畳み込み (CNN 用) を作成しています。D は 3 または 4 の場合もありますが、それ以上の場合もあります。私は RenderScript を初めて使用し、現在、将来使用できるフレームワークを作成することを目標にアプローチを調査しているため、すぐに非推奨になる可能性のある方法で API を使用することになりたくありません。私は現在 23 を目標にしていますが、ある時点で 18 ~ 19 に戻す必要があるかもしれません。これについては議論の余地があります。

3D Allocation を定義し、カーネルの in-parameter のタイプとして float を使用すると、カーネルは Z 軸に沿ってすべての要素を訪問するようです。このような:

カーネル:

ジャワ:

W=H=5 および D=3 の場合、3D ボリュームには 75 個のフロートがあります。プログラムを実行すると、75 個の出力が出力されます。

xy: {0.000000, 0.000000, 0.000000} xy: {1.000000, 0.000000, 0.000000} ... xy: {0.000000, 0.000000, 1.000000} xy: {1.000000, 0.000000, 00} ...

パターンは 3x25 回繰り返されます。

OTOH 参照は z 座標について不明であり、renderscript の答え: 'z' 座標へのアクセスは、z 座標パラメーターがサポートされていないことを示しています。

また、フィルターをカーネル内の rs_allocation 変数にバインドする必要があります。今私は持っています:

カーネル:

ジャワ:

これはうまくいくようです (コンパイル エラーや実行時エラーは発生しません)。しかし、バージョン 20 以降では 1D 割り当てのみをバインドできると述べている 2014 年の SE エントリがあり、これは私の結果と矛盾しています。

そこには矛盾した古い情報がたくさんあるので、内部の誰かがこれについてコメントし、持続可能性と最適性の両方の観点からアプローチを推奨してくれることを願っています.

(1) 渡された xyz 座標を使用して、バインドされた 3D 割り当てとの畳み込みを計算する必要がありますか? それとも、このアプローチはある時点で非推奨になるのでしょうか?

(2) これを行う方法は他にもあります。たとえば、すべての割り当てを 1D に再形成し、それらをカーネルに渡し、インデックス演算を使用できます。これにより、特定の値を互いに近くに配置することもできます。もう 1 つのアプローチは、入力 3D ボリュームを深さ 4 のブロックに分割し、型として float4 を使用することです。(1)を使用しても問題ないと仮定すると、最適化の観点から、他のアプローチとは対照的に(1)を使用することに不利な点はありますか?

(3)一般に、(1)のような「単純な」アプローチとは対照的に、最適性の理由から、問題をfloat3またはfloat4の深さに再定式化するなど、望ましいメモリレイアウトの定式化はありますか?

0 投票する
1 に答える
442 参照

android - エラーRendercript Android Studio 2.0

本日、Android Studio からバージョン 2.0 の新しいアップデートを受け取りました。更新が完了した後、アプリをビルドしましたが、ビルド gradle でエラー メッセージが表示されます

私は検索して、置換によって解決策を見つけました

ビルドは成功しましたが、アプリを実行するとアプリがクラッシュし、logcat が表示されます:

コード プロセスのぼかし :

IDE を 2.0 にアップデートすると、予期せぬ事態が発生しました。

Plz、解決策を教えてください。皆さんありがとう !!!

0 投票する
1 に答える
383 参照

android - RenderScript はアルファ チャネルを変更しませんか? [アンドロイド]

私は RenderScript で簡単なスクリプトを使用しています。ビットマップからピクセルの RGBA 値を変更する必要があります。何度も試した結果、アルファ チャネルが変更されないことがわかりました。

いくつかの調査を行ったところ、この古い質問が見つかりましたが、これがどのように、なぜ起こるのかわかりません。スクリプトでアルファ チャネルを変更する正しい方法はありますか?

これが私のコードの簡素化されたバージョンです:

Java 側:

RenderScript 側:

メモリバインディングも試しましたが、結果は同じです:

次に、Java 側から (forEach の後) copyTo を実行しますが、アルファ チャネルは自動的に 255 に設定されます。

とにかくサポートに感謝します。

- 更新 1:

次のように getAbsolutePath() を使用してファイルからビットマップを取得することを忘れていました。

0 投票する
1 に答える
591 参照

android - Android: Renderscript エラー - ビットマップから割り当てを更新できません。サイズが一致しません

Web から写真を読み込んでぼかしを実行し、ぼかした画像を別のビットマップとして出力しようとしています。私のコードは次のようになります。

そして、私はエラーが発生しています:

なぜこうなった?

0 投票する
1 に答える
216 参照

android - Float4 オブジェクトを RenderScript カーネルに渡すとエラーが発生するのはなぜですか?

float数値の配列をRenderScript カーネルに転送するために次の手順を使用すると、正常に動作します。

次のように Float4 値を転送するために同様の手順を使用したい

次のエラーが発生します

渡されたオブジェクトはプリミティブの配列ではありません

どうやら、wプリミティブの配列である必要があります。wしかし、私はの配列になりたいですFloat4