如何从生成器获取字典输出,生成器输出带有自定义keras图像生成器的字典的数组

我有一个定制的生成器,可以输出多个要预测的值。我试图获取与给定图像对应的值,但没有成功。这是我的输出:

e(array([[[[0.,0.,0.],[0.,...,0.]],[[0.,0.]]],[[[0.,0.]]]],dtype=float16),{'HourTime': array([0.3848,0.2375],'MinTime': array([0.633,0.862],'SecTime': array([0.967,0.717],dtype=float16)})

我的输出来自此处的发电机:

input_Size = 128
x,y,xrange,yrange = [136,150,47,47]
def ImGenA(directory,files_Loc,Hour,Min,Sec,batch_size):
    while True:
        batch_paths  = imgId = np.random.choice(a = files_Loc.index,size=batch_size)
        batch_input  = []
        batch_Hr     = []    
        batch_Min    = []
        batch_Sec    = []
        for i in batch_paths:
            img1 = cv2.imread(os.path.join(directory,files_Loc[i]))
            img1 = ndimage.rotate(img1,210)
            img1 = cv2.resize (img1,(input_Size,input_Size))

            batch_input+=[img1/255]
            batch_Hr += [Hour[i]]
            batch_Min += [Min[i]]
            batch_Sec += [Sec[i]]

            batch_x = np.array(batch_input,dtype='float16')
            batch_y1 = np.array(batch_Hr,dtype='float16')
            batch_y2 = np.array(batch_Min,dtype='float16')
            batch_y3 = np.array(batch_Sec,dtype='float16')
        yield( batch_x,{'HourTime' : batch_y1,'MinTime': batch_y2,'SecTime': batch_y3})


    genA = ImGenA(directory=folder,files_Loc= train['ImageLoc'],Hour = train['HrPer'],Min = train['MinPer'],Sec = train['SecPer'],batch_size=2)
    b=next(genA)
    b[0][0] #provides image at position 0,but how do I find the Y output 'HourTime' at the same position?

我很难从生成器运行的保存输出中提取“ HourTime”。抱歉,我想之前已经有人问过,但是我不确定如何找不到答案。

iCMS 回答:如何从生成器获取字典输出,生成器输出带有自定义keras图像生成器的字典的数组

一旦您开始使用它,它就很简单。

b[1]['HourTime'][0]

从字典中为位置0提供“ HourTime”。 IE浏览器0.3848

本文链接:https://www.f2er.com/2278248.html

大家都在问