图像上重叠的滑动窗口

2024-10-05 10:14:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我的目标是让滑动窗口以重叠的步骤滑动到图像上,这样我就可以在每个窗口中运行分类器,并检测是否存在感兴趣的对象。在

为此,我需要确保

  • 我为分类提取的窗口确实可以覆盖整个图像,并且
  • 抓取原始图像上每个滑动窗口的左上角坐标。在

从这里开始跟进: Sliding window - how to get window location on image?

根据滑动窗的代码:

https://github.com/keepitsimple/ocrtest/blob/master/sliding_window.py#blob_contributors_box

假设winh和winw是滑动窗口的宽度和高度,window_size是(winh,winw):

grid_h_max =(imgheight/winh)
grid_w_max= (imgwidth / winw)
win = sliding_window(img, window_size, shiftSize=None, flatten=False) 
for h in range (grid_h_max): 
    for w in range (grid_w_max): 
        win = windows[h,w]
        grid_pos = (h,w), (winh, winw)) 
        t, b, l, r = get_win_pixel_coords(grid_pos, window_size)

这是很好的工作-给我滑动窗口以及每个窗口的坐标。但我没有看到重叠的滑动窗。在

所以如果我的步长是10,第一个窗口从(左上角)开始:(0,0),那么第二个窗口应该是(0,10)。在

但是在上面的代码中,我的第二个窗口是(0,60)。在

之前,我使用的代码是:

^{pr2}$

这给了我所有的滑动窗,包括重叠的窗户。但是在这个方法中,我无法获取每个滑动窗口的顶部和左侧坐标。在


Tags: 代码in图像forsizegetrangewindow
1条回答
网友
1楼 · 发布于 2024-10-05 10:14:13

好吧,所以我发现了问题所在。在

此代码不会导致重叠:

grid_h_max =(imgheight/winh)
grid_w_max= (imgwidth / winw)
win = sliding_window(img, window_size, shiftSize=None, flatten=False) 

将整个图像尺寸与窗口尺寸分开显然会得到不重叠的结果。在

为了获得每个维度的正确窗口数,我只需允许滑动窗口函数告诉自己垂直和水平的窗口数:

^{pr2}$

这又给了我大约5000扇窗户。在

相关问题 更多 >

    热门问题