【发布时间】:2015-06-12 14:59:32
【问题描述】:
所以,假设我有以下矩阵/数组 -
[0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 1 1 1 0 0 0 0 0
0 0 0 1 1 1 1 0 0 0 0 0
0 0 1 1 1 1 1 1 0 0 0 0
0 0 1 1 1 1 1 1 0 0 0 0
0 0 0 1 1 1 1 0 0 0 0 0
0 0 0 0 1 1 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0]
编写一些可以上下转换这些值的东西是相当简单的。如果我想将它旋转一个不是 90 度的倍数的角度怎么办?我知道,由于网格的性质,显然不可能得到完全相同的形状(由 1 组成)。想到的想法是将每个值 1 转换为坐标向量。然后它将相当于围绕一个点旋转坐标(应该更简单)。然后可以写一些东西来获取坐标,并将它们与矩阵网格进行比较,如果右侧框中有一个点,它将被填充。我知道我还必须找到一个旋转中心。
这似乎是一种合理的方法吗?如果有人有更好的主意,我会全力以赴。我知道像这样的小网格,形状可能会完全不同,但是如果我有一个用 1 表示的大形状,在大网格中,表示之间的差异会更小。
【问题讨论】:
标签: python matrix rotation pixel image-rotation