From 63f8feb2a1aa5236bac642ad977ee267e8aa4ad7 Mon Sep 17 00:00:00 2001 From: Kirill Kornyakov Date: Tue, 12 Jul 2011 14:53:09 +0000 Subject: [PATCH] java tests: added a chessboard image --- .../android_test/res/drawable/chessboard.jpg | Bin 0 -> 27908 bytes .../src/org/opencv/test/OpenCVTestCase.java | 2 ++ .../src/org/opencv/test/OpenCVTestRunner.java | 16 +++++++++------- .../org/opencv/test/calib3d/calib3dTest.java | 9 +++++++-- 4 files changed, 18 insertions(+), 9 deletions(-) create mode 100644 modules/java/android_test/res/drawable/chessboard.jpg diff --git a/modules/java/android_test/res/drawable/chessboard.jpg b/modules/java/android_test/res/drawable/chessboard.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6ade32006e4af484d433fbde43948fa550ed7768 GIT binary patch literal 27908 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%0Dq~kn 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 E*_#Bwd;kCd literal 0 HcmV?d00001 diff --git a/modules/java/android_test/src/org/opencv/test/OpenCVTestCase.java b/modules/java/android_test/src/org/opencv/test/OpenCVTestCase.java index 032205412f..f8d5374fed 100644 --- a/modules/java/android_test/src/org/opencv/test/OpenCVTestCase.java +++ b/modules/java/android_test/src/org/opencv/test/OpenCVTestCase.java @@ -49,6 +49,7 @@ public class OpenCVTestCase extends TestCase { protected static Mat rgba128; protected static Mat rgbLena; + protected static Mat grayChess; protected static Mat v1; protected static Mat v2; @@ -92,6 +93,7 @@ public class OpenCVTestCase extends TestCase { rgba128 = new Mat(matSize, matSize, CvType.CV_8UC4); rgba128.setTo(Scalar.all(128)); rgbLena = highgui.imread(OpenCVTestRunner.LENA_PATH); + grayChess = highgui.imread(OpenCVTestRunner.CHESS_PATH); v1 = new Mat(1, 3, CvType.CV_32F); v1.put(0, 0, 1.0, 3.0, 2.0); v2 = new Mat(1, 3, CvType.CV_32F); v2.put(0, 0, 2.0, 1.0, 3.0); diff --git a/modules/java/android_test/src/org/opencv/test/OpenCVTestRunner.java b/modules/java/android_test/src/org/opencv/test/OpenCVTestRunner.java index 569439313f..e489a8c567 100644 --- a/modules/java/android_test/src/org/opencv/test/OpenCVTestRunner.java +++ b/modules/java/android_test/src/org/opencv/test/OpenCVTestRunner.java @@ -20,17 +20,19 @@ import android.util.Log; public class OpenCVTestRunner extends InstrumentationTestRunner { public static String LENA_PATH = "/data/data/org.opencv.test/files/lena.jpg"; - - private AndroidTestRunner androidTestRunner; + public static String CHESS_PATH = "/data/data/org.opencv.test/files/chessboard.jpg"; private static String TAG = "opencv_test_java"; + private AndroidTestRunner androidTestRunner; + static public void Log(String message) { Log.e(TAG, message); } @Override public void onStart() { - ExportLena(); + ExportResourceImage("lena.jpg", R.drawable.lena); + ExportResourceImage("chessboard.jpg", R.drawable.chessboard); //List testCases = androidTestRunner.getTestCases(); //Collections.shuffle(testCases); //shuffle the tests order @@ -44,16 +46,16 @@ public class OpenCVTestRunner extends InstrumentationTestRunner { return androidTestRunner; } - private void ExportLena() { + private void ExportResourceImage(String image, int rId) { try { - Bitmap mBitmap = BitmapFactory.decodeResource(this.getContext().getResources(), R.drawable.lena); - FileOutputStream fos = this.getContext().openFileOutput("lena.jpg", Context.MODE_WORLD_READABLE); + Bitmap mBitmap = BitmapFactory.decodeResource(this.getContext().getResources(), rId); + FileOutputStream fos = this.getContext().openFileOutput(image, Context.MODE_WORLD_READABLE); mBitmap.compress(CompressFormat.JPEG, 100, fos); fos.flush(); fos.close(); } catch (Exception e) { - Log("Tried to write lena.jpg, but: " + e.toString()); + Log("Tried to write " + image + ", but: " + e.toString()); } } } diff --git a/modules/java/android_test/src/org/opencv/test/calib3d/calib3dTest.java b/modules/java/android_test/src/org/opencv/test/calib3d/calib3dTest.java index a0d8c9e4ac..05df8f9557 100644 --- a/modules/java/android_test/src/org/opencv/test/calib3d/calib3dTest.java +++ b/modules/java/android_test/src/org/opencv/test/calib3d/calib3dTest.java @@ -1,6 +1,9 @@ package org.opencv.test.calib3d; +import org.opencv.Size; +import org.opencv.calib3d; import org.opencv.test.OpenCVTestCase; +import org.opencv.test.OpenCVTestRunner; public class calib3dTest extends OpenCVTestCase { @@ -93,11 +96,13 @@ public class calib3dTest extends OpenCVTestCase { } public void testFindChessboardCornersMatSizeMat() { - fail("Not yet implemented"); + Size patternSize = new Size(9, 6); + calib3d.findChessboardCorners(grayChess, patternSize, dst); + assertTrue(!dst.empty()); } public void testFindChessboardCornersMatSizeMatInt() { - fail("Not yet implemented"); + fail("Not yet implemented");//CALIB_CB_ADAPTIVE_THRESH + CALIB_CB_NORMALIZE_IMAGE + CALIB_CB_FAST_CHECK } public void testFindFundamentalMatMatMat() { -- GitLab