Предварительная информация:
Итак, я прочитал и узнал о последовательной модели Keras и захотел попробовать ее. Поэтому я прочитал официальную документацию keras.sequential и выполнил код, чтобы определить, является ли изображение кошкой или нет, с некоторой помощью YouTube.
После этого я прочитал этот средний пост об идентификации болезней растений и хочу попробовать. Я загрузил набор данных, указанный в этом посте, и аналогичным образом выполнил код.
Основная проблема:
Итак, я после импорта и всего, что при запуске, код добавляет изображение в list:
if image_directory.endswith(".jpg") == True or image_directory.endswith(".jpeg") == True:
image_list.append(convert_image_to_array(image_directory))
Итак, когда я запускаю код, он занимает 99% моей памяти (я даже не могу переместить курсор) и примерно через минуту выдает ошибку: не хватает памяти . И 1 раз, когда я запускал код, мой P C завис, и я сталкивался с BSoD.
My P C Config:
- Intel i5 8-го поколения
- 8 ГБ оперативной памяти DDR4 | 1 ТБ HDD | свободное пространство до 520 ГБ
- 4 ГБ nVIDIA GTX1050 Ti
Хотя после этого я решил эту проблему с помощью cv2.resize () изображения из «256x256» в «64x64», и теперь оно занимает только 92% моей памяти. Но я пытаюсь спросить, почему это происходит? Есть около 31k изображений, каждое из которых почти 10-11KB, так что в сумме получается 370MB, так что даже если он должен загрузить все изображения на мой памяти, она не должна превышать 400 МБ, почему она занимает все мои 8 ГБ ОЗУ?