Python 3 при создании списка не работает должным образом - PullRequest
0 голосов
/ 27 февраля 2019

Я пытаюсь создать список в python из анализа массива Numpy, но создание с помощью моих циклов for не создает весь список.На самом деле у меня есть w = 404 и h = 481, и я использую функцию диапазона для создания списка:

true_label = []
for i in range(0,w*h):
    if np.all(image_array[i] == [0.0, 0.0, 1.0]): # red
        true_label.append(0)
    if np.all(image_array[i] == [0.0, 1.0, 0.0]): # gree
        true_label.append(1)
    if np.all(image_array[i] == [1.0, 0.0, 0.0]): # red
        true_label.append(2)

Но в конце выполнения мой список содержит 193920 элементов вместо 194324.

Что я делаю не так?

1 Ответ

0 голосов
/ 27 февраля 2019

Запустите следующую редакцию вашего кода:

true_label = []
for i in range(0,w*h):
    if np.all(image_array[i] == [0.0, 0.0, 1.0]): # red
        true_label.append(0)
    else if np.all(image_array[i] == [0.0, 1.0, 0.0]): # gree
        true_label.append(1)
    else if np.all(image_array[i] == [1.0, 0.0, 0.0]): # red
        true_label.append(2)
    else:
      true_label.append(3)

Затем посчитайте число «3».Могу поспорить, что есть 404 "3".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...