Как восстановить шахматную партию из видео или стрима и сохранить в PGN
На видео сохранилась шахматная партия, но списка ходов нет. Восстановить ее в PGN можно, если последовательно сравнивать позиции, проверять каждый переход на доске и отдельно отмечать то, чего запись не показывает. Разбираем порядок работы с кадрами, ошибки распознавания и проверку результата.
Сначала проверьте, нет ли готовой записи
Прежде чем разбирать видео покадрово, посмотрите описание трансляции, страницу турнира, архив партий и список ходов рядом с видеоплеером. Иногда видео записывают отдельно, а PGN публикуют позже. Если удалось найти файл, сверьте игроков, дату и несколько характерных позиций: одинаковые имена или дебют еще не доказывают, что это та же партия.
Различайте настоящую турнирную доску и доску комментатора. Во время эфира комментатор может показывать возможный вариант, возвращаться на несколько ходов назад или переключаться между партиями. Такой фрагмент нельзя автоматически добавлять в реальную запись.
Подготовьте рабочую доску и журнал кадров
Понадобятся видеозапись с возможностью паузы и покадрового просмотра, редактор шахматной доски с проверкой допустимых ходов и место для заметок. Подойдет, например, доска анализа Lichess; конкретный сервис не принципиален. Оригинальную запись не изменяйте: если приходится обрезать ролик или увеличивать кадры, работайте с копией.
Перед началом установите, какая сторона играет белыми, как повернута или отражена доска и откуда начинается запись. Если доска развернута черными к зрителю, нельзя переносить координаты так, будто белые находятся внизу. Найдите устойчивый кадр без рук над фигурами и помех. Номера ходов, часы, подсветка последнего хода и голос комментатора могут помогать, но служат дополнительными признаками, а не безусловным доказательством.
Для каждого изменения полезно фиксировать четыре вещи:
- Время в видео — например, 02:14, чтобы сразу вернуться к спорному месту.
- Позицию — что достоверно видно на всех нужных полях.
- Предполагаемый переход — какой ход мог привести к следующему кадру.
- Статус — подтверждено, неоднозначно или не установлено.
Не начинайте с ввода десятков ходов по памяти. Короткий журнал позволяет обнаружить первую ошибку, а не исправлять уже искаженную партию в конце.
Восстанавливайте последовательность по одному переходу
- Закрепите исходную позицию. Если видна стандартная расстановка перед первым ходом, создайте обычную новую партию. Если запись начинается в миттельшпиле, сначала выясните, известна ли вся необходимая информация для корректной начальной позиции.
- Найдите следующий устойчивый кадр. Не сравнивайте положение фигур в середине движения руки с законченным ходом. На видеотрансляции отображение может отставать от реальной доски.
- Сравните две позиции целиком. Отметьте переместившуюся фигуру и освобожденное поле, проверьте, не исчезла ли взятая фигура. При рокировке меняются поля короля и ладьи; при взятии на проходе снимается пешка не с поля назначения.
- Проверьте ход на электронной доске. Он должен быть законным из последней подтвержденной позиции и давать ровно ту расстановку фигур, которая видна на новом кадре. Если не совпадает хотя бы одно поле, вернитесь к первому расхождению.
- Запишите ход в SAN и продолжайте. В этой нотации используются K, Q, R, B, N для фигур, без буквы для пешки, O-O и O-O-O для рокировки. Большинство редакторов формируют SAN автоматически.
- Проверяйте цепочку после каждого участка. Сравнивайте позицию в редакторе с очередным опорным кадром. Законность всех ходов необходима, но сама по себе не доказывает, что именно эти ходы были сыграны.
Учебный пример: от кадров к PGN
Предположим, на условной записи последовательно и отчетливо видны шесть законченных изменений: белая пешка идет с e2 на e4; черная — с e7 на e5; белый конь — с g1 на f3; черный конь — с b8 на c6; белый слон — с f1 на b5; черная пешка — с a7 на a6. Все промежуточные позиции различимы, пропущенных ходов между ними нет.
Тогда проверенная последовательность в SAN выглядит так: 1. e4 e5 2. Nf3 Nc6 3. Bb5 a6. Пройдите ее в ридере и сравните изменения полей после каждого полухода. Это специально составленный учебный фрагмент, а не запись конкретного турнира; окончательный результат партии неизвестен.
[Event "Training example from video"] [Site "?"] [Date "????.??.??"] [Round "?"] [White "?"] [Black "?"] [Result "*"] 1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 *
Здесь переходы однозначны только потому, что мы видим каждый отдельный ход. Если бы запись показывала лишь исходную позицию и положение фигур после шестого полухода, совпадение конечной позиции с введенной линией еще не доказывало бы фактический порядок ходов.
Что делать, если кадры пропущены или ход неясен
Между двумя кадрами прошло несколько ходов
Просмотрите промежуток с меньшим шагом, проверьте другой ракурс, список ходов на экране или доступный архив партии. Если несколько разных последовательностей законных ходов приводят к показанной позиции, выберите не «самую логичную», а статус не установлено. Движок способен подсказать варианты, но его лучшая линия не является свидетельством того, что игроки сделали именно эти ходы.
Видно не все поле или фигуры закрыты рукой
Сравните кадр до движения, первый кадр после завершения хода и следующий чистый вид доски. Не полагайтесь только на подсветку: она может относиться к варианту комментатора или обновляться с задержкой. При низком разрешении отдельно перепроверьте похожие силуэты фигур и исчезнувшую при взятии фигуру.
Особые ходы и скрытые права
Рокировку важно отличить от двух отдельных перестановок при показе ускоренной записи. При взятии на проходе сверяйте не только новое поле пешки, но и предыдущий ход соперника. Превращение требует установить, какая фигура появилась на последней горизонтали. Если на кадре видна лишь расстановка фигур, нельзя автоматически восстановить все права рокировки, возможность взятия на проходе и счетчики FEN: они зависят также от предшествующей истории.
Для ориентира можно прочитать материал о переносе отдельной позиции с изображения в FEN. Он решает более узкую задачу и не подменяет восстановление всей партии.
Если видео начинается с середины партии
PGN может содержать фрагмент, начинающийся не с обычной стартовой расстановки: для этого используются теги SetUp и FEN. Но FEN должен корректно описывать не только фигуры, а также очередь хода, права рокировки, поле взятия на проходе и счетчики. Один случайный кадр не всегда дает такую информацию.
Если исходная позиция фрагмента установлена полностью, начните отдельную запись из нее и добавьте только действительно восстановленные ходы. Если сведения неполны, сохраните время видео, изображение позиции и достоверную часть заметок отдельно. Не вставляйте в PGN выдуманные ходы или произвольные заглушки, чтобы соединить два разорванных фрагмента. После первого неподтвержденного перехода последующая линия уже не является непрерывно восстановленной партией без нового надежного основания.
Как проверить и сохранить результат
- Пройдите PGN с первого подтвержденного положения. После каждого хода позиция должна соответствовать видеокадру, на который вы опирались.
- Проверьте запись шахматных ходов. Ошибки в обозначении фигуры, взятия, шаха или рокировки могут сделать PGN непригодным для импорта. Не переписывайте SAN вручную, если редактор создает ее корректно.
- Заполните только известные данные. Событие, дата, тур, белые, черные и результат могут храниться в заголовках PGN. Для неизвестных сведений используйте предусмотренные форматом обозначения, а не вымышленные значения. Знак
*означает, что результат не указан или партия не завершена в данной записи; он не подтверждает ничью. - Экспортируйте файл .pgn и откройте его повторно в независимом просмотрщике или другом редакторе. Убедитесь, что последовательность, метаданные и итоговая доска сохранились. Сам факт успешного импорта еще не доказывает историческую точность реконструкции.
- Сохраните свидетельства. Оставьте ссылку на исходное видео или локальный оригинал, ключевые таймкоды и перечень неразрешенных участков рядом с рабочей записью.
Если исходником был бумажный бланк, а не видео, порядок проверки отличается: см. восстановление партии по шахматному бланку.
Главный предел реконструкции
«Этот ход законен» и «именно этот ход был сыгран» — разные утверждения. Законность проверяет шахматная программа, а фактический ход подтверждает запись или другое независимое свидетельство. Если видео не позволяет различить несколько возможных историй, честный результат работы — частично восстановленная партия с отмеченным пробелом, а не гладкий, но придуманный PGN.
- Steven J. Edwards, Portable Game Notation Specification and Implementation Guide — структура PGN, стандартные теги, запись ходов SAN, SetUp и FEN.
- FIDE, Laws of Chess, Appendix C «Algebraic Notation» — обозначения фигур и запись ходов.
- python-chess, документация «PGN parsing and writing» — чтение, экспорт, проверка ошибок и заголовков PGN.
- Lichess, Board Editor и справочные материалы по импорту PGN — пример доступных инструментов для ручной проверки позиции и файла.