私は最新の OpenCV 2.4.3 Android プロジェクトでカメラを使用しており、Mat をビットマップに変換しています。私が使用しているユーティリティ メソッド (OpenCV プロジェクトで提供) では、変換を行うために Mat と同じ幅と高さのビットマップが必要です。マットの高さにアクセスすると、0 です。幅は 640 です (予想どおり、高さは 480 であると予想していました)。
Mat は連続しており、これが mat.rows() に影響することは理解できましたが、高さを変更するべきではありませんか?
コードが必要な場合: サンプル コードを見ると、カメラ アクティビティには次のメソッドがあります。
public Mat onCameraFrame(Mat inputFrame) {
inputFrame.copyTo(mRgba);
DoSomething(mRgba.getNativeObjAddr());
return mRgba;
}
以下を使用して寸法を確認すると:
Log.d(TAG, "Width: " + mRgba.width() + ", Height:" + mRgba.height());
私は得る:
Width: 640, Height:0