Зачем?Увидев, что в VideoSubFinder 5.0 нет заметных улучшений в распознавании субтитров (по крайней мере в автоматическом режиме при стандартных настройках), а распознавать RGBImages, обработанные в стороннем редакторе, надоело, начал искать альтернативу, итак, встречайте
YoloCR.
В связи с тем, что информацию в рунете о данной разработке не удалось найти вообще, то выкладываю то, с чем разобрался сам.
Особенности программыВысокая скорость работы.
Значительно более точное выделение субтитров из видео.
Автоматическое распознавание субтитров с помощью Tesseract.
Подготовил сравнение на примере на основе 1 серии 2 сезона аниме Пламенная бригада пожарных, скаченной с Ваканима.
Использовались настройки, заданные разработчиком, во всех случаях.
Установка Настройка1. Открываем в VapourSynthEditor файл YoloResize.vpy, смотрим на 4 параметра
FichierSource – местонахождение файла
DimensionCropbox – местонахождение области, в которой будут искаться субтитры, числа должны быть чётными, и не превышать размер видео.
HauteurCropBox – расстояние от нижней границы области до низа видео
Supersampling – размер суперсемплинга, установите «-1» для автоматического расчёта или оставьте по умолчанию
Нажмите на f5, убедитесь, что субтитры помещаются в белый прямоугольник полностью
2. Открываем в VapourSynthEditor файл YoloSeuil.vpy указываем у 4 первых 4 параметров такие значения как и в предыдущем файле.
Следующие параметры
ModeS и
Seuil помогут задать оптимальные параметры для обработки субтитров, не разбирался детально, оставил по умолчанию.
Нажмите на f5, посмотрите на результат.
3. Открываем в VapourSynthEditor файл YoloCR.vpy, указываем значения параметров, как и в первом файле.
HauteurCropBoxAlt местонахождение второй области для поиска субтитров, по умолчанию отключено, при активации время обработки увеличится в два раза.
SeuilI уменьшение этого параметра увеличивает четкость букв.
SeuilO нужно увеличить, если некоторые буквы оказываются стёрты.
SeuilSCD Слишком низкий порог увеличивает количество ложных срабатываний, слишком высокий не все субтитры обнаружит.
Нажмите на f5, посмотрите на результат.
Изменение размера видео и распознаваниеЗайдете в каталог с распакованным скриптом, допустим, у вас хранится по адресу "d:\YoloCR-master" и в этом же каталоге находится видео, значит команда будет выглядеть следующим образом
Ubuntu
Cygwin
Запускаем изменение размера видео
Код: выделить все vspipe -y YoloCR.vpy - | ffmpeg -i - -c:v mpeg4 -qscale:v 3 -y nameOftheVideoOutput.mp4 |
Запускаем распознавание
Относительно WSL распознавание хуже, подозреваю, что мог не тот пакет скачать, разбираюсь.
Если у вас установлен FineReader будет предложено использовать для распознавания его (не проверял).
ПрочееВидео
работы.
Скрипт установки предназначен для Ubuntu 20.04, тестировал на виртуалке - всё ок.