Book Image

Android Application Programming with OpenCV 3

By : Joseph Howse
Book Image

Android Application Programming with OpenCV 3

By: Joseph Howse

Overview of this book

<p>Android Application Programming with OpenCV 3 is a practical, hands-on guide to computer vision and mobile app development. It shows how to capture, manipulate, and analyze images while building an application that combines photography and augmented reality. To help the reader become a well-rounded developer, the book covers OpenCV (a computer vision library), Android SDK (a mobile app framework), OpenGL ES (a 3D graphics framework), and even JNI (a Java/C++ interoperability layer).</p> <p>Now in its second edition, the book offers thoroughly reviewed code, instructions, and explanations. It is fully updated to support OpenCV 3 and Android 5, as well as earlier versions. Although it focuses on OpenCV's Java bindings, this edition adds an extensive chapter on JNI and C++, so that the reader is well primed to use OpenCV in other environments.</p>
Table of Contents (13 chapters)
Android Application Programming with OpenCV 3
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Adding files to the project


The C++ files for an Android project should always be located in a subdirectory named jni. This subdirectory should also contain our C++ code's dependencies and a type of compilation instruction named Makefiles. Specifically, we need to create the following new folders and files inside our Second Sight project folder:

  • jni/include/opencv2/: This folder contains the header files (the definitions of types and functions) for OpenCV's C++ interface. Into this folder, copy the contents of <opencv>/sdk/native/jni/include/opencv2/. (Replace <opencv> with the path to OpenCV4Android on your system.)

  • jni/libs/: This folder contains the library files (the compiled implementations) for OpenCV's C++ interface and OpenCV's dependencies. Into this folder, copy the contents of <opencv>/sdk/native/libs/ and <opencv>/sdk/native/3rdparty/libs/.

  • jni/Application.mk: This Makefile describes the type of environment in which our C++ library will be used. The environment...