Request access to Suturing Skills Action Clips

Fill in the form and accept the license to request access. QURE reviews each request by hand. Please tell us who you are and how you plan to use the dataset.

This dataset is shared for evaluation under the Dataset Evaluation License (LICENSE.md). You may not redistribute it or try to identify anyone who appears in it. It must not be used for clinical decisions.

Log in or Sign Up to review the conditions and access this dataset content.

Suturing Skills Action Clips

First-person video of suturing practice on a silicone pad, cut into one-action clips with structured JSON labels. Use it to fine-tune a vision-language model to describe an action or grade one against written criteria.

This is a sample. The full dataset has 3 camera angles of every action: headset, tool close-up and room view. See Full datasets.

Preview: opening the instrument case, loading the needle, a stitch and an instrument knot

At a glance

Describe (default) Grade (execution_grading)
Who is in the video Trainer Trainee
Model input Clip Clip + trainer's criteria as text
Model output JSON description of the action JSON grade and reason
Original clips 105 (19.2 min) 14 (8.0 min)
Source 5 protocols, 18 step videos 1 full run of protocol 1849 (15.2 min)
Train / validation 468 / 27 66 / 3

Video: 720×540, 10 fps, H.264 MP4, no audio. Language: English. Contact: QURE Industries, Inc., shar@qurexr.com

Labels

  • Describe: Drafted by NVIDIA Cosmos 3 Nano, then every label corrected against the video in human review.
  • Grade: Evaluations generated by NVIDIA Cosmos 3 Nano, then validated against the video frame by frame, with incorrect results corrected under human review.

Quick start

Request access above, log in, then:

from datasets import load_dataset

describe = load_dataset("qure-ai/suturing-skills-action-clips")
grade = load_dataset("qure-ai/suturing-skills-action-clips", "execution_grading")

sample = grade["train"][0]
sample["video"]                     # decoding needs torchcodec
sample["prompt"], sample["answer"]
Trainer How to use it
NVIDIA Cosmos 3 Reasoner SFT cosmos/<split>/meta.json or execution_grading/cosmos/<split>/meta.json; repo folder as data root, video_0 as media field
TRL, LLaMA-Factory, custom loop Map file_name, prompt and answer to your chat format

Training has not been run on this release yet. The layouts follow each trainer's documented format.

The two tasks

Describe an action

Target for 1849_2_a03:

{"title": "Take the tissue forceps out of the case",
 "step_context": "The user pulls the tissue forceps out of its strap in the open instrument case and lays it in front of the case.",
 "detailed_steps": ["Pinch the tissue forceps and slide it out of its strap",
                    "Lay the tissue forceps in front of the case"],
 "objects_expected": ["Tissue forceps", "Instrument case"],
 "hand_pose_expectation": {"left": "open", "right": "pinching"},
 "success_criteria": ["The tissue forceps lies in front of the case."],
 "failure_modes": ["The tissue forceps stays in its strap or is dropped."]}

Grade an action

The prompt holds the trainer's success criteria and failure modes. The trainer's clip is linked in reference_video but is not part of the prompt.

Target for 1849_5_a01_trainee, graded against "Make a second stitch across the incision":

{"observed": true,
 "outcome_score": 0,
 "recovered": false,
 "verdict": "The thread is wrapped around the forceps and the short tail is pulled through with the needle holder, tying a knot on the first stitch. The needle stays off the pad, so no second pass crosses the cut.",
 "deviations": [{"why": "A knot was tied on the first stitch in place of a second stitch.", "evidence": "The thread enters the pad only at the one spot of the first stitch, with the free length running off the pad to the forceps."}]}

The trainee run

Result
Actions graded 14: 9 done, 2 recovered, 3 not done
Score 76.1 of 100, leaving out posture and time
Mistakes Case left open after the pad; wrong instrument for the needle; knot in place of the second stitch
Cosmos 3 Nano, no fine-tuning 8 of 14 grades correct
Marking every action done 9 of 14 correct, so do not judge a model on accuracy alone

A wrong object or procedure counts as not done; there are no partial grades. The full video, every grade and the score report are in execution_grading/run_1849/.

Splits

Config Train Validation What it means
default Protocols 1849, 1850, 1859, 1860: 78 clips + 5 augmented copies of each Protocol 1861: 27 clips Validation is an unseen protocol
execution_grading Steps 1–3: 11 clips + 5 augmented copies of each Steps 4–5: 3 clips Same trainee and run, so not an unseen person

Both validation sets are small, and there is no test split. The trainer clips for the grading actions are in default train.

How it was made

Stage Trainer clips Trainee clips
Record Headset, silicone pad, standard kit, at a desk Same setup, one full run of protocol 1849
Generate Cosmos 3 Nano, zero-shot, splits each step video into labelled actions Cosmos 3 Nano grades each step against the trainer's reviewed labels
Review Second by second: wrong labels fixed, missed actions added, non-actions removed Graded windows checked at 1 s frames (2 s for two), with close-ups of the stitch
Finish Cut, resized, audio removed, names standardised Labels rewritten to describe only the clip; cut the same way
Augment (train) 5 copies, with mirroring where labels allow 5 copies, no mirroring

Limits

