CrocoSign

We teach AI to translate Polish Sign Language (PJM) videos into text.

This is a research prototype, not a replacement for an interpreter.

This is our engineering thesis at PJATK, “Automatic translation from Polish Sign Language to spoken languages”.

„Rybka podnosi się i opluwa kota, a ten ucieka.”

Uni-Sign, transfer from OpenASL

The fish rises and spits water at the cat, and the cat runs away.

An example picked from the test set.

The problem

The Polish Association of the Deaf estimates that about 40-50 thousand people in Poland use PJM. It has its own grammar, and meaning is carried by, among other things, the direction and force of a movement and facial expression.

There are few interpreters. 236 sign language interpreters took part in the 2023 census by STPJM and the University of Warsaw. Regional registers hold 508 entries, but they are not kept up to date, so there are probably far fewer active interpreters. An hour of interpreting costs about 132 PLN on average. In an emergency, such as a visit to the doctor, it is often impossible to book one.

At the start we talked the idea and these problems through with Deaf people. What is needed most is more interpreters, and for that, more people and money. Our work runs alongside that: we test whether machine translation from PJM to text is feasible.

We translate straight from video to text. Many systems first write signs down in an intermediate notation called glosses. No manual gloss annotation exists for PJM, so those methods could not be used directly. Pseudo-glosses could be generated automatically, but we chose a fully gloss-free approach: no extra stage and no noise from automatic annotation errors.

We found no existing PJM-to-text translator and no set of recordings ready for training models. We built the dataset ourselves.

How it works

A frame from the corpus recording: the signer raises a hand to the mouth
left handgraph encoder
right handgraph encoder
bodygraph encoder
facegraph encoder
Uni-Sign, transfer from OpenASL

The fish rises and spits water at the cat, and the cat runs away.

Reference (DeepL translation of the transcript)

The fish rises and spits at the cat, and the cat runs away.

  1. A clip from the corpus

    One sentence in Polish Sign Language from the University of Warsaw PJM corpus. Transcript (Polish):

    „Rybka podnosi się i opluwa kota, a ten ucieka.”

  2. Keypoints

    RTMPose marks points on the hands, face and body in every frame. Uni-Sign gets only these points. SpaMo, the other model family we compared, works on the video itself.

  3. Four groups of points

    Uni-Sign splits the points into four groups and runs each through its own graph encoder. The encoder looks at how the points sit in a frame and how that layout changes over time. Sides are the signer's, so their left hand appears on the right of the image.

  4. An English sentence

    The mT5 language model (580M parameters) turns this into an English sentence. The app then translates it with DeepL into other languages, such as Polish.

  5. Compared with the reference

    Words missing from the other sentence are underlined.

The dataset

The recordings come from the Open Repository of the PJM Corpus (Otwarte Repozytorium Korpusu PJM), run by the Sign Language Linguistics Lab at the Faculty of Polish Studies, University of Warsaw. We downloaded and fixed the transcriptions, cut the recordings into one-sentence clips and worked out who signs in each clip. The corpus is licensed under CC BY-SA 4.0, and so is our dataset. The model weights are under CC BY-NC-SA 4.0, because the models we started from are for non-commercial use only. Our code is under the MIT licence.

Open Repository of the PJM Corpus (University of Warsaw)

video-sentence pairs
29,928
of video, approximately
25 h
Deaf signers
151

This dataset exists thanks to the Deaf people who recorded themselves for the corpus and the University of Warsaw team who collected and shared it.

The reference sentences we compare model output with are in English. We translated the Polish transcriptions with DeepL, so they are machine translations, one per clip.

Dataset on Hugging Face: CrocoSign/pjm-data

Dataset preparation code: crocosign/pjm-data (GitHub)

Compared with other datasets

In hours we are mid-pack, but we have 151 signers, second only to OpenASL. With that many people, a model can be tested on signers it never saw in training.

DatasetLanguageHoursSignersSourceDomain
Phoenix-2014TDGS119televisionweather forecast
CSL-DailyCSL2310studio recordingsdaily life
How2SignASL8011studio recordingsgeneral
OpenASLASL288220internetgeneral
CSL-NewsCSL1,985no datatelevisionnews
PJM (ours)PJM25151studio recordingsgeneral

For PJM the table shows the cleaned part we trained on: 29,928 pairs, about 25 h (28 h before cleaning). Figures for the other datasets come from their publications.

Models and results

We compared three models: SpaMo, our modification of SpaMo (“SpaMo (mod.)” in the tables) and Uni-Sign. We trained each one either from scratch or starting from a model already trained on another sign language. We tested them in two ways: in the MS split the test signers also appear in training, in the SI split the model sees them for the first time.

BLEURT of three architectures, from scratch and with transfer

The test signers also appear in training.

  • SpaMotransfer: PHOENIX
  • SpaMo (mod.)transfer: PHOENIX
  • Uni-Signtransfer: OpenASL

