MCPcopy Create free account
hub / github.com/ddsggcs/cv_learning_resnet50 / PreProcess

Function PreProcess

practice/python/infer.py:314–349  ·  view source on GitHub ↗

对指定的图像文件进行预处理。 参数: filename (str): 图像文件的路径。 返回: numpy.ndarray: 预处理后的图像数据。

(filename)

Source from the content-addressed store, hash-verified

312
313# PreProcess 用于对图像进行预处理
314def PreProcess(filename):
315 """
316 对指定的图像文件进行预处理。
317
318 参数:
319 filename (str): 图像文件的路径。
320
321 返回:
322 numpy.ndarray: 预处理后的图像数据。
323 """
324 from PIL import Image # 导入图像处理库
325 from torchvision import transforms # 导入PyTorch视觉变换库
326
327 # 打开图像文件
328 img = Image.open(filename)
329
330 # 定义预处理步骤
331 PreProcessFunction = transforms.Compose(
332 [
333 transforms.Resize(256), # 首先调整图像大小
334 transforms.CenterCrop(224), # 中心裁剪
335 transforms.ToTensor(), # 转换为PyTorch张量
336 transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]), # 标准化
337 ]
338 )
339
340 # 对图像应用预处理
341 input_tensor = PreProcessFunction(img)
342 # 增加一个批次维度
343 input_batch = input_tensor.unsqueeze(0)
344
345 # 将PyTorch张量转换为numpy数组,并调整维度顺序
346 out = np.array(input_batch)
347 out = np.transpose(out, (0, 2, 3, 1))
348 out = np.reshape(out, (224, 224, 3))
349 return out
350
351
352class Resnet:

Callers 1

infer.pyFile · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected