顔検出の例を実行して、カメラを縦向きに回転させる方法を教えてください。2.4.3 RCでは、次のように表示されました。
新しいJavaサンプルフレームワーク。サンプルは大幅にリファクタリングされています。古いフレームワークのいくつかの問題が解決されるため、新しいアーキテクチャを調べることをお勧めします。新しいフレームワークは、Javaまたはネイティブカメラのいずれか、カスタムビューレイアウト、簡単なManagerベースのOpenCV初期化、適切なアプリケーションイベント処理(一時停止、再開、回転など)を含むCVアプリケーションの統合ベースを提供します。
WebサイトのCameraBridgeViewBaseの仕様には、カメラを回転させる方法の説明はありません。私はこれを試しました:
public Mat onCameraFrame(Mat inputFrame) {
inputFrame.copyTo(mRgba);
Imgproc.cvtColor(mRgba, mGray, Imgproc.COLOR_RGBA2GRAY);
if ((getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT)
&& (mGray != null) && (mRgba != null)) {
Core.transpose(mGray, tmp_grey);
Core.flip(tmp_grey, mGray, 0);
}
結果は– mgrayターンです(レンダリングで確認できます)。mRgbaを使用した同じ操作では、画面が黒くなり、エラーは発生しません。AsusNexus7を使用しました
OpenCV 2.4.2でVideoCaptureを試しましたが、結果がありません。