【发布时间】:2016-11-01 15:12:29
【问题描述】:
我在图像上使用函数(Python、Numpy、OpenCV3),这是我的示例输出 -
[[[539 340 897 538]]
[[533 340 877 538]]
[[280 460 346 410]]
[[292 462 353 411]]
[[540 343 798 492]]]
它的大小是(5,1,4)
我试图了解函数会在什么情况下输出 (5,2,4) 或 (5,3,4) 之类的内容。但我想不出我现在使用过的任何图像,它是一个列数为 1 的 3D 数组。
难道只有一个二维数组就足够了,而且可能更有效吗?
【问题讨论】:
-
因为在 openCV 中,前两个维度是矩阵,第三个维度是元素的维度。所以通常 openCV 中的所有 1D 输出都是 Nx1 2D 矩阵。元素类型的另一个维度(例如,1d 用于灰度像素值或浮点距离值,2D 用于点坐标,3D 用于 rgb 值,4D 用于点对或 rgba 值等)所以 Nx1 部分是因为优化图像,它们是每个元素中具有 mD 像素的 2D 矩阵。
标签: python-3.x opencv numpy hough-transform opencv3.1