Об этом сообщается в блоге «Яндекса».
Для распознавания текста используется технология оптического распознавания символов, разработанная в стенах Яндекса.
Система состоит из двух частей — классификатора картинок и модуля распознавания. Точность распознавания зависит от типа изображения, четкости, контрастности фона относительно текста и прочих факторов. Сначала классификатор анализирует все изображения, отбирая те, на которых обнаруживается текст. Когда изображения с текстом отобраны, алгоритм находит на них линии, предположительно содержащие текст, а затем отбираются только те линии текста, в которых алгоритм уверен.
Разработчики «Яндекса» отказались от использования уже имеющихся в Глобальной сети методов и создали свой собственный, который может распознать текст даже на низкокачественных изображениях различного содержания. Для каждого символа определяется несколько наиболее вероятных вариантов распознавания.
Помимо русского языка система также распознает английский, украинский и турецкий. Например, это могут быть буквы «О», «о» и цифра «0», очень похожие друг на друга. Некоторые из них предназначены для частных случаев — например, Photoscore Ultimate распознаёт рукописные музыкальные партитуры. После этого в дело вступает языковая модель — алгоритм принимает решение, какой из символов-кандидатов подходит лучше всего.
Для разных видов изображений она разная. Поэтому для отсканированных документов она достигает показателя в 80%, для скриншотов приближается к 100%, а для фотографий с надписями составляет более скромные 63,2%. Точность распознавания текстов всего потока изображений превышает 70%.
Технология компьютерного зрения также присутствует в «Яндекс.Картинках», где она помогает искать схожие изображения.