Так и смог найти чем переделать цветную картинку в ч-б с хорошей проработкой тонов... Может плохо искал? Но всё равно - будет 24-битный бмп, довольно обьёмистый, а ведь в нём будет всего 255 полутонов... Появилась идея сделать конвертор цветных картинок в ч-б - и сделать файл нового типа - с 255 градацией тона - он будет 255 битный конечно... Но тут возникает проблема - есть например изображения флага: красный - зелёный - синий. Т.е цвета : 0FF0000h, 000FF00h, 00000FFh. Если по дебильному усреднить цвета - получим поле серого... флага не будет, хотя цвета имеют разную "яркость". На черно-белой плёнке всё ОК. У кого-нить есть мысли на эту тему? умные, желательно...
Не усреднять, а делать так: яркость=0.299*красный+0.587*зелёный+0.114*синий (если не ошибся с коэффициентами). Эта операция учитывает спектральную чувствительность глаза или плёнки.
Да, зелёный кажется самым ярким... Т.е - сначала нужно просканировать всю картинку и найти самый яркий зелёный, посмотреть насколько он ярче самого белого, сравнить его с чисто зелёным (0.587*255) и от этого уже плясать ... непростой получается алгоритм...
masm32 Нет, просто применять эту формулу для каждого пиксела. Тут вроде по форуму пробегало это уже, когда просили для mmx ускорить подробную операцию или погугли convert to grayscale