一、OpenCV移植到android之后,开发中遇到错误:android fatal signal 11(SIGSEGV) at 0xdeadbaad (code=1).很是纠结,参考[https://community.freescale.com/docs/DOC-93378](https://community.freescale.com/docs/DOC-93378) [http://www.linkedin.com/groups/Application-crash-android-40-higher-86481.S.171547732](http://www.linkedin.com/groups/Application-crash-android-40-higher-86481.S.171547732),有的人说是程序中使用AsyncTask的问题,碰巧我程序里还真使用了。但经过仔细研究发现,如果报错:android fatal signal 11(SIGSEGV) at 0xdeadbaad (code=1).最先排查的还是本地C/C++代码的错误。 原来是opencv运算时矩阵维数错误的原因,导致程序奔溃。
二、原先Application.mk文件里APP_ABI=armeabi armeabi-v7a,所以生成的libs文件夹里总有两套这种东西。[经查](http://blog.csdn.net/dxpqxb/article/details/7721156),armeabi是指的该so库用于Arm的通用CPU,而v7a的CPU支持硬件浮点运算。因此armeabi通用性强,但速度慢,而v7a能充分发挥v7a CPU的能力。华为[U9200](http://detail.zol.com.cn/310/309697/param.shtml)cpu型号是OMAP4660,是A9的。查了半天也没看出来究竟支不支持硬件浮点运算。将armeabi去掉之后,原来的程序大小4.23M直接缩小至2.62M。运行良好,看来瘦身很关键啊。
三、原先在ndk-build编译本地库时,总是看到有libnative_camera_r2.2.2.so和一个r2.3.3.so生成,如下。奇怪的是,我在本地代码里根本没有使用camera模块。
![](https://box.kancloud.cn/2016-01-19_569e21aea9c0a.jpg)
借鉴这里[http://stackoverflow.com/questions/9460424/opencv-on-android-duplicate-file-for-apk](http://stackoverflow.com/questions/9460424/opencv-on-android-duplicate-file-for-apk),在Application.mk文件里添加
~~~
OPENCV_CAMERA_MODULES:=off
~~~
果然,再次编译安装的时候两个camera的库不安装了!注意这句话写在Android.mk里无效。
- 前言
- Linux下使用QT调用opencv读取摄像头视频 调试心得
- Android开发 摄像头SurfaceView预览 背景带矩形框 实现(原理:双surfaceview,顶层画矩形框,底层预览视频)
- Android开发:安装NDK,移植OpenCV2.3.1,JNI调用OpenCV全过程
- 2013新春奉送:Android摄像头开发完美demo---(循环聚焦,缩放大小,旋转picture,查询支持的picturesize, ImageButton按键效果)
- 如何设置ImageButton按键按下去后的 特效----(如类似风车旋转的动画特效)
- Android摄像头:只拍摄SurfaceView预览界面特定区域内容(矩形框)---完整实现(原理:底层SurfaceView+上层绘制ImageView)
- Android开发:SurfaceView上新建线程绘制旋转图片 及 刷新特定区域(脏矩形)
- Android开发:ImageView上绘制旋转圆环(透明度不同的旋转圆环,利用canvas.drawArc实现)
- Android上掌纹识别第一步:基于OpenCV的6种肤色分割 源码和效果图
- Android开发:实时处理摄像头预览帧视频------浅析PreviewCallback,onPreviewFrame,AsyncTask的综合应用
- Android摄像头开发:拍照后添加相框,融合相框和图片为一副 图片
- Android(OpenCV) NDK开发: 0xdeadbaad(code=1)错误 及 关闭armeabi和libnative_camera_r2.2.2.so的生成
- Android摄像头开发:实时摄像头视频预览帧的编码问题(二)
- setContentView切换页面(无需每次都findViewById)-----二
- Android开发:setContentView切换界面,自定义带CheckBox的ListView显示SQlite条目-----实现