SPICE Score Calculator
Calculate the SPICE score for evaluating semantic content in image captions.
About SPICE Score Calculator
SPICE (Semantic Propositional Image Caption Evaluation) evaluates caption quality by parsing both candidate and reference captions into scene graphs (objects, attributes, relations), then computing F1 over matched tuples. Unlike n-gram metrics, SPICE directly evaluates semantic content regardless of wording.
Formula
SPICE
SPICE = F1(matched_tuples, candidate_tuples, reference_tuples)
- tuples
- Scene graph tuples: (object, attribute) or (subject, relation, object)
Worked example
With the default values below, SPICE Score Calculator returns SPICE Score of 0.7273. Change any input above and every figure here is recalculated in your browser.
Inputs used
- Matched Scene-graph Tuplesminimum 0
- 12
- Candidate Tuplesminimum 1
- 15
- Reference Tuplesminimum 1
- 18
Results
- SPICE Score
- 0.7273
- Precision
- 0.8000
- Recall
- 0.6667
Step by step
- 1Precision: matched ÷ candidate tuples= 0.8000
- 2Recall: matched ÷ reference tuples= 0.6667
- 3SPICE (F1): 2PR/(P+R)= 0.727273
Assumptions and limits
- The result is derived only from the 3 inputs listed above. Anything not among them is not part of the calculation.
- In particular, this calculator does not take inflation, tax, fees or charges or compounding frequency into account.
- Figures are rounded for display to 4 decimal places, so totals built from several rounded parts can differ slightly from the unrounded arithmetic.
How these calculators are built and tested is described on the Methodology page. If a figure looks wrong, please report it.
Frequently Asked Questions
How does SPICE differ from CIDEr?
CIDEr uses TF-IDF n-gram overlap (lexical matching), while SPICE parses captions into semantic scene graphs and matches meaning directly. SPICE better captures whether the caption correctly describes objects, attributes, and their relationships.
What are scene graph tuples?
Scene graph tuples represent semantic content: objects ('dog', 'ball'), attributes ('red', 'large'), and relations ('chasing', 'on top of'). They're extracted by parsing captions using dependency parsing and semantic role labeling.