Test BLEURT, MS split. The axis starts at 25, not at zero, so the differences are visible. The models started from different sources: both SpaMo variants from German PHOENIX, Uni-Sign from American OpenASL. So the chart compares whole approaches, not architectures alone. The SpaMo SI scores use a slightly different set of test clips, so the SI comparison is approximate.

The best single models came from Uni-Sign fine-tuned on American Sign Language: OpenASL reaches 42.4 BLEURT on MS and 38.2 on SI, How2Sign 42.0 and 37.8. On BLEU-4 the two are almost identical (8.53 and 8.61 on MS); a second training run of each moved BLEU-4 by 0.14 and swapped their order, so we do not name a single winner. Our modification of SpaMo scored close to the original.

Transfer matters most: on MS, without it every model ends up around 2 BLEU-4, and with it the score rises several times over, to 5-8.6 points. For scale, two Deaf signers fluent in ASL and English (not professional interpreters) reach about 19.8 BLEU on How2Sign, and for a third of the clips they could not make out key details without wider context.

The result depends more on the starting point than on the architecture: the best models went through training on American Sign Language before PJM. Part of that gain may come from that stage also teaching the model to write English. On signers the model did not see in training (the SI split), all models do worse: the best, Uni-Sign, gets 6.09 BLEU-4, and both SpaMo variants about 2. This is the weakest point of these models today.

Models on Hugging Face: CrocoSign/pjm-models

Code

Run the translation yourself

The pjm-models package turns a PJM video file into an English sentence. It downloads the model weights from Hugging Face the first time it runs. The example below uses Uni-Sign; in our test it downloaded about 3.5 GB including dependencies. In our measurements on a 6.6-second recording, Uni-Sign took about 11 s on a CPU and 1.6 s on a graphics card. SpaMo is much heavier: about 110 s on a CPU and 13 s on a card, which needs 24 GB of memory.

git clone https://github.com/crocosign/pjm-models
cd pjm-models
uv sync
uv run python -c "import signsdk; print(signsdk.from_pretrained('unisign-pjm-openasl-ms').predict('clip.mp4').text)"

Put your own PJM recording in place of clip.mp4. You need Python 3.10 or newer and uv.

The full app, with the interface and the API, lives in two repositories:

Frequently asked questions

How does the CrocoSign sign language translator work?

In the example on this site, the Uni-Sign model gets a video of one sentence in Polish Sign Language (PJM). RTMPose finds the hand, face and body keypoints in every frame, Uni-Sign processes them with graph encoders, and the mT5 language model writes an English sentence from them. To show it in Polish we translate it with DeepL. SpaMo, the other model family we compared, works on the video image itself. Both translate whole sentences; neither recognises single signs.

Does CrocoSign translate sign language live?

No. It is a research prototype, not a replacement for an interpreter. You cannot upload your own video on this site, but you can run the translation yourself with the pjm-models package: Uni-Sign translates a 6.6-second video in about 11 s on a CPU and 1.6 s on a GPU.

Does CrocoSign translate text into Polish Sign Language?

No. We translate in one direction only: from a PJM video to text. Generating sign language from text is a separate problem we did not work on.

How good are the translations?

Far from an interpreter. The best single models, two Uni-Sign variants with transfer from American Sign Language, score about 8.5-8.6 BLEU-4 on signers they saw in training and about 6 on signers they never saw. For scale: two Deaf people fluent in ASL and English (not professional interpreters) reach about 19.8 BLEU on the How2Sign dataset.

Where do the Polish Sign Language videos come from?

From the Open Repository of the PJM Corpus, run by the Sign Language Linguistics Lab at the Faculty of Polish Studies, University of Warsaw. We cut it into 29,928 clips of one sentence each, about 25 hours from 151 Deaf signers, and corrected the transcripts.

Can I download the dataset and the models?

Yes. The dataset is on Hugging Face under CC BY-SA 4.0, and the model weights under CC BY-NC-SA 4.0, so for non-commercial use only. The code is MIT licensed.

Will CrocoSign replace interpreters for Deaf people?

No, and that is not the aim. The Deaf people we talked to said what is needed most is more PJM interpreters, and with them people and money. Our work checks whether machine translation from PJM to text is feasible at all.

How can I help?

Rate translations in our survey: you watch a short PJM video and a text, then rate whether they match. Every rating helps, most of all from people who know Polish Sign Language.

Rate the model's translations

Who we are

We are Wojciech Sieńko and Rostyslav Kovalenko. CrocoSign is our engineering thesis at PJATK (Computer Science, specialisation in Artificial Intelligence), written under the supervision of Albert Śledzianowski, PhD, MBA.

Rostyslav Kovalenko and Wojciech Sieńko next to the CrocoSign poster at the GHOST Day conference
At our poster at the GHOST Day conference, 8-9 May 2026.