python scikit-learn extract_patches_2d имеет опцию шагов? - PullRequest
0 голосов
/ 04 мая 2018

У меня проблемы с созданием патчей из изображений 512x512. Я пытаюсь извлечь патчи 64x64 с шагом 32, который составляет половину размера виджета патча.

Я обнаружил, что функция scikit-learn extract_patches_2d может извлекать 2d патчи из исходного изображения.

Когда я использую эту функцию, кажется, что функция извлечения патчей шагает 1.

Есть ли способ извлечь патчи для шага 32?

def load_train_data(self):
    imgs_row, imgs_col = 512,512
    train_list = []
    train_img = []
    label_list = []
    label_img = []
    train_path = 'C:\\Users\\Lee Doyle\\unet\\data\\Train'
    label_path = 'C:\\Users\\Lee Doyle\\unet\\data\\Label'

    ######################Traindata################################

    print('-' * 30)
    print('load train images...')
    print('-' * 30)
    for i in glob.glob(train_path + '/*.[tT][iI][fF]'):
        train_list.append(abspath(i))
    print(len(train_list))
    for i in train_list:
        # print(i)
        img = cv2.imread(i, cv2.IMREAD_GRAYSCALE)
        # img=cv2.resize(img,(512,512))

        #train_img = image.extract_patches_2d(img, (64,64))

        train_img.append(img.astype(np.float32)/255.0)
        #train_img.append(img.astype(np.float32)/255.0)

    train_img = image.extract_patches_2d(img, (64,64))

    train_img = np.array(train_img[i])

Спасибо за вашу помощь!

1 Ответ

0 голосов
/ 19 марта 2019

У extract_patches_2d нет аргумента шага (возможно, вы можете добавить его в качестве запроса на добавление к их github).

Я вижу два возможных способа исправить это: вы либо пишете свою собственную функцию (которая очень проста), либо можете выбрать нужные патчи после использования функции.

Я бы пошел на первое.

Удачи.

...