Come ruotare la fotocamera quando si utilizza classe VideoCapture su OpenCV? (Rilevamento dei volti del campione su Android). che sto ruotando la tela con:Ruota VideoCapture in OpenCV su Android
if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT)
{
Matrix matrix = new Matrix();
matrix.preTranslate(
(canvas.getWidth() - bmp.getWidth())/2,
(canvas.getHeight() - bmp.getHeight())/2);
matrix.postRotate(270f, (canvas.getWidth())/2,
(canvas.getHeight())/2);
canvas.drawBitmap(bmp, matrix, null);
}
ma l'immagine da fotocamera non gira: Rilevam.viso non funzionano.
La fotocamera riceve il flusso dal seguente:
protected Bitmap processFrame(VideoCapture capture) {
capture.retrieve(mRgba, Highgui.CV_CAP_ANDROID_COLOR_FRAME_RGBA);
capture.retrieve(mGray,
Highgui.CV_CAP_ANDROID_GREY_FRAME);
UPDATE Ho fatto la seguente:
@Override
protected Bitmap processFrame(VideoCapture capture) {
if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {
Core.flip(mRgba.t(), mRgba, 0);
}
else {
}
capture.retrieve(mRgba, Highgui.CV_CAP_ANDROID_COLOR_FRAME_RGBA);
capture.retrieve(mDetect_thread.mGray,
Highgui.CV_CAP_ANDROID_GREY_FRAME);
Ma è non funzionano. Quando eseguo il programma con orientamento ritratto (sul dispositivo Android) - Programma di non iniziare quando ho eseguito il rogramma in orientamento orizzontale - lavoro programma, ma quando ho la rotazione del dispositivo, programma di lavoro, ma l'immagine in mostra dont rotazione
Ovviamente funziona. È il riconoscimento facciale che non funziona fuori dalla scatola con le immagini ruotate. –
Questo non funziona – gregm
Puoi elaborare? –