ColorBlobDetection Sample, ImageManpulations Sample and Tutorial2 updated. Issues...
authorAlexander Smorkalov <alexander.smorkalov@itseez.com>
Tue, 14 Aug 2012 12:59:36 +0000 (16:59 +0400)
committerAndrey Kamaev <andrey.kamaev@itseez.com>
Tue, 21 Aug 2012 11:33:23 +0000 (15:33 +0400)
samples/android/color-blob-detection/src/org/opencv/samples/colorblobdetect/ColorBlobDetector.java
samples/android/color-blob-detection/src/org/opencv/samples/colorblobdetect/SampleCvViewBase.java
samples/android/image-manipulations/src/org/opencv/samples/imagemanipulations/ImageManipulationsView.java
samples/android/tutorial-0-androidcamera/src/org/opencv/samples/tutorial0/Sample0Base.java
samples/android/tutorial-2-opencvcamera/src/org/opencv/samples/tutorial2/Sample2View.java
samples/android/tutorial-2-opencvcamera/src/org/opencv/samples/tutorial2/SampleCvViewBase.java

index 19eeb3b..339f0c6 100644 (file)
@@ -115,5 +115,5 @@ public class ColorBlobDetector
        // Color radius for range checking in HSV color space
        private Scalar mColorRadius = new Scalar(25,50,50,0);
        private Mat mSpectrum = new Mat();
-       private List<MatOfPoint> mContours = new ArrayList<MatOfPoint>();;
+       private List<MatOfPoint> mContours = new ArrayList<MatOfPoint>();
 }
