💪 专业从事且热爱图像处理,图像处理专栏更新如下👇:
📝《图像去噪》
📝《超分辨率重建》
📝《语义分割》
📝《风格迁移》
📝《目标检测》
📝《图像增强》
📝《模型优化》
📝《模型实战部署》
📝《图像配准融合》
📝《数据集》
📝《高效助手》
在深度学习中,如果想测试训练好的模型处理每一帧图像的运行时间,可以在模型预测代码段添加时间统计的逻辑:
一、加载预训练模型
先将模型载入并将模型切换为评估模式。
model = torch.load('best_model.pth')
model.eval()
二、遍历测试图像
test_images = [] # 测试图像列表
for img in test_images:
# 记录当前时间
torch.cuda.synchronize() if str(device) == 'cuda' else None # 如果使用 GPU,同步 CPU 和 GPU 之间的操作,以确保计时准确
start = time.time()
# 模型预测
pred = model(img)
# 记录预测耗时
torch.cuda.synchronize() if str(device) == 'cuda' else None # 同步 CPU 和 GPU 之间操作,以确保计时准确
end = time.time()
elapsed = end - start
print(f'Processed {img_name} in {elapsed:.2f} seconds')
三、汇总统计预测测试集全部图像的平均处理时间
# 汇总时间
total_time = 0
for img in test_images:
# 预测+计算每张图时间
total_time += elapsed
average_time = total_time / len(test_images)
print(f'Average time: {average_time:.2f} seconds')
四、测试结果样式
测试结果见下:
把时间统计代码放在模型预测的内部,可以精确计算每张图像的处理时间。汇总平均值则可以全面评估模型的整体运行效率。
五、总结
通过以上方法就可以比较准确地统计出模型处理每张图像的平均时间,希望能帮到你!
感谢您阅读到最后!😊总结不易,多多支持呀🌹 点赞👍收藏⭐评论✍️,您的三连是我持续更新的动力💖
关注公众号「视觉研坊」,获取干货教程、实战案例、技术解答、行业资讯!