image_dataset_from_directory
keras.utils.image_dataset_from_directory(
directory,
labels="inferred",
label_mode="int",
class_names=None,
color_mode="rgb",
batch_size=32,
image_size=(256, 256),
shuffle=True,
seed=None,
validation_split=None,
subset=None,
interpolation="bilinear",
follow_links=False,
crop_to_aspect_ratio=False,
data_format=None,
)
# 指定主目录路径
main_directory = '/path/to/your/images'
# 使用image_dataset_from_directory加载图像数据集
dataset = tf.keras.preprocessing.image_dataset_from_directory(
main_directory,
labels='inferred',
label_mode='binary', # 设置标签模式为二进制(0或1)
image_size=(256, 256), # 设置图像大小为256x256像素
)
# 对数据集进行预处理
dataset = dataset.map(lambda x, y: (tf.image.resize(x, (224, 224)), y))
dataset = dataset.batch(32) # 设置批次大小为32
dataset = dataset.prefetch(buffer_size=tf.data.experimental.AUTOTUNE) # 自动调整预取缓冲区大小以优化性能
# 遍历数据集进行训练或评估等操作
for images, labels in dataset:
# 在这里添加你的模型训练或评估代码
pass
load_img
keras.utils.load_img(
path,
color_mode="rgb",
target_size=None,
interpolation="nearest",
keep_aspect_ratio=False,
)
path
: 这是要加载的图像文件的路径。可以是本地文件路径或 URL。color_mode
: 指定图像的颜色模式。默认为 "rgb",表示使用红绿蓝三个通道的颜色。其他可选值包括 "grayscale"(灰度图像)和 "rgba"(带透明度的图像)。target_size
: 指定目标图像的大小。如果提供了该参数,则将图像调整为指定的尺寸。如果不提供,则保持原始图像大小不变。可以是一个包含宽度和高度的元组,例如 (224, 224)。interpolation
: 指定插值方法。默认为 "nearest",表示最近邻插值。其他可选值包括 "bilinear"(双线性插值)和 "bicubic"(双三次插值)。keep_aspect_ratio
: 是否保持图像的宽高比。默认为 False,表示不保持宽高比。如果设置为 True,则在调整图像大小时会尽量保持原始图像的宽高比。img_to_array
keras.utils.img_to_array(img, data_format=None, dtype=None)
img
:输入的图像,可以是 PIL.Image 对象、NumPy 数组或文件路径。data_format
:可选参数,指定图像数据的格式。默认为 None,表示使用 Keras 配置文件中的设置。可选值有 'channels_first' 和 'channels_last'。dtype
:可选参数,指定输出数组的数据类型。默认为 None,表示使用 Keras 配置文件中的设置。save_img
keras.utils.save_img(
path, x, data_format=None, file_format=None, scale=True, **kwargs
)
path
:输出图像文件的路径。x
:输入的图像数据,可以是 PIL.Image 对象、NumPy 数组或文件路径。data_format
:可选参数,指定图像数据的格式。默认为 None,表示使用 Keras 配置文件中的设置。可选值有 'channels_first' 和 'channels_last'。file_format
:可选参数,指定输出图像的文件格式。默认为 None,表示根据文件扩展名自动推断。支持的文件格式有 'jpeg'、'png'、'bmp' 等。scale
:可选参数,布尔值。如果为 True,则将图像数据缩放到 [0, 255] 范围内。默认为 True。**kwargs
:其他关键字参数,用于传递给底层图像处理库(如 PIL)的特定选项。