原图
隐写后的图像
//yu - 阈值
for (i; i < l; i += 4) {
if (
Math.abs(simgData[i + 0] - 29) < yu &&
Math.abs(simgData[i + 1] - 122) < yu &&
Math.abs(simgData[i + 2] - 217) < yu
) {
imgData[i + 0] = (imgData[i + 0] / 10 | 0) * 10
} else if (
Math.abs(simgData[i + 0] - 255) < yu &&
Math.abs(simgData[i + 1] - 255) < yu &&
Math.abs(simgData[i + 2] - 255) < yu
) {
imgData[i + 0] = (imgData[i + 0] / 10 | 0) * 10 + 1
} else if (
Math.abs(simgData[i + 0] - 255) < yu &&
Math.abs(simgData[i + 1] - 111) < yu &&
Math.abs(simgData[i + 2] - 0) < yu
) {
imgData[i + 0] = (imgData[i + 0] / 10 | 0) * 10 + 2
} else {
imgData[i + 0] = (imgData[i + 0] / 10 | 0) * 10 + 3
}
}
隐写图片
for (i; i < l; i += 4) {
temp = imgData[i + 0] % 10
if (temp === 0) {
simgData[i + 0] = 29
simgData[i + 1] = 122
simgData[i + 2] = 217
} else if (temp === 1) {
simgData[i + 0] = 255
simgData[i + 1] = 255
simgData[i + 2] = 255
} else if (temp === 2) {
simgData[i + 0] = 255
simgData[i + 1] = 111
simgData[i + 2] = 0
} else {
simgData[i + 0] = 29
simgData[i + 1] = 122
simgData[i + 2] = 217
}
simgData[i + 3] = 255
}