Merge pull request #103 from asmorkalov/2.4
This commit is contained in:
@@ -46,7 +46,6 @@ class AsyncServiceHelper
|
|||||||
protected LoaderCallbackInterface mUserAppCallback;
|
protected LoaderCallbackInterface mUserAppCallback;
|
||||||
protected String mOpenCVersion;
|
protected String mOpenCVersion;
|
||||||
protected Context mAppContext;
|
protected Context mAppContext;
|
||||||
protected int mStatus = LoaderCallbackInterface.SUCCESS;
|
|
||||||
protected static boolean mServiceInstallationProgress = false;
|
protected static boolean mServiceInstallationProgress = false;
|
||||||
protected static boolean mLibraryInstallationProgress = false;
|
protected static boolean mLibraryInstallationProgress = false;
|
||||||
|
|
||||||
@@ -171,12 +170,11 @@ class AsyncServiceHelper
|
|||||||
{
|
{
|
||||||
if (mEngineService.getEngineVersion() < MINIMUM_ENGINE_VERSION)
|
if (mEngineService.getEngineVersion() < MINIMUM_ENGINE_VERSION)
|
||||||
{
|
{
|
||||||
mStatus = LoaderCallbackInterface.INCOMPATIBLE_MANAGER_VERSION;
|
Log.d(TAG, "Init finished with status " + LoaderCallbackInterface.INCOMPATIBLE_MANAGER_VERSION);
|
||||||
Log.d(TAG, "Init finished with status " + mStatus);
|
|
||||||
Log.d(TAG, "Unbind from service");
|
Log.d(TAG, "Unbind from service");
|
||||||
mAppContext.unbindService(mServiceConnection);
|
mAppContext.unbindService(mServiceConnection);
|
||||||
Log.d(TAG, "Calling using callback");
|
Log.d(TAG, "Calling using callback");
|
||||||
mUserAppCallback.onManagerConnected(mStatus);
|
mUserAppCallback.onManagerConnected(LoaderCallbackInterface.INCOMPATIBLE_MANAGER_VERSION);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -193,43 +191,40 @@ class AsyncServiceHelper
|
|||||||
}
|
}
|
||||||
public void install() {
|
public void install() {
|
||||||
Log.d(TAG, "Trying to install OpenCV lib via Google Play");
|
Log.d(TAG, "Trying to install OpenCV lib via Google Play");
|
||||||
boolean result;
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (mEngineService.installVersion(mOpenCVersion))
|
if (mEngineService.installVersion(mOpenCVersion))
|
||||||
{
|
{
|
||||||
mLibraryInstallationProgress = true;
|
mLibraryInstallationProgress = true;
|
||||||
result = true;
|
|
||||||
Log.d(TAG, "Package installation statred");
|
Log.d(TAG, "Package installation statred");
|
||||||
|
Log.d(TAG, "Unbind from service");
|
||||||
|
mAppContext.unbindService(mServiceConnection);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
result = false;
|
|
||||||
Log.d(TAG, "OpenCV package was not installed!");
|
Log.d(TAG, "OpenCV package was not installed!");
|
||||||
mStatus = LoaderCallbackInterface.MARKET_ERROR;
|
Log.d(TAG, "Init finished with status " + LoaderCallbackInterface.MARKET_ERROR);
|
||||||
|
Log.d(TAG, "Unbind from service");
|
||||||
|
mAppContext.unbindService(mServiceConnection);
|
||||||
|
Log.d(TAG, "Calling using callback");
|
||||||
|
mUserAppCallback.onManagerConnected(LoaderCallbackInterface.MARKET_ERROR);
|
||||||
}
|
}
|
||||||
} catch (RemoteException e) {
|
} catch (RemoteException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();;
|
||||||
result = false;
|
Log.d(TAG, "Init finished with status " + LoaderCallbackInterface.INIT_FAILED);
|
||||||
mStatus = LoaderCallbackInterface.INIT_FAILED;
|
|
||||||
}
|
|
||||||
if (!result)
|
|
||||||
{
|
|
||||||
Log.d(TAG, "Init finished with status " + mStatus);
|
|
||||||
Log.d(TAG, "Unbind from service");
|
Log.d(TAG, "Unbind from service");
|
||||||
mAppContext.unbindService(mServiceConnection);
|
mAppContext.unbindService(mServiceConnection);
|
||||||
Log.d(TAG, "Calling using callback");
|
Log.d(TAG, "Calling using callback");
|
||||||
mUserAppCallback.onManagerConnected(mStatus);
|
mUserAppCallback.onManagerConnected(LoaderCallbackInterface.INIT_FAILED);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public void cancel() {
|
public void cancel() {
|
||||||
Log.d(TAG, "OpenCV library installation was canceled");
|
Log.d(TAG, "OpenCV library installation was canceled");
|
||||||
mStatus = LoaderCallbackInterface.INSTALL_CANCELED;
|
Log.d(TAG, "Init finished with status " + LoaderCallbackInterface.INSTALL_CANCELED);
|
||||||
Log.d(TAG, "Init finished with status " + mStatus);
|
|
||||||
Log.d(TAG, "Unbind from service");
|
Log.d(TAG, "Unbind from service");
|
||||||
mAppContext.unbindService(mServiceConnection);
|
mAppContext.unbindService(mServiceConnection);
|
||||||
Log.d(TAG, "Calling using callback");
|
Log.d(TAG, "Calling using callback");
|
||||||
mUserAppCallback.onManagerConnected(mStatus);
|
mUserAppCallback.onManagerConnected(LoaderCallbackInterface.INSTALL_CANCELED);
|
||||||
}
|
}
|
||||||
public void wait_install() {
|
public void wait_install() {
|
||||||
Log.e(TAG, "Instalation was not started! Nothing to wait!");
|
Log.e(TAG, "Instalation was not started! Nothing to wait!");
|
||||||
@@ -253,12 +248,11 @@ class AsyncServiceHelper
|
|||||||
{
|
{
|
||||||
Log.d(TAG, "OpenCV library installation was canceled");
|
Log.d(TAG, "OpenCV library installation was canceled");
|
||||||
mLibraryInstallationProgress = false;
|
mLibraryInstallationProgress = false;
|
||||||
mStatus = LoaderCallbackInterface.INSTALL_CANCELED;
|
Log.d(TAG, "Init finished with status " + LoaderCallbackInterface.INSTALL_CANCELED);
|
||||||
Log.d(TAG, "Init finished with status " + mStatus);
|
|
||||||
Log.d(TAG, "Unbind from service");
|
Log.d(TAG, "Unbind from service");
|
||||||
mAppContext.unbindService(mServiceConnection);
|
mAppContext.unbindService(mServiceConnection);
|
||||||
Log.d(TAG, "Calling using callback");
|
Log.d(TAG, "Calling using callback");
|
||||||
mUserAppCallback.onManagerConnected(mStatus);
|
mUserAppCallback.onManagerConnected(LoaderCallbackInterface.INSTALL_CANCELED);
|
||||||
}
|
}
|
||||||
public void wait_install() {
|
public void wait_install() {
|
||||||
Log.d(TAG, "Waiting for current installation");
|
Log.d(TAG, "Waiting for current installation");
|
||||||
@@ -267,21 +261,25 @@ class AsyncServiceHelper
|
|||||||
if (!mEngineService.installVersion(mOpenCVersion))
|
if (!mEngineService.installVersion(mOpenCVersion))
|
||||||
{
|
{
|
||||||
Log.d(TAG, "OpenCV package was not installed!");
|
Log.d(TAG, "OpenCV package was not installed!");
|
||||||
mStatus = LoaderCallbackInterface.MARKET_ERROR;
|
Log.d(TAG, "Init finished with status " + LoaderCallbackInterface.MARKET_ERROR);
|
||||||
Log.d(TAG, "Init finished with status " + mStatus);
|
|
||||||
Log.d(TAG, "Unbind from service");
|
|
||||||
mAppContext.unbindService(mServiceConnection);
|
|
||||||
Log.d(TAG, "Calling using callback");
|
Log.d(TAG, "Calling using callback");
|
||||||
mUserAppCallback.onManagerConnected(mStatus);
|
mUserAppCallback.onManagerConnected(LoaderCallbackInterface.MARKET_ERROR);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Log.d(TAG, "Wating for package installation");
|
||||||
|
}
|
||||||
|
|
||||||
|
Log.d(TAG, "Unbind from service");
|
||||||
|
mAppContext.unbindService(mServiceConnection);
|
||||||
|
|
||||||
} catch (RemoteException e) {
|
} catch (RemoteException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
mStatus = LoaderCallbackInterface.INIT_FAILED;
|
Log.d(TAG, "Init finished with status " + LoaderCallbackInterface.INIT_FAILED);
|
||||||
Log.d(TAG, "Init finished with status " + mStatus);
|
|
||||||
Log.d(TAG, "Unbind from service");
|
Log.d(TAG, "Unbind from service");
|
||||||
mAppContext.unbindService(mServiceConnection);
|
mAppContext.unbindService(mServiceConnection);
|
||||||
Log.d(TAG, "Calling using callback");
|
Log.d(TAG, "Calling using callback");
|
||||||
mUserAppCallback.onManagerConnected(mStatus);
|
mUserAppCallback.onManagerConnected(LoaderCallbackInterface.INIT_FAILED);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -297,33 +295,33 @@ class AsyncServiceHelper
|
|||||||
String libs = mEngineService.getLibraryList(mOpenCVersion);
|
String libs = mEngineService.getLibraryList(mOpenCVersion);
|
||||||
Log.d(TAG, "Library list: \"" + libs + "\"");
|
Log.d(TAG, "Library list: \"" + libs + "\"");
|
||||||
Log.d(TAG, "First attempt to load libs");
|
Log.d(TAG, "First attempt to load libs");
|
||||||
|
int status;
|
||||||
if (initOpenCVLibs(path, libs))
|
if (initOpenCVLibs(path, libs))
|
||||||
{
|
{
|
||||||
Log.d(TAG, "First attempt to load libs is OK");
|
Log.d(TAG, "First attempt to load libs is OK");
|
||||||
mStatus = LoaderCallbackInterface.SUCCESS;
|
status = LoaderCallbackInterface.SUCCESS;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
Log.d(TAG, "First attempt to load libs fails");
|
Log.d(TAG, "First attempt to load libs fails");
|
||||||
mStatus = LoaderCallbackInterface.INIT_FAILED;
|
status = LoaderCallbackInterface.INIT_FAILED;
|
||||||
}
|
}
|
||||||
|
|
||||||
Log.d(TAG, "Init finished with status " + mStatus);
|
Log.d(TAG, "Init finished with status " + status);
|
||||||
Log.d(TAG, "Unbind from service");
|
Log.d(TAG, "Unbind from service");
|
||||||
mAppContext.unbindService(mServiceConnection);
|
mAppContext.unbindService(mServiceConnection);
|
||||||
Log.d(TAG, "Calling using callback");
|
Log.d(TAG, "Calling using callback");
|
||||||
mUserAppCallback.onManagerConnected(mStatus);
|
mUserAppCallback.onManagerConnected(status);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (RemoteException e)
|
catch (RemoteException e)
|
||||||
{
|
{
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
mStatus = LoaderCallbackInterface.INIT_FAILED;
|
Log.d(TAG, "Init finished with status " + LoaderCallbackInterface.INIT_FAILED);
|
||||||
Log.d(TAG, "Init finished with status " + mStatus);
|
|
||||||
Log.d(TAG, "Unbind from service");
|
Log.d(TAG, "Unbind from service");
|
||||||
mAppContext.unbindService(mServiceConnection);
|
mAppContext.unbindService(mServiceConnection);
|
||||||
Log.d(TAG, "Calling using callback");
|
Log.d(TAG, "Calling using callback");
|
||||||
mUserAppCallback.onManagerConnected(mStatus);
|
mUserAppCallback.onManagerConnected(LoaderCallbackInterface.INIT_FAILED);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -85,6 +85,7 @@ public abstract class CameraBridgeViewBase extends SurfaceView implements Surfac
|
|||||||
private Object mSyncObject = new Object();
|
private Object mSyncObject = new Object();
|
||||||
|
|
||||||
public void surfaceChanged(SurfaceHolder arg0, int arg1, int arg2, int arg3) {
|
public void surfaceChanged(SurfaceHolder arg0, int arg1, int arg2, int arg3) {
|
||||||
|
Log.d(TAG, "call surfaceChanged event");
|
||||||
synchronized(mSyncObject) {
|
synchronized(mSyncObject) {
|
||||||
if (!mSurfaceExist) {
|
if (!mSurfaceExist) {
|
||||||
mSurfaceExist = true;
|
mSurfaceExist = true;
|
||||||
@@ -163,7 +164,7 @@ public abstract class CameraBridgeViewBase extends SurfaceView implements Surfac
|
|||||||
private void checkCurrentState() {
|
private void checkCurrentState() {
|
||||||
int targetState;
|
int targetState;
|
||||||
|
|
||||||
if (mEnabled && mSurfaceExist) {
|
if (mEnabled && mSurfaceExist && getVisibility() == VISIBLE) {
|
||||||
targetState = STARTED;
|
targetState = STARTED;
|
||||||
} else {
|
} else {
|
||||||
targetState = STOPPED;
|
targetState = STOPPED;
|
||||||
|
|||||||
@@ -40,6 +40,8 @@ public class JavaCameraView extends CameraBridgeViewBase implements PreviewCallb
|
|||||||
private Thread mThread;
|
private Thread mThread;
|
||||||
private boolean mStopThread;
|
private boolean mStopThread;
|
||||||
|
|
||||||
|
private SurfaceTexture mSurfaceTexture;
|
||||||
|
|
||||||
public static class JavaCameraSizeAccessor implements ListItemAccessor {
|
public static class JavaCameraSizeAccessor implements ListItemAccessor {
|
||||||
|
|
||||||
public int getWidth(Object obj) {
|
public int getWidth(Object obj) {
|
||||||
@@ -101,6 +103,7 @@ public class JavaCameraView extends CameraBridgeViewBase implements PreviewCallb
|
|||||||
Size frameSize = calculateCameraFrameSize(sizes, new JavaCameraSizeAccessor(), width, height);
|
Size frameSize = calculateCameraFrameSize(sizes, new JavaCameraSizeAccessor(), width, height);
|
||||||
|
|
||||||
params.setPreviewFormat(ImageFormat.NV21);
|
params.setPreviewFormat(ImageFormat.NV21);
|
||||||
|
Log.d(TAG, "Set preview size to " + Integer.valueOf((int)frameSize.width) + "x" + Integer.valueOf((int)frameSize.height));
|
||||||
params.setPreviewSize((int)frameSize.width, (int)frameSize.height);
|
params.setPreviewSize((int)frameSize.width, (int)frameSize.height);
|
||||||
|
|
||||||
List<String> FocusModes = params.getSupportedFocusModes();
|
List<String> FocusModes = params.getSupportedFocusModes();
|
||||||
@@ -127,9 +130,9 @@ public class JavaCameraView extends CameraBridgeViewBase implements PreviewCallb
|
|||||||
AllocateCache();
|
AllocateCache();
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
|
||||||
SurfaceTexture tex = new SurfaceTexture(MAGIC_TEXTURE_ID);
|
mSurfaceTexture = new SurfaceTexture(MAGIC_TEXTURE_ID);
|
||||||
getHolder().setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
|
getHolder().setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
|
||||||
mCamera.setPreviewTexture(tex);
|
mCamera.setPreviewTexture(mSurfaceTexture);
|
||||||
} else
|
} else
|
||||||
mCamera.setPreviewDisplay(null);
|
mCamera.setPreviewDisplay(null);
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
|||||||
@@ -4,8 +4,8 @@ import org.opencv.android.BaseLoaderCallback;
|
|||||||
import org.opencv.android.LoaderCallbackInterface;
|
import org.opencv.android.LoaderCallbackInterface;
|
||||||
import org.opencv.android.OpenCVLoader;
|
import org.opencv.android.OpenCVLoader;
|
||||||
import org.opencv.core.Mat;
|
import org.opencv.core.Mat;
|
||||||
|
import org.opencv.android.CameraBridgeViewBase;
|
||||||
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
||||||
import org.opencv.android.JavaCameraView;
|
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
@@ -18,13 +18,13 @@ import android.view.View;
|
|||||||
|
|
||||||
public class Puzzle15Activity extends Activity implements CvCameraViewListener, View.OnTouchListener {
|
public class Puzzle15Activity extends Activity implements CvCameraViewListener, View.OnTouchListener {
|
||||||
|
|
||||||
private static final String TAG = "Sample::Puzzle15::Activity";
|
private static final String TAG = "Sample::Puzzle15::Activity";
|
||||||
|
|
||||||
private JavaCameraView mOpenCvCameraView;
|
private CameraBridgeViewBase mOpenCvCameraView;
|
||||||
private Puzzle15Processor mPuzzle15;
|
private Puzzle15Processor mPuzzle15;
|
||||||
|
|
||||||
private int mGameWidth;
|
private int mGameWidth;
|
||||||
private int mGameHeight;
|
private int mGameHeight;
|
||||||
|
|
||||||
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
|
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
|
||||||
|
|
||||||
@@ -54,7 +54,7 @@ public class Puzzle15Activity extends Activity implements CvCameraViewListener,
|
|||||||
|
|
||||||
setContentView(R.layout.activity_puzzle15);
|
setContentView(R.layout.activity_puzzle15);
|
||||||
|
|
||||||
mOpenCvCameraView = (JavaCameraView) findViewById(R.id.puzzle_activity_surface_view);
|
mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.puzzle_activity_surface_view);
|
||||||
mOpenCvCameraView.setCvCameraViewListener(this);
|
mOpenCvCameraView.setCvCameraViewListener(this);
|
||||||
mPuzzle15 = new Puzzle15Processor();
|
mPuzzle15 = new Puzzle15Processor();
|
||||||
mPuzzle15.prepareNewGame();
|
mPuzzle15.prepareNewGame();
|
||||||
|
|||||||
@@ -12,8 +12,8 @@ import org.opencv.core.MatOfPoint;
|
|||||||
import org.opencv.core.Rect;
|
import org.opencv.core.Rect;
|
||||||
import org.opencv.core.Scalar;
|
import org.opencv.core.Scalar;
|
||||||
import org.opencv.core.Size;
|
import org.opencv.core.Size;
|
||||||
|
import org.opencv.android.CameraBridgeViewBase;
|
||||||
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
||||||
import org.opencv.android.JavaCameraView;
|
|
||||||
import org.opencv.imgproc.Imgproc;
|
import org.opencv.imgproc.Imgproc;
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
@@ -26,9 +26,9 @@ import android.view.WindowManager;
|
|||||||
import android.view.View.OnTouchListener;
|
import android.view.View.OnTouchListener;
|
||||||
|
|
||||||
public class ColorBlobDetectionActivity extends Activity implements OnTouchListener, CvCameraViewListener {
|
public class ColorBlobDetectionActivity extends Activity implements OnTouchListener, CvCameraViewListener {
|
||||||
private static final String TAG = "OCVSample::Activity";
|
private static final String TAG = "OCVSample::Activity";
|
||||||
|
|
||||||
private boolean mIsColorSelected = false;
|
private boolean mIsColorSelected = false;
|
||||||
private Mat mRgba;
|
private Mat mRgba;
|
||||||
private Scalar mBlobColorRgba;
|
private Scalar mBlobColorRgba;
|
||||||
private Scalar mBlobColorHsv;
|
private Scalar mBlobColorHsv;
|
||||||
@@ -37,7 +37,7 @@ public class ColorBlobDetectionActivity extends Activity implements OnTouchListe
|
|||||||
private Size SPECTRUM_SIZE;
|
private Size SPECTRUM_SIZE;
|
||||||
private Scalar CONTOUR_COLOR;
|
private Scalar CONTOUR_COLOR;
|
||||||
|
|
||||||
private JavaCameraView mOpenCvCameraView;
|
private CameraBridgeViewBase mOpenCvCameraView;
|
||||||
|
|
||||||
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
|
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
|
||||||
@Override
|
@Override
|
||||||
@@ -71,7 +71,7 @@ public class ColorBlobDetectionActivity extends Activity implements OnTouchListe
|
|||||||
|
|
||||||
setContentView(R.layout.color_blob_detection_surface_view);
|
setContentView(R.layout.color_blob_detection_surface_view);
|
||||||
|
|
||||||
mOpenCvCameraView = (JavaCameraView)findViewById(R.id.color_blob_detection_activity_surface_view);
|
mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.color_blob_detection_activity_surface_view);
|
||||||
mOpenCvCameraView.setCvCameraViewListener(this);
|
mOpenCvCameraView.setCvCameraViewListener(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ import org.opencv.core.MatOfRect;
|
|||||||
import org.opencv.core.Rect;
|
import org.opencv.core.Rect;
|
||||||
import org.opencv.core.Scalar;
|
import org.opencv.core.Scalar;
|
||||||
import org.opencv.core.Size;
|
import org.opencv.core.Size;
|
||||||
import org.opencv.android.JavaCameraView;
|
import org.opencv.android.CameraBridgeViewBase;
|
||||||
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
||||||
import org.opencv.imgproc.Imgproc;
|
import org.opencv.imgproc.Imgproc;
|
||||||
import org.opencv.objdetect.CascadeClassifier;
|
import org.opencv.objdetect.CascadeClassifier;
|
||||||
@@ -53,7 +53,7 @@ public class FdActivity extends Activity implements CvCameraViewListener {
|
|||||||
private float mRelativeFaceSize = 0;
|
private float mRelativeFaceSize = 0;
|
||||||
private int mAbsoluteFaceSize = 0;
|
private int mAbsoluteFaceSize = 0;
|
||||||
|
|
||||||
private JavaCameraView mOpenCvCameraView;
|
private CameraBridgeViewBase mOpenCvCameraView;
|
||||||
|
|
||||||
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
|
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
|
||||||
@Override
|
@Override
|
||||||
@@ -125,7 +125,7 @@ public class FdActivity extends Activity implements CvCameraViewListener {
|
|||||||
|
|
||||||
setContentView(R.layout.face_detect_surface_view);
|
setContentView(R.layout.face_detect_surface_view);
|
||||||
|
|
||||||
mOpenCvCameraView = (JavaCameraView)findViewById(R.id.fd_activity_surface_view);
|
mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.fd_activity_surface_view);
|
||||||
mOpenCvCameraView.setCvCameraViewListener(this);
|
mOpenCvCameraView.setCvCameraViewListener(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ import org.opencv.core.MatOfInt;
|
|||||||
import org.opencv.core.Point;
|
import org.opencv.core.Point;
|
||||||
import org.opencv.core.Scalar;
|
import org.opencv.core.Scalar;
|
||||||
import org.opencv.core.Size;
|
import org.opencv.core.Size;
|
||||||
import org.opencv.android.JavaCameraView;
|
import org.opencv.android.CameraBridgeViewBase;
|
||||||
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
||||||
import org.opencv.imgproc.Imgproc;
|
import org.opencv.imgproc.Imgproc;
|
||||||
|
|
||||||
@@ -45,7 +45,7 @@ public class ImageManipulationsActivity extends Activity implements CvCameraView
|
|||||||
private MenuItem mItemPreviewZoom;
|
private MenuItem mItemPreviewZoom;
|
||||||
private MenuItem mItemPreviewPixelize;
|
private MenuItem mItemPreviewPixelize;
|
||||||
private MenuItem mItemPreviewPosterize;
|
private MenuItem mItemPreviewPosterize;
|
||||||
private JavaCameraView mOpenCvCameraView;
|
private CameraBridgeViewBase mOpenCvCameraView;
|
||||||
|
|
||||||
private Size mSize0;
|
private Size mSize0;
|
||||||
private Size mSizeRgba;
|
private Size mSizeRgba;
|
||||||
@@ -106,7 +106,7 @@ public class ImageManipulationsActivity extends Activity implements CvCameraView
|
|||||||
|
|
||||||
setContentView(R.layout.image_manipulations_surface_view);
|
setContentView(R.layout.image_manipulations_surface_view);
|
||||||
|
|
||||||
mOpenCvCameraView = (JavaCameraView)findViewById(R.id.image_manipulations_activity_surface_view);
|
mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.image_manipulations_activity_surface_view);
|
||||||
mOpenCvCameraView.setCvCameraViewListener(this);
|
mOpenCvCameraView.setCvCameraViewListener(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,6 +6,13 @@
|
|||||||
<org.opencv.android.JavaCameraView
|
<org.opencv.android.JavaCameraView
|
||||||
android:layout_width="fill_parent"
|
android:layout_width="fill_parent"
|
||||||
android:layout_height="fill_parent"
|
android:layout_height="fill_parent"
|
||||||
android:id="@+id/tutorial1_activity_surface_view" />
|
android:visibility="gone"
|
||||||
|
android:id="@+id/tutorial1_activity_java_surface_view" />
|
||||||
|
|
||||||
|
<org.opencv.android.NativeCameraView
|
||||||
|
android:layout_width="fill_parent"
|
||||||
|
android:layout_height="fill_parent"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:id="@+id/tutorial1_activity_native_surface_view" />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|||||||
@@ -4,19 +4,25 @@ import org.opencv.android.BaseLoaderCallback;
|
|||||||
import org.opencv.android.LoaderCallbackInterface;
|
import org.opencv.android.LoaderCallbackInterface;
|
||||||
import org.opencv.android.OpenCVLoader;
|
import org.opencv.android.OpenCVLoader;
|
||||||
import org.opencv.core.Mat;
|
import org.opencv.core.Mat;
|
||||||
|
import org.opencv.android.CameraBridgeViewBase;
|
||||||
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
||||||
import org.opencv.android.JavaCameraView;
|
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
import android.view.Menu;
|
||||||
|
import android.view.MenuItem;
|
||||||
|
import android.view.SurfaceView;
|
||||||
import android.view.Window;
|
import android.view.Window;
|
||||||
import android.view.WindowManager;
|
import android.view.WindowManager;
|
||||||
|
import android.widget.Toast;
|
||||||
|
|
||||||
public class Sample1Java extends Activity implements CvCameraViewListener {
|
public class Sample1Java extends Activity implements CvCameraViewListener {
|
||||||
private static final String TAG = "OCVSample::Activity";
|
private static final String TAG = "OCVSample::Activity";
|
||||||
|
|
||||||
private JavaCameraView mOpenCvCameraView;
|
private CameraBridgeViewBase mOpenCvCameraView;
|
||||||
|
private boolean mIsJavaCamera = true;
|
||||||
|
private MenuItem mItemSwitchCamera = null;
|
||||||
|
|
||||||
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
|
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
|
||||||
@Override
|
@Override
|
||||||
@@ -49,7 +55,13 @@ public class Sample1Java extends Activity implements CvCameraViewListener {
|
|||||||
|
|
||||||
setContentView(R.layout.tutorial1_surface_view);
|
setContentView(R.layout.tutorial1_surface_view);
|
||||||
|
|
||||||
mOpenCvCameraView = (JavaCameraView)findViewById(R.id.tutorial1_activity_surface_view);
|
if (mIsJavaCamera)
|
||||||
|
mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.tutorial1_activity_java_surface_view);
|
||||||
|
else
|
||||||
|
mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.tutorial1_activity_native_surface_view);
|
||||||
|
|
||||||
|
mOpenCvCameraView.setVisibility(SurfaceView.VISIBLE);
|
||||||
|
|
||||||
mOpenCvCameraView.setCvCameraViewListener(this);
|
mOpenCvCameraView.setCvCameraViewListener(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -72,6 +84,40 @@ public class Sample1Java extends Activity implements CvCameraViewListener {
|
|||||||
mOpenCvCameraView.disableView();
|
mOpenCvCameraView.disableView();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onCreateOptionsMenu(Menu menu) {
|
||||||
|
Log.i(TAG, "called onCreateOptionsMenu");
|
||||||
|
mItemSwitchCamera = menu.add("Switch camera");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onOptionsItemSelected(MenuItem item) {
|
||||||
|
String toastMesage = new String();
|
||||||
|
Log.i(TAG, "called onOptionsItemSelected; selected item: " + item);
|
||||||
|
|
||||||
|
if (item == mItemSwitchCamera) {
|
||||||
|
mOpenCvCameraView.setVisibility(SurfaceView.GONE);
|
||||||
|
mIsJavaCamera = !mIsJavaCamera;
|
||||||
|
|
||||||
|
if (mIsJavaCamera) {
|
||||||
|
mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.tutorial1_activity_java_surface_view);
|
||||||
|
toastMesage = "Java Camera";
|
||||||
|
} else {
|
||||||
|
mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.tutorial1_activity_native_surface_view);
|
||||||
|
toastMesage = "Native Camera";
|
||||||
|
}
|
||||||
|
|
||||||
|
mOpenCvCameraView.setVisibility(SurfaceView.VISIBLE);
|
||||||
|
mOpenCvCameraView.setCvCameraViewListener(this);
|
||||||
|
mOpenCvCameraView.enableView();
|
||||||
|
Toast toast = Toast.makeText(this, toastMesage, Toast.LENGTH_LONG);
|
||||||
|
toast.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
public void onCameraViewStarted(int width, int height) {
|
public void onCameraViewStarted(int width, int height) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ import org.opencv.core.CvType;
|
|||||||
import org.opencv.core.Mat;
|
import org.opencv.core.Mat;
|
||||||
import org.opencv.core.Point;
|
import org.opencv.core.Point;
|
||||||
import org.opencv.core.Scalar;
|
import org.opencv.core.Scalar;
|
||||||
import org.opencv.android.NativeCameraView;
|
import org.opencv.android.CameraBridgeViewBase;
|
||||||
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
||||||
import org.opencv.highgui.Highgui;
|
import org.opencv.highgui.Highgui;
|
||||||
import org.opencv.imgproc.Imgproc;
|
import org.opencv.imgproc.Imgproc;
|
||||||
@@ -22,20 +22,20 @@ import android.view.Window;
|
|||||||
import android.view.WindowManager;
|
import android.view.WindowManager;
|
||||||
|
|
||||||
public class Sample2NativeCamera extends Activity implements CvCameraViewListener {
|
public class Sample2NativeCamera extends Activity implements CvCameraViewListener {
|
||||||
private static final String TAG = "OCVSample::Activity";
|
private static final String TAG = "OCVSample::Activity";
|
||||||
|
|
||||||
public static final int VIEW_MODE_RGBA = 0;
|
public static final int VIEW_MODE_RGBA = 0;
|
||||||
public static final int VIEW_MODE_GRAY = 1;
|
public static final int VIEW_MODE_GRAY = 1;
|
||||||
public static final int VIEW_MODE_CANNY = 2;
|
public static final int VIEW_MODE_CANNY = 2;
|
||||||
|
|
||||||
private static int viewMode = VIEW_MODE_RGBA;
|
private static int viewMode = VIEW_MODE_RGBA;
|
||||||
private MenuItem mItemPreviewRGBA;
|
private MenuItem mItemPreviewRGBA;
|
||||||
private MenuItem mItemPreviewGray;
|
private MenuItem mItemPreviewGray;
|
||||||
private MenuItem mItemPreviewCanny;
|
private MenuItem mItemPreviewCanny;
|
||||||
private Mat mRgba;
|
private Mat mRgba;
|
||||||
private Mat mIntermediateMat;
|
private Mat mIntermediateMat;
|
||||||
|
|
||||||
private NativeCameraView mOpenCvCameraView;
|
private CameraBridgeViewBase mOpenCvCameraView;
|
||||||
|
|
||||||
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
|
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
|
||||||
@Override
|
@Override
|
||||||
@@ -68,7 +68,7 @@ public class Sample2NativeCamera extends Activity implements CvCameraViewListene
|
|||||||
|
|
||||||
setContentView(R.layout.tutorial2_surface_view);
|
setContentView(R.layout.tutorial2_surface_view);
|
||||||
|
|
||||||
mOpenCvCameraView = (NativeCameraView)findViewById(R.id.tutorial2_activity_surface_view);
|
mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.tutorial2_activity_surface_view);
|
||||||
mOpenCvCameraView.setCvCameraViewListener(this);
|
mOpenCvCameraView.setCvCameraViewListener(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import org.opencv.android.LoaderCallbackInterface;
|
|||||||
import org.opencv.android.OpenCVLoader;
|
import org.opencv.android.OpenCVLoader;
|
||||||
import org.opencv.core.CvType;
|
import org.opencv.core.CvType;
|
||||||
import org.opencv.core.Mat;
|
import org.opencv.core.Mat;
|
||||||
import org.opencv.android.JavaCameraView;
|
import org.opencv.android.CameraBridgeViewBase;
|
||||||
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
||||||
import org.opencv.imgproc.Imgproc;
|
import org.opencv.imgproc.Imgproc;
|
||||||
|
|
||||||
@@ -20,7 +20,7 @@ public class Sample3Native extends Activity implements CvCameraViewListener {
|
|||||||
|
|
||||||
private Mat mRgba;
|
private Mat mRgba;
|
||||||
private Mat mGrayMat;
|
private Mat mGrayMat;
|
||||||
private JavaCameraView mOpenCvCameraView;
|
private CameraBridgeViewBase mOpenCvCameraView;
|
||||||
|
|
||||||
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
|
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
|
||||||
@Override
|
@Override
|
||||||
@@ -57,7 +57,7 @@ public class Sample3Native extends Activity implements CvCameraViewListener {
|
|||||||
|
|
||||||
setContentView(R.layout.tutorial3_surface_view);
|
setContentView(R.layout.tutorial3_surface_view);
|
||||||
|
|
||||||
mOpenCvCameraView = (JavaCameraView)findViewById(R.id.tutorial4_activity_surface_view);
|
mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.tutorial4_activity_surface_view);
|
||||||
mOpenCvCameraView.setCvCameraViewListener(this);
|
mOpenCvCameraView.setCvCameraViewListener(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import org.opencv.android.LoaderCallbackInterface;
|
|||||||
import org.opencv.android.OpenCVLoader;
|
import org.opencv.android.OpenCVLoader;
|
||||||
import org.opencv.core.CvType;
|
import org.opencv.core.CvType;
|
||||||
import org.opencv.core.Mat;
|
import org.opencv.core.Mat;
|
||||||
import org.opencv.android.JavaCameraView;
|
import org.opencv.android.CameraBridgeViewBase;
|
||||||
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
|
||||||
import org.opencv.highgui.Highgui;
|
import org.opencv.highgui.Highgui;
|
||||||
import org.opencv.imgproc.Imgproc;
|
import org.opencv.imgproc.Imgproc;
|
||||||
@@ -19,7 +19,7 @@ import android.view.Window;
|
|||||||
import android.view.WindowManager;
|
import android.view.WindowManager;
|
||||||
|
|
||||||
public class Sample4Mixed extends Activity implements CvCameraViewListener {
|
public class Sample4Mixed extends Activity implements CvCameraViewListener {
|
||||||
private static final String TAG = "OCVSample::Activity";
|
private static final String TAG = "OCVSample::Activity";
|
||||||
|
|
||||||
private static final int VIEW_MODE_RGBA = 0;
|
private static final int VIEW_MODE_RGBA = 0;
|
||||||
private static final int VIEW_MODE_GRAY = 1;
|
private static final int VIEW_MODE_GRAY = 1;
|
||||||
@@ -36,7 +36,7 @@ public class Sample4Mixed extends Activity implements CvCameraViewListener {
|
|||||||
private MenuItem mItemPreviewCanny;
|
private MenuItem mItemPreviewCanny;
|
||||||
private MenuItem mItemPreviewFeatures;
|
private MenuItem mItemPreviewFeatures;
|
||||||
|
|
||||||
private JavaCameraView mOpenCvCameraView;
|
private CameraBridgeViewBase mOpenCvCameraView;
|
||||||
|
|
||||||
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
|
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
|
||||||
@Override
|
@Override
|
||||||
@@ -73,7 +73,7 @@ public class Sample4Mixed extends Activity implements CvCameraViewListener {
|
|||||||
|
|
||||||
setContentView(R.layout.tutorial4_surface_view);
|
setContentView(R.layout.tutorial4_surface_view);
|
||||||
|
|
||||||
mOpenCvCameraView = (JavaCameraView)findViewById(R.id.tutorial4_activity_surface_view);
|
mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.tutorial4_activity_surface_view);
|
||||||
mOpenCvCameraView.setCvCameraViewListener(this);
|
mOpenCvCameraView.setCvCameraViewListener(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user