[英]Making a custom generator in keras for prediction
我正在為約100萬張圖像的大型數據庫做預測。 對於每個圖像,我都有一些代碼,可以將圖像切成約200個較小的圖像,並將它們作為一個numpy數組傳遞給keras,以進行預測。
我想避免不必要的讀寫操作,所以我不想保存所有這些較小的圖像並使用flow_from_directory。 取而代之的是,我希望讀入圖像,將其與現有代碼一起切碎,並將較小的圖像作為批處理全部傳遞到我的網絡中,然后對許多圖像重復此過程。
這是Keras可以處理的嗎? 如果是這樣,我懷疑我需要創建自己的自定義生成器,但是我不確定如何執行此操作,因此找不到任何好的示例。 有沒有人提供有關如何實現自定義生成器的示例?
嘗試這樣的事情:
dpath='path to test folder'
ids=os.listdir(dpath+"test/")
for id in ids:
x_batch=[]
img = cv2.imread(dpath+'test/{}.jpg'.format(id)) #jpg if image in jpg format
img = cv2.resize(img, (224, 224), interpolation = cv2.INTER_CUBIC) #if resize is needed
chopped_image= your code that chops image
x_batch.append(chopped_image)
x_batch = np.array(x_batch, np.float32)
preds=(model.predict_on_batch(x_batch))
if first==1:
predsA=preds.copy()
first=0
else:
predsA=np.append(predsA,preds,axis=0)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.