Обработка изображения для приложения Iphone fax - PullRequest
0 голосов
/ 10 июля 2011

Я ищу код, который очищает изображение документа, т. Е. Удаляет тени и другие шумы и превращает его в простое черно-белое изображение (черно-белый, фон-белый).

Возможно, будет полезен простой пиксельный алгоритм, такой как: деление изображения на прямоугольники, для каждого из которых определяется наиболее частый масштаб в качестве фона, а более темные пиксели - в качестве фактических линий письма.

Любая помощь будет высоко оценена.

Ответы [ 2 ]

1 голос
/ 11 июля 2011

Проблема в том, что код не различает букву и тень.каждый темный пиксель будет черным независимо от контекста.

Требуемый результат должен отфильтровывать шумы, такие как тени, в четкое черно-белое изображение.

0 голосов
/ 10 июля 2011

получить данные о пикселях, используя этот вопрос

чтобы превратить каждый пиксель в черно-белый, сложите красный, зеленый и синий компоненты, и разделите на 3. Затем вы назначаете полученное значение каждому пикселю. Теперь, чтобы удалить шум, вы устанавливаете пороговое значение, которое вы хотите считать шумом, например, вы можете сказать любые пиксели, которые выше значения 200, сделать их белыми (установить на 255), а пиксели темнее установить их на черный (0)

// 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;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...