├── .classpath ├── .cproject ├── .gitignore ├── .project ├── .settings └── org.eclipse.jdt.core.prefs ├── AndroidManifest.xml ├── README ├── build.xml ├── jni ├── Android.mk ├── Application.mk └── jni_part.cpp ├── obj └── local │ ├── armeabi-v7a │ ├── libgnustl_static.a │ ├── libnative_sample.so │ └── objs │ │ └── native_sample │ │ ├── jni_part.o │ │ └── jni_part.o.d │ └── armeabi │ ├── libgnustl_static.a │ ├── libnative_sample.so │ └── objs │ └── native_sample │ ├── jni_part.o │ └── jni_part.o.d ├── proguard-project.txt ├── project.properties ├── res ├── drawable-hdpi │ └── ic_action_search.png ├── drawable-mdpi │ └── ic_action_search.png ├── drawable-xhdpi │ └── ic_action_search.png ├── drawable │ └── icon.png ├── layout │ ├── activity_main.xml │ └── main.xml ├── menu │ └── activity_main.xml ├── raw │ ├── haarcascade_frontalface_alt.xml │ ├── haarcascade_frontalface_alt2.xml │ └── lbpcascade_frontalface.xml ├── values-large │ └── dimens.xml └── values │ ├── dimens.xml │ └── strings.xml └── src └── org └── opencv └── face ├── MainActivity.java ├── Sample3Native.java ├── Sample3View.java └── SampleViewBase.java /.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /.cproject: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 44 | 47 | 48 | 49 | 50 | 55 | 58 | 59 | 60 | 61 | 66 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 | 267 | 268 | 269 | 270 | 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # built application files 2 | *.apk 3 | *.ap_ 4 | 5 | # files for the dex VM 6 | *.dex 7 | 8 | # Java class files 9 | *.class 10 | 11 | # generated files 12 | bin/ 13 | gen/ 14 | libs/ 15 | 16 | # Local configuration file (sdk path, etc) 17 | local.properties -------------------------------------------------------------------------------- /.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Face Recognition 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.cdt.managedbuilder.core.genmakebuilder 10 | auto,full,incremental, 11 | 12 | 13 | ?name? 14 | 15 | 16 | 17 | org.eclipse.cdt.make.core.append_environment 18 | true 19 | 20 | 21 | org.eclipse.cdt.make.core.autoBuildTarget 22 | 23 | 24 | 25 | org.eclipse.cdt.make.core.buildArguments 26 | 27 | 28 | 29 | org.eclipse.cdt.make.core.buildCommand 30 | E:/Android/android-ndk-r8/ndk-build.cmd 31 | 32 | 33 | org.eclipse.cdt.make.core.cleanBuildTarget 34 | clean 35 | 36 | 37 | org.eclipse.cdt.make.core.contents 38 | org.eclipse.cdt.make.core.activeConfigSettings 39 | 40 | 41 | org.eclipse.cdt.make.core.enableAutoBuild 42 | true 43 | 44 | 45 | org.eclipse.cdt.make.core.enableCleanBuild 46 | false 47 | 48 | 49 | org.eclipse.cdt.make.core.enableFullBuild 50 | true 51 | 52 | 53 | org.eclipse.cdt.make.core.fullBuildTarget 54 | 55 | 56 | 57 | org.eclipse.cdt.make.core.stopOnError 58 | true 59 | 60 | 61 | org.eclipse.cdt.make.core.useDefaultBuildCmd 62 | false 63 | 64 | 65 | 66 | 67 | com.android.ide.eclipse.adt.ResourceManagerBuilder 68 | 69 | 70 | 71 | 72 | com.android.ide.eclipse.adt.PreCompilerBuilder 73 | 74 | 75 | 76 | 77 | org.eclipse.jdt.core.javabuilder 78 | 79 | 80 | 81 | 82 | com.android.ide.eclipse.adt.ApkBuilder 83 | 84 | 85 | 86 | 87 | org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder 88 | full,incremental, 89 | 90 | 91 | 92 | 93 | 94 | com.android.ide.eclipse.adt.AndroidNature 95 | org.eclipse.jdt.core.javanature 96 | org.eclipse.cdt.core.cnature 97 | org.eclipse.cdt.core.ccnature 98 | org.eclipse.cdt.managedbuilder.core.managedBuildNature 99 | org.eclipse.cdt.managedbuilder.core.ScannerConfigNature 100 | 101 | 102 | -------------------------------------------------------------------------------- /.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | #Thu Dec 13 14:27:29 IST 2012 2 | eclipse.preferences.version=1 3 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 4 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 5 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 6 | org.eclipse.jdt.core.compiler.compliance=1.5 7 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 8 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 9 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 10 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 11 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 12 | org.eclipse.jdt.core.compiler.source=1.5 13 | -------------------------------------------------------------------------------- /AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 26 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 38 | 39 | 42 | 43 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | This is an Android application for Face Detection using the OPENCV API. -------------------------------------------------------------------------------- /build.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | 29 | 30 | 31 | 35 | 36 | 37 | 38 | 39 | 40 | 49 | 50 | 51 | 52 | 56 | 57 | 69 | 70 | 71 | 89 | 90 | 91 | 92 | 93 | -------------------------------------------------------------------------------- /jni/Android.mk: -------------------------------------------------------------------------------- 1 | LOCAL_PATH := $(call my-dir) 2 | 3 | include $(CLEAR_VARS) 4 | 5 | include ../../sdk/native/jni/OpenCV.mk 6 | 7 | LOCAL_MODULE := native_sample 8 | LOCAL_SRC_FILES := jni_part.cpp 9 | LOCAL_LDLIBS += -llog -ldl 10 | 11 | include $(BUILD_SHARED_LIBRARY) 12 | -------------------------------------------------------------------------------- /jni/Application.mk: -------------------------------------------------------------------------------- 1 | APP_STL := gnustl_static 2 | APP_CPPFLAGS := -frtti -fexceptions 3 | APP_ABI := armeabi 4 | -------------------------------------------------------------------------------- /jni/jni_part.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | 9 | #include 10 | #include 11 | #include 12 | 13 | #define LOG_TAG "Ajay" 14 | #define LOGD(...) ((void)__android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__)) 15 | 16 | using namespace std; 17 | using namespace cv; 18 | 19 | extern "C" { 20 | JNIEXPORT void JNICALL Java_org_opencv_face_Sample3View_FindFeatures(JNIEnv* env, jobject, jint width, jint height, jbyteArray yuv, jintArray bgra) 21 | { 22 | try { 23 | jbyte* _yuv = env->GetByteArrayElements(yuv, 0); 24 | jint* _bgra = env->GetIntArrayElements(bgra, 0); 25 | 26 | Mat myuv(height + height/2, width, CV_8UC1, (unsigned char *)_yuv); 27 | Mat mbgra(height, width, CV_8UC4, (unsigned char *)_bgra); 28 | Mat mgray(height, width, CV_8UC1, (unsigned char *)_yuv); 29 | 30 | cvtColor(myuv, mbgra, CV_YUV420sp2BGR, 4); 31 | 32 | env->ReleaseIntArrayElements(bgra, _bgra, 0); 33 | env->ReleaseByteArrayElements(yuv, _yuv, 0); 34 | } catch(cv::Exception e) 35 | { 36 | LOGD("nativeCreateObject catched cv::Exception: %s", e.what()); 37 | jclass je = env->FindClass("org/opencv/core/CvException"); 38 | if(!je) 39 | je = env->FindClass("java/lang/Exception"); 40 | env->ThrowNew(je, e.what()); 41 | } 42 | catch (...) 43 | { 44 | LOGD("nativeCreateObject catched unknown exception"); 45 | jclass je = env->FindClass("java/lang/Exception"); 46 | env->ThrowNew(je, "Unknown exception in JNI code {highgui::VideoCapture_n_1VideoCapture__()}"); 47 | } 48 | 49 | 50 | } 51 | JNIEXPORT void JNICALL Java_org_opencv_face_Sample3View_FindFaces(JNIEnv* env, jobject, jstring jImageName,jstring jFileName) 52 | { 53 | try { 54 | 55 | const char* jnamestr = env->GetStringUTFChars(jFileName, NULL); 56 | string stdFileName(jnamestr); 57 | const char* jimagestr = env->GetStringUTFChars(jImageName, NULL); 58 | string stdImageName(jimagestr); 59 | 60 | LOGD("Image = %s ",stdImageName.c_str()); 61 | 62 | CascadeClassifier haar_cascade; 63 | if(haar_cascade.load(stdFileName)){ 64 | LOGD("Haar successfully loaded"); 65 | } 66 | LOGD("cascade : %s ",stdFileName.c_str()); 67 | Mat original = imread(stdImageName+".jpg", 1); 68 | if(! original.data ) // Check for invalid input 69 | { 70 | LOGD("Could not load image"); 71 | } 72 | Mat gray ;//= original.clone(); 73 | cvtColor(original,gray,CV_BGR2GRAY); 74 | vector< Rect_ > faces; 75 | haar_cascade.detectMultiScale(gray, faces, 1.1, 3, 0, Size(20,60)); 76 | LOGD("FACES : %d ",faces.size()); 77 | if(faces.size()>0) { 78 | Rect face_i = faces[0]; 79 | Mat original_face = original(face_i); 80 | resize(original_face,original_face,Size(200,200)); 81 | imwrite(stdImageName+"_det.jpg",original_face); 82 | } 83 | 84 | return; 85 | } catch(cv::Exception e) 86 | { 87 | LOGD("nativeCreateObject catched cv::Exception: %s", e.what()); 88 | jclass je = env->FindClass("org/opencv/core/CvException"); 89 | if(!je) 90 | je = env->FindClass("java/lang/Exception"); 91 | env->ThrowNew(je, e.what()); 92 | } 93 | catch (...) 94 | { 95 | LOGD("nativeCreateObject catched unknown exception"); 96 | jclass je = env->FindClass("java/lang/Exception"); 97 | env->ThrowNew(je, "Unknown exception in JNI code {highgui::VideoCapture_n_1VideoCapture__()}"); 98 | } 99 | 100 | } 101 | 102 | JNIEXPORT int JNICALL Java_org_opencv_face_Sample3View_Find(JNIEnv* env, jobject, jstring jImageName,jstring jFileName,jstring jCsv) 103 | { 104 | try { 105 | 106 | const char* jnamestr = env->GetStringUTFChars(jFileName, NULL); 107 | string stdFileName(jnamestr); 108 | const char* jimagestr = env->GetStringUTFChars(jImageName, NULL); 109 | string stdImageName(jimagestr); 110 | const char* jCsvstr = env->GetStringUTFChars(jCsv, NULL); 111 | string stdCsv(jCsvstr); 112 | 113 | vector images; 114 | vector labels; 115 | std::ifstream file(stdCsv.c_str(), ifstream::in); 116 | // vector v; 117 | 118 | LOGD("Image = %s ",stdImageName.c_str()); 119 | 120 | string line, path, classlabel; 121 | while (getline(file, line)) { 122 | stringstream liness(line); 123 | getline(liness, path, ';'); 124 | getline(liness, classlabel); 125 | if(!path.empty() && !classlabel.empty()) { 126 | images.push_back(imread(path, 0)); 127 | labels.push_back(atoi(classlabel.c_str())); 128 | } 129 | } 130 | 131 | int im_width = images[0].cols; 132 | int im_height = images[0].rows; 133 | // Create a FaceRecognizer and train it on the given images: 134 | Ptr model = createEigenFaceRecognizer(); 135 | model->train(images, labels); 136 | 137 | CascadeClassifier haar_cascade; 138 | haar_cascade.load(stdFileName); 139 | for(;;) 140 | { 141 | Mat original = imread(stdImageName+".jpg", 1); 142 | Mat gray = original.clone(); 143 | cvtColor(original,gray,CV_BGR2GRAY); 144 | vector< Rect_ > faces; 145 | haar_cascade.detectMultiScale(gray, faces, 1.1, 3, 0, Size(20,60)); 146 | LOGD("No of faces = %d",faces.size()); 147 | for(int i = 0; i < faces.size(); i++) { 148 | // Process face by face: 149 | Rect face_i = faces[i]; 150 | // Crop the face from the image. 151 | Mat face = gray(face_i); 152 | Mat face_resized; 153 | cv::resize(face, face_resized, Size(im_width, im_height), 1.0, 1.0, INTER_CUBIC); 154 | // Now perform the prediction 155 | double predicted_confidence = 0.0; 156 | int prediction; 157 | model->predict(face_resized,prediction,predicted_confidence); 158 | LOGD("Prediction = %d Predicted Confidence = %Lf",prediction,predicted_confidence); 159 | if(prediction>=0) 160 | return prediction; 161 | // else 162 | // return -1; 163 | } 164 | return -1; 165 | } 166 | 167 | } catch(cv::Exception e) 168 | { 169 | LOGD("nativeCreateObject catched cv::Exception: %s", e.what()); 170 | jclass je = env->FindClass("org/opencv/core/CvException"); 171 | if(!je) 172 | je = env->FindClass("java/lang/Exception"); 173 | env->ThrowNew(je, e.what()); 174 | } 175 | catch (...) 176 | { 177 | LOGD("nativeCreateObject catched unknown exception"); 178 | jclass je = env->FindClass("java/lang/Exception"); 179 | env->ThrowNew(je, "Unknown exception in JNI code {highgui::VideoCapture_n_1VideoCapture__()}"); 180 | } 181 | 182 | } 183 | 184 | } 185 | -------------------------------------------------------------------------------- /obj/local/armeabi-v7a/libgnustl_static.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ajay191191/Opencv-Face-Recognition/0591d0a24d854c82e3f94a57cb0f7ae29ab9e9b7/obj/local/armeabi-v7a/libgnustl_static.a -------------------------------------------------------------------------------- /obj/local/armeabi-v7a/libnative_sample.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ajay191191/Opencv-Face-Recognition/0591d0a24d854c82e3f94a57cb0f7ae29ab9e9b7/obj/local/armeabi-v7a/libnative_sample.so -------------------------------------------------------------------------------- /obj/local/armeabi-v7a/objs/native_sample/jni_part.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ajay191191/Opencv-Face-Recognition/0591d0a24d854c82e3f94a57cb0f7ae29ab9e9b7/obj/local/armeabi-v7a/objs/native_sample/jni_part.o -------------------------------------------------------------------------------- /obj/local/armeabi-v7a/objs/native_sample/jni_part.o.d: -------------------------------------------------------------------------------- 1 | obj/local/armeabi-v7a/objs/native_sample/jni_part.o: jni/jni_part.cpp \ 2 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/jni.h \ 3 | ../../sdk/native/jni/include/opencv2/core/core.hpp \ 4 | ../../sdk/native/jni/include/opencv2/core/types_c.h \ 5 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/assert.h \ 6 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/cdefs.h \ 7 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/cdefs_elf.h \ 8 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/stdlib.h \ 9 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/string.h \ 10 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/malloc.h \ 11 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/alloca.h \ 12 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/strings.h \ 13 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/types.h \ 14 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/stdint.h \ 15 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/_types.h \ 16 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/_types.h \ 17 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/posix_types.h \ 18 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/stddef.h \ 19 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/compiler.h \ 20 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/asm/posix_types.h \ 21 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/asm/types.h \ 22 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/types.h \ 23 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/kernel.h \ 24 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/sysmacros.h \ 25 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/memory.h \ 26 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/math.h \ 27 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/limits.h \ 28 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/limits.h \ 29 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/limits.h \ 30 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/internal_types.h \ 31 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/limits.h \ 32 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/syslimits.h \ 33 | ../../sdk/native/jni/include/opencv2/core/version.hpp \ 34 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/algorithm \ 35 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/cmath \ 36 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/complex \ 37 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/map \ 38 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/vector \ 39 | ../../sdk/native/jni/include/opencv2/core/operations.hpp \ 40 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/limits \ 41 | ../../sdk/native/jni/include/opencv2/core/mat.hpp \ 42 | ../../sdk/native/jni/include/opencv2/imgproc/imgproc.hpp \ 43 | ../../sdk/native/jni/include/opencv2/imgproc/types_c.h \ 44 | ../../sdk/native/jni/include/opencv2/core/core_c.h \ 45 | ../../sdk/native/jni/include/opencv2/features2d/features2d.hpp \ 46 | ../../sdk/native/jni/include/opencv2/flann/miniflann.hpp \ 47 | ../../sdk/native/jni/include/opencv2/flann/defines.h \ 48 | ../../sdk/native/jni/include/opencv2/flann/config.h 49 | 50 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/jni.h: 51 | 52 | ../../sdk/native/jni/include/opencv2/core/core.hpp: 53 | 54 | ../../sdk/native/jni/include/opencv2/core/types_c.h: 55 | 56 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/assert.h: 57 | 58 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/cdefs.h: 59 | 60 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/cdefs_elf.h: 61 | 62 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/stdlib.h: 63 | 64 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/string.h: 65 | 66 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/malloc.h: 67 | 68 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/alloca.h: 69 | 70 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/strings.h: 71 | 72 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/types.h: 73 | 74 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/stdint.h: 75 | 76 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/_types.h: 77 | 78 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/_types.h: 79 | 80 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/posix_types.h: 81 | 82 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/stddef.h: 83 | 84 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/compiler.h: 85 | 86 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/asm/posix_types.h: 87 | 88 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/asm/types.h: 89 | 90 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/types.h: 91 | 92 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/kernel.h: 93 | 94 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/sysmacros.h: 95 | 96 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/memory.h: 97 | 98 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/math.h: 99 | 100 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/limits.h: 101 | 102 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/limits.h: 103 | 104 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/limits.h: 105 | 106 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/internal_types.h: 107 | 108 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/limits.h: 109 | 110 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/syslimits.h: 111 | 112 | ../../sdk/native/jni/include/opencv2/core/version.hpp: 113 | 114 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/algorithm: 115 | 116 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/cmath: 117 | 118 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/complex: 119 | 120 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/map: 121 | 122 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/vector: 123 | 124 | ../../sdk/native/jni/include/opencv2/core/operations.hpp: 125 | 126 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/limits: 127 | 128 | ../../sdk/native/jni/include/opencv2/core/mat.hpp: 129 | 130 | ../../sdk/native/jni/include/opencv2/imgproc/imgproc.hpp: 131 | 132 | ../../sdk/native/jni/include/opencv2/imgproc/types_c.h: 133 | 134 | ../../sdk/native/jni/include/opencv2/core/core_c.h: 135 | 136 | ../../sdk/native/jni/include/opencv2/features2d/features2d.hpp: 137 | 138 | ../../sdk/native/jni/include/opencv2/flann/miniflann.hpp: 139 | 140 | ../../sdk/native/jni/include/opencv2/flann/defines.h: 141 | 142 | ../../sdk/native/jni/include/opencv2/flann/config.h: 143 | -------------------------------------------------------------------------------- /obj/local/armeabi/libgnustl_static.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ajay191191/Opencv-Face-Recognition/0591d0a24d854c82e3f94a57cb0f7ae29ab9e9b7/obj/local/armeabi/libgnustl_static.a -------------------------------------------------------------------------------- /obj/local/armeabi/libnative_sample.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ajay191191/Opencv-Face-Recognition/0591d0a24d854c82e3f94a57cb0f7ae29ab9e9b7/obj/local/armeabi/libnative_sample.so -------------------------------------------------------------------------------- /obj/local/armeabi/objs/native_sample/jni_part.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ajay191191/Opencv-Face-Recognition/0591d0a24d854c82e3f94a57cb0f7ae29ab9e9b7/obj/local/armeabi/objs/native_sample/jni_part.o -------------------------------------------------------------------------------- /obj/local/armeabi/objs/native_sample/jni_part.o.d: -------------------------------------------------------------------------------- 1 | obj/local/armeabi/objs/native_sample/jni_part.o: jni/jni_part.cpp \ 2 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/jni.h \ 3 | ../../sdk/native/jni/include/opencv2/core/core.hpp \ 4 | ../../sdk/native/jni/include/opencv2/core/types_c.h \ 5 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/assert.h \ 6 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/cdefs.h \ 7 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/cdefs_elf.h \ 8 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/stdlib.h \ 9 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/string.h \ 10 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/malloc.h \ 11 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/alloca.h \ 12 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/strings.h \ 13 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/types.h \ 14 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/stdint.h \ 15 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/_types.h \ 16 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/_types.h \ 17 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/posix_types.h \ 18 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/stddef.h \ 19 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/compiler.h \ 20 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/asm/posix_types.h \ 21 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/asm/types.h \ 22 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/types.h \ 23 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/kernel.h \ 24 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/sysmacros.h \ 25 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/memory.h \ 26 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/math.h \ 27 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/limits.h \ 28 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/limits.h \ 29 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/limits.h \ 30 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/internal_types.h \ 31 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/limits.h \ 32 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/syslimits.h \ 33 | ../../sdk/native/jni/include/opencv2/core/version.hpp \ 34 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/algorithm \ 35 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/cmath \ 36 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/complex \ 37 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/map \ 38 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/vector \ 39 | ../../sdk/native/jni/include/opencv2/core/operations.hpp \ 40 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/limits \ 41 | ../../sdk/native/jni/include/opencv2/core/mat.hpp \ 42 | ../../sdk/native/jni/include/opencv2/imgproc/imgproc.hpp \ 43 | ../../sdk/native/jni/include/opencv2/imgproc/types_c.h \ 44 | ../../sdk/native/jni/include/opencv2/core/core_c.h \ 45 | ../../sdk/native/jni/include/opencv2/features2d/features2d.hpp \ 46 | ../../sdk/native/jni/include/opencv2/flann/miniflann.hpp \ 47 | ../../sdk/native/jni/include/opencv2/flann/defines.h \ 48 | ../../sdk/native/jni/include/opencv2/flann/config.h \ 49 | ../../sdk/native/jni/include/opencv2/contrib/contrib.hpp \ 50 | ../../sdk/native/jni/include/opencv2/objdetect/objdetect.hpp \ 51 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/deque \ 52 | ../../sdk/native/jni/include/opencv2/contrib/retina.hpp \ 53 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/valarray \ 54 | ../../sdk/native/jni/include/opencv2/highgui/highgui.hpp \ 55 | ../../sdk/native/jni/include/opencv2/highgui/highgui_c.h \ 56 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/fstream \ 57 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/android/log.h 58 | 59 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/jni.h: 60 | 61 | ../../sdk/native/jni/include/opencv2/core/core.hpp: 62 | 63 | ../../sdk/native/jni/include/opencv2/core/types_c.h: 64 | 65 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/assert.h: 66 | 67 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/cdefs.h: 68 | 69 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/cdefs_elf.h: 70 | 71 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/stdlib.h: 72 | 73 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/string.h: 74 | 75 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/malloc.h: 76 | 77 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/alloca.h: 78 | 79 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/strings.h: 80 | 81 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/types.h: 82 | 83 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/stdint.h: 84 | 85 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/_types.h: 86 | 87 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/_types.h: 88 | 89 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/posix_types.h: 90 | 91 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/stddef.h: 92 | 93 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/compiler.h: 94 | 95 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/asm/posix_types.h: 96 | 97 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/asm/types.h: 98 | 99 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/types.h: 100 | 101 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/kernel.h: 102 | 103 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/sysmacros.h: 104 | 105 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/memory.h: 106 | 107 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/math.h: 108 | 109 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/limits.h: 110 | 111 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/limits.h: 112 | 113 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/linux/limits.h: 114 | 115 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/internal_types.h: 116 | 117 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/machine/limits.h: 118 | 119 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/sys/syslimits.h: 120 | 121 | ../../sdk/native/jni/include/opencv2/core/version.hpp: 122 | 123 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/algorithm: 124 | 125 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/cmath: 126 | 127 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/complex: 128 | 129 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/map: 130 | 131 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/vector: 132 | 133 | ../../sdk/native/jni/include/opencv2/core/operations.hpp: 134 | 135 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/limits: 136 | 137 | ../../sdk/native/jni/include/opencv2/core/mat.hpp: 138 | 139 | ../../sdk/native/jni/include/opencv2/imgproc/imgproc.hpp: 140 | 141 | ../../sdk/native/jni/include/opencv2/imgproc/types_c.h: 142 | 143 | ../../sdk/native/jni/include/opencv2/core/core_c.h: 144 | 145 | ../../sdk/native/jni/include/opencv2/features2d/features2d.hpp: 146 | 147 | ../../sdk/native/jni/include/opencv2/flann/miniflann.hpp: 148 | 149 | ../../sdk/native/jni/include/opencv2/flann/defines.h: 150 | 151 | ../../sdk/native/jni/include/opencv2/flann/config.h: 152 | 153 | ../../sdk/native/jni/include/opencv2/contrib/contrib.hpp: 154 | 155 | ../../sdk/native/jni/include/opencv2/objdetect/objdetect.hpp: 156 | 157 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/deque: 158 | 159 | ../../sdk/native/jni/include/opencv2/contrib/retina.hpp: 160 | 161 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/valarray: 162 | 163 | ../../sdk/native/jni/include/opencv2/highgui/highgui.hpp: 164 | 165 | ../../sdk/native/jni/include/opencv2/highgui/highgui_c.h: 166 | 167 | E:/Android/android-ndk-r8/sources/cxx-stl/gnu-libstdc++/include/fstream: 168 | 169 | E:/Android/android-ndk-r8/platforms/android-14/arch-arm/usr/include/android/log.h: 170 | -------------------------------------------------------------------------------- /proguard-project.txt: -------------------------------------------------------------------------------- 1 | # To enable ProGuard in your project, edit project.properties 2 | # to define the proguard.config property as described in that file. 3 | # 4 | # Add project specific ProGuard rules here. 5 | # By default, the flags in this file are appended to flags specified 6 | # in ${sdk.dir}/tools/proguard/proguard-android.txt 7 | # You can edit the include path and order by changing the ProGuard 8 | # include property in project.properties. 9 | # 10 | # For more details, see 11 | # http://developer.android.com/guide/developing/tools/proguard.html 12 | 13 | # Add any project specific keep options here: 14 | 15 | # If your project uses WebView with JS, uncomment the following 16 | # and specify the fully qualified class name to the JavaScript interface 17 | # class: 18 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 19 | # public *; 20 | #} 21 | -------------------------------------------------------------------------------- /project.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system edit 7 | # "ant.properties", and override values to adapt the script to your 8 | # project structure. 9 | # 10 | # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): 11 | #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt 12 | 13 | android.library.reference.1=../../sdk/java 14 | # Project target. 15 | target=android-10 16 | android.library=false 17 | -------------------------------------------------------------------------------- /res/drawable-hdpi/ic_action_search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ajay191191/Opencv-Face-Recognition/0591d0a24d854c82e3f94a57cb0f7ae29ab9e9b7/res/drawable-hdpi/ic_action_search.png -------------------------------------------------------------------------------- /res/drawable-mdpi/ic_action_search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ajay191191/Opencv-Face-Recognition/0591d0a24d854c82e3f94a57cb0f7ae29ab9e9b7/res/drawable-mdpi/ic_action_search.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/ic_action_search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ajay191191/Opencv-Face-Recognition/0591d0a24d854c82e3f94a57cb0f7ae29ab9e9b7/res/drawable-xhdpi/ic_action_search.png -------------------------------------------------------------------------------- /res/drawable/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ajay191191/Opencv-Face-Recognition/0591d0a24d854c82e3f94a57cb0f7ae29ab9e9b7/res/drawable/icon.png -------------------------------------------------------------------------------- /res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 5 | 6 |