检测矩阵内部的形状

时间:2016-07-13 07:36:22

标签: javascript arrays matrix

假设你有一个如下矩阵:

var map = 
[
[0,0,0,0,0,0],
[0,1,1,1,1,0],
[0,1,0,0,1,0],
[0,1,1,1,1,0],
[0,0,0,0,0,0],
[0,0,0,0,0,0],
];

可以使用哪些方法来确定1 s矩阵内有0个正方形?那么多个正方形/矩形相互偏移(不重叠,可能是并排)?

我确信已经为这些事情制定了方法,我很想了解它们。

1 个答案:

答案 0 :(得分:0)

首先,这是一种广泛的图像处理问题,

该概念可以命名为 shape numbers shape numbering object detection OCR 等....,

您可以使用 OpenCV 库来检测形状。

试试这个问题How to detect simple geometric shapes using OpenCV

<强> - EDIT ---

最终的数值解决方案是使用数字边缘检测和线条细化方法,例如 Canny Robert Cross {{1} Prewitt 运营商和 Sobel kernel 方法可以为您提供帮助。

以上所有操作符都可以用 Matlab OpenCV 等软件执行。

对于JavaScript,您可以尝试使用以下库

FabricJS http://fabricjs.com/

Orcad http://antimatter15.com/ocrad.js/demo.html

形状检测器 https://github.com/MathieuLoutre/shape-detector

神经网络库

大脑 https://github.com/harthur/brain

大脑演示http://katspaugh.github.io/whiteboard/examples/brain/#rect

我认为大脑在矩阵中使用类似的1和0,这可能更具体到整数数组