Mahotas 教程

Mahotas - 主页 Mahotas - 简介 Mahotas - 计算机视觉 Mahotas - 历史 Mahotas - 功能 Mahotas - 安装

Mahotas 处理图像

Mahotas - 处理图像 Mahotas - 加载图像 Mahotas - 将图像加载为灰色 Mahotas - 显示图像 Mahotas - 显示图像形状 Mahotas - 保存图像 Mahotas - 图像的质心 Mahotas - 图像的卷积 Mahotas - 创建 RGB 图像 Mahotas - 图像的欧拉数 Mahotas - 图像中的零分数 Mahotas - 获取图像矩 Mahotas - 图像中的局部最大值 Mahotas - 图像椭圆轴 Mahotas - 图像拉伸 RGB

Mahotas 颜色空间转换

Mahotas - 颜色空间转换 Mahotas - RGB 到灰度转换 Mahotas - RGB 到 LAB 转换 Mahotas - RGB 转棕褐色 Mahotas - RGB 到 XYZ 转换 Mahotas - XYZ 到 LAB 转换 Mahotas - XYZ 到 RGB 转换 Mahotas - 增加伽马校正 Mahotas - 拉伸伽马校正

Mahotas 标记图像函数

Mahotas - 标记图像函数 Mahotas - 标记图像 Mahotas - 过滤区域 Mahotas - 边界像素

Mahotas - 形态学操作

Mahotas - 形态运算符 Mahotas - 查找图像平均值 Mahotas - 裁剪图像 Mahotas - 图像偏心率 Mahotas - 叠加图像 Mahotas - 图像圆度 Mahotas - 调整图像大小 Mahotas - 图像直方图 Mahotas - 扩大图像 Mahotas - 腐蚀图像 Mahotas - 分水岭 Mahotas - 图像的开运算过程 Mahotas - 图像的闭合过程 Mahotas - 填补图像中的空洞 Mahotas - 条件性膨胀图像 Mahotas - 条件腐蚀图像 Mahotas - 图像的条件分水岭 Mahotas - 图像中的局部最小值 Mahotas - 图像的区域最大值 Mahotas - 图像的区域最小值

Mahotas - 高级概念

Mahotas - 图像阈值 Mahotas - 设置阈值 Mahotas - 软阈值 Mahotas - Bernsen 局部阈值 Mahotas - 小波变换 Mahotas - 制作图像小波中心 Mahotas - 距离变换 Mahotas - 多边形实用程序 Mahotas - 局部二元模式 Mahotas - 阈值邻接统计 Mahotas - Haralic 特征 Mahotas - 标记区域的权重 Mahotas - Zernike 特征 Mahotas - Zernike 矩 Mahotas - 等级过滤器 Mahotas - 2D 拉普拉斯过滤器 Mahotas - 多数过滤器 Mahotas - 均值滤波器 Mahotas - 中值滤波器 Mahotas - Otsu 方法 Mahotas - 高斯滤波 Mahotas - 命中与未命中变换 Mahotas - 标记最大值数组 Mahotas - 图像平均值 Mahotas - SURF 密集点 Mahotas - SURF 积分 Mahotas - Haar 变换 Mahotas - 突出显示图像最大值 Mahotas - 计算线性二进制模式 Mahotas - 获取标签边框 Mahotas - 逆 Haar 变换 Mahotas - Riddler-Calvard 方法 Mahotas - 标记区域的大小 Mahotas - 模板匹配 Mahotas - 加速稳健特征 Mahotas - 移除带边框的标签 Mahotas - Daubechies 小波 Mahotas - Sobel 边缘检测



Mahotas - 显示图像

加载图像并对其执行各种操作后,您需要显示最终输出图像以查看操作结果。

显示图像是指在屏幕上向用户或查看者直观地呈现图像数据。

在 Mahotas 中显示图像

我们可以使用 mahotas.plotting 模块中的 imshow()show() 函数在 Mahotas 中显示图像。它允许我们在 Python 环境中显示图像。此函数在内部使用 Matplotlib 库来渲染图像。

让我们简要讨论一下 imshow() 和 show() 函数。

使用 imshow() 函数

imshow() 函数用于在单独的窗口中显示图像。它创建一个新窗口并在其中渲染图像。此函数提供各种选项来自定义显示,例如调整窗口大小、颜色图和颜色范围。

语法

以下是 imshow() 函数 − 的基本语法

imshow(image)

其中,'image' 是我们要显示的图片。

使用 show() 函数

show() 函数用于显示当前图形或图像。它是 pylab 模块中 matplotlib 库的一部分,Mahotas 使用它进行绘图和可视化。

当您想要在同一窗口中显示多个图像或绘图时,此功能特别有用。

语法

以下是 show() 函数的基本语法 −

show()

示例

在下面的示例中,我们使用 imshow() 和 show() 函数显示当前目录中名为"nature.jpeg"的图像文件 −

