0

我目前正致力于标准化 ct 扫描(x、y、层)。使用 cv2.reshape 对前两个维度进行归一化很简单,但是第三个维度......我的想法是展平前两个维度以获得 2d-numpy-array。如果我对每一层进行重塑 (x * y) 并将其重塑回 (x, y) 我会得到一个完全不同的图像。我在开头有一个肺的图像,后面有不同灰度值的线条。

test = cv2.resize(img, (img.shape[0] * img.shape[1], 1), interpolation=cv2.INTER_LINEAR)
test = cv2.resize(test, (159, 159), interpolation=cv2.INTER_LINEAR)
self.print_prediction(test, cv2.resize(temp2_masks[:, 0], (159, 159)),
                                  color=False, shape=(159, 159))

我确定这是某种简单的错误,但我没有看到。因此,我将非常感谢您的帮助。

4

1 回答 1

0

cv2.resize函数不会重塑您的数组。它实际上调整了图像的大小。您的第一行是水平挤压图像,同时垂直扩展很多。这些值根本不会被保留。

用于numpy.reshape重塑您的阵列。

于 2020-08-11T08:57:13.237 回答