Formula & theorem reference
Concept clusters →Every named result in this course, grouped by chapter. Each one links back to where it's derived.
Readiness
Formula
2D Discrete Convolution and Correlation
also known as: the sliding-window sum, filtering an image by a kernel
For an image I and a kernel H of size (2a+1)\times(2b+1), the 2D discrete correlation is (I \star H)(x,y) = \sum_{i=-a}^{a}\sum_{j=-b}^{b} I(x+i,\, y+j)\, H(i,j), and the 2D discrete convolution is (I * H)(x,y) = \sum_{i=-a}^{a}\sum_{j=-b}^{b} I(x-i,\, y-j)\, H(i,j). The two differ by exactly one sign inside the image's index — a 180° rotation of the kernel — and coincide whenever the kernel is symmetric under that rotation. Both are a weighted sum over a window of input pixels centered at (x,y), with H supplying the weights.
Formula
The Sobel and Prewitt Operators
The Prewitt operator computes the horizontal and vertical gradient components with H_x^P = \begin{bmatrix}-1&0&1\\-1&0&1\\-1&0&1\end{bmatrix}, \qquad H_y^P = \begin{bmatrix}-1&-1&-1\\0&0&0\\1&1&1\end{bmatrix}. Each factors as a central-difference kernel in one direction and a uniform box-average in the other — differentiate one way, smooth the other, in a single kernel. The Sobel operator uses the identical structure with a weighted average instead of a uniform one, H_x^S = \begin{bmatrix}-1&0&1\\-2&0&2\\-1&0&1\end{bmatrix}, weighting the center row (or column, for H_y^S) twice as heavily — a discrete approximation closer to Gaussian-weighted smoothing, giving Sobel a slightly better noise response than Prewitt at identical cost.
Formula
The 2D Discrete Fourier Transform
also known as: 2D DFT
For an H\times W image f(x,y), the 2D discrete Fourier transform is F(u,v) = \sum_{x=0}^{H-1}\sum_{y=0}^{W-1} f(x,y)\, e^{-j2\pi\left(\frac{ux}{H}+\frac{vy}{W}\right)}, \qquad u=0,\dots,H-1,\ v=0,\dots,W-1. Each F(u,v) is one complex number; a full H\times W image produces a full H\times W grid of them, no information lost or gained. The inverse DFT recovers the image exactly: f(x,y) = \frac{1}{HW}\sum_{u=0}^{H-1}\sum_{v=0}^{W-1} F(u,v)\, e^{+j2\pi\left(\frac{ux}{H}+\frac{vy}{W}\right)}. Because the exponential kernel factors as a product of a purely-x term and a purely-y term, the 2D sum separates into a 1D DFT along rows composed with a 1D DFT along columns.
Formula
Otsu's Method
also known as: between-class variance thresholding
Otsu's method picks the threshold T that best separates a histogram into two classes, by maximizing the between-class variance \sigma_B^2(T) = w_0(T)\,w_1(T)\,\big(\mu_0(T)-\mu_1(T)\big)^2, where w_0,w_1 are the two classes' own population fractions (v\le T and v>T respectively) and \mu_0,\mu_1 their own mean intensities. Evaluating this at every candidate split and keeping the largest is exhaustive but cheap (at most 255 candidates for an 8-bit image), and requires nothing but the image's own histogram — no assumption about where the "right" cutoff should sit. Otsu's method still produces a single global threshold; it removes the guesswork from choosing T, not the uneven-lighting weakness of using one T for the whole image.
Formula
Eigenvalues of a Symmetric 2×2 Matrix
also known as: the characteristic equation, real spectral case
For a symmetric matrix A = \begin{pmatrix} a & b \\ b & d \end{pmatrix}, the eigenvalues are the roots of the characteristic equation \det(A - \lambda I) = \lambda^2 - (a+d)\lambda + (ad - b^2) = 0, namely \lambda = \frac{(a+d) \pm \sqrt{(a-d)^2 + 4b^2}}{2}. Because the discriminant (a-d)^2 + 4b^2 is a sum of squares, it is never negative — a symmetric matrix always has two real eigenvalues (counted with multiplicity), never a complex pair.
Show proof
\det(A - \lambda I) = (a-\lambda)(d-\lambda) - b^2 = \lambda^2 - (a+d)\lambda + (ad - b^2), a quadratic in \lambda. Apply the quadratic formula with A=1, B=-(a+d), C=ad-b^2: \lambda = \frac{(a+d) \pm \sqrt{(a+d)^2 - 4(ad-b^2)}}{2}. Expanding (a+d)^2 - 4(ad-b^2) = a^2 + 2ad + d^2 - 4ad + 4b^2 = (a-d)^2 + 4b^2 gives the stated discriminant. It is a sum of two squares, so it is \geq 0, and the two roots are always real.
Local features and keypoint detection
Formula
Eigenvalues of a Symmetric 2×2 Matrix
also known as: the characteristic equation, real spectral case
For a symmetric matrix A = \begin{pmatrix} a & b \\ b & d \end{pmatrix}, the eigenvalues are the roots of the characteristic equation \det(A - \lambda I) = \lambda^2 - (a+d)\lambda + (ad - b^2) = 0, namely \lambda = \frac{(a+d) \pm \sqrt{(a-d)^2 + 4b^2}}{2}. Because the discriminant (a-d)^2 + 4b^2 is a sum of squares, it is never negative — a symmetric matrix always has two real eigenvalues (counted with multiplicity), never a complex pair.
Show proof
\det(A - \lambda I) = (a-\lambda)(d-\lambda) - b^2 = \lambda^2 - (a+d)\lambda + (ad - b^2), a quadratic in \lambda. Apply the quadratic formula with A=1, B=-(a+d), C=ad-b^2: \lambda = \frac{(a+d) \pm \sqrt{(a+d)^2 - 4(ad-b^2)}}{2}. Expanding (a+d)^2 - 4(ad-b^2) = a^2 + 2ad + d^2 - 4ad + 4b^2 = (a-d)^2 + 4b^2 gives the stated discriminant. It is a sum of two squares, so it is \geq 0, and the two roots are always real.
Formula
The Harris Corner Response
Around a candidate pixel, the structure tensor M=\sum_{(x,y)\in W}\begin{bmatrix}I_x^2 & I_xI_y\\ I_xI_y & I_y^2\end{bmatrix} is built from a window's own gradient products. Computing M's eigenvalues by hand takes more work than needed. The Harris and Stephens response function avoids it: R = \det(M) - k\,\operatorname{trace}(M)^2. Here, \det(M)=\lambda_1\lambda_2 and \operatorname{trace}(M)=\lambda_1+\lambda_2 combine M's two eigenvalues, and the constant k is chosen by hand, usually 0.04–0.06. This number, R, alone sorts the window into one of three classes. A positive R means both eigenvalues are large and close in size: a corner. A negative R means one eigenvalue is near zero: an edge. A small trace, regardless of R, means flat.
Feature matching and RANSAC
Theorem
The RANSAC Consensus Guarantee
also known as: RANSAC's probability-of-success formula
Suppose a dataset's true inlier fraction is w. That means a point picked at random is an inlier with probability w, independent of the others. RANSAC fits a model from a randomly sampled minimal set of n points, and repeats this for k independent iterations. The probability that at least one of those k samples is entirely inliers -- which means it produces a correct model fit -- is
P = 1 - (1-w^n)^k.This is only a probabilistic guarantee. For any finite k, P<1. RANSAC never certifies that its returned fit is correct. It only guarantees that a correct fit was found with probability P, under the stated assumptions.
Show proof
Step 1 — probability a single sample is all-inliers. A minimal sample of n points is drawn (assume without replacement from a large dataset, so draws are effectively independent). Each individual point is an inlier with probability w, so — treating the n draws as independent — the probability that all n points in one sample are inliers is P(\text{one sample is all-inliers}) = w^n.
Step 2 — probability a single sample fails. The complementary event (the sample contains at least one outlier) has probability P(\text{one sample fails}) = 1 - w^n.
Step 3 — probability every one of k samples fails. RANSAC draws k independent samples across its k iterations. Since the iterations are independent, the probability that all k of them fail (none is all-inliers) is the product of k copies of the same per-sample failure probability: P(\text{every sample fails}) = (1-w^n)^k.
Step 4 — probability at least one sample succeeds. "At least one all-inlier sample among the k" is the complement of "every sample fails," so P = 1 - P(\text{every sample fails}) = 1-(1-w^n)^k.
Reading the formula. P increases toward 1 as k grows (more
attempts), as w grows (cleaner data), or as n shrinks (a smaller
minimal sample is likelier to land entirely on inliers) — matching the
intuition that RANSAC is easier to trust with more iterations, a higher
inlier rate, or a model that needs fewer points to fit. In practice the
formula is inverted to choose k: given a target confidence P (e.g.
0.99) and an estimated w, solve
k = \frac{\log(1-P)}{\log(1-w^n)}
for the smallest k that meets the target — this is exactly how
RANSAC's adaptive iteration count is typically set in practice, refining
w (and so k) downward as better inlier counts are observed.
Projective geometry
Formula
The Affine Transform in Homogeneous Coordinates
also known as: the 3×3 affine matrix
Append a 1 to every point, (x,y)\to(x,y,1). That one extra coordinate lets any affine map p'=Ap+t (a 2\times 2 linear part A, plus a translation vector t) become a single 3\times 3 matrix multiply: \begin{bmatrix}x'\\y'\\1\end{bmatrix} = \begin{bmatrix}a&b&t_x\\c&d&t_y\\0&0&1\end{bmatrix} \begin{bmatrix}x\\y\\1\end{bmatrix}. Translation, scaling, rotation, reflection, and shear are each one specific choice of a,b,c,d,t_x,t_y in this same shape. The bottom row is always [0,0,1] for an affine map.
Formula
The Perspective Divide
also known as: homogeneous-to-Cartesian conversion for a homography
A homography acts on homogeneous coordinates. Its bottom row need not be [0,0,1]: \begin{bmatrix}x_h\\y_h\\w\end{bmatrix} = \begin{bmatrix}h_{00}&h_{01}&h_{02}\\h_{10}&h_{11}&h_{12}\\h_{20}&h_{21}&h_{22}\end{bmatrix} \begin{bmatrix}x\\y\\1\end{bmatrix}. Dividing out the third coordinate recovers the actual point: (x',y') = (x_h/w,\ y_h/w). For an affine map, w always equals 1, so the divide is invisible. A homography's one defining trait is that w genuinely varies with (x,y).
Stereo vision and 3D reconstruction
Theorem
The Epipolar Constraint
also known as: the essential-matrix equation
Take a point \mathbf{X} in space, seen by two calibrated cameras. "Calibrated" means known intrinsics, so image coordinates are already normalized to camera coordinates. Let \mathbf{x} and \mathbf{x}' be \mathbf{X}'s homogeneous projections in the first and second camera. Let the second camera's pose relative to the first be the rotation R and translation \mathbf{t}. Then
\mathbf{x}'^{\mathsf T} E\, \mathbf{x} = 0, \qquad E = [\mathbf{t}]_\times R,where E is the essential matrix. [\mathbf{t}]_\times is the skew-symmetric cross-product matrix of \mathbf{t}: it satisfies [\mathbf{t}]_\times \mathbf{v} = \mathbf{t}\times\mathbf{v} for every \mathbf{v}. (For uncalibrated cameras, the same constraint holds with the fundamental matrix F = K'^{-\mathsf T} E K^{-1} in place of E. It acts directly on pixel coordinates: \mathbf{x}'^{\mathsf T} F\, \mathbf{x} = 0.)
Show proof
Work in the first camera's coordinate frame, with its center at the origin. A point \mathbf{X} projects to \mathbf{x} along the ray through the origin in the direction of \mathbf{x} itself (in calibrated coordinates, a normalized image point already points along its own camera ray), so \mathbf{X} = \lambda\mathbf{x} for some depth \lambda > 0.
In the second camera's own frame, the same point is \mathbf{X}' = R\mathbf{X} + \mathbf{t} = \lambda R\mathbf{x} + \mathbf{t}, and by the same reasoning \mathbf{X}' is parallel to \mathbf{x}', so \mathbf{x}' is parallel to \lambda R\mathbf{x} + \mathbf{t}.
The three vectors \mathbf{t}, \mathbf{X}', and R\mathbf{x} are coplanar — they all lie in the plane spanned by the baseline between the two camera centers and the point \mathbf{X} itself (the epipolar plane). A standard way to test three vectors for coplanarity is the scalar triple product: three vectors are coplanar exactly when their scalar triple product is zero, since a nonzero triple product measures the (nonzero) volume of the parallelepiped they span. Applying that test to \mathbf{x}', \mathbf{t}, and R\mathbf{x}: \mathbf{x}'\cdot(\mathbf{t}\times R\mathbf{x}) = 0.
Writing the cross product with \mathbf{t} as left-multiplication by the skew-symmetric matrix [\mathbf{t}]_\times turns this into a pure matrix product: \mathbf{x}'^{\mathsf T}\big([\mathbf{t}]_\times R\big)\mathbf{x} = 0 \quad\Longrightarrow\quad \mathbf{x}'^{\mathsf T} E\, \mathbf{x} = 0, \qquad E = [\mathbf{t}]_\times R.
Why this is useful. The constraint holds for every corresponding point pair (\mathbf{x}, \mathbf{x}') produced by the same two camera poses, and it involves no unknown depth \lambda — E (or F, its uncalibrated counterpart) can be estimated from point correspondences alone (the normalized eight-point algorithm), and once known, it turns a 2D correspondence search into a 1D search along the corresponding epipolar line E\mathbf{x} (or F\mathbf{x}) in the other image.
Structure from motion and SLAM
Theorem
The Epipolar Constraint
also known as: the essential-matrix equation
Take a point \mathbf{X} in space, seen by two calibrated cameras. "Calibrated" means known intrinsics, so image coordinates are already normalized to camera coordinates. Let \mathbf{x} and \mathbf{x}' be \mathbf{X}'s homogeneous projections in the first and second camera. Let the second camera's pose relative to the first be the rotation R and translation \mathbf{t}. Then
\mathbf{x}'^{\mathsf T} E\, \mathbf{x} = 0, \qquad E = [\mathbf{t}]_\times R,where E is the essential matrix. [\mathbf{t}]_\times is the skew-symmetric cross-product matrix of \mathbf{t}: it satisfies [\mathbf{t}]_\times \mathbf{v} = \mathbf{t}\times\mathbf{v} for every \mathbf{v}. (For uncalibrated cameras, the same constraint holds with the fundamental matrix F = K'^{-\mathsf T} E K^{-1} in place of E. It acts directly on pixel coordinates: \mathbf{x}'^{\mathsf T} F\, \mathbf{x} = 0.)
Show proof
Work in the first camera's coordinate frame, with its center at the origin. A point \mathbf{X} projects to \mathbf{x} along the ray through the origin in the direction of \mathbf{x} itself (in calibrated coordinates, a normalized image point already points along its own camera ray), so \mathbf{X} = \lambda\mathbf{x} for some depth \lambda > 0.
In the second camera's own frame, the same point is \mathbf{X}' = R\mathbf{X} + \mathbf{t} = \lambda R\mathbf{x} + \mathbf{t}, and by the same reasoning \mathbf{X}' is parallel to \mathbf{x}', so \mathbf{x}' is parallel to \lambda R\mathbf{x} + \mathbf{t}.
The three vectors \mathbf{t}, \mathbf{X}', and R\mathbf{x} are coplanar — they all lie in the plane spanned by the baseline between the two camera centers and the point \mathbf{X} itself (the epipolar plane). A standard way to test three vectors for coplanarity is the scalar triple product: three vectors are coplanar exactly when their scalar triple product is zero, since a nonzero triple product measures the (nonzero) volume of the parallelepiped they span. Applying that test to \mathbf{x}', \mathbf{t}, and R\mathbf{x}: \mathbf{x}'\cdot(\mathbf{t}\times R\mathbf{x}) = 0.
Writing the cross product with \mathbf{t} as left-multiplication by the skew-symmetric matrix [\mathbf{t}]_\times turns this into a pure matrix product: \mathbf{x}'^{\mathsf T}\big([\mathbf{t}]_\times R\big)\mathbf{x} = 0 \quad\Longrightarrow\quad \mathbf{x}'^{\mathsf T} E\, \mathbf{x} = 0, \qquad E = [\mathbf{t}]_\times R.
Why this is useful. The constraint holds for every corresponding point pair (\mathbf{x}, \mathbf{x}') produced by the same two camera poses, and it involves no unknown depth \lambda — E (or F, its uncalibrated counterpart) can be estimated from point correspondences alone (the normalized eight-point algorithm), and once known, it turns a 2D correspondence search into a 1D search along the corresponding epipolar line E\mathbf{x} (or F\mathbf{x}) in the other image.
Neurons, training, and CNNs for images
Formula
Convolution Output-Size Formula
also known as: the stride/padding output-size formula
Take one axis of an input of size N, a kernel of size K, total padding P added along that axis (for example P=2 for one pixel of padding per side), and stride S. The output size along that axis is O = \left\lfloor \frac{N - K + P}{S} \right\rfloor + 1. Valid padding sets P=0. Same-size padding at stride 1 instead chooses P so that O=N, which requires P=K-1.
Object detection
Formula
Object Detection and Segmentation Evaluation Metrics
also known as: IoU, Dice, precision/recall, and mAP
| Metric | Formula | What it measures / when it's used |
|---|---|---|
| Intersection over Union (IoU) | \text{IoU}=\dfrac{\lvert A\cap B\rvert}{\lvert A\cup B\rvert} | Overlap between a predicted region A (box or mask) and a ground-truth region B, as a fraction of their combined area. The standard test for "does this prediction count as a match," usually thresholded (e.g. IoU \ge 0.5) |
| Dice coefficient | \text{Dice}=\dfrac{2\lvert A\cap B\rvert}{\lvert A\rvert+\lvert B\rvert} | Overlap between two regions, weighted so shared area counts twice against the sum of both areas rather than their union. More forgiving than IoU on small regions, and the more common reporting metric for segmentation masks specifically |
| Precision | \text{Precision}=\dfrac{TP}{TP+FP} | Of everything the model flagged as a detection, the fraction that was actually correct (a true positive, determined by the IoU threshold above). Low precision means the model is crying wolf |
| Recall | \text{Recall}=\dfrac{TP}{TP+FN} | Of everything that was actually there to find, the fraction the model actually found. Low recall means the model is missing real objects |
| Average Precision (AP) | area under the precision-recall curve, swept over confidence threshold | Summarizes a detector's precision/recall tradeoff across every possible confidence cutoff into one number, for one object class |
| mean Average Precision (mAP) | \text{mAP}=\dfrac{1}{C}\sum_{c=1}^{C}\text{AP}_c | The average of each class's own AP across all C classes. The standard single-number summary for comparing detectors, but only within a fixed dataset and IoU-threshold convention (mAP@0.5, mAP@[.5:.95], etc.). A higher mAP does not automatically mean "better" if the comparison crosses datasets or IoU conventions |
IoU and Dice are two different ways to score the same overlap question. IoU divides shared area by the union. Dice divides twice the shared area by the sum of the two areas. Because both formulas measure the same overlap, they never disagree about which region overlaps more. But they are not numerically interchangeable: Dice is always at least as large as IoU for the same pair of regions, since \text{Dice}=\dfrac{2\,\text{IoU}}{1+\text{IoU}}.
Precision and recall ask a genuinely different pair of questions. Precision is about the correctness of what was flagged; recall is about the completeness of what was found. The two trade off against each other as the confidence threshold moves. A detector's precision-recall curve is built by sweeping that single threshold and recomputing both precision and recall at every point. AP and mAP compress that whole curve into one number, so detectors can be ranked without picking one threshold by hand.
Semantic and instance segmentation
Formula
Object Detection and Segmentation Evaluation Metrics
also known as: IoU, Dice, precision/recall, and mAP
| Metric | Formula | What it measures / when it's used |
|---|---|---|
| Intersection over Union (IoU) | \text{IoU}=\dfrac{\lvert A\cap B\rvert}{\lvert A\cup B\rvert} | Overlap between a predicted region A (box or mask) and a ground-truth region B, as a fraction of their combined area. The standard test for "does this prediction count as a match," usually thresholded (e.g. IoU \ge 0.5) |
| Dice coefficient | \text{Dice}=\dfrac{2\lvert A\cap B\rvert}{\lvert A\rvert+\lvert B\rvert} | Overlap between two regions, weighted so shared area counts twice against the sum of both areas rather than their union. More forgiving than IoU on small regions, and the more common reporting metric for segmentation masks specifically |
| Precision | \text{Precision}=\dfrac{TP}{TP+FP} | Of everything the model flagged as a detection, the fraction that was actually correct (a true positive, determined by the IoU threshold above). Low precision means the model is crying wolf |
| Recall | \text{Recall}=\dfrac{TP}{TP+FN} | Of everything that was actually there to find, the fraction the model actually found. Low recall means the model is missing real objects |
| Average Precision (AP) | area under the precision-recall curve, swept over confidence threshold | Summarizes a detector's precision/recall tradeoff across every possible confidence cutoff into one number, for one object class |
| mean Average Precision (mAP) | \text{mAP}=\dfrac{1}{C}\sum_{c=1}^{C}\text{AP}_c | The average of each class's own AP across all C classes. The standard single-number summary for comparing detectors, but only within a fixed dataset and IoU-threshold convention (mAP@0.5, mAP@[.5:.95], etc.). A higher mAP does not automatically mean "better" if the comparison crosses datasets or IoU conventions |
IoU and Dice are two different ways to score the same overlap question. IoU divides shared area by the union. Dice divides twice the shared area by the sum of the two areas. Because both formulas measure the same overlap, they never disagree about which region overlaps more. But they are not numerically interchangeable: Dice is always at least as large as IoU for the same pair of regions, since \text{Dice}=\dfrac{2\,\text{IoU}}{1+\text{IoU}}.
Precision and recall ask a genuinely different pair of questions. Precision is about the correctness of what was flagged; recall is about the completeness of what was found. The two trade off against each other as the confidence threshold moves. A detector's precision-recall curve is built by sweeping that single threshold and recomputing both precision and recall at every point. AP and mAP compress that whole curve into one number, so detectors can be ranked without picking one threshold by hand.
Image embeddings and retrieval
Formula
Angle Between Two Vectors
For nonzero vectors \mathbf{u}, \mathbf{v}, \theta = \cos^{-1}\!\left(\frac{\mathbf{u}\cdot\mathbf{v}}{|\mathbf{u}|\,|\mathbf{v}|}\right). In particular, \mathbf{u}\cdot\mathbf{v} = 0 if and only if \mathbf{u} and \mathbf{v} are orthogonal.
Evaluation, deployment, and the complete vision pipeline
Formula
Object Detection and Segmentation Evaluation Metrics
also known as: IoU, Dice, precision/recall, and mAP
| Metric | Formula | What it measures / when it's used |
|---|---|---|
| Intersection over Union (IoU) | \text{IoU}=\dfrac{\lvert A\cap B\rvert}{\lvert A\cup B\rvert} | Overlap between a predicted region A (box or mask) and a ground-truth region B, as a fraction of their combined area. The standard test for "does this prediction count as a match," usually thresholded (e.g. IoU \ge 0.5) |
| Dice coefficient | \text{Dice}=\dfrac{2\lvert A\cap B\rvert}{\lvert A\rvert+\lvert B\rvert} | Overlap between two regions, weighted so shared area counts twice against the sum of both areas rather than their union. More forgiving than IoU on small regions, and the more common reporting metric for segmentation masks specifically |
| Precision | \text{Precision}=\dfrac{TP}{TP+FP} | Of everything the model flagged as a detection, the fraction that was actually correct (a true positive, determined by the IoU threshold above). Low precision means the model is crying wolf |
| Recall | \text{Recall}=\dfrac{TP}{TP+FN} | Of everything that was actually there to find, the fraction the model actually found. Low recall means the model is missing real objects |
| Average Precision (AP) | area under the precision-recall curve, swept over confidence threshold | Summarizes a detector's precision/recall tradeoff across every possible confidence cutoff into one number, for one object class |
| mean Average Precision (mAP) | \text{mAP}=\dfrac{1}{C}\sum_{c=1}^{C}\text{AP}_c | The average of each class's own AP across all C classes. The standard single-number summary for comparing detectors, but only within a fixed dataset and IoU-threshold convention (mAP@0.5, mAP@[.5:.95], etc.). A higher mAP does not automatically mean "better" if the comparison crosses datasets or IoU conventions |
IoU and Dice are two different ways to score the same overlap question. IoU divides shared area by the union. Dice divides twice the shared area by the sum of the two areas. Because both formulas measure the same overlap, they never disagree about which region overlaps more. But they are not numerically interchangeable: Dice is always at least as large as IoU for the same pair of regions, since \text{Dice}=\dfrac{2\,\text{IoU}}{1+\text{IoU}}.
Precision and recall ask a genuinely different pair of questions. Precision is about the correctness of what was flagged; recall is about the completeness of what was found. The two trade off against each other as the confidence threshold moves. A detector's precision-recall curve is built by sweeping that single threshold and recomputing both precision and recall at every point. AP and mAP compress that whole curve into one number, so detectors can be ranked without picking one threshold by hand.