【发布时间】:2021-05-29 23:03:38
【问题描述】:
我已经训练了一个二进制分类模型,该模型采用 (128x128x3) 图像,然后给出 0 或 1 的二进制值。然后我想拍摄更大的图像,例如 (nxmx3),并应用窗口函数并具有模型在每个窗口上运行预测。
我使用 skimage.util.view_as_windows 将 (1024x1024x3) 图像转换为 (897,897,128,128,3) numpy 数组。我现在想通过我的模型运行每个 (i, j, 128,128,3) 窗口,然后将其放置在同一位置。最后,我想要一个 (897,897) 数组,其中包含该类存在的概率。
我现在这样做的方式需要一个 for 循环,它需要将近 1-2 分钟才能通过,同时随着包含模型预测的列表变大而变慢。
有没有办法对这个过程进行矢量化?也许展平 numpy 数组,在其上运行 model.predict(),然后创建一个具有相同先前尺寸的二维数组?
【问题讨论】:
标签: python numpy tensorflow keras scikit-image