首页 > 解决方案 > 仅使用 numpy 裁剪和移动 mnist 图像以适合不同形状的边界框

问题描述

我有一个形状为 (60000, 28, 28) 的 MNIST 数据集,我需要一种方法来裁剪和移动图像,以使每个图像中的中间像素值与裁剪图像中的相同。我已经提取了每个图像中黑色像素的第一行和最后一行和最后一列。我需要一个包含裁剪图像的形状 (60000, 20, 20) 的输出数组。

我尝试使用此代码裁剪所有图像:

cropped = train_images_raw[:, first_ink_rows[1]:last_ink_rows[1]+1, first_ink_cols[1]:last_ink_cols[1]+1]

但形状仅针对特定的黑色像素行和列是固定的。

如何移动图像以适合大小为 (20, 20) 的边界框并仍然保留中间像素的值?

标签: pythonnumpyimage-processingmnist

解决方案


推荐阅读