index 0e2e045..55b41bc 100644 (file)
@@ -52,7 +52,7 @@ public abstract class SampleCvViewBase extends SurfaceView implements SurfaceHol
     }
     
     public void setupCamera(int width, int height) {
-        Log.i(TAG, "setupCamera("+width+", "+height+")");
+       Log.i(TAG, "setupCamera("+width+", "+height+")");
         synchronized (this) {
             if (mCamera != null && mCamera.isOpened()) {
                 List<Size> sizes = mCamera.getSupportedPreviewSizes();
@@ -111,11 +111,12 @@ public abstract class SampleCvViewBase extends SurfaceView implements SurfaceHol
 
                 bmp = processFrame(mCamera);
             }
-
+            
             if (bmp != null) {
                 Canvas canvas = mHolder.lockCanvas();
                 if (canvas != null) {
-                    canvas.drawBitmap(bmp, (canvas.getWidth() - bmp.getWidth()) / 2, (canvas.getHeight() - bmp.getHeight()) / 2, null);
+                       canvas.drawColor(0, android.graphics.PorterDuff.Mode.CLEAR);
+                       canvas.drawBitmap(bmp, (canvas.getWidth() - bmp.getWidth()) / 2, (canvas.getHeight() - bmp.getHeight()) / 2, null);
                     mHolder.unlockCanvasAndPost(canvas);
                 }
                 bmp.recycle();
index 8ebbf81..1506a4b 100644 (file)
@@ -127,7 +127,7 @@ class ImageManipulationsView extends SampleCvViewBase {
 
         case ImageManipulationsActivity.VIEW_MODE_HIST:
             capture.retrieve(mRgba, Highgui.CV_CAP_ANDROID_COLOR_FRAME_RGBA);
-            if (mSizeRgba == null)
+            if ((mSizeRgba == null) || (mRgba.cols() != mSizeRgba.width) || (mRgba.height() != mSizeRgba.height))
                 CreateAuxiliaryMats();
             int thikness = (int) (mSizeRgba.width / (mHistSizeNum + 10) / 5);
             if(thikness > 5) thikness = 5;
@@ -171,7 +171,7 @@ class ImageManipulationsView extends SampleCvViewBase {
         case ImageManipulationsActivity.VIEW_MODE_CANNY:
             capture.retrieve(mRgba, Highgui.CV_CAP_ANDROID_COLOR_FRAME_RGBA);
 
-            if (mRgbaInnerWindow == null || mGrayInnerWindow == null)
+            if ((mRgbaInnerWindow == null) || (mGrayInnerWindow == null) || (mRgba.cols() != mSizeRgba.width) || (mRgba.height() != mSizeRgba.height))
                 CreateAuxiliaryMats();
             Imgproc.Canny(mRgbaInnerWindow, mIntermediateMat, 80, 90);
             Imgproc.cvtColor(mIntermediateMat, mRgbaInnerWindow, Imgproc.COLOR_GRAY2BGRA, 4);
@@ -181,7 +181,7 @@ class ImageManipulationsView extends SampleCvViewBase {
             capture.retrieve(mRgba, Highgui.CV_CAP_ANDROID_COLOR_FRAME_RGBA);
             capture.retrieve(mGray, Highgui.CV_CAP_ANDROID_GREY_FRAME);
 
-            if (mRgbaInnerWindow == null || mGrayInnerWindow == null)
+            if ((mRgbaInnerWindow == null) || (mGrayInnerWindow == null) || (mRgba.cols() != mSizeRgba.width) || (mRgba.height() != mSizeRgba.height))
                 CreateAuxiliaryMats();
 
             Imgproc.Sobel(mGrayInnerWindow, mIntermediateMat, CvType.CV_8U, 1, 1);
@@ -196,7 +196,7 @@ class ImageManipulationsView extends SampleCvViewBase {
 
         case ImageManipulationsActivity.VIEW_MODE_ZOOM:
             capture.retrieve(mRgba, Highgui.CV_CAP_ANDROID_COLOR_FRAME_RGBA);
-            if (mZoomCorner == null || mZoomWindow == null)
+            if ((mZoomCorner == null) || (mZoomWindow == null) || (mRgba.cols() != mSizeRgba.width) || (mRgba.height() != mSizeRgba.height))
                 CreateAuxiliaryMats();
             Imgproc.resize(mZoomWindow, mZoomCorner, mZoomCorner.size());
 
@@ -206,7 +206,7 @@ class ImageManipulationsView extends SampleCvViewBase {
 
         case ImageManipulationsActivity.VIEW_MODE_PIXELIZE:
             capture.retrieve(mRgba, Highgui.CV_CAP_ANDROID_COLOR_FRAME_RGBA);
-            if (mRgbaInnerWindow == null)
+            if ((mRgbaInnerWindow == null) || (mRgba.cols() != mSizeRgba.width) || (mRgba.height() != mSizeRgba.height))
                 CreateAuxiliaryMats();
             Imgproc.resize(mRgbaInnerWindow, mIntermediateMat, mSize0, 0.1, 0.1, Imgproc.INTER_NEAREST);
             Imgproc.resize(mIntermediateMat, mRgbaInnerWindow, mSizeRgbaInner, 0., 0., Imgproc.INTER_NEAREST);
@@ -214,7 +214,7 @@ class ImageManipulationsView extends SampleCvViewBase {
 
         case ImageManipulationsActivity.VIEW_MODE_POSTERIZE:
             capture.retrieve(mRgba, Highgui.CV_CAP_ANDROID_COLOR_FRAME_RGBA);
-            if (mRgbaInnerWindow == null)
+            if ((mRgbaInnerWindow == null) || (mRgba.cols() != mSizeRgba.width) || (mRgba.height() != mSizeRgba.height))
                 CreateAuxiliaryMats();
             /*
             Imgproc.cvtColor(mRgbaInnerWindow, mIntermediateMat, Imgproc.COLOR_RGBA2RGB);
index a8b7765..858e43d 100644 (file)
@@ -10,12 +10,12 @@ import android.view.MenuItem;
 import android.view.Window;
 
 public class Sample0Base extends Activity {
-    private static final String TAG            = "Sample::Activity";
+    
+       private static final String TAG            = "Sample::Activity";
 
     private MenuItem            mItemPreviewRGBA;
     private MenuItem            mItemPreviewGray;
-    private Sample0View mView;
-
+    private Sample0View         mView;
 
     public Sample0Base() {
         Log.i(TAG, "Instantiated new " + this.getClass());
index 74d29dd..2fa2b8f 100644 (file)
@@ -44,7 +44,7 @@ class Sample2View extends SampleCvViewBase {
             break;
         case Sample2NativeCamera.VIEW_MODE_RGBA:
             capture.retrieve(mRgba, Highgui.CV_CAP_ANDROID_COLOR_FRAME_RGBA);
-            Core.putText(mRgba, "OpenCV + Android", new Point(10, 100), 3, 2, new Scalar(255, 0, 0, 255), 3);
+            Core.putText(mRgba, "OpenCV+Android", new Point(10, 50), 3, 1, new Scalar(255, 0, 0, 255), 2);
             break;
         case Sample2NativeCamera.VIEW_MODE_CANNY:
             capture.retrieve(mGray, Highgui.CV_CAP_ANDROID_GREY_FRAME);
index a15f880..dcce4e5 100644 (file)
@@ -115,7 +115,8 @@ public abstract class SampleCvViewBase extends SurfaceView implements SurfaceHol
             if (bmp != null) {
                 Canvas canvas = mHolder.lockCanvas();
                 if (canvas != null) {
-                    canvas.drawBitmap(bmp, (canvas.getWidth() - bmp.getWidth()) / 2, (canvas.getHeight() - bmp.getHeight()) / 2, null);
+                       canvas.drawColor(0, android.graphics.PorterDuff.Mode.CLEAR);
+                       canvas.drawBitmap(bmp, (canvas.getWidth()-bmp.getWidth()) / 2, (canvas.getHeight()-bmp.getHeight()) / 2, null);
                     mHolder.unlockCanvasAndPost(canvas);
                 }
                 bmp.recycle();