Виртуальное поколение Syntheti c Древний и Грязный английский sh Документы - PullRequest
2 голосов
/ 22 января 2020

У меня есть коллекция грязного фонового изображения, ниже приведен пример:

enter image description here

У меня также есть коллекция фактического изображения грязного документ с текстом на нем, как показано ниже:

enter image description here

Моя проблема с моим фактическим изображением грязных документов с текстом заключается в том, что текст не написан на английском языке sh и написаны от руки. Итак, моя задача - создать старые документы с напечатанным текстом Engli sh. Все, что мне нужно сделать, это наложить любой текст Engli sh на пустой грязный документ.

После наложения моя задача - найти меру, которая показывает, что синтетически сгенерированный грязный документ с текстом Engli sh почти то же самое с моей коллекцией оригинальных грязных документов с не-Engli sh текстом. Может быть, я могу сравнить их гистограммы и вообще, чтобы найти их общность. Помоги мне найти эту меру. Цель нахождения этой меры состоит в том, чтобы гарантировать, что синтетически сгенерированные документы имеют то же качество, что и исходные, в пределах определенного диапазона c.

Я буду использовать синтетически сгенерированные документы в качестве данных для моего исследования и мне нужно убедиться, что данные, которые я буду использовать, будут такими же хорошими, как и исходные.

Ответы [ 2 ]

3 голосов
/ 23 января 2020

Не уверен, что ваш вопрос касается генерации документов или их анализа, но я немного поиграл с генерацией документов и подумал, что я мог бы также поделиться тем, что я сделал - и для развлечения, и для собственного ознакомления.

Я использовал ImageMagick в командной строке. Он включен в большинство Linux дистрибутивов и доступен для macOS и Windows.

Я сделал еще один, несколько связанный с этим ответ о синтетическом c старении фотографий здесь . Вдоль этих строк:

enter image description here

Итак, я взял "Olde Engli sh" шрифт здесь и установил его для ImageMagick , чтобы использовать, как показано здесь .

Я взял несколько бессмысленных текстов Engli sh из Ницше Ипсум потому что "Lorem Ipsum" на латыни. Симулируя интеллект, я сохранил это в файле под названием wisdom.txt:

Получать хорошее, нецелесообразное извлечение идеального общества. Горы погребения, предубеждения, предвзятость, бесконечная трансформация противоречат бесконечному злу, правому. Хоронящая трансформация selfi sh страсть преодолевает самоубийство противоречит духу безумия сильному просветлению самоубийства. Ubermensch страшный правый бог сексуальность безумие истина против превосходства спасения.

вершина верных аскет c чудо общество зла будет в конечном итоге играть христианство благородный дух благо. Захоронение верной войны наносит ущерб справедливости. Мораль нравственного просвещения обретает Заратустру превосходство радости войны. Христианство ценит разум сильного идеала. Обманы справедливости бога самоубийственной битвы. Христианство решает, абстрактное общество, переоценка порождает предельную радость.

Право морали Величие, ценность, решимость Переоценка христианства бесконечно черпает бесконечную мораль. Ненависть к хитрости самоубийства, ловушка вершины преодолевает идеал самоубийства общества. Трансформация христианской вершины высшей веры войны благородна сильна, поскольку наносит ущерб абстрактной морали. Предубеждение аскетов c обретает ужас сильного добра против намерений ловушек.

Обман морального безумия освобождает нецелесообразных святейших убеждений морали. Благочестивый отвлеченный моральный обман христиан преодолевает сексуальную надежду, ужас нецелесообразен Против духа.

Затем я сохранил ваш «грязный документ» как papyrus.jpg и запустил следующую команду ImageMagick в Терминале:

magick papyrus.jpg -size 360x600 -background none -font OldeEnglish -pointsize 20 -fill '#555' caption:@wisdom.txt -gravity center -compose multiply -composite result.png

И вот результат:

enter image description here

В основном я генерирую текст темно-серого цвета (-fill '#555') в области немного меньше, чем бумага (-size 360x600) на прозрачном фоне (-background none), а затем центрируйте ее (-gravity center) и наложите (-compose multiply -composite) на фон.

Вы могли бы сделать другие вещи , например:

  • искажение текста с шумом перед наложением текста на фон
  • установка его в разброс по двум колонкам с использованием искажения Pan go
  • она имеет слегка волнистую форму

, но основная идея c уже здесь, и любой, у кого есть время, может развить ее дальше.

Ключевые слова : изображение обработка, древний текст, рукопись, olde Engli sh, папирус, Lorem Ipsum, дистресс, средневековый, документ, в возрасте, syntheti c ag Eing.

2 голосов
/ 01 февраля 2020

Я думаю, альфа-смешение - это хороший способ наложения текста на фон. С помощью создателя Ipsum, о котором упоминал Марк Сетчелл, я сделал изображение сценария и смешал его с фоном. Для лучшей реализации я изменяю размер фонового изображения до размера изображения скрипта. Я прочитал изображение сценария, перевернул его и использую это изображение, чтобы замаскировать неперекрывающиеся части фона. Затем умножьте наложенные части на коэффициент альфа и добавьте к другому изображению. Ниже приведен результат синтеза:

enter image description here

enter image description here

enter image description here enter image description here

А вот код opencv c ++:

Mat sc = imread("script.jpg", 1);
Mat bg = imread("BG.jpg", 1);

resize(bg, bg, sc.size());

sc.convertTo(sc, CV_32F);
bg.convertTo(bg, CV_32F);

sc /= 255.0;
bg /= 255.0;

imshow("0", sc);

Mat sc_r;
subtract(1, sc, sc_r);


Mat bgsc;
multiply(bg, sc, bgsc);

imshow("1", bgsc);

Mat bgsc_r;
multiply(bg, sc_r, bgsc_r);

float alpha = 0.3;

multiply(bgsc_r, alpha, bgsc_r);

imshow("2", bgsc_r);
Mat fin;
add(bgsc, bgsc_r, fin);

imshow("3", fin);   waitKey(0);
...