Расчет контраста для канала изображения
Здравствуйте! Нужно рассчитать контраст для заданного канала изображения, полученного со спутника (вообще, для спутников должен поставляться т.н. "Паспортный контраст", но нередко он неизвестен и я пытаюсь посчитать его самостоятельно).
В интернете практически не нашел информации об оценке контраста изображения в целом, а не локального контраста. Из найденного (к, сожалению, ссылки нет под рукой) подошло вот это: СКО * 2 / MaxVal, где СКО - среднеквадратичное отклонение, MaxVal - максимальное значение пиксела на изображении С учетом возможности использования знаковых типов данных, а также возможности неполного использования этих типов, получил примерно вот это: Код:
/// ... Попробовал изобрести велосипед и считать по-своему: Mid-Range от градиентов с 8 соседними пикселами для каждого пиксела, затем считать Mid-Range от полученных значений для каждой строки, и затем считать Mid-Range от полученного столбца. После этого нормировать полученное значение путем деления на (dRealMaxGrad + dRealMinGrad). Результаты, полученные данным способом, лежат ближе к ожидаемым (к примеру, для упомянутого изображения получил 0,25), но не слишком стабильны, и самое главное, у меня нет математического обоснования, почему этот метод правильный. А использовать на основе "ну, вроде получилось" - плохая идея. Кто-нибудь сталкивался с подобной задачей, может быть подскажете гарантированных способов получить контраст для канала? И не менее важный вопрос - у кого-нибудь не завалялось изображений с заранее известным контрастом? |
04:11. |