Предотвращение генерации изображений, похожих на свастику, при создании идентификаторов
Я использую этот PHP script для создания идентификаторов. Он использует оригинальный алгоритм идентификатора Don Park.
script отлично работает, и я адаптировал его к своему собственному приложению для создания идентификаторов. Проблема в том, что иногда появляются свастики. Хотя свастики имеют мирное происхождение, люди обижаются, видя эти символы.
Что я хотел бы сделать, так это изменить алгоритм так, чтобы свастики никогда не генерировались. Я немного поработал и нашел этот поток на веб-сайте Microsoft, где работник заявляет, что добавил настройки для предотвращения генерации свастики, но не более того.
Кто-нибудь определил, что такое настройка и как предотвратить свастику?
Ответы
Ответ 1
Идентиконы кажутся мне (на быстрый взгляд) всегда иметь четырехкратную вращательную симметрию. Свастики, конечно, делают. Как насчет того, чтобы повторить четверть-блок по-другому? Если вы возьмете четверть блока, который произведет свастику в текущем шаблоне и отразит два по диагонали противоположных квартала, тогда вы получите своего рода космический захватчик.
В принципе, ничто с зеркальной симметрией не может выглядеть как свастика. Я полагаю, если в квартале есть небольшая свастика, то у вас все еще есть проблема.
Ответ 2
В Джефф Этвуд, вводящий поток, Дон Парк предложил:
Re Swastika комментирует, что можно решить, применяя специализированный визуальный анализ, подобный OCR, для идентификации всех кодов нарушения, а затем хруст их в эффективный фильтр цветения с использованием генетического алгоритма. Когда фильтр возвращает true, может использоваться второй тип идентификатора (например, 4-блочное одеяло).
В качестве альтернативы вы можете полностью исключить эту проблему, заменив идентификаторы единорогами.
Ответ 3
Мое первоначальное предложение, связанное с визуальным анализом, было в контексте конкретного используемого алгоритма, а именно 9-блочного одеяла.
Если вы хотите попробовать другой алгоритм без проблемы с Swastika, попробуйте ввести симметрию, подобную той, что была замечена в чернильных блоках, к популярным идентификаторам лоскута с 16 блоками.