Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Как роботом отделить красивые тумбы от некрасивых?
цитата
29/03/10 в 20:12
 San_Tehnik
alex.raven: Так то не девочка, а киборг. 2 тумбы в секунду на протяжении 3 часов и ни на секунду не отвлекаясь - это жесть.
цитата
01/04/10 в 23:19
 Yacc
Алгоритм (C#)

Код:
float h, s;
foreach (String file in Directory.GetFiles(@"c:\images")){
    Bitmap img = (Bitmap)Bitmap.FromFile(file);
    h = s = (float)0.001;
    for (int y = 0; y < img.Height; y += 1){
        for (int x = 0; x < img.Width; x += 1){
            Color c = img.GetPixel(x, y);  // Цвет RGB
            h += c.GetHue();               // Тон 0-360
            s += c.GetSaturation();        // Насыщеность 0-1
        }
    }
    Console.WriteLine(Math.Round(h / s, 2).ToString());
}


Результаты.

"Хорошие"

- 82,74

- 683,83

- 87,36

- 44,52

"Плохие"

- 178,95

- 106,22

- 695,74

- 114,7

Выбивающиеся из общего ряда тумбы очевидно слишком "серые" и в этом смысле - одинаковые.
цитата
01/04/10 в 23:58
 kit
Я не совсем верно описал задачу. Нужно поделить тумбы не на две группы (хорошие и остальные), а расчитать для каждой тумбы коэффицент качества, который чем больше, тем тумба лучше.

Алгоритм должен быть достаточно быстрый, нужно оценить 3М тумбов за неделю-две.
цитата
02/04/10 в 21:03
 Noobus Boobus
Yacc писал:
Алгоритм (C#)

Что-то я корреляции между числами и качеством не осознал. Это так и должно быть?)
цитата
02/04/10 в 21:24
 goodlover
Задача действительно нехилая. Тянет на магистерскую диссертацию.
цитата
02/04/10 в 21:35
 goodlover
Если на уровне идей рассуждать, то алгоритм поиска смаза где-то уже был описан в статьях. Блеклость же определять по гистограмме. Нехилая доработки ротаторов, может душик бы помог в этом деле, т.к. явно в его интересах (первыми пускать в ротацию наиболее перспективные тумбы).
цитата
02/04/10 в 22:18
 Yacc
goodlover писал:
Задача действительно нехилая.

На самом деле там всё просто: быстрое вейвлет-преобразование по схеме лифтинга с последующим квантованием. icon_smile.gif
Только есть одна проблема. Такие критерии относительны и показывают "качество" преобразованной (читай гламуреной) картинки относительно исходной. А так чтобы сразу определить "качество" - это магия - субъективно и не точно.

Noobus Boobus писал:
Что-то я корреляции между числами и качеством не осознал.

Элементарно, Ватсон: < 100 - "хорошая", > 100 - "плохая", >> 100 - необходимо дополнительное исследование. icon_smile.gif
цитата
03/04/10 в 00:27
 pickuper
goodlover писал:
Задача действительно нехилая. Тянет на магистерскую диссертацию.

В магистратуру я не пошел... На бакалавре остановился =)

Kit, скинь хотя бы 1к-10к-100к тумб - я своим алгоритмом их "оценю" и выведу в порядке "качественности". Во всяком случае, будет ясно время, затраченное на анализ тумб, и качеставо самого анализа.
цитата
16/04/10 в 00:29
 Stup
Подниму топик. Решилась задача?
цитата
16/04/10 в 08:58
 pickuper
Задача не решилась в понимании, в котором хотелось бы.

Я рандомно взял 1000 тумб, которые предоставил Kit. Тумбы очень сильно отличались друг от друга. Попадались "текст на мутном фоне" и т.д.
Самый быстрый и, как ни странно, действенный вариант - по размеру.
Анализ по количеству цветов тут не работал, т.к. тумбы не однородные были.
А вариант построения гистограмм с помощью IM, как уровни в фотошопе, с последующим анализом - очень затратный по времени (на Дуал Ксеоне 3 ГГц с обычными САТА2 винтами = 2-3 сек на фото) icon_sad.gif

Вывод такой: на лету оценивать абсолютно разные тумбы - по размеру. Если режешь однородные тумбы (от одной партнерки, платника, фотографа), то можно еще цветность анализировать.
цитата
16/04/10 в 09:18
 Yacc
pickuper писал:
А вариант построения гистограмм с помощью IM, как уровни в фотошопе, с последующим анализом - очень затратный по времени (на Дуал Ксеоне 3 ГГц с обычными САТА2 винтами = 2-3 сек на фото)

Так ты все точки перебирал?
цитата
16/04/10 в 09:34
 pickuper
Нет, я строил гистограммы.

/usr/local/bin/convert IN.JPG -verbose -identify +verbose histogram:OUT.TXT
(/usr/local/bin/convert IN.JPG -verbose -identify +verbose histogram:OUT.GIF - в графическом представлении)

Можно после IN.JPG добавить "-colorspace Gray", но это еще увеличит время анализа.

Далее, когда для тумбы есть ее гисторамма уровней, то можно с ней работать: "правильный" график должен быть с "горбом" посередине.
Стр. « первая   <  1, 2


Эта страница в полной версии