Область:Как заменить тональные вариации одного и того же цвета на C# Bitmap?
Привет всем, я пытаюсь преобразовать эту капчу в «черно-белом» (бинаризированного) изображения, где символы белого и весь остальной (фон, линии, случайные картинки) являются черный.
Ссылка на captcha может быть найдена here. Освежающий даст вам еще один капчу.
Причина:
Я знаю, что большинство людей считает, что это неправильно, чтобы возиться с каптчами так здесь я защищаясь. Это будет использоваться только для знания/самостоятельной задачи. Для этих изображений не планируется никакого другого использования.
Проблема:
После изучения этих изображений на некоторое время, я понял, что хорошо было бы Подход заменить цвета: «белый и желтый» в «Color.Black», и любой другой цвет следует заменить на «Color.White».
После этого я просто «инвертирую» цвета, приводя меня к выходу, который я хочу.
Пример кода:
В этом коде я пытаюсь заменить цвет «черный» каждое изображение для Skyblue Pixel.
WebRequests wr = new WebRequests(); // My class to handle WebRequests
Bitmap bmp;
string url = "http://www.fazenda.rj.gov.br/projetoCPS/codigoImagem";
bmp = wr.GetBitmap (url);
for (int i = 1; i < bmp.Height ; i++)
{
for (int j = 1 ; j < bmp.Width ; j++)
{
if (bmp.GetPixel(j,i).Equals(Color.Black))
{
bmp.SetPixel(j,i, Color.SkyBlue);
}
}
}
Этот код не работает вообще, я не знаю, почему, но ни один пиксель не становится заменен в этом примере.
Вопрос:
Как я могу сделать эту работу? Что мне здесь не хватает?
Кроме того, идеальным сценарием для меня было бы «уменьшить» цветовой палитру этого изображения до «основных» цветов, что значительно облегчило бы мою работу здесь.
Я уже пробовал AForge Framework, который я использую для уменьшения цветов, но он вообще не работает, результат не тот, который я ожидал.
Что я могу сделать здесь, чтобы правильно преобразовать это изображение?
Спасибо заранее,
Марчелло Линс.
капча Я вижу, содержит желтый «Q» и «C» и черный «Q», но и белый «W» и белый «C», что ваш подход исчезнет до черного. – LSerni
Они не исчезнут, так как фон серый, никогда черный. Я хотел бы, чтобы все персонажи имели один и тот же цвет, и поскольку цвета символов могут быть только «белыми, желтыми и черными», я получаю все черные символы, а каждый другой цвет будет рассматриваться как задний план. –