Millora el teu escacs amb ChessPDFBrowser

Podràs extreure les partides d'escacs dels teus llibres en PDF y navegar per les seves variants.

Característiques Descàrrega

sobre ... ChessPDFBrowser

Aplicació d'escriptori que permet obrir llibres d'escacs en pdf.
Programada en gran part durant el temps del Covid-19

Extractor de partides

Podràs extreure les partides dels pdfs

Motors tipus UCI

Anàlisi de posicions connectant a
motors de tipus UCI

Multi plataforma

Programat en Java swing

característiques

Aplicació d'escacs multi plataforma

  • Multi plataforma

    Programat en Java Swing

  • Multi idioma

    Interfície d'usuari en castellà, català i anglès

  • Multi resolució

    Pots ampliar o disminuir el zoom global de l'aplicació

  • Partides

    Podràs extreure les partides del pdf

  • Motors tipus UCI

    Anàlisi amb motors de tipus UCI

  • PGN

    Podràs guardar les partides en format PGN

Pantalla principal

Podràs obrir arxius en pgn i navegar i editar les seves variants.

Navegar per PDFs

Podràs obrir i navegar pels teus llibres d'escacs en PDF.

Extracció de partides

Es poden extreure les partides del PDF, navegar pels seus moviments i guardar-les en pgn.

Anàlisi de posicions

Analitza posicions connectant amb motors tipus UCI.

Edició de comentaris

Edita els comentaris de les partides, o afegeix comentaris nous.

Edició de tags

Edita els tags de la partida (noms dels jugadors, ELOs, lloc, event, ...).

Posició inicial

Edita la posició inicial de les partides que ho necessitin.

Partides amb temps

Juga partides amb temps amb un motor o contra un amic, o posa a dos motors a jugar entre ells.

Extracció de Partides en notació algebraica de figures

Podràs entrenar el detector de figures per a extreure partides en notació algebraica de figures

testimonial

Sensacions des del punt de vista del programador.

captures de pantalla

Mostra de les pantalles de l'aplicació

estadístiques

Alguns números sobre l'aplicació.

5K
Descàrregues
250K
Línies de codi
255
cafès

Preu de l'aplicació

L'aplicació és gratuita y de codi obert.

il.limitada

0€ (gratis)

  • Navegació per pdfs
  • Extracció de partides
  • Anàlisi
  • Suport via e-mail

Veure video

Video d'exemple

Coneix al programador

Un únic programador facilita les coses.

Descàrrega

Podràs descarregar l'aplicació des de diferents pàgines de codi obert.

faq

Secció de preguntes y respostes.

ChessPDFBrowser és una aplicació d'escacs que permet treballar amb arxius pgn.
Com a funcionalitat distitiva, també permet obrir llibres en pdf i extreure les seves partides.
També inclou altres funcionalitats:
  • Editar i guardar les partides carregades o extretes:
    • Les variants de les partides carregades o extretes
    • Els comentaris i els NAGs (valoració) dels moviments
    • Els tags de les partides
    • La posició inicial, per a partides que no comencin amb la posició inicial estàndar
  • Ocr per a obtenir la cadena FEN d'una imatge amb una posició
  • Conexió amb motors de tipus UCI.
    • Anàlisi de posicions
    • Anàlisi de partides complertes
    • Jugar partides amb temps contra motors
    • Fer jugar a dos motors entre ells
Dades que s'extreuen:
  • S'intenten extreure els TAGs de la partida (noms dels jugadors, ELOs, lloc, event, ...)
  • Si la partida no comença per la posició inicial estàndar, s'intenta detectar aquesta posició inicial amb l'ocr a partir de la imatge associada, i si la detecció fou exitosa, s'assigna aquesta posició d'inici a la partida
  • S'extreuen les variants de les partides (fixant-se en els parèntesi, corxets i claus per a detectar les subvariants)
Les partides dels llibres han d'estar en notació algebràica o en notació algebraica de figures. Es poden seleccionar diferents idiomes per a aquesta notació, i si no trobes un idioma, pots definir tú mateix les lletres per a designar cada tipus de peça.
Si, al directori base de l'aplicació, hi ha un subdirectori _scripts.
Allà hi ha scripts d'exemple per a invocar l'aplicació d'interfície de comandes (pdf2pgn)
Sí, amb la versió v1.26 està previst extreure partides en notació algebraica de figures.
Primer hauràs d'entrenar l'identificador de figures, però és un procés relativament ràpid.
Com a nota, dir que és molt possible que la qualitat de el resultat de l'extracció de partides en aquesta notació no sigui molt bo
  • Degut principalment a que la qualitat del text d'aquest tipus de Pdfs no és perfecta (de vegades hi espais entre mig de paraules, o es canvien uns caracters per uns altres)
  • I també degut a que quan les partides no tenen parèntesi o claudàtors per a delimitar les subvariants, l'extracció correcta de l'arbre de variants es fa més difícil
