Предполагаю, вы говорите о чем-то вроде Roger Alsing's program.
Я реализовал версию этого, поэтому меня также интересуют альтернативные функции фитнеса, хотя я прихожу к нему с точки зрения улучшения производительности, а не эстетики. Я ожидаю, что всегда будет какой-то элемент «затухания» из-за характера эволюционного процесса (хотя настройка эволюционных операторов может повлиять на то, как это выглядит).
Сравнение по пикселям может быть дорогостоящим для любых, кроме небольших изображений. Например, используемое изображение размером 200x200 пикселей имеет 40 000 пикселей. С тремя значениями на пиксель (R, G и B) это 120 000 значений, которые необходимо включить в расчет пригодности для одного изображения. В моей реализации я масштабирую изображение перед выполнением сравнения, чтобы было меньше пикселей. Компромисс - это слегка уменьшенная точность развитого изображения.
При исследовании альтернативных функций фитнеса я столкнулся с некоторыми предложениями использовать YUV colour space вместо RGB, так как это более тесно связано с человеческим восприятием.
Еще одна идея, которую я имел, заключалась в том, чтобы сравнить только случайно выбранный образец пикселей. Я не уверен, как хорошо это будет работать, не пытаясь это сделать. Поскольку сравниваемые пиксели будут отличаться для каждой оценки, это будет иметь эффект сохранения разнообразия внутри населения.
Помимо этого, вы находитесь в сферах компьютерного зрения. Я ожидаю, что эти методы, основанные на извлечении признаков, будут более дорогими для каждого изображения, но они могут быть более быстрыми в целом, если они приводят к тому, что для достижения приемлемого результата требуется меньшее количество поколений. Возможно, вам захочется исследовать библиотеку PerceptualDiff. Кроме того, в this page показан код Java, который может использоваться для сравнения изображений для сходства на основе функций, а не пикселей.
Когда вы говорите генетический алгоритм, который «генерирует изображение, соответствующее образцу образца», что вы имеете в виду? Вы имеете в виду алгоритм, который всегда генерирует то же изображение, на котором он был обучен? Если да, то есть ли такое сжатие? (В противном случае в чем смысл?) –
Да, вы снабжаете «целевое» изображение, и оно оценивает каждого человека на близость к изображению. Дело в том, что это демонстрация - она не предназначена для обеспечения сжатия или какой-либо другой конкретной цели. –
Извините, я до сих пор не понимаю - какие здесь люди? Другие, изначально шумные изображения? Или отдельные пиксели в одном изображении? –