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 - 加载图像

要对图像执行任何操作,我们首先需要将其加载到内存中。加载图像后,我们可以访问其像素并对其应用各种操作。

加载图像是指将图像文件从存储设备(如硬盘驱动器、USB 驱动器或网络位置)读取到内存中。

在 Mahotas 中加载图像

要使用 Mahotas 加载图像,我们可以使用 imread() 函数,该函数读取图像文件并将其作为 NumPy 数组返回。

NumPy 数组是一个值网格,所有值的类型相同,并由非负整数元组索引。对于图像,数组表示图像的像素值。

使用 imread() 函数

imread() 函数是 Mahotas 中用于读取和加载图像的核心方法。它接受文件路径作为输入并返回表示已加载图像的 NumPy 数组。此函数可以读取各种图像文件格式,例如 JPEG、PNG、BMP、TIFF 等。

以下是 Mahotas − 中 imread() 函数的基本语法

mahotas.imread('image.file_format')

其中,'image.file_format' 是您要加载的图像的实际路径和格式。

示例

在下面的示例中,我们使用 imread() 函数从当前目录加载名为"nature.jpeg"的图像文件。生成的图像作为 NumPy 数组存储在"image"变量中 −

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

上述代码的输出如下 −

Loading an Image

加载不同的图像格式

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

Mahotas 提供多种图像格式,包括 JPEG、PNG、BMP、TIFF 和 GIF 等常见格式。我们可以将任意这些格式的图像的文件路径传递给 imread() 函数。

示例

在此示例中,我们通过使用 imread() 函数加载不同格式的图像来展示 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()

输出

显示的图像如下 −

Different Image Formats

加载彩色图像

彩色图像是我们通常看到的图像,包含各种颜色。它们由三个颜色通道(红色、绿色和蓝色)组成。每个像素的颜色由这三个通道的组合决定。彩色图像可以表示各种颜色,与我们用眼睛看到的颜色相似。

在 Mahotas 中加载彩色图像意味着读取包含颜色信息的图像文件。生成的图像表示为 3D 数组,其中每个元素代表红色、绿色和蓝色通道中每个像素的颜色值。

以下是在 Mahotas 中加载灰度图像的基本语法 −

mahotas.imread('image.file_format')

其中,'image.file_format' 是要加载的图像的实际路径和格式。

示例

以下是在 Mahotas 中加载彩色图像的示例 −

import mahotas as ms
import matplotlib.pyplot as mtplt
# 加载彩色图像
colored_image = ms.imread('nature.jpeg')
# 显示彩色图像
mtplt.imshow(colored_image)
mtplt.axis('off')
mtplt.show()

输出

上述代码的输出如下 −

Loading Color Images

加载彩色和灰度图像

要在 mahotas 中加载灰度图像,我们需要将 'as_grey=True' 参数传递给 imread() 函数。

示例

在下面的示例中,我们尝试使用 Mahotas 同时加载灰度图像和彩色图像 −

import mahotas as ms
import matplotlib.pyplot as mtplt
# 加载彩色图像
color_image = ms.imread('tree.tiff')
# 加载灰度图像
grayscale_image = ms.imread('tree.tiff', as_grey=True)
# 创建图形和子图
fig, axis = mtplt.subplots(1, 2)
# 显示彩色图像
axes[0].imshow(color_image)
axes[0].axis('off')
axes[0].set_title('Colored Image')
# 显示灰度图像
axes[1].imshow(grayscale_image, cmap='gray')
axes[1].axis('off')
axes[1].set_title('Grayscaled Image')
# 调整间距和布局
mtplt.tight_layout()
# 显示图形
mtplt.show()

输出

输出如下所示 −

彩色灰度图像