【问题标题】:How to Detect Region of interest in image using JavaScript如何使用 JavaScript 检测图像中的感兴趣区域
【发布时间】:2017-08-15 21:18:55
【问题描述】:

我想在 JS 中检测矩形卡片(名片)。我在这里找到了类似的实现-

与此链接类似,但使用 JavaScript-https://mathematica.stackexchange.com/questions/21059/how-can-i-detect-a-rectangular-region-of-interest-in-a-picture

我使用 JSfeat 库使图像模糊并检测到边缘。我应该如何仅使用 JS 在其中找到矩形。 另外,我读过 hough transform in 可以提供帮助。

有什么线索吗?

【问题讨论】:

  • 不要只提供链接,在这里解释您的问题。一旦链接失效,您的问题和任何答案都将变得毫无用处。请阅读How to Ask 以了解如何在这里写一个好问题。您的问题将被否决并按原样关闭。
  • 我已经使图像模糊并使用精明的边缘检测来检测边缘。但不知道下一步该做什么。

标签: javascript image-processing jsfeat


【解决方案1】:

有多种方法可以实现这一目标。霍夫变换就是其中之一,您可以使用one of jsfeat's method(遗憾的是,没有它的文档,但据我所知,它接受以下参数:

  • 图片(jsfeat的t_matrix格式,可能要先灰度)
  • rho 分辨率(更大 - 更精确的结果,更慢)
  • theta 分辨率(更大 - 更精确的查找,更慢)
  • threshold - 结果中必须包含多少点线

该方法应该返回一个数组数组,其中包含 [rho, theta] 对,其中theta 是直线的角度,rho 是直线与坐标系 0 之间的距离;您需要对参数进行试验(尤其是threshold),并尝试找到一组最有可能形成矩形的四行(可能,但不必倾斜)。

您可能还应该阅读wiki page on Hough transform 以首先了解它的工作原理。

如果您只需要检测与屏幕平行的名片(我的意思是水平边缘与屏幕的水平边缘平行,垂直边缘相同),那么计算 Scharr 导数(jsfeat also has a method for that)和尝试找到两个最重要的垂直和水平边缘(请记住,当颜色从暗变为亮时,Scharr 边缘为负,反之为正,因此您需要计算绝对值以考虑这两种情况)。

【讨论】:

    猜你喜欢
    • 2018-06-17
    • 1970-01-01
    • 2011-08-10
    • 2014-05-20
    • 2012-03-08
    • 1970-01-01
    • 2012-04-25
    • 1970-01-01
    相关资源
    最近更新 更多