def __call__(self, x):
"""Compute an image-wise score from a batch of images
Args:
x (chainer.Variable): A variable with 4D image array.
Returns:
chainer.Variable:
An image-wise score. Its channel size is :obj:`self.n_class`.
"""
p1 = F.MaxPooling2D(2, 2)
p2 = F.MaxPooling2D(2, 2)
p3 = F.MaxPooling2D(2, 2)
p4 = F.MaxPooling2D(2, 2)
h = F.local_response_normalization(x, 5, 1, 1e-4 / 5., 0.75)
h = _pool_without_cudnn(p1, F.relu(self.conv1_bn(self.conv1(h))))
h = _pool_without_cudnn(p2, F.relu(self.conv2_bn(self.conv2(h))))
h = _pool_without_cudnn(p3, F.relu(self.conv3_bn(self.conv3(h))))
h = _pool_without_cudnn(p4, F.relu(self.conv4_bn(self.conv4(h))))
h = self._upsampling_2d(h, p4)
h = self.conv_decode4_bn(self.conv_decode4(h))
h = self._upsampling_2d(h, p3)
h = self.conv_decode3_bn(self.conv_decode3(h))
h = self._upsampling_2d(h, p2)
h = self.conv_decode2_bn(self.conv_decode2(h))
h = self._upsampling_2d(h, p1)
h = self.conv_decode1_bn(self.conv_decode1(h))
score = self.conv_classifier(h)
return score
评论列表
文章目录