Попытка получить доступ к одному элементу массива в numpy вместо доступа к последовательности - PullRequest
0 голосов
/ 13 апреля 2020

Я пытаюсь создать программу, которая берет случайные части различных изображений, а затем добавляет их обратно вместе, но когда я пытаюсь получить доступ к одному элементу массива, он получается в виде последовательности.

def select_from_image(img):
    factor=rng.uniform(1/20,1/10)
    width=int(np.floor(img.shape[1]*np.sqrt(factor)))
    height=int(np.floor(img.shape[0]*np.sqrt(factor)))
    x=rng.randint(0,img.shape[1]-1-width)
    y=rng.randint(0,img.shape[0]-1-height)
    return img[y:y+height-1:,x:x+width-1:]
imgs=[]
for i in range(len(paths)):
    imgs.append(ig.imread(paths[i]))
selection=[]
for img in imgs:
    selection.append(select_from_image(img))

Я провел некоторое тестирование и пришел к выводу, что проблема в "select_from_image (img)", но я просто не могу на это обратить внимание. Вот пример вывода: https://imgur.com/a/1Cs8i4J

Любая помощь приветствуется!

1 Ответ

1 голос
/ 15 апреля 2020

Я нашел проблему, и это не был (полностью) код. Изображения, которые я использовал, не были mono chrome (что означало, что у каждого элемента в массиве, созданном imread, было три значения вместо одного), поэтому, если кто-то сталкивается с такой проблемой, как get, и смущенный / разочарованный читайте это: https://brohrer.github.io/convert_rgb_to_grayscale.html это мне очень помогло!

...