使用Julia进行图像处理--使用形态学运算进行图像调整(1)

将转换为二值版本的图像与原始图像放在一起进行对比:

使用restrict函数缩放原始图像和二值图像

img = restrict(img)

img_binary = restrict(RGB.(Gray.(img_binary)))

使用size标识图像缩放版本的宽度

img_width = size(img, 2)

使用填充功能创建新图像,其宽度是原来的两倍

combined_image = fill(RGB4{Float32}(0.,0.,0.), size(img) .* (1, 2))

将图像放在一起进行对比

combined_image[:, 1:img_width] = img

combined_image[:, img_width+1:img_width*2] = img_binary

imshow(combined_image)

图像对比

形态学运算也可以应用于灰度图像。

基本运算


数学形态学是一组与图像的形状或特征有关的非线性运算和技术。图像形态学有两个基本要素:

  1. 二进制或灰度图像

  2. 结构元素

已经讨论了有关图像和配色方案的先决条件,但是结构元素是新的。结构元素通常是一个3x3二值块,可在图像上滑动并更新它。滑动结构元素可以实现两个基本操作:

  1. 图像侵蚀:从对象边界去除像素

  2. 图像膨胀:将像素添加到图像中对象的边界

ImageMorphology包进行的侵蚀和膨胀仅支持3x3结构元素。 3×3正方形是用于形态学运算的最流行的结构元素。较大的结构元素会产生更极端的侵蚀或膨胀效果,通常通过多次重复3x3结构元素运算获得相似的结果。

图像侵蚀

图像侵蚀是数学形态学领域的两个基本运算符之一。侵蚀是缩小图像前景或1值对象的过程。它可以平滑对象边界并去除小物体。

为了了解图像侵蚀的工作方式,首先在包含白噪声的简单图像上进行尝试,然后继续比较将其应用于照片的二值和灰度版本时的结果。

使用侵蚀分离物体

对于此任务,使用如下图片。它具有许多不同的连接图形,并且两侧都添加了噪声:

geometrical_image

从加载图像并将其转换为灰度开始:

using Images, ImageView, ImageMorphology

geom_img = load(“pictures/geometrical-figures-and-noise.jpg”);

geom_img_binary = Gray.(Gray.(geom_img) .> 0.5);#keeps white objects white

接下来&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值