gpt4 book ai didi

python - 如何加速图像的数据增强

转载 作者:太空宇宙 更新时间:2023-11-03 21:50:38 25 4
gpt4 key购买 nike

我正在使用 python 中的 opencv2 进行数据扩充。我使用的数据集包含大约 4000 张 96x96 单 channel 图像。

我正在应用一系列平移和缩放的仿射变换cv2.warpAffine。但是我注意到,随着代码遍历数据集,过程变得越来越慢。下面的旋转变换代码 - 我在每张图片上调用它。

def augment_rotation(depth):
augment_rotate = []
rows,cols = depth.shape
for i in range(-180,181):
M = cv2.getRotationMatrix2D(((cols-1)/2.0,(rows-1)/2.0),i,1)
augment_rotate.append(cv2.warpAffine(depth,M,(cols,rows)))
return augment_rotate

这不仅限于我的计算机,因为我在其他计算机上尝试过并遇到了同样的问题。知道如何解决这个问题或让它更快,这样我就不必等待数小时来执行增强吗?

最佳答案

我遇到了 python 内置的 joblib 库。它是为此目的而设计的。根据the documentation joblib 使用后端的 multiprocessing 库帮助并行执行循环。

这些文档说明了一个数字示例,用于对数字列表并行执行简单的数学运算。我能够将此功能扩展到处理图像。作为示例演示,我选择对桌面上的所有图像执行加权求和 withwithout joblib

事实证明,对于总大小为 58Mb 的 14 张图像,我得到了以下信息:

('Using Joblib : ', 0.09400010108947754)
('Without Joblib : ', 15.386000156402588)

Here is the write-up for the answer I wrote recently .我相信你也可以用它来增强体质!!

尝试一下,让我知道它是如何工作的!

关于python - 如何加速图像的数据增强,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51351315/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com