Краска на стенах в моей комнате имеет случайную, почти фрактальную, трехмерную текстуру:
В этом задании вы напишите программу, которая генерирует случайные изображения, которые выглядят так, как будто они могут быть частью моих стен.
Ниже я собрал 10 изображений различных пятен на моих стенах. Все они имеют примерно одинаковое освещение, и все они были сняты камерой на расстоянии одного фута от стены. Границы были равномерно обрезаны, чтобы сделать их 2048 на 2048 пикселей, затем они были масштабированы до 512 на 512. Изображение выше - это изображение А.
Это только миниатюры, кликните по картинке для просмотра в полном размере!
Ваша задача - написать программу, которая в качестве случайного начального числа принимает положительное целое число от 1 до 2 16 и для каждого значения генерирует отдельное изображение, которое выглядит так, как будто это было «одиннадцатое изображение» моей стены. Если кто-то, смотрящий на мои 10 и несколько ваших изображений, не может определить, какие из них были сгенерированы компьютером, значит, вы справились очень хорошо!
Пожалуйста, покажите несколько сгенерированных изображений, чтобы зрители могли увидеть их без необходимости запуска кода.
Я понимаю, что освещение в моих изображениях не идеально равномерно по интенсивности или цвету. Я прошу прощения за это, но это лучшее, что я мог бы сделать без лучшего осветительного оборудования. Ваши изображения не должны иметь переменное освещение (хотя они могут). Текстура является более важной вещью, на которой нужно сосредоточиться.
подробности
- Вы можете использовать инструменты обработки изображений и библиотеки.
- Используйте входные данные любым удобным для вас способом (командная строка, стандартный ввод, очевидная переменная и т. Д.).
- Выходное изображение может быть в любом обычном формате файла изображения без потерь, или оно может быть просто отображено в окне / Bowser.
- Вы можете программно анализировать мои 10 изображений, но не предполагайте, что каждый, кто запускает ваш код, имеет к ним доступ.
- Вы должны генерировать изображения программно. Вы не можете жестко запрограммировать небольшой вариант одного из моих изображений или другого изображения. (Люди все равно проголосуют за тебя.)
- Вы можете использовать встроенные генераторы псевдослучайных чисел и предполагать, что период равен 2 16 или более.
счет
Это конкурс популярности, поэтому победитель получает голос с наибольшим количеством голосов.