matrix_to_descriptor — REPRCONV descriptor op

• 数据种类:matrix → descriptor

• 调用: import fullseye as fs; fs.ledger.matrix_to_descriptor(matrix)(要直接调用实现,import reprconv; reprconv.matrix_to_descriptor(matrix);从台账取用则 opsreprconv.get("matrix_to_descriptor"))

用法

matrix → 描述子。descriptor_to_matrix 的逆。

1 行的矩阵 (1, n) 还原为 (n,)(因为那就是原来的 1-D 描述子)。2 行以上原样保留。这一不对称是有意的,没有它的话, descriptor -> matrix -> descriptor 的往返会把形状从 (n,) 默默变成(1,n) = 类型谎言本身。

★测量并保留的不可逆点: 相应地,原本就是 (1, n) 的 2-D 描述子 往返后会变成 (n,) 的 1-D —— (1,n) 的矩阵无法区分"包着 1-D 描述子的东西"与 "只有 1 行的描述子束",所以只有这 1 种情况原理上无法还原。值全部保留,所以损失仅为"只有 1 行"这一元信息。在被迫选择让哪一侧不可逆的情况下, 把 descriptor 的压倒性多数(实测 14 个 producer 中有 12 个是 1-D)放在了严格一侧。tests/test_reprconv.py::test_one_row_descriptor_ambiguity_is_documented 不堵上而是把这个洞固定下来(若隐藏起来,总有一天形状会默默改变)。

Args:

matrix: (m, n) 的实数组。

Returns:

m == 1 时为 (n,),否则为 (m, n)。

Raises:

ValueError: 不是 2-D / 非有限。

参考(示例数据、文献)

• 示例数据目录(下载 URL / 许可证) —— 2-D 用 skimage.data(BSD/公有领域)加合成图,3-D 给出真实数据源(Stanford/PDS 等)的下载 URL。

• 算子来历与参考文献 —— 该算子族所依据的研究/方法出处。

• 算法的正典(作者、年份)与用途见上面的族使用指南。

可运行的示例(实际调用该算子并已验证的样例)

• representation_conversion — py -3.11 examples/representation_conversion.py

类型可衔接的下一个算子(可接受 descriptor 作为输入)

descriptor_to_matrix · descriptor_to_table

同类别(descriptor)

descriptor_to_matrix · descriptor_to_table


*Provenance: reprconv.py — REPRCONV 算子登记表。本条目由 tools/opdocs.py md 自动生成(请勿手工编辑)。*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.