私はPythonのopencvを使って画像を読み込み、3 GBの画像を読み込もうとしましたが、プログラムは中止されました。 私のPCには32 GBのメモリがありますが、このプログラムを実行するとそのメモリは使い果たされます。原因は何ですか?opencvを使用してPythonプログラムのメモリが不足する原因は何ですか?
エラーメッセージは表示されず、PCが異常に重くなります。私はUbuntuのシステムモニタでそれを確認しましたが、メモリとスワップが不足していました。
テンソルフローディープ学習プログラムに渡すために、イメージを1つの配列にインポートします。画像のサイズは200×200のカラー画像です。
私は64ビットバージョンのPythonを使用しています。メモリ不足のため
import os
import numpy as np
import cv2
IMG_SIZE = 200
def read_images(path):
dirnames = sorted(os.listdir(path))
files = [sorted(os.listdir(path+dirnames[i]))\
for i in range(len(dirnames))]
i = 0
images = []
for fs in files:
tmp_images = []
for f in fs:
img = cv2.imread(path +dirnames[i] + "/" + f)
img = cv2.resize(img, (IMG_SIZE, IMG_SIZE))
img = img.flatten().astype(np.float32)/255.0
tmp_images.append(img)
i = i + 1
images.append(tmp_images)
return np.asarray(images)
エラーメッセージを投稿してください。 – voiDnyx
あなたは32ビット版のPythonまたは64ビットを使用していますか? –
私は64ビットバージョンを使用しています。 – pie