Android Studio配置OpenCV(非NDK)
参考:http://www.cnblogs.com/tail/p/4618476.html
工具:
1,Android Studio(AS)1.4
2,Opencv 2.4.11
步骤:
1,解压下载后的Opencv 2.4.11
2,进入AS,File->New->Import Moudle
上图中的路径就是解压后 /sdk/java文件夹下的文件夹路径。
3,更新build.gradle信息
这个是比较重要的一步配置,在Android Studio中的左上角选择Project视图,在oepnCVLibrary2411文件夹里,打开build.gradle(有很多重名的文件,一定找对openCV库文件下的),修改文件中的1)compileSdkVersion 2)buildToolsVersion 3) minSdkVersion 4)targetSdkVersion,将其内容与app文件夹下的build.gradle中信息相一致。点击上方提示的黄色提示框内的Try Again进行更新(或者选择File->synchronize)。
4、添加Module Dependency
右键app文件夹,选择Open Module Settings(project视图下鼠标点击一下App文件夹,然后 File->Project Structure),在app module的Dependencies一栏中,点击右上角的绿色加号,将openCVLibrary2411添加进去,点击确定。
5、复制libs文件夹到项目中
在OpenCV的解压包中,将sdk-->native-->libs文件夹复制,粘贴在Project视图下app-->src-->main目录下,并将其重命名为jniLibs(这个是AS引入So库的默认文件夹,名字不可变,修改So路径的方法这里不做讨论)。
现在Opencv配置好了,需要注意的是,在使用Opencv前一定要初始化Opencv库(OpenCVLoader.initDebug()),下面代码是一个简单的测试程序:
1 public class MainActivity extends AppCompatActivity { 2 static { 3 if (!OpenCVLoader.initDebug()) { 4 // Handle initialization error 5 } 6 } 7 @Override 8 protected void onCreate(Bundle savedInstanceState) { 9 super.onCreate(savedInstanceState); 10 setContentView(R.layout.activity_main); 11 Bitmap mBm= BitmapFactory.decodeResource(getResources(),R.drawable.a); 12 Bitmap grayBitmap = Bitmap.createBitmap(mBm.getWidth(), mBm.getHeight(), Bitmap.Config.RGB_565); 13 Mat am=new Mat(); 14 Utils.bitmapToMat(mBm, am); 15 Imgproc.cvtColor(am,am,Imgproc.COLOR_RGB2GRAY); 16 Utils.matToBitmap(am, grayBitmap); 17 ImageView mImg=(ImageView)findViewById(R.id.showimg); 18 mImg.setImageBitmap(grayBitmap); 19 } 20 }
效