javascript - 使用brain.js(js中的神经网络)来学习元素背景图像的对比度

标签 javascript jquery neural-network brain.js

我对使用 Brain.js 感兴趣:https://github.com/harthur/brain

提供了一个演示,展示了如何训练神经网络来识别颜色对比度,但我如何设置它,以便它可以从输入中学习哪种颜色文本(白色或黑色)在不同背景上看起来更好图片?

这是该演示:http://harthur.github.io/brain/

我有一组背景图像想要用来训练。然后我想保存该训练数据,并能够将其添加到使用这些背景图像的网站,这样就能够确定在它们之上使用哪种颜色文本。

最佳答案

看起来好像就这么简单:

net.train([{input: { r: 0.03, g: 0.7, b: 0.5 }, output: { black: 1 }},
           {input: { r: 0.16, g: 0.09, b: 0.2 }, output: { white: 1 }},
           {input: { r: 0.5, g: 0.5, b: 1.0 }, output: { white: 1 }}]);

因此,要从输入执行此操作,只需更改值,例如:

var input = {};
input.r = hexToRgb($('#rgbTextField').r;
input.g = hexToRgb($('#rgbTextField').g;
input.b = hexToRgb($('#rgbTextField').b;

var output = {};
output.black = 1;

// finally...
net.train([ input, output ]);

var hexToRgb = function(hex) {
    var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
    return result ? {
        r: parseInt(result[1], 16),
        g: parseInt(result[2], 16),
        b: parseInt(result[3], 16)
    } : null;
}

或者类似的东西。我还没有测试过这段代码。

引用号。 RGB to Hex and Hex to RGB

关于javascript - 使用brain.js(js中的神经网络)来学习元素背景图像的对比度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23938108/

相关文章:

javascript - Angular Material 中的预选下拉列表

javascript - 这在全局范围内

javascript oo 问题

machine-learning - 如何检查经过训练的神经网络

machine-learning - 神经网络 - 深度自动编码器和堆叠自动编码器之间的区别

javascript - 从javascript创建grails View 的链接

php - Ajax:将表单恢复为初始值

javascript - 为什么使用 javascript 动态填充选择下拉列表元素在 IE 中不起作用?

jquery - jQuery 中的幻灯片放映对下一个按钮没有响应

tensorflow - 如何在神经网络中添加 "OTHER"类?