私はいつもプレビューと最終的な出力が決してつながっていないという印象を受けてきました。プレビューを任意の次元に設定することができ、最終的なJPGはパラメータで設定された特定の解像度になりますが、画像データがバイト[ ]がjpgコールバックにあるのは、私がプレビューを設定する次元に応じて異なります。カメラのプレビューと最終的な画像出力はどのように接続されていますか?
プレビューが最終的なJPGで実際にどのような関係になっているかを誰かに教えてもらえますか? (または上記の関係に関する文書を私に指摘してください)。
TIA
[編集]ラヴィの答えを1として が、これは同様に私の前提だった、しかし、私は彼らが、実際には、直接証拠に基づいて接続されていると推測するが、何の選択肢を見ていません。私は必要に応じてコードを投稿します(しかし、それがたくさんあります)が、私がやっていることはここにあります。
私はユーザーが自分の写真を撮るプレビュー画面を持っています。その後、(jpgコールバックビットマップデータから)キャプチャされた画像を後続の描画ビューに表示し、写真上の図形をトレースすることができます。次に、ポリゴンのポイントを元の画像からそのシェイプをカットするクラスに渡し、カット画像を戻します。
しかし、プレビューをどのように表示するかによっては、存在しない最終イメージのピクセルにアクセスしようとすると、ポリゴン切断クラスが配列の範囲外のインデックスでクラッシュします。このエフェクトは、プレビュービューの寸法の形状を変更することによって排他的に生成されます。私はコード内の何も変更していませんが、私のプレビュービューを誤って整形するだけで、このエラーを100%再現できます。
私はプレビューのデータでは決して操作していないので、プレビューとファイナルが何らかの形で直接接続されている以外の説明は表示されません。私はSurfaceViewに表示してから排他的にユーザーが写真を撮った後のJPGコールバックからのデータ
ravi追加の詳細については、私の編集を参照してください... –
@ Dr.Dredelこれは、プレビューよりもスケーリングファクターと関係があると思います。最初に座標をデバイス原点からイメージ原点に変換し、正しい倍率を適用して元のサイズのイメージにマッピングする必要があります。 – bluefalcon