Преобразование нескольких матриц в изображения и их сохранение занимает целую вечность

#python #numpy #matplotlib

#python #numpy #matplotlib

Вопрос:

x_data вот список размеров, 10560 где каждый элемент представляет собой массив размера 2000x7 . Я пытаюсь отобразить каждую матрицу и сохранить ее как .jpg файл, и для этого я использую этот код. Кажется, что это работает, но для завершения требуется вечность. Есть ли более быстрый способ сделать это?

 for idx, x in enumerate(x_data):
  plt.plot(x)
  plt.savefig('EMG_img/{}_gesture{}.jpg'.format(idx,(y_augmented[idx]).tolist().index(1.0)))
  print('EMG_img/{}_gesture{}.jpg'.format(idx,(y_augmented[idx]).tolist().index(1.0)),' ...')
  

y_augmented содержит соответствующую метку в one-hot-encoding формате (для машинного обучения), и я просто использую ее здесь для целей именования файлов

вывод:

 EMG_img/0_gesture7.jpg  ...
EMG_img/1_gesture6.jpg  ...
EMG_img/2_gesture9.jpg  ...
  

Спасибо

Комментарии:

1. Вы отображаете все эти массивы на одном рисунке? Почему?

2. @ImportanceOfBeingErnest Как я могу этого избежать? У меня нет опыта построения графиков .. спасибо

3. plt.figure() создает фигуру. plt.close() закрывает фигуру (чтобы освободить память). Кроме того, сначала просмотрите только некоторые данные, чтобы увидеть, соответствуют ли результирующие цифры вашим ожиданиям.

4. это решило проблему .. спасибо, приятель!!