Hi ha una complexa configuració basada en expressions regulars.
S'ha creat una configuració bàsica basada en alguns formats de TAGs que repeteixen als llibres, configuració que pot servir en cas de que el format que segueixen els TAGs dels teus llibres estigui inclós.
Si no hi ha un format adequat configurat per a extreure aquests TAGs dels teus llibres, sempre es pot afegir el nou format a la configuració (si et poses en contacte amb mi, jo mateix estic disposat a afegir aquest nou format a la configuració bàsica per a properes versions de l'aplicació)
També pots tractar de configurar tu mateix el nou format (Està explicat com fer-ho al manual d'usuari)
L'Ocr funciona en base al tipus de taulell.
El tipus de taulell s'obté d'alguns paràmetres de les imatges:
  • mida de les caselles de la imatge
  • color de les caselles blanques
  • color de les caselles negres
Per a obtenir el tipus de taulell, primer s'ha d'obtenir reixeta del taulell (els vèrtex de les caselles que formen el taulell)
Un cop obtinguda aquesta reixeta, es pot calcular el tipus de taulell, en base als paràmetres anteriors.
Per a cada tipus de taulell, hi ha una llista d'examples d'imatges per a cada tipus de peça i cada tipus de casella.
Aquesta llista de patrons, s'obté amb l'entrenament de l'OCR amb parells (Cadena FEN, imatge).
Per a cada casella del taulell de la imatge a reconèixer, es calcula la característica HOG (histogram of oriented gradients), i s'escull el codi de peça de la que la seva imatge retorna una distància menor (distància chi quadrat), sempre que estigui dins d'un umbral.
Si fou èxit per a totes les caselles, podem obtenir la cadena FEN de la posició
Si no, podem demanar a l'usuari que "entreni" a l'OCR, obrint una finestra amb un taulell on l'usuari pot identificar les peces no reconegudes
L'Ocr s'entrena amb parells de (Cadena FEN, Imatge).
Aquestes parelles poden aparèixer de:
  • autoentrenament que fa l'aplicació quan s'extreuen les partides d'un pdf (amb les imatges detectades amb posicions conegudes, a partir de la variant extreta fins al punt de la imatge en partides que hagin començat des de la posició inicial)
  • quan la detecció de la FEN d'una imatge solicitada per l'usuari falla, si la reixeta del taulell es va poder detectar, l'aplicació dóna a l'usuari l'opció d'entrenar a l'OCR, mitjançant la configuració de la posició en una finestra amb taulell.
L'aplicació manté un registre dels motors UCI configurats.
Per a configurar un de nou, tindràs que:
  • descarregar-lo (Per exemple, en aquesta URL podràs trobar alguns d'ells. )
  • descomprimir-lo al teu disc dur
  • Obrir la finestra de configuració de l'aplicació
  • Seleccionar el panell de motors
  • Polsar el botó de nou motor (+)
  • Assignar el binari del motor (obrint el JFileChooser a la nova finestra (botó: (...)), i seleccionant un arxiu de tipus .exe a la ubicació on hagis descomprimit el motor)
  • Podràs modificar la configuració del motor
Si, pots fer-ho així:
  • obrir la finestra d'anàlisi
  • crear un nou panell de motor (botó (+))
  • seleccionar un motor ja configurat
Si, només tens que:
  • obrir la finestra d'anàlisi de la partida (al menú Partida)
  • configurar els detalls de l'anàlisi a la finestra que apareix
  • després de l'anàlisi, es copiarà la partida seleccionada, amb la variant principal ja analitzada
Si, es pot jugar contra un motor.
  • Només fa falta començar una nova partida (Menú partida -> Nova partida).
  • Posar-te a tu mateix com a jugador.
  • Seleccionar com a contrincant un motor configurat

Suggeriment: Alguns motors poden configurar-se per a que juguin amb un ELO o nivell inferior al seu màxim.
Pot ser una bona idea fer servir l'opció de configuració de motors que té l'aplicació, si el motor juga "massa" bé
Sí, pots obrir-lo des de la propia aplicació, o també a aquest enllaç.

Contacta amb el programador

Ja sigui per a saludar, parlar de l'aplicació
o informar d'errors.