正常投影矩阵的大小为 3*3,有 9 个值。但是张量流变换需要一个维度为8的向量所以我不知道如何将我的矩阵转换成这个向量。示例 - 我有一个进行旋转和平移的矩阵: top_row = [np.cos(rot_value), - np.sin(rot_value), trans_x] middle_row = [np.sin(rot_value), np.cos(rot_value), trans_y] last_row = [0, 0, 1] trans_matrix = np.stack((top_row, middle_row, last_row))如何将此矩阵转换为 8 维向量中的矩阵,以便使用 tensorflow 变换?
1 回答

侃侃无极
TA贡献2051条经验 获得超10个赞
由于投影矩阵具有全局尺度模糊性,您可以乘以一个常数因子。射影变换有八个自由度,而不是九个,去除这种冗余的通常惯例是将右下角设为 1。
对于您的情况,您应该可以使用top_row + middle_row + [0, 0]
更普遍:
(trans_matrix/trans_matrix[2,2]).flat[:8]
添加回答
举报
0/150
提交
取消