2

ドキュメント(http://docs.opencv.org/doc/tutorials/introduction/android_binary_package/dev_with_OCV_on_Android.html#application-development-with-static-initialization)に従って静的初期化でopencvを初期化しましたが、これまでのところうまく機能しています自分の携帯電話に。

ただし、私のアプリのテストを手伝ってくれた私の友人の何人かは、「写真強調」機能を使用するとパフォーマンスが非常に悪いと言っています。この機能では、openCV を使用して適応しきい値フィルタリングを適用し、画像内のテキストをシャープにしました (例: How OpenCV を使用して画像を処理し、テキストがシャープでクリアになるようにするには? )。なぜそうなるのか、私はまだ理解できませんでした。

Phone models that I tried it on:
1) My phone (samsung galaxy s3) - smooth (instant)
2) friend no.1 (samsung galaxy s2) - smooth (instant)
3) friend no.2 (samsung galaxy s2) - super laggy (takes few seconds for UI to regain responsiveness)
4) friend no.3 (htc one) - super laggy (takes few seconds for UI to regain responsiveness)
5) friend no.4 (samsung galaxy s4) - super laggy (takes few seconds for UI to regain responsiveness)

私の電話と友人の電話番号 1 の電話が以前に私のアプリの古いバージョンをインストールしたことを思い出しました。アプリはまだ非同期初期化メソッドを使用していました (使用するには、Play ストアから OpenCV マネージャーをインストールする必要があります)。上記でテストした電話の間で何か違う..

誰も同じような経験をしていますか?何を探すべきかについて何かアドバイスはありますか?

4

1 に答える 1

1

これが発生する理由はいくつかあります。公正な評価を行うには、各デバイスを工場出荷時の設定に復元し、プロファイリング/ベンチマーク ツールを実行して何が起こっているかを把握する必要があります。

たとえば、非常に遅いことがわかった電話は次のとおりです。

  • ホーム画面で実行されているウィジェットが多すぎて、デバイスのパフォーマンスが低下する可能性があります。
  • 異なる Android バージョンを使用している可能性があります。
  • ライブ壁紙を使用している可能性があります (実行するには追加の CPU cicles が必要です)。
  • 一般的に言えば、デバイスはアプリから CPU 処理を盗んでいる他のバックグラウンド プロセスを実行している可能性があります。

パフォーマンスに関するヒントが記載された Android 開発者向けの公式ドキュメントがあります。読むのはかなり面白いです。彼らは、アプリケーションのパフォーマンスを測定するためのいくつかのツールを推奨しています。

vogella.com には、Android のパフォーマンスの問題の分析に関するすばらしい記事もあります。必読です!

于 2013-12-21T02:04:20.230 に答える