pp/.claude/memory/project_overview.md
Egor Isaev 95cc51238d dev
2026-06-17 16:54:47 +03:00

2.4 KiB
Raw Permalink Blame History

name description metadata
project-overview Общий обзор проекта — покер-анализатор для GGPoker через вебкамеру
type
project

Проект — покер-анализатор: вебкамера снимает монитор с GGPoker, Python распознаёт карты и считает equity.

Файлы:

  • main.py — просмотр webcam (чистое окно WINDOW_GUI_NORMAL, закрытие крестиком/ESC)
  • analyzer.py — основной анализатор: 2 окна (Webcam с рамками зон + Info с текстом)
  • calibrate.py — ручная калибровка зон мышью (перетаскивать рамки, S=сохранить)
  • calibration.json — координаты зон 1920×1080: board_card_1-5, hero_card_1-2, player_0-7
  • settings.json — только resolution_idx=2 (камера на автоматике, без ручных настроек)
  • templates/ — rank_2..rank_A.png (13), suit_c/d/h/s.png (4), 2c..As.png (52 full-card)
  • files/ — clubs/diamants/hards/spades.png (GGPoker стиль), D.png (дилер), numbers_ranks.png
  • virtualbox/ — заглушка модуля для dickreuter_poker
  • tmp/ — временные файлы (чистить после работы)

Распознавание карт:

  • Ранг: OCR через Tesseract на большой цифре в нижней части зоны
  • Масть: shape-matching по шаблонам suit_*.png из numbers_ranks.png, fallback на HSV цвет
  • Шаблоны создаются venv python (system python пишет файлы недоступные venv!)
  • Всегда создавать шаблоны через: /home/isaevea/python/pp/.venv/bin/python

Статус (2026-06-17):

  • Борд карты: распознаются хорошо (K♥ Q♦ 9♥ J♣ и т.д.)
  • Hero карты: распознаются если видны (10♦ 9♦)
  • Дилерская кнопка: template matching через D.png
  • Monte Carlo equity: работает через dickreuter montecarlo_numpy2

Why: Пользователь анализирует покерные видео/игры в реальном времени.

How to apply: tmp/ для всех временных файлов; шаблоны создавать через venv python.