import mahotas as mh
from pylab import imshow, show
# 使用 Mahotas 加载图像
image = mh.imread('nature.jpeg')
# 显示原始图像
imshow(image)
show()
输出

上述代码的输出如下 −

Displaying Show image

显示多幅图像

Mahotas 还允许我们同时显示多幅图像。当我们想要并排比较或可视化不同的图像时,这很有用。Mahotas 提供了多种图像格式,包括 JPEG、PNG、BMP、TIFF 和 GIF 等常见格式。因此,我们可以以不同的格式显示每幅图像。

图像格式是指用于以数字方式存储和编码图像的不同文件格式。每种格式都有自己的规格、特性和压缩方法。

示例

在此示例中,我们通过使用 imshow() 和 show() 函数以不同的格式显示图像来展示 Mahotas 的多功能性。每个加载的图像都存储在单独的变量 −

import mahotas as ms
import matplotlib.pyplot as mtplt
# 加载 JPEG 图像
image_jpeg = ms.imread('nature.jpeg')
# 加载 PNG 图像
image_png = ms.imread('sun.png')
# 加载 BMP 图像
image_bmp = ms.imread('sea.bmp')
# 加载 TIFF 图像
image_tiff = ms.imread('tree.tiff')
# 创建图形和子图
fig, axis = mtplt.subplots(2, 2)
# 显示 JPEG 图像
axes[0, 0].imshow(image_jpeg)
axes[0, 0].axis('off')
axes[0, 0].set_title('JPEG Image')
# 显示 PNG 图像
axes[0, 1].imshow(image_png)
axes[0, 1].axis('off')
axes[0, 1].set_title('PNG Image')
# 显示 BMP 图像
axes[1, 0].imshow(image_bmp)
axes[1, 0].axis('off')
axes[1, 0].set_title('BMP Image')
# 显示 TIFF 图像
axes[1, 1].imshow(image_tiff)
axes[1, 1].axis('off')
axes[1, 1].set_title('TIFF Image')
# 调整间距和布局
mtplt.tight_layout()
# 显示图形
mtplt.show()

输出

显示的图像如下 −

显示多幅图像

自定义图像显示

当我们谈论在 Mahotas 中自定义图像显示时,我们指的是修改图像在屏幕或图表中呈现方式的各个方面的能力。这些自定义功能使我们能够增强图像的视觉表现,并为查看者提供更多信息。

Mahotas 提供了多种自定义图像显示的选项。例如,我们可以调整颜色图、添加标题和修改显示大小。

让我们逐一讨论自定义图像显示的每个选项。

应用颜色图

Mahotas 支持不同的颜色图,可应用于灰度或单通道图像以增强其对比度和视觉外观。颜色图确定像素值如何映射到颜色。

例如,"灰色"颜色图通常用于灰度图像,而"热"或"喷气"颜色图可用于强调图像中的强度变化。通过选择合适的颜色图。

要更改用于显示图像的颜色图,我们可以将 cmap 参数传递给 imshow() 函数。 cmap 参数接受一个表示所需颜色图名称的字符串。

示例

在下面的示例中,我们将 cmap 参数传递给 imshow() 函数,并将其参数设置为"gray",以使用灰度颜色图 − 显示灰度图像

import mahotas as ms
import matplotlib.pyplot as mtplt
# 加载灰度图像
grayscale_image = ms.imread('nature.jpeg', as_grey=True)
# 显示灰度图像
mtplt.imshow(grayscale_image, cmap='gray')
mtplt.axis('off')
mtplt.show()
输出

执行上述代码后,我们得到如下所示的输出−

Applying Colormap

添加标题

我们还可以使用传递给 imshow() 函数的 title 参数为图像添加标题或说明。

示例

在下面的代码中,我们将标题"Nature Image"添加到显示的图像中 −

import mahotas as ms
import matplotlib.pyplot as mtplt
# 加载图像
image = ms.imread('nature.jpeg')
# 显示图像
mtplt.imshow(image)
mtplt.axis('off')
mtplt.title('Nature Image')
mtplt.show()
输出

上述代码的输出如下 −

添加标题

图形大小

mahotas 中的图形大小是指将显示图像的绘图或图像显示区域的大小。

我们还可以通过指定 imshow() 函数的 figsize 参数来控制显示图像的大小。 figsize 参数需要一个元组来表示图形的宽度和高度(以英寸为单位)。

示例

在下面的示例中,我们将图形大小设置为 (8, 6) 英寸 −

import mahotas as ms
import matplotlib.pyplot as mtplt
# 加载图像
image = ms.imread('nature.jpeg')
# 使用 Matplotlib 设置图形大小
# 以英寸为单位指定图形的宽度和高度
fig = mtplt.figure(figsize=(8, 6))
# 显示图像
mtplt.imshow(image)
mtplt.show()
输出

上述代码的输出如下 −

图形尺寸