我正在寻找能够清理文档图片的代码,意味着消除阴影和其他噪音并将其变成简单的黑色&白色图像(黑色 - 书写,白色 - 背景)。
也许一个简单的像素算法会有所帮助,例如:将图像划分为矩形,每个像素将最频繁的比例定义为背景,将较暗的像素定义为实际的书写线。
任何帮助都将受到高度赞赏。
答案 0 :(得分:1)
问题是代码在字母和阴影之间没有区别。无论其背景如何,每个暗像素都将为黑色。
所需的结果应该将阴影等噪音过滤成清晰的黑色&白色图片。
答案 1 :(得分:0)
get the pixel data using this question
将每个像素转换为黑色和白色将红色绿色和蓝色分量相加,然后除以3.然后将结果值分配给每个像素。现在去除噪音你设置一个你想要考虑噪音的阈值谷值,所以例如你可以说任何高于值200的像素,把它们变成白色(设置为255)而pixesl变暗将它们设置为黑色(0)< / p>
// turn to black and white
red = pixelData[index + 0];
green = pixelData[index + 1];
blue = pixelData[index + 2];
int combinedValue = (red + blue + green)/3;
// filter out noise
if(combinedValue >200)
{
combinedValue = 255;
}
else
{
combinedValue =0;
}
// set pixels to new value
pixelData[index + 0] = combinedValue;
pixelData[index + 1] = combinedValue;
pixelData[index + 2] = combinedValue;