【问题标题】:sliding search window without using 'for' loop in python在python中不使用'for'循环的滑动搜索窗口
【发布时间】:2019-03-15 02:31:55
【问题描述】:

我正在尝试在 python 中创建幻灯片搜索算法。我试图通过迭代坐标来索引图像。请检查下面的代码。在这里,我使用 2 FOR LOOPS(这需要很多时间)。我想实现它,它的计算速度非常快。有什么更好的矢量化方法可以更快地实现?

width,height,depth = img.shape
wind_size = 64
xx = np.arange(0,width,wind_size)
yy = np.arange(0,height,wind_size)
for i in xx[:-1]:
    for j in yy[:-1]:
        img_w = img[i:i+wind_size,j:j+wind_size,:]
        img_w = cv2.cvtColor(img_w,cv2.COLOR_BGR2RGB)
        img_lst1.append(img_w/255.0) 

【问题讨论】:

标签: python numpy for-loop sliding-window


【解决方案1】:

使用here 中的window_nd,然后就可以了

window_nd(image, window = 64, steps = 64, axis = (0, 1))

这使用np.stride_tricks.as_strided 将窗口创建为原始图像的视图。

或者,您可以使用skimage.util.shape.view_as_blocks

skimage.util.shape.view_as_blocks(image, (64, 64, 3))

【讨论】:

  • 感谢您提供的信息。
猜你喜欢
  • 2020-11-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-23
  • 1970-01-01
  • 1970-01-01
  • 2016-03-06
  • 2018-12-06
相关资源
最近更新 更多