Android OpenCV(三十一):图像形态学

这篇具有很好参考价值的文章主要介绍了Android OpenCV(三十一):图像形态学。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  • 参数一:src,输入的待形态学操作图像,图像的通道数可以是任意的,但是图像的数据类型必须是CV_8UCV_16UCV_16SCV_32FCV_64F

  • 参数二:dst,形态学操作后的输出图像,与输入图像src具有相同的尺寸和数据类型

  • 参数三:op,形态学操作类型的标志

标志位 作用
MORPH_ERODE 0 图像腐蚀
MORPH_DILATE 1 图形膨胀
MORPH_OPEN 2 开操作
MORPH_CLOSE 3 闭操作
MORPH_GRADIENT 4 形态学梯度
MORPH_TOPHAT 5 顶帽操作
MORPH_BLACKHAT 6 黑帽操作
MORPH_HITMISS 7 击中击不中运算
  • 参数四:kernel,用于形态学操作的结构元素,可以自己定义,也可以用getStructuringElement()函数生成

  • 参数五:anchor,中心点在结构元素中的位置,默认参数为结构元素的几何中心点

  • 参数六:iterations,操作次数,默认值为1

  • 参数七:borderType,像素外推法选择标志

  • 参数八:borderValue,使用边界不变外推法时的边界值

操作

/**

  • 形态学
  • author: yidong
  • 2020/7/5
    */
    class MorphologyExActivity : AppCompatActivity() {
    private lateinit var mBinding: ActivityMorphologyExBinding
    private lateinit var mBinary: Mat

private var mFlag = Imgproc.MORPH_OPEN
set(value) {
field = value
doMorphology(value, mSize.toDouble())
}
private var mSize = 3
set(value) {
field = value
doMorphology(mFlag, value.toDouble())
}

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
mBinding = DataBindingUtil.setContentView(this, R.layout.activity_morphology_ex)
mBinding.seekbar.setOnSeekBarChangeListener(object : SeekBar.OnSeekBarChangeListener {
override fun onProgressChanged(seekBar: SeekBar?, progress: Int, fromUser: Boolean) {
mSize = progress
mBinding.tvSize.text = progress.toString()
}

override fun onStartTrackingTouch(seekBar: SeekBar?) {

}

override fun onStopTrackingTouch(seekBar: SeekBar?) {

}
})
mBinary = Mat()
val bgr = Utils.loadResource(this, R.drawable.number)
val gray = Mat()
Imgproc.cvtColor(bgr, gray, Imgproc.COLOR_BGR2GRAY)
Imgproc.threshold(gray, mBinary, 125.0, 255.0, Imgproc.THRESH_BINARY_INV)
mBinding.ivLena.showMat(mBinary)

bgr.release()
gray.release()
}

override fun onCreateOptionsMenu(menu: Menu?): Boolean {
menuInflater.inflate(R.menu.menu_morphology_ex, menu)
return true
}

override fun onOptionsItemSelected(item: MenuItem): Boolean {
title = item.title
mFlag = when (item.itemId) {
R.id.morphology_close -> {
Imgproc.MORPH_CLOSE
}
R.id.morphology_gradient -> {
Imgproc.MORPH_GRADIENT
}
R.id.morphology_top_hat -> {
Imgproc.MORPH_TOPHAT
}
R.id.morphology_black_hat -> {
Imgproc.MORPH_BLACKHAT
}
R.id.morphology_hit_miss -> {
Imgproc.MORPH_HITMISS
}
else -> Imgproc.MORPH_OPEN
}
return true
}
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

Android OpenCV(三十一):图像形态学,程序员,android,opencv,人工智能

Android OpenCV(三十一):图像形态学,程序员,android,opencv,人工智能

Android OpenCV(三十一):图像形态学,程序员,android,opencv,人工智能

Android OpenCV(三十一):图像形态学,程序员,android,opencv,人工智能

Android OpenCV(三十一):图像形态学,程序员,android,opencv,人工智能

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:Android)

Android OpenCV(三十一):图像形态学,程序员,android,opencv,人工智能

最后

我的面试经验分享可能不会去罗列太多的具体题目,因为我依然认为面试经验中最宝贵的不是那一个个具体的题目或者具体的答案,而是结束面试时,那一刻你的感受以及多天之后你的回味~

很多人在刚接触这个行业的时候或者是在遇到瓶颈期的时候,总会遇到一些问题,比如学了一段时间感觉没有方向感,不知道该从那里入手去学习,对此我整理了一些资料,需要的可以免费分享给大家

在这里小编分享一份自己收录整理上述技术体系图相关的几十套腾讯、头条、阿里、美团等公司的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。

【Android核心高级技术PDF文档,BAT大厂面试真题解析】

Android OpenCV(三十一):图像形态学,程序员,android,opencv,人工智能

【算法合集】

Android OpenCV(三十一):图像形态学,程序员,android,opencv,人工智能

【延伸Android必备知识点】

Android OpenCV(三十一):图像形态学,程序员,android,opencv,人工智能

【Android部分高级架构视频学习资源】

**Android精讲视频领取学习后更加是如虎添翼!**进军BATJ大厂等(备战)!现在都说互联网寒冬,其实无非就是你上错了车,且穿的少(技能),要是你上对车,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!现如今市场上初级程序员泛滥,这套教程针对Android开发工程师1-6年的人员、正处于瓶颈期,想要年后突破自己涨薪的,进阶Android中高级、架构师对你更是如鱼得水,赶快领取吧!

