2014-12-23 6 views
0

내 목표는 슬라이딩 윈도우를 이미지 위에 겹쳐서 슬라이드 시켜서 각 윈도우에서 분류자를 실행하고 재미있는 객체가 있는지 감지하는 것입니다. 이를 위해 이미지 위에 슬라이딩 윈도우가 겹쳐 짐

, 나는 상단과 원본 이미지의 각 슬라이딩 윈도우의 왼쪽 좌표를 내가 분류 추출

여기로부터 다음 창 너비 및 높이이며 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) 

이것은 잘 작동합니다. 각 창에 대한 좌표뿐만 아니라 슬라이딩 창도 제공합니다. 하지만 슬라이딩 윈도우가 겹치지는 않습니다.

내 stepsize가 10이고 첫 번째 창이 (위쪽, 왼쪽) : (0,0)에서 시작하면 두 번째 창이 (0, 10)이어야합니다.

위의 코드에서 두 번째 창이 (0, 60)입니다.

windows = sw.sliding_window(image1, window_size, step_size, flatten=True) 
    for w in windows: 
     # and then I grabbed each w and printed it out 

을 그리고 이것은 중복 창을 포함하여, 나에게 모든 슬라이딩 창을 제공했다 :

이전,이 코드를 사용했다. 그러나이 방법에서는 각 슬라이딩 윈도우의 위쪽 및 왼쪽 좌표를 가져올 수 없었습니다.

+0

슬라이딩 윈도우를 효과적으로 수행하려면이 코드를 사용하십시오. https://sites.google.com/site/christophlampert/publications/beyond-sliding-windows-object-localization-by-efficient-subwindow -search – Bharat

+0

파이썬에서 실행할 수 있습니까? – user961627

답변

0

좋아요. 그래서 문제가 무엇인지 알았습니다.

이 코드는 발생하지 않았다 중복 : 윈도우 크기의 사람들과 전체 이미지 크기를 분할

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

분명히 중복되지 않는 결과를 제공 할 것입니다.

는 수직 및 수평으로, 나는 단순히 sliding_window 기능은 윈도우의 숫자가 무엇인지 나에게 자신을 말할 수, 크기 당 창 오른쪽의 수를 효율적으로 활용하려면 다음
win = sliding_window(img, window_size, shiftSize=None, flatten=False) 
grid_h_max = win.shape[0] 
grid_w_max = win.shape[1] 

다시 나에게 약 5000 창을 주었다.