Limit What it means
Small: one task, indoor desks, one kind of kit Adapts a model to the format, not to other rooms, tools or procedures
Time windows checked at 0.5–1 s A clip may start or end about 1 s off
32-frame loaders Clips over 16 s are sampled sparsely, including 2 trainer clips over 60 s and the 76 s and 146 s trainee clips
Coarse hand poses One of four words per hand; no joints or 3D tracking
One trainee, one run, every action attempted Shows the format; too small to train a grader alone, and has no skipped action
Recorded by QA, no list of planned mistakes available Grades have no independent check; some mistakes may have been planned
The headset assistant's script did not ask for the second stitch The failed grade is real against the reference, but the trainee may have been following instructions
The two long ring-handled instruments look alike Which is which follows the reference order; noted in label_note
1849_1_a01_trainee and 1849_2_a01_trainee are the same 5 s Count them once when reporting accuracy over actions
Trainee run outside the graded windows was checked more coarsely; its audio was not checked That footage in run_1849/ is less verified

Use

Good for: fine-tuning and evaluating structured action description; trying out grading of a practice run against written criteria; testing prompts, pipelines and output formats; step-progress and failure detection for robot learning.

Not for: clinical or medical decisions; certifying or assessing real surgical competence; use as a benchmark; identifying, tracking or profiling anyone in the videos.

Full datasets

Full datasets are graded human-hand surgery, licensed per accepted hour. Contact shar@qurexr.com.

This sample Full capture
Camera views Headset only Headset, tool close-up, room
Video 720×540, 10 fps Headset 1024×768, up to 30 fps
Hands Four pose words per hand 3D tracking on request
Audio None Time-synced narration of each step
Haptic glove None Time-synced force and grip data

Privacy and consent

  • Consent: all clips, including the trainee run, were recorded by QURE Industries, Inc., with a participant performing simulated suturing. Each participant signed a written recording release granting QURE the right to use, license and distribute the recordings, including for commercial evaluation and model training.
  • Not present: patients, a clinical setting, protected health information or audio.
  • Visible: hands, arms, wrist jewellery, a watch, a sleeve, the instruments and desk items, including a keyboard and a room camera. Protocol 1859 shows part of a laptop screen with a dashboard; only two numbers and the taskbar can be read.
  • Faces: none seen in a check of 4 frames from each trainer source video, or in the trainee run's review (1 s frames in graded windows, coarser elsewhere). Not every frame was checked.

License

Proprietary, under the Dataset Evaluation License (LICENSE.md). Access is gated and QURE approves each request by hand.

  • Internal evaluation and fine-tuning for 30 days after approval.
  • Models trained on it can be kept for internal use.
  • No redistribution. Commercial use needs a separate agreement: shar@qurexr.com.

Reference

Files
train/, validation/              default config: metadata.jsonl, videos/<id>.mp4
cosmos/                          default config in Cosmos 3 Reasoner SFT layout
execution_grading/
  train/, validation/            grading config: metadata.jsonl, videos/<id>.mp4
  cosmos/                        grading config in Cosmos 3 Reasoner SFT layout
  run_1849/                      trainee_run.mp4, judgment.json, report.json, validation.json

Sample ids are <protocol>_<step>_a<action>, with _trainee for trainee clips and _aug<n> for augmented copies.

Fields in both configs
Field What it means
file_name, id Video path within the split, and sample id
protocol_id, step_number, action_id Where the action sits in the protocol
duration_s Length in seconds
is_augmented, augmentation Augmented copy, and its settings as JSON
prompt, answer Instruction and target JSON
Fields in default only
Field What it means
source_clip The original clip behind a sample
is_mirrored Mirrored left to right, with hands and side words swapped in the labels
title Short imperative name of the action
step_context One sentence on what the hands do and why, starting "The user"
detailed_steps 2–6 short steps
objects_expected Objects used, from the 12 names below
hand_pose_expectation left and right: grasping, pinching, open or idle, from the wearer's view
success_criteria, failure_modes How the finished action looks; visible mistakes

Objects (samples): Instrument case (288), Suture pad (156), Needle holder (155), Tissue forceps (141), Suture thread (116), Suture packet (100), Suture needle (66), Plastic sleeve (49), Scalpel handle (39), Hemostatic forceps (33), Surgical scissors (33), Plastic wrap (24).

Hand poses (hands): grasping 400, pinching 393, open 186, idle 11.

Fields in execution_grading only
Field What it means
run_id The trainee run
reference_clip, reference_video The trainer's clip for this action: id, and path from the repo root
source_start_s, source_end_s Where the clip sits in the full run
grade done, recovered or not_done, for filtering and balancing
label_note A caveat on the label, if any

Fields inside answer:

Field What it means
observed The action was attempted
outcome_score 1 if the end state meets the criteria, otherwise 0
recovered A wrong object or move came first, then the action was done correctly
verdict What the clip shows
deviations One why and evidence per mistake
Augmentation (seed 1849)
Augmentation How often Range
Boundary jitter Every copy Start and end ±0.5 s
Colour and lighting Every copy Brightness ±0.08, contrast ±15%, saturation ±20%, gamma ±10%, hue ±8°
Crop and scale About 70% Keep 85–95% of the frame
Small rotation 40% ±5°
Speed 50% 0.9–1.1×
Mirror + hand swap 50% of copies whose labels allow it (104 copies), default only Left/right labels and side words swapped
Sensor noise 30% Strength 4–10
Blur 20% Sigma 0.6–1.4
Heavy compression 30% H.264 CRF 30–34

To train without augmentation, keep rows where is_augmented is false.

Citation

@misc{qure2026suturing,
  author       = {{QURE Industries, Inc.}},
  title        = {Suturing Skills Action Clips},
  year         = {2026},
  publisher    = {Hugging Face},
  howpublished = {\url{https://huggingface.co/datasets/qure-ai/suturing-skills-action-clips}}
}
Downloads last month
896