小编Tri*_*dhi的帖子

高级 API 中的 Tesorflow 自定义层:抛出对象没有属性 '_expects_mask_arg' 错误

我正在尝试根据前一层 normal (None,128,128,3)、albedo(None,128,128,3) 和照明 (27) 的三个输入重建图像。但是这里的代码仍然说 object has no attribute '_expects_mask_arg' error 。我在这里展示了我的代码,其中我使用高级 API 使用 Tensorflow v2 beta 实现了一个自定义层。

导入数学类 Reconstruction_Layer(tf.keras.layers.Layer):

def __init__(self,input_shape ):
    super(Reconstruction_Layer, self).__init__()
    #self.num_outputs = num_outputs
    #self.pixel=np.zeros((9),dtype=int)
    self.sphar=np.zeros((9),dtype=float)
    self.y=np.zeros((9),dtype=float)
    self.reconstructed_img=np.zeros((128,128,3),dtype=float)
    #self.y=tf.zeros([128,128,9])
    self.normal_light=np.zeros((128,128,9),dtype=float)
    self.y_temp=np.zeros((9),dtype=float)
    w_init = tf.random_normal_initializer()
    self.r_img = tf.Variable(initial_value=w_init(shape=input_shape),dtype='float32',trainable=True)

def build(self,input_shape):
    super(MyLayer, self).build(input_shape)

def call(self,input_layer):
    self.normal,self.albedo,self.light = input_layer

    for i in range(128):
        for j in range(128):
            #self.y=spherical_harmonic_calc(self.normal(i,j))

            self.pixel=self.normal[i,j,:]


            #self.normal_light(i,j)= self.y
            self.sphar[0]=(1/((4*math.pi)**0.5))
            self.sphar[1]=((3/(4*math.pi))**0.5)*self.pixel[2]
            self.sphar[3]=(((3/(4*math.pi))**0.5)*self.pixel[1])
            self.sphar[4]=((1/2)*((5/(4*math.pi))**0.5)*(3*(self.pixel[2]**2) - 1))
            self.sphar[5]=(3*((5/(12*math.pi))**0.5)*self.pixel[2]*self.pixel[0])
            self.sphar[6]=(3*((5/(12*math.pi))**0.5)*self.pixel[2]*self.pixel[1])
            self.sphar[7]=((3/2)*((5/(12*math.pi))**0.5)*((self.pixel[0]**2)-(self.pixel[1]**2)))
            self.sphar[8]=(3*((5/(12*math.pi))**0.5)*self.pixel[0]*self.pixel[1])

            self.normal_light[i,j,:]=self.sphar

    for j in range(128):
        for k …
Run Code Online (Sandbox Code Playgroud)

layer tensorflow

2
推荐指数
1
解决办法
1564
查看次数

标签 统计

layer ×1

tensorflow ×1