前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >OpenCV中图像算术操作与逻辑操作

OpenCV中图像算术操作与逻辑操作

作者头像
OpenCV学堂
发布2018-04-04 10:42:37
1.4K0
发布2018-04-04 10:42:37
举报

在图像处理中有两类最重要的基础操作分别是图像点操作与块操作,简单点说图像点操作就是图像每个像素点的相关逻辑与几何运算、块操作最常见就是基于卷积算子的各种操作、实现各种不同的功能。今天小编就跟大家一起学习OpenCV中图像点操作相关的函数与应用场景。几何运算包括加、减、乘、除,逻辑运算包括与、或、非、异或。

准备工作:

选择两张大小一致的图像如下、加载成功以后显示如下:

相关代码如下:

-加操作:

效果显示如下:

就可以看到一轮明月就会出现在美女图片的右上方。

-减操作

效果显示如下:

-乘操作:

创建一张空白图像大小与类型跟美女图片相同,每个像素值为2。跟输入的src1图像相乘,结果显示如下:

-除法操作

创建一张空白图像大小与类型跟美女图片相同,每个像素值为2。跟输入的src1图像相除,结果显示如下:

-基于权重加法

其中参数alpha=1.5、参数beta=0.5,此函数灵活运用可以实现不同的效果,当参数alpha=beta=0.5表示混合权重是均值,我们选择alpha=1.5表示要混合之后的图像更加的亮。混合叠加之后效果显示如下:

此外通过图像与黑色背景图像实现权重混合叠加,赋值重参数值alpha当小于1时候图像变暗、大于1的时候图像变亮。

逻辑非操作

逻辑非操作本质是图像取反操作对于BGR的图像逻辑非操作等价于对每个像素点每个通道使用255减去对应的像素值,实现代码如下:

等价于下面的代码

执行效果如下:

逻辑异或操作

通过逻辑异或操作同样可以实现上述取反操作效果、首先要创建一张纯白色的空白图片、输入图像src1美女图像大小与类型一致。然后通过美女图片与纯白色图片之间的异或操作就得到了上述取反效果。代码实现如下:

效果显示如下:

最后给大家放个大招,学习利用逻辑操作与基本的形态学腐蚀操作实现二值图像骨架提取的综合运用。首先看一下效果:

上面是输入二值图像,下图是提取到的文字骨架。看了效果以后我们再来说一下相关原理与步骤:

1.图像灰度与二值化

2.骨架提取 - 利用腐蚀操作与逻辑操作实现骨架提取

相关代码与各步骤解释如下:

主要是利用腐蚀实现骨架提取,然后每次对腐蚀之后的结果保留,作为下一次计算的输入,通过两次腐蚀不同得到骨架、最终实现骨架提取。

总结与应用场景:

图像的加减乘除操作在用OpenCV图像处理时候经常会用到,应用场景最常见就是调整图像亮度、权重加法可以实现两张图像混合。逻辑运算在图像二值化运行时候经常用到,可以得到差异化图像。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-12-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 OpenCV学堂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
图像处理
图像处理基于腾讯云深度学习等人工智能技术,提供综合性的图像优化处理服务,包括图像质量评估、图像清晰度增强、图像智能裁剪等。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档