如何使用 JavaScript 将过滤器 backgroup 更改为白色

问题描述

我正在研究 JavaScript 过滤器。我正在实现 Sobel 过滤器,其代码如下 https://jsfiddle.net/sacheie/c91bzwt5/8/在这里,我得到黑色背景和白色边缘,但在我预期的输出中,我需要白色背景和黑色边缘。我在 sobel 方法中尝试了一些更改,但它对我不起作用。有什么办法可以达到我的预期输出吗?

function sobel(img,x,y) {
    var gradX = 0;
    var gradY = 0;

    gradX += pxlValue(img,x - 1,y - 1) * -1;
    gradX += pxlValue(img,y + 0) * -2;
    gradX += pxlValue(img,y + 1) * -1;
    gradX += pxlValue(img,x + 1,y - 1) * 1;
    gradX += pxlValue(img,y + 0) * 2;
    gradX += pxlValue(img,y + 1) * 1;

    gradY += pxlValue(img,y - 1) * -1;
    gradY += pxlValue(img,x + 0,y - 1) * -2;
    gradY += pxlValue(img,y + 1) * 1;
    gradY += pxlValue(img,y + 1) * 2;
    gradY += pxlValue(img,y + 1) * 1;

    gradX /= 9;
    gradY /= 9;

    return Math.sqrt(Math.pow(gradX,2) + Math.pow(gradY,2));
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...