《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门即可获取!

年的人员、正处于瓶颈期,想要年后突破自己涨薪的,进阶Android中高级、架构师对你更是如鱼得水,赶快领取吧!文章来源地址https://www.toymoban.com/news/detail-846418.html

《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门即可获取!

到了这里,关于Android OpenCV(三十一):图像形态学的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • OpenCV快速入门:图像形态学操作

    图像形态学是一门强大而有趣的技术,它通过对图像进行形态学操作,使图像更适合后续处理步骤。在本文中,我们将深入探讨OpenCV中的图像形态学操作,快速入门这一关键领域。 图像形态学作为数字图像处理的一个分支,致力于通过形态学操作实现对图像特征的提取、噪音

    2024年02月05日
    浏览(99)
  • Opencv | 图像卷积与形态学变换操作

    在每个图像位置(x,y)上进行基于邻域的函数计算,其中函数参数被称为卷积核 (kernel) kernel核的尺寸通常为奇数,一般为: 3 ∗ 3 、 5 ∗ 5 、 7 ∗ 7 3*3、5*5、7*7 3 ∗ 3 、 5 ∗ 5 、 7 ∗ 7 不同功能需要定义不同的函数,其中功能可以有: 图像增强:           平滑 / 去

    2024年04月23日
    浏览(43)
  • OpenCV基础操作(5)图像平滑、形态学转换、图像梯度

    1、2D卷积 我们可以对 2D 图像实施低通滤波(LPF),高通滤波(HPF)等。 LPF 帮助我们去除噪音,模糊图像。HPF 帮助我们找到图像的边缘。 OpenCV 提供的函数 cv.filter2D() 可以让我们对一幅图像进行卷积操作。 ​ ​ ​ ​ 2、图像模糊 使用低通滤波器可以达到图像模糊的目的。

    2024年02月07日
    浏览(88)
  • C++OpenCV(7):图像形态学基础操作

    🔆 文章首发于我的个人博客:欢迎大佬们来逛逛 🔆 OpenCV项目地址及源代码:点击这里 膨胀与腐蚀是 数学形态学在图像处理中最基础的操作 。 膨胀操作是取 每个位置领域内最大值 ,所以膨胀后输出图像的总体亮度的平均值比起原图会有所升高,图像中比较亮的区域的面

    2024年02月16日
    浏览(51)
  • OpenCV图像处理学习十,图像的形态学操作——膨胀腐蚀

    一.形态学操作概念 图像形态学操作是指基于形状的一系列图像处理操作的合集,主要是基于集合论基础上的形态学数学对图像进行处理。 形态学有四个基本操作:腐蚀、膨胀、开操作、闭操作,膨胀与腐蚀是图像处理中最常用的形态学操作手段。 二.形态学操作-膨胀 跟卷积

    2024年02月05日
    浏览(56)
  • 《数字图像处理-OpenCV/Python》连载:形态学图像处理

    本书京东 优惠购书链接 https://item.jd.com/14098452.html 本书CSDN 独家连载专栏 https://blog.csdn.net/youcans/category_12418787.html 形态学图像处理是基于形状的图像处理,基本思想是利用各种形状的结构元进行形态学运算,从图像中提取表达和描绘区域形状的结构信息。形态学运算的数学原

    2024年02月19日
    浏览(81)
  • OpenCV基本图像处理操作(一)——图像基本操作与形态学操作

    图像显示 转hsv图像 颜色表示为三个组成部分:色调(Hue)、饱和度(Saturation)和亮度(Value)。常用于图像处理中,因为它允许调整颜色的感知特性,如色彩和亮度,这些在RGB颜色模型中不那么直观。 HSV模型特别适用于任务如图像分割和对象追踪,因为它可以更好地处理光

    2024年04月22日
    浏览(89)
  • Python-OpenCV中的图像处理-形态学转换

    形态学操作:腐蚀,膨胀,开运算,闭运算,形态学梯度,礼帽,黑帽等 主要涉及函数:cv2.erode(), cv2.dilate(), cv2.morphologyEx() 原理:形态学操作是根据图像形状进行的简单操作。一般情况下对二值化图像进行的操作。需要输入两个参数,一个是原始图像,第二个被称为结构化

    2024年02月13日
    浏览(60)
  • 图像形态学-阈值的概念、功能及操作(threshold()函数))【C++的OpenCV 第九课-OpenCV图像常用操作(六)】

    首先,顾名思义,“ 阈 ”就是范围或者 限制 ,所以,“阈值”就是 某个限制的值 (该值具有一定的数学含义,即“ 临界值 ”,例如车辆限高杆的高度就是一种阈值,不可超越;亦或者1.1米以下儿童不收费,超过1.1就要收费。) 其次,图形学中的阈值,往往指某个你想要

    2024年02月03日
    浏览(49)
  • OpenCV(图像处理)-基于Python-形态学处理-开运算、闭运算、顶帽、黑帽运算

    OpenCV形态学是一种基于OpenCV库的数字图像处理技术,主要用于处理图像的形状、结构和空间关系。它包括一系列图像处理工具和算法,包括膨胀、腐蚀、开运算、闭运算、形态学梯度、顶帽、黑帽等。 通过对图像进行形态学操作可以实现一些重要的图像处理任务,比如去除噪

    2024年02月09日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包