OpenCv4Android (一)


本文只做记录供自己回顾,查阅,但或许能帮助那些试图尝试走到新领域的有丰富android sdk开发经验的人。

虽然对JNI和C/C++仅处于了解阶段,但要学习OpenCv就必须要学习C/C++,并且应当有与之配套的非android开发环境,换句话说,尽管OpenCv4Android是针对android出的开源库,但在实际的开发当中,必须要有C/C++环境,android studio对这方面的支持依然很不好。那么在学习之前,网上关于学习目的的说明很少,就算说了也是一笔带过,这样实际很坑人的。

首先要抛开那些官方概念,对开发者而言,首先必须要认清这些东西:

1 opencv和opengl的区别。

用一句话概括,前者专注于从采集到的视觉图像中获取信息,是用机器来理解图像;后者是用机器绘制合适的视觉图像给人看。这句话可能不完全对,但对初学者而言完全可以这样看待两者。opencv库多数被用到视觉处理上,比如摄像头识别车牌等等,opengl库多数是3d绘制。

2 学习动机。

学习动机很重要,因为据我所知,图形图像领域并不比其他领域那么“吃香”,况且对于多数android开发者来说,这是全新领域与全新环境,需要很大的韧劲才能坚持下去,因为学习的过程要从C/C++及其相关环境开始,到图形图像基本概念,高等数学,最后到市场上多数的相关方面的企业里,还要学习它们自有的成型成熟的库,前路艰苦无比,更糟糕的是,你很难找到合适的学习渠道和老师。

3 基本概念

有很多基本概念,很多非专业人员看到几乎和没看到一样,就算能看到效果,也很难有多大收益。


OpenCv4Android意思是OpenCv for Android,实际上是它提供的java接口通过jni调用C/C++函数。首先是环境搭建,这是环境搭建的我看到过的最好的版本,比官方好懂好操作很多。需要注意的是opencv manager,而它是与这个问题相联系的。

环境搭建完毕,运行过一个hello world后,该如何确定学习路线呢?和android的sdk学习一样,首先需要学习我们比较熟悉的接口,相对其他的东西而言,对一张图片的处理肯定要更熟悉一些,因为或许有人过去遇到过类似处理图像的需求。那么imgproc模块应该就是首先要熟悉的,这些模块的作用,包含哪些方法,分别实现了什么功能以及达到了何种效果,应当应用在哪些场景,这些问题就是在学习该模块API的过程中应当一一解决的。


首先看概念,然后练习四种对图片的操作(openCVLibrary300模块很大,尽量不要clone)。



SLD:

http://blog.csdn.net/ivandark/article/details/29562201

http://www.ipol.im/pub/art/2012/gjmr-lsd/


滤波:

http://www.myexception.cn/image/1853919.html





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值