Symmetry, Integrability and Geometry: Methods and Applications Object-Image Correspondence for Algebraic Curves under Projections ⋆

We present a novel algorithm for deciding whether a given planar curve is an image of a given spatial curve, obtained by a central or a parallel projection with unknown parameters. The motivation comes from the problem of establishing a correspondence between an object and an image, taken by a camera with unknown position and parameters. A straightforward approach to this problem consists of setting up a system of conditions on the projection parameters and then checking whether or not this system has a solution. The computational advantage of the algorithm presented here, in comparison to algorithms based on the straightforward approach, lies in a significant reduction of a number of real parameters that need to be eliminated in order to establish existence or non-existence of a projection that maps a given spatial curve to a given planar curve. Our algorithm is based on projection criteria that reduce the projection problem to a certain modification of the equivalence problem of planar curves under affine and projective transformations. To solve the latter problem we make an algebraic adaptation of signature construction that has been used to solve the equivalence problems for smooth curves. We introduce a notion of a classifying set of rational differential invariants and produce explicit formulas for such invariants for the actions of the projective and the affine groups on the plane.


Introduction
Identifying an object in three-dimensional space with its planar image is a fundamental problem in computer vision. In particular, given a database of images (medical images, aerial photographs, human photographs), one would like to have an algorithm to match a given object in 3D with an image in the database, even though a position of the camera and its parameters may be unknown. Since the defining features of many objects can be represented by curves, obtaining a solution for the identification problem for curves is essential.
A central projection from R 3 to R 2 models a pinhole camera pictured in Fig. 1. It is described by a linear fractional transformation x = p 11 z 1 + p 12 z 2 + p 13 z 3 + p 14 p 31 z 1 + p 32 z 2 + p 33 z 3 + p 34 , y = p 21 z 1 + p 22 z 2 + p 23 z 3 + p 24 p 31 z 1 + p 32 z 2 + p 33 z 3 + p 34 , This paper is a contribution to the Special Issue "Symmetries of Differential Equations: Frames, Invariants and Applications". The full collection is available at http://www.emis.de/journals/SIGMA/SDE2012.html where (z 1 , z 2 , z 3 ) denote coordinates in R 3 , (x, y) denote coordinates in R 2 and p ij , i = 1, . . . , 3, j = 1, . . . , 4, are real parameters of the projection, such that the left 3 × 3 submatrix of 3 × 4 matrix P = (p ij ) has a non-zero determinant. Parameters represent the freedom to choose the center of the projection, the position of the image plane and (in general, non-orthogonal) coordinate system on the image plane 1 . In the case when the distance between a camera and an object is significantly greater than the object depth, a parallel projection provides a good camera model. A parallel projection has 8 parameters and can be described by a 3 × 4 matrix of rank 3, whose last row is (0, 0, 0, 1). We review various camera models and related geometry in Section 2 (see also [14,20]). In most general terms, the object-image correspondence problem, or the projection problem, as we will call it from now on, can be formulated as follows: Problem 1. Given a subset Z of R 3 and a subset X of R 2 , determine whether there exists a projection P : R 3 − → R 2 , such that X = P (Z)? 2 A straightforward approach to this problem consists of setting up a system of conditions on the projection parameters and then checking whether or not this system has a solution. In the case when Z and X are finite lists of points, a solution based on the straightforward approach can be found in [20]. For curves and surfaces under central projections, this approach is taken in [15]. However, internal parameters of the camera are considered to be known in that paper and, therefore, there are only 6 camera parameters in that study versus 12 considered here. The method presented in [15] also uses an additional assumption that a planar curve X ⊂ R 2 has at least two points, whose tangent lines coincide. An alternative approach to the problem in the case when Z and X are finite lists of points under parallel projections was presented in [1,2]. In these articles, the authors establish polynomial relationships that have to be satisfied by coordinates of the points in the sets Z and X in order for a projection to exists.
Our approach to the projection problem for curves is somewhere in between the direct approach and the implicit approach. We exploit the relationship between the projection problem and equivalence problem under group-actions to find the conditions that need to be satisfied by the object, the image and the center of the projection 3 . In comparison with the straightforward approach, our solution leads to a significant reduction of the number of parameters that have to be eliminated in order to solve Problem 1 for curves.
All of the theoretical results of this paper are valid for arbitrary irreducible algebraic curves (rational and non-rational), but the algorithms are presented for rational algebraic curves, i.e. Z = {Γ(s) | s in the domain of Γ} and X = {γ(t) | t in the domain of γ} for rational maps Γ : R− → R 3 and γ : R− → R 2 . A bar above a set denotes the Zariski closure of the set 4 .
Throughout the paper, we assume that Z is not a straight line (and, therefore, its image under any projection is a one-dimensional constructible set). Since, in general, P (Z) is not Zariski closed we must relax the projection condition to P (Z) = X . Under those conditions, Problem 1, for central projections, can be reformulated as the following real quantifier elimination problem: Reformulation 1 (straightforward approach). Given two rational maps Γ and γ, determine the truth of the statement: where U is the open subset of the set of 3 × 4 matrices defined by the condition that the left 3 × 3 minor is nonzero 5 .
Real quantifier elimination problems are algorithmically solvable [30]. A survey of subsequent developments in this area can be found, for instance, in [22] and [11]. Due to their high computational complexity (at least exponential) on the number of quantified parameters, it is crucial to reduce the number of quantified parameters. The main contribution of this paper is to provide another formulation of the problem which involves significantly smaller number of quantified parameters.
We first begin by reducing the projection problem to the problem of deciding whether the given planar curve X is equivalent to a curve in a certain family of planar curves under an action of the projective group in the case of central projections, and under the action of the affine group in the case of parallel projections. The family of curves depends on 3 parameters in the case of central projections, and on 2 parameters in the case of parallel projections.
Then we solve these group-equivalence problems by an adaptation of differential signature construction developed in [9] for solving local equivalence problems for smooth curves. We give an algebraic formulation of the signature construction and show that it leads to a solution of global equivalence problems for algebraic curves. For this purpose, we introduce a notion of a classifying set of rational differential invariants and obtain such sets of invariants for the actions of the projective and affine groups on the plane. Following this method for the case of central projections, when Z and X are rational algebraic curves, we define two rational signature maps S| X : R− → R 2 and S| Z : R 4 − → R 2 . Construction of these signature maps requires only differentiation and arithmetic operations and is computationally trivial. Then Problem 1 becomes equivalent to Reformulation 2 (signature approach). Given two rational maps S| X and S| Z , determine the truth of the statement: where U is a certain Zariski open subset of R 3 .
Note that Reformulations 1 and 2 have similar structure, but the former requires elimination of 14 parameters (p 11 , . . . , p 34 , s, t), while the latter requires elimination of only 5 parameters (c 1 , c 2 , c 3 , s, t). The case of parallel projection is treated in the similar manner and leads to the reduction of the number of real parameters that need to be eliminated from 10 to 4. 4 Recall that a set W ⊂ R n is Zariski closed if it equals to the zero set of a system of polynomials in n variables. The complement of a Zariski closed set is called Zariski open. A Zariski open set is dense in R n . A Zariski closure W of a set W is the smallest (with respect to inclusions) Zariski closed set containing W . 5 Note that, in Reformulation 1, we decide whether P (Z) ⊂ X , which appears to be weaker than P (Z) = X . However, they are actually equivalent. Since we assumed that Z is not a line, the set P (Z) is one-dimensional. Since X is rational algebraic curve, it is irreducible. Hence P (Z) ⊂ X ⇐⇒ P (Z) = X .
Although the relation between projections and group actions is known, our literature search did not yield algorithms that exploit this relationship to solve the projection problem for curves in the generic setting of cameras with unknown internal and external parameters. The goal of the paper is to introduce such algorithms. The significant reduction of the number of parameters in the quantifier elimination problem is the main advantage of such algorithms.
A preliminary report on this project appeared in the conference proceedings [8]. The current paper is significantly more comprehensive and rigorous, and also includes proofs omitted in [8]. Although the development of efficient implementation lies outside of the scope of this paper, we made a preliminary implementation of an algorithm based on signature construction presented here and an algorithm based on the straightforward approach over complex numbers. The Maple code and the experiments are posted on the internet [7]. The existence of a projection over complex numbers provides necessary but not sufficient condition for existence of a real projection.
The paper is structured as follows. In Section 2, we review the basic facts about projections and cameras. In Section 3, we prove projection criteria that reduce the central and the parallel projection problems to a certain modification of the projective and the affine group-equivalence problems for planar curves. This criteria are straightforward consequences of known camera decompositions [20]. In Section 4, we define the notion of a classifying set of rational differential invariants and present a solution of the global group-equivalence problem for planar algebraic curves based on these invariants. This is an algebraic reformulation of a solution of local groupequivalence problem for smooth curves [9]. In Section 5, combining the ideas from the previous two sections, we present and prove an algorithm for solving the projection problem for rational algebraic curves and give examples. In Section 6, we discuss possible adaptations of this algorithm to solve projection problem for non-rational algebraic curves and for finite lists of points. We discuss the subtle difference between the discrete (with finitely many points) and the continuous projection problems, showing that the solution for the discrete problem does not provide an immediate solution to the projection problem for the curves represented by samples of points. This leads us into the discussion of challenges that arise in application of our algorithms to reallife images, given by discrete pixels, and of ideas for overcoming these challenges. In Appendix A, we give explicit formulae for affine and projective classifying sets of rational invariants.

Projections and cameras
We embed R n into projective space PR n and use homogeneous coordinates on PR n to express the map (1) by matrix multiplication. Notation 1. Square brackets around matrices (and, in particular, vectors) will be used to denote an equivalence class with respect to multiplication of a matrix by a nonzero scalar. Multiplication of equivalence classes of matrices A and B of appropriate sizes is well-defined by With this notation, a point (x, y) ∈ R 2 corresponds to a point [x, y, 1] = [λx, λy, λ] ∈ PR 2 for all λ = 0, and a point (z 1 , z 2 , z 3 ) ∈ R 3 corresponds to [z 1 , z 2 , z 3 , 1] ∈ PR 3 . We will refer to the points in PR n whose last homogeneous coordinate is zero as points at infinity. In homogeneous coordinates projection (1) is a map [P ] : PR 3 → PR 2 given by where P is 3 × 4 matrix of rank 3 and superscript T denotes transposition. Matrix P has a 1dimensional kernel. Therefore, there exists a point [z 0 1 , z 0 2 , z 0 3 , z 0 4 ] ∈ PR 3 whose image under the projection is undefined (recall that [0, 0, 0] is not a point in PR 2 ). Geometrically, this point is the center of the projection.
In computer science literature (e.g. [20]), a camera is called finite if its center is not at infinity. A finite camera is modeled by a matrix P , whose left 3 × 3 submatrix is non-singular. Geometrically, finite cameras correspond to central projections from R 3 to a plane. On the contrary, an infinite camera has its center at an infinite point of PR 3 . An infinite camera is modeled by a matrix P whose left 3 × 3 submatrix is singular. An infinite camera is called affine if the preimage of the line at infinity in PR 2 is the plane at infinity in PR 3 . An affine camera is modeled by a matrix P whose last row is (0, 0, 0, 1). In this case map (1) becomes Geometrically, affine cameras correspond to parallel projections from R 3 to a plane 6 . Eight degrees of freedom reflect a choice of the direction of a projection, a position of the image plane and a choice of linear system of coordinates on the image plane. In fact, by allowing the freedom to choose a non-orthogonal coordinate system on the image plane, we may always assume that we project on one of the coordinate planes.

Definition 1. A set of equivalence classes [P ]
, where P is a 3 × 4 matrix whose left 3 × 3 submatrix is non-singular, is called the set of central projections and is denoted CP.
A set of equivalence classes [P ], where P has rank 3 and its last row is (0, 0, 0, λ), λ = 0, is called the set of parallel projections and is denoted PP.

Equation (1) determines a central projection when [P ]
∈ CP and it determines a parallel projection when [P ] ∈ PP. Sets CP and PP are disjoint. Projections that are not included in these two classes correspond to infinite, non-affine cameras. These are not frequently used in computer vision and are not considered in this paper.
3 Reduction to the group-equivalence problem Definition 2. We say that a curve Z ⊂ R 3 projects to X ⊂ R 2 if there exists a 3 × 4 matrix P of rank 3 such that X = P (Z), where Recall that for every algebraic curve X ⊂ R n there exists a unique projective algebraic curve [X ] ⊂ PR n such that [X ] is the smallest projective variety containing X (see [17] Definition 3. The projective group 7 PGL(n + 1) is a quotient of the general linear group GL(n + 1), consisting of (n + 1) × (n + 1) non-singular matrices, by a 1-dimensional abelian subgroup λI, where λ = 0 ∈ R and I is the identity matrix. Elements of PGL(n + 1) are equivalence classes [B] = [λB], where λ = 0 and B ∈ GL(n + 1).
The equi-affine group SA(n) is a subgroup of A(n) whose elements [B] have a representative B ∈ GL(n + 1) with determinant 1 and the last row equal to (0, . . . , 0, 1).
In homogeneous coordinates, the standard action of the projective group PGL(n + 1) on PR n is defined by multiplication The action (2) induces linear-fractional action of PGL(n + 1) on R n . 8 The restriction of (2) to A(n) induces an action on R n consisting of compositions of linear transformations and translations.
Definition 4. We say that two curves X 1 ⊂ R n and X 2 ⊂ R n are PGL(n + 1)-equivalent if there exists [A] ∈ PGL(n + 1), such that [ where G is a subgroup of PGL(n + 1), we say that X 1 and X 2 are G-equivalent and write Before stating the projection criteria, we make the following simple, but important observations.

Proposition 1.
(i) If Z ⊂ R 3 projects to X ⊂ R 2 by a parallel projection, then any curve that is A(3)equivalent to Z projects to any curve that is A(2)-equivalent to X by a parallel projection. In other words, parallel projections are defined on affine equivalence classes of curves.
(ii) If Z ⊂ R 3 projects to X ⊂ R 2 by a central projection then any curve in R 3 that is A(3)equivalent to Z projects to any curve on R 2 that is PGL(3)-equivalent to X by a central projection.  Theorem 1 (central projection criterion). A curve Z ⊂ R 3 projects to a curve X ⊂ R 2 by a central projection if and only if there exist c 1 , c 2 , c 3 ∈ R such that X is PGL(3)-equivalent to a planar curvẽ Proof . (⇒) Assume there exists a central projection [P ] such that X = P (Z). Then P is a 3×4 matrix, whose left 3 × 3 submatrix is non-singular. Therefore there exist c 1 , c 2 , c 3 ∈ R such that p * 4 = c 1 p * 1 + c 2 p * 2 + c 3 p * 3 , where p * j denotes the j-th column of the matrix P . We observe that where A is the left 3 × 3 submatrix of P , 8 Linear-fractional action of PGL(n + 1) on R n is an example of a rational action of an algebraic group on an algebraic variety. General definition of a rational action can be found in [ , where B and [P 0 C ] are given by (5).
We note that the map is a projection centered (−c 1 , −c 2 , −c 3 ) to the plane z 3 = 1 with coordinates on the image plane induced from R 3 , namely, x = z 1 and y = z 2 . We call (6) the canonical projection centered at (−c 1 , −c 2 , −c 3 ). It follows from decomposition (4) that any central projection is a composition of a translation in R 3 (corresponding to translation of the camera center to the origin), the canonical projection P 0 C centered at the origin, and a projective transformation on the image plane.
Remark 2 (CP is a homogeneous space). It is easy to check that the map  (4) shows that this action is transitive. The stabilizer of the canonical projection P 0 C centered at the origin is a 9-dimensional group The set of central projections CP is, therefore, diffeomorphic to the homogeneous space Theorem 2 (parallel projection criterion). A curve Z ⊂ R 3 projects to a curve X ⊂ R 2 by a parallel projection if and only if there exist c 1 , c 2 ∈ R and an ordered triplet Proof of rank 3. Therefore there exist 1 ≤ i < j ≤ 3 such that the rank of the submatrix p 1i p 1j p 2i p 2j is 2. Then for 1 ≤ k ≤ 3, such that k = i and k = j, there exist c 1 , c 2 ∈ R, such that Since Observe that [A] ∈ A(2) and the direct statement is proved.
(⇐) To prove the converse direction we assume that there exist [A] ∈ A(2), two real numbers c 1 and c 2 , and a triplet of indices such that , where a planar curveZ i,j,k c 1 ,c 2 is given by (8). Let B be a matrix defined in the first part of the proof. A direct computation shows that Z is projected to X by the parallel

Remark 3 (PP is a homogeneous space). The map Ψ : (A(2) × A(3)) × PP → PP defined by (7) for [P ] ∈ PP and ([A], [B]) ∈ A(2) × A(3) is an action of the product group A(2) × A(3)
on the set of parallel projections PP. Decomposition (9) shows that this action is transitive. The stabilizer of the orthogonal projection P 0 P is a 10-dimensional group The set of central projections PP is, therefore, diffeomorphic to the homogeneous space The families of curvesZ i,j,k c 1 ,c 2 given by (8) have a large overlap. The following corollary eliminates this redundancy and, therefore, is useful for practical computations.
Corollary 1 (reduced parallel projection criterion). A curve Z ⊂ R 3 projects to X ⊂ R 2 by a parallel projection if and only if there exist a 1 , a 2 , b ∈ R such that the curve X is A(2)-equivalent to one of the following planar curves: Proof . We first prove that for any permutation (i, j, k) of numbers (1, 2, 3) such that i < j, and for any c 1 , -equivalent to one of the sets listed in (10).
We can reverse the argument and show that any curve given by (10) is A(2)-equivalent to a curve from family (8). Then the reduced criteria follows from Theorem 2.
We note that the map is a parallel projection onto the z 1 , z 2 -coordinate plane in the direction of the vector (−a 1 , −a 2 , 1) with coordinates on the image plane induced from R 3 , namely, x = z 1 and y = z 2 . We call (11) the canonical projection in the direction (−a 1 , −a 2 , 1). The map x = z 1 + b z 2 , y = z 3 is a projection onto the z 1 , z 3 -coordinate plane in the direction of the vector (−b, 1, 0) with coordinates on the image plane induced from R 3 , namely, x = z 1 and y = z 3 , and finally the map x = z 2 , y = z 3 is the orthogonal projection onto the z 2 , z 3 -plane.

Solving the group-equivalence problem
Theorems 1 and 2 reduce the projection problem to the problem of establishing group-action equivalence between a given curve and a curve from a certain family. In this section, we give a solution of the group-equivalence problem for planar algebraic curves. In Section 4.1, we consider a rational action of an arbitrary algebraic group on R 2 and define a notion of a classifying set of rational differential invariants. In Section 4.2, we define a notion of exceptional curves with respect to a classifying set of invariants and define signatures of non-exceptional curves. We then prove that signatures characterize the equivalence classes of non-exceptional curves. In Section 4.3, we produce explicit formulae for classifying sets of rational differential invariants for affine and projective groups. In Section 4.4, we specialize our signature construction to rational algebraic curves and provide examples of solving group-equivalence problem for such curves. We note that differential invariants have long been used for solving the group-equivalence problem for smooth curves. Classical differential invariants were obtained with the moving frame method [10], which most often produces non-rational invariants. Signatures based on classical differential invariants were introduced in [9]. For smooth curves, the equality of signatures of two curves implies that there are segments of two curves that are group-equivalent (in other words, these curves are locally equivalent), but the entire curves may be non-equivalent. This is well illustrated in [25]. In a recent work [21], a significantly more involved notion of the extended signature was introduced to solve global equivalence problem for smooth curves.
The rigidity of irreducible algebraic curves allows us to use simpler signatures to establish global equivalence. Rationality of the invariants as well as explicit characterization of exceptional curves allows us to solve equivalence problem using standard computational algebra algorithms.

Definition of a classifying set of rational dif ferential invariants
A rational action of an algebraic group G on R 2 can be prolonged to an action on the n-th jet space J n = R n+2 with coordinates (x, y, y (1) , . . . , y (n) ) as follows 9 . For a fixed g ∈ G, let (x,ȳ) = g · (x, y). Thenx,ȳ are rational functions of (x, y) and g · x, y, y (1) , . . . , y (n) = x,ȳ,ȳ (1) , . . . ,ȳ (n) , whereȳ Here d dx is the total derivative, applied under assumption that y is function of x. 10 We note that a natural projection π n k : J n → J k , k < n is equivariant with respect to action (12). For general theory of rational actions see [28] and for general definitions and properties of the jet bundle and prolongations of actions see [26].
Definition 5. A function on J n is called a differential function. The order of a differential function is the maximum value of k such that the function explicitly depends on the variable y (k) . A differential function which is invariant under action (12) is called a differential invariant.
Remark 4. Due to equivariant property of the projection π n k : J n → J k , k < n, a differential invariant of order k on J k can be viewed as a differential invariant on J n for all n ≥ k.
Definition 7 (classifying set of rational differential invariants). Let r-dimensional algebraic group G act on R 2 . Let K and T be rational differential invariants of orders r − 1 and r,

Jets of curves and signatures
In this section, we assume that X ⊂ R 2 is an irreducible algebraic curve, different from a vertical line. Let F (x, y) be an irreducible polynomial, whose zero set equals to X . Then the derivatives of y with respect to x are rational functions on X , whose explicit formulae are obtained by implicit differentiation From the definition of the prolonged action (12), it follows that for all g ∈ G and p ∈ X the following equality holds, whenever both sides are defined.
Definition 9. A restriction of a rational differential function Φ : J n − → R to a curve X is a composition of Φ with the n-th jet of curve, i.e. Φ| X = Φ • j n X . If defined, such composition produces a rational function X − → R. Definition 10. Let I = {K, T } be a classifying set of rational differential invariants for G-action (see Definition 7). Then a point p ∈ X is called I-regular if: (1) p is a non-singular point of X ; An algebraic curve X ⊂ R 2 is called non-exceptional with respect to I if all but a finite number of its points are I-regular.
Lemma 1. Let I = {K, T } be a classifying set of rational differential invariants (see Definition 7). Let X ⊂ R 2 be a non I-exceptional curve defined by an irreducible implicit equation (1) K| X and T | X are rational functions on X and therefore there exist polynomials k 1 , k 2 ∈ R[x, y] with no non-constant common factors modulo F , and polynomials t 1 , t 2 ∈ R[x, y] with no non-constant common factors modulo F , such that (2) The Zariski closure S X of the image of the rational map S| X : (3) dim S X = 0 if and only if K X and T X are constant functions on X and dim S X = 1 otherwise. In the latter case, S X is an irreducible algebraic planar curve, i.e. a zero set of an irreducible polynomialŜ X (κ, τ ).
(1) A function K| X : X − → R is a composition of rational maps (see Definitions 8 and 9). Since X is non-exceptional this composition is defined for all but finite number of points on X and therefore K| X is a rational function. The same argument shows that T | X is a rational function. Since X is defined by F (x, y) = 0, where F is irreducible, there exist polynomials k 1 , k 2 ∈ R[x, y] with no non-constant common factors modulo F , and polynomials t 1 , t 2 ∈ R[x, y] with no non-constant common factors modulo F , such that (14) holds.
(2) By definition, and therefore is the projection of the variety defined by X, given by (15), to the κ, τ -plane. It is the standard theorem in the computational algebraic geometry (see, for instance, [12,Chapter 5]) that the Zariski closure S X of this projection is the variety of the elimination ideal X ∩ R[κ, τ ].
(3) It is not difficult to prove, in general, that the Zariski closure of the image of an irreducible variety under a rational map is an irreducible variety. The dimension of this closure is less or equal than the dimension of the original variety. Thus S X is an irreducible variety of dimension zero when the signature map S| X = (K| X , T | X ) is a constant map and of dimension one otherwise. In the latter case S X is an irreducible algebraic planar curve and, therefore, is a zero set of a single irreducible polynomial.
Definition 11. Let I = {K, T } be a classifying set of rational differential invariants with respect to G-action and X be non-exceptional with respect to I.
(1) The rational map S| X : X − → R 2 defined by S| X (p) = (K| X (p), T | X (p)) for p ∈ X is called the signature map.
(2) The image of S| X is called the signature of X and is denoted by S X .
Theorem 3 (group-equivalence criterion). Assume that irreducible algebraic curves X 1 and X 2 are non-exceptional with respect to a classifying set of rational differential invariants I = (K, T ) under the G-action. Then X 1 and X 2 are G-equivalent if and only if their signatures are equal: Remark 5. Assume that two curves X 1 and X 2 have non-constant signature maps, and so the closures of their signatures are zero sets of polynomialsŜ X 1 (κ, τ ) andŜ X 2 (κ, τ ), respectively. The equality of signatures S X 1 = S X 2 , implies thatŜ X 1 (κ, τ ) is equal up to a constant multiple toŜ X 2 (κ, τ ). The converse is true over C, but not over R, because the latter is not an algebraically closed field (see Example 1 below and [12] for general results on implicitization).
Proof of Theorem 3. Direction =⇒ follows immediately from the definition of invariants. Below we prove ⇐=. We notice that there are two cases. Either K| X 1 and K| X 2 are constant maps on X 1 and X 2 , respectively, and these maps take the same value. Otherwise both K| X 1 and K| X 2 are non-constant rational maps on X 1 and X 2 , respectively. Case 1: There exists κ 0 ∈ R such that K| X 1 (p 1 ) = κ 0 and K X 2 (p 2 ) = κ 0 for all p 1 ∈ X 1 and for all p 2 ∈ X 2 . Since X 1 and X 2 are non-exceptional, we may fix I G -regular points p 1 = (x 1 , y 1 ) ∈ X 1 and p 2 = (x 2 , y 2 ) ∈ X 2 . Then, due to separation property of the invariant K, ∃ g ∈ G such that j r−1 We consider a new algebraic curve X 3 = g · X 2 . Then due to (13), we have Since p 1 is a I-regular point of X 1 , it follows from (16) that it is also a I-regular point of X 3 and, in particular, is non-singular. Let F 1 (x, y) = 0 and F 3 (x, y) = 0 be implicit equations of X 1 and X 3 , respectively. We may assume that Functions y = f 1 (x) and y = f 3 (x) are local analytic solutions of differential equation with the same initial condition f 3 (x 1 ), k = 0, . . . , r − 1 prescribed by (16). From the I-regularity of p 1 , we have that ∂K ∂y (r−1) p (r−1) = 0 and so (17) can be solved for y (r−1) : where function H is smooth in a neighborhood p (r−1) ∈ J r−1 . From the uniqueness theorem for the solutions of ODEs, it follows that f 1 (x) = f 3 (x) on an interval I x 1 . Since X 1 and X 3 are irreducible algebraic curves it follows that X 1 = X 3 . Therefore, X 1 = g · X 2 . Case 2: K| X 1 and K| X 2 are non-constant rational maps. Then S X 1 = S X 2 is a one-dimensional set that we will denote S. LetŜ(κ, τ ) = 0 be the implicit equation for S (see Lemma 1). We know that ∂Ŝ ∂τ (κ, τ ) = 0 for all but finite number of values (κ, τ ), because, otherwise, K| X 1 and K| X 2 are constant maps. Therefore, since the curves are non-exceptional, there exists I-regular points p 1 = (x 1 , y 1 ) ∈ X 1 and p 2 = (x 2 , y 2 ) ∈ X 2 such that Due to separation property of the set I G = {K, T }, ∃ g ∈ G such that j r X 1 (p 1 ) = g · [j r X 2 (p 2 )]. We consider a new algebraic curve X 3 = g · X 2 . Then due to (13), we have From (18), (19) and I-regularity of the point p 1 ∈ X 1 it follows that Since p 1 is a I-regular point of X 1 , it follows from (19) that it is also a I-regular point of X 3 and, in particular, is non-singular. Let F 1 (x, y) = 0 and F 3 (x, y) = 0 be implicit equations of X 1 and X 3 , respectively. We may assume that analytic on an interval I x 1 , such that F 1 (x, f 1 (x)) = 0 and F 3 (x, f 3 (x)) = 0 for x ∈ I 1 . Then functions y = f 1 (x) and y = f 3 (x) are local analytic solutions of differential equation S K x, y, y (1) , . . . , y (r−1) , T x, y, y (1) , . . . , y (r) = 0 (21) with the same initial condition f (k) 3 (x 1 ), k = 0, . . . , r, dictated by (19). Since ∂Ŝ ∂τ (κ 0 , τ 0 ) = 0 and ∂T ∂y (r) p (r) = 0 (see (18) and (20)), equation (21) can be solved for y (r) : where function H is smooth in a neighborhood p (r) ∈ J r . From the uniqueness theorem for the solutions of ODE it follows that f 1 (x) = f 3 (x) on an interval I x 1 . Since X 1 and X 3 are irreducible algebraic curves it follows that X 1 = X 3 . Therefore, X 1 = g · X 2 .
From the proof of Theorem 3 we may deduce the following: Then S| X 2 = S| X 1 if and only if K| X 2 (p) = κ 0 for all p ∈ X 2 .

Classifying sets of invariants for af f ine and projective actions
In this section, we construct a classifying set of rational differential invariants for affine and projective actions. We will build them from classical invariants from differential geometry [4,10]. We start with Euclidean curvature which is, up to a sign 11 , a Euclidean differential invariant of the lowest order. Higher order Euclidean differential invariants are obtained by differentiating the curvature with respect to the Euclidean arclength ds = 1 + [y (1) dκ dx , κ ss = dκs ds , . . . . Equi-affine and projective curvatures and infinitesimal arclengths are well known, and can be expressed in terms of Euclidean invariants [13,24]. In particular, SA(2)-curvature µ and infinitesimal SA(2)-arclength dα are expressed in terms of their Euclidean counterparts as follows By considering effects of scalings and reflections on SA(2)-invariants, we obtain two lowest order A(2)-invariants They are of order 5 and 6, respectively, and are rational functions in jet variables. PGL(3)-curvature η and infinitesimal arclength dρ are expressed in terms of their SAcounterparts The two lowest order rational PGL(3)-invariants are of differential order 7 and 8, respectively Explicit formulae for invariants in terms of jet coordinate are given by (46) and (47)  (2) The set I PGL = {K P , T P } given by (24) is classifying for the PGL(3)-action on R 2 .
Proof . We start by introducing differential functions (1) We note that dim A(2) = 6. We will prove the separation property of I A = {K A , T A } given by (46) on a Zariski open subset W 6 = p (6) ∈ J 6 y (2) = 0 and ∆ 1 = 0 of J 6 , where ∆ 1 is given by (25), and the separation property of K A on W 5 = π 6 5 (W 6 ) ⊂ J 5 . An affine transformation can be written as a product of a Euclidean, an upper triangular area preserving linear transformation, a scaling and a reflection where c 2 + s 2 = 1, = ±1 and h = 0. 11 The sign of κ changes when a curve is reflected, rotated by π radians or traced in the opposite direction. A rational function κ 2 is invariant under the full Euclidean group.
(2) We note that dim PGL(3) = 8. We will prove the separation property of I P = {K P , T P } given by (47)   where c 2 + s 2 = 1, e = 0 and g = 0. In the first part of the proof, we have shown that the two matrices on the right can bring a point p (8) ∈ W 8 to the point p 2 , y . A direct computation shows that We observe that y can be uniquely determined from the values of invariants K P and T P and therefore we can complete the proof of the separation property of K P on W 7 and the separation property of {K P , T P } on W 8 by an argument similar to the one presented in part 1 of the proof. Theorem 4, in combination with Theorem 3, leads to a solution for the projective and the affine equivalence problems for non-exceptional curves. The following proposition describes exceptional curves. Proof . In the affine case, we note that j 5 X (p) ∈ J 5 \ W 5 and j 6 X (p) ∈ J 6 \ W 6 if an only if κ| X (p) = 0 or µ| X (p) = 0. If κ| X (p) = 0 for more than finite number of points on X , then X is a line, if µ| X (p) = 0 for more than finite number of points on X then it is a parabola (see Proposition 3). From the explicit formulae (46) we see that These rational functions are not identically zero on X if neither ∆ 2 | X = 0 nor y (2) | X = 0, or equivalently X is not a line or a conic. Therefore, if X is not a line or a conic, it is {K A , T A }regular. In the projective case, we note that j 7 X (p) ∈ J 7 \ W 7 and j 8 X (p) ∈ J 8 \ W 8 if an only if κ| X (p) = 0 or µ α | X (p) = 0. If µ α | X (p) = 0 for more than finite number of points on X then X is a conic (see Proposition 3). From the explicit formulae (47) and (48), we see that ∂K P ∂y (7) p (7) = 0 and ∂T P ∂y (8) p (8) = 0 for all p (7) ∈ W 7 and all p (8) ∈ W 8 . Therefore, if an algebraic curve is not a line or a conic it is {K P , T P }-regular.
Remark 6. It is well known (and easy to prove) that the set of all lines constitutes a single equivalence class (an orbit) under both A(2, R)-action and PGL(3, R)-action. Under the A(2, R)action the set of all conics splits into three orbits: the set of all parabolas, the set of all hyperbolas and the set of all ellipses, although under the A(2, C)-action the set of all hyperbolas and ellipses comprise a single orbit. All conics constitute a single orbit under PGL(3, R)-action, see [3,Section II.5]. Therefore an I A -exceptional algebraic curve is not A(2, C)-equivalent to a non I Aexceptional algebraic curve and an I PGL -exceptional algebraic curve is not PGL(3, C)-equivalent to a non I PGL -exceptional algebraic curve.
The projective and the affine equivalence problems for exceptional curves can be easily solved using the above remark and the following proposition.
Proposition 3. Let X be an irreducible planar algebraic curve. Then (1) X is a line ⇐⇒ κ| X = 0; (2) X is a parabola ⇐⇒ µ| X = 0; (3) X is a conic ⇐⇒ µ α | X = 0, where "= 0" means that a corresponding rational function is zero at every point of X . The above statements are true for both real and complex algebraic curves. If X is a real algebraic curve, then it is a hyperbola if and only if µ| X is a negative constant, while X is an ellipse if and only if µ| X is a positive constant.
The proof of part (1) of Proposition 3 follows immediately from (22). Proofs of the other statements can be found in [18,Section 7.3]. The following corollary is obtained from Proposition 3 using explicit formulae for equi-affine invariants where ∆ 1 and ∆ 2 are given by (25) and (26).
Corollary 3. Let X be an irreducible planar algebraic curve. Assume that X is not a vertical line. Let ∆ 1 and ∆ 2 be given by (25) and (26). Then (1) The restrictions ∆ 1 | X and ∆ 2 | X are rational functions on X .
(2) ∆ 1 | X is a zero function if and only if X is a line or a parabola. Otherwise, restrictions of A(2)-invariants K A | X and T A | X are rational functions of X . 13 (3) ∆ 2 | X is a zero function if and only if X is a line or a conic. Otherwise K P | X and T P | X are rational functions on X .

Signatures of rational curves
In this section, we adapt the signature constructions to rational algebraic curves and give examples of solving the affine and projective equivalence problems using signatures. We adapt Definition 9 to rational curves as follows. Let X is a rational curve parameterized by γ(t) = (x(t), y(t)), such that x(t) is not a constant function 14 . Make a recursive definition of the following rational functions of t: 13 KA|X and TA|X are defined and are both zero functions when X is either an ellipse or a hyperbola. We know, however, that ellipses and hyperbolas are not A(2, R)-equivalent. There is no contradiction with Theorem 3, because ellipses and hyperbolas are IA-exceptional per Definition 10.
14 Equivalently, X is not a vertical line. where˙denotes the derivative with respect to the parameter. Let Φ be a rational differential function. Then the restriction of Φ| γ is computed by substituting (27) into Φ. If defined, Φ| γ is a rational function of t. Recalling Definition 11 of signature and Corollary 3, we conclude that: Proposition 4. Let X be an irreducible planar algebraic curve parameterized by a rational map γ(t). Assume where ∆ 2 is given by (26). Then The signatures can be computed either using inductive formulae for invariants given by (23) and (24), or explicit formulae given by (46) The projective signature of X 1 is parameterized by invariants while the signature of X 2 is parameterized by invariants (s + 1) 3 (s 6 + 6s 5 + 15s 4 + 19s 3 + 12s 2 + 3s + 1) 3 (s 2 + 3s + 3) 8 s 8 , Although it is not obvious, the curves defined by parameterizations (31) and (32) satisfy the same implicit equation This is a sufficient condition for the equality of signatures S X 1 and S X 2 over complex numbers, but it is not sufficient over reals. We can look for a real rational reparameterization t = φ(s) by solving a system of two equations K P | α (t) = K P | β (s) and T P | α (t) = T P | β (s) for t in terms of s. One can check that t = s + 1 provides a desired reparameterization. Thus S X 1 = S X 2 and hence, by Theorem 3 Reparameterization t = s + 1 allows us to find pairs of points on X 1 and X 2 which can be transformed to each other by PGL(3)-transformation that brings X 1 to X 2 . Since four of such pairs in generic position uniquely determines a transformation we can compute that X 2 can be transformed to X 1 by a transformation It turns out that cubic X 3 has constant PGL(3)-invariants and therefore its signature degenerates to a point. Thus, by Theorem 3, X 3 is not PGL(3)equivalent to either X 1 or X 2 . To underscore the difference between the solution of the equivalence problems over real and over complex numbers, we will consider one more cubic X 4 pictured on Fig. 3, whose rational parameterization is given by The signature of X 4 is parameterized by invariants Invariants K P | δ and T P | δ satisfy the implicit equation (33). Since the signatures of X 1 and X 2 satisfy the same implicit equation, we can conclude that, over the complex numbers, X 4 is projectively equivalent to both X 1 and X 2 . In fact, we can find that for (where we are free to choose any of the three cubic roots) the complex projective transformation transforms X 4 to X 2 . Our attempt to solve T P | δ (u) = T P | β (s) and T P | δ (u) = T P | β (s) for u in terms of s gives a rather involved rational complex reparameterization that transforms signature map of δ into the signature map of β, but no real reparameterization. Therefore Example 2 (A(2)-equivalence problems). We can again consider three cubics pictured on Fig. 2, but now ask if they are A(2)-equivalent. Recalling that A(2) is a subgroup of PGL(3) we can immediately conclude from the previous example that X 3 is not A(2)-equivalent to either X 1 or X 2 . To resolve the equivalence problem for X 1 and X 2 we need to compute their affine signatures. The affine signatures of X 1 is parameterized by invariants It turns out, that restrictions of both invariants, K A | β (s) and T A | β (s), are non-constant functions of s. Hence, X 1 and X 2 have different affine signatures. Therefore In fact, affine signatures for all four curves X 1 , X 2 , X 3 and X 4 have different implicit equations and therefore no two of them are affine equivalent neither over real numbers, nor over complex numbers.

Algorithm and examples
The algorithms for solving projection problems are based on a combination of the projection criteria of Section 3 and the group equivalence criterion of Section 4.

Central projections
The following algorithm is based on the central projection criterion stated in Theorem 1 and the group-equivalence criterion stated in Theorem 3. In the algorithm, we compute restrictions of differential functions ∆ 2 , K P and T P to a curve parameterized by γ(t) and to a family of curves parameterized by (c, s), where c = (c 1 , c 2 , c 3 ) determines a member of the family and s serves to parameterize a curve in the family. These restrictions are computed by substitution of (27) into formula (26) for ∆ 2 and into (47) and (48) for K P and T P , respectively. When the restrictions to (c, s) are computed, derivatives in (27) are taken with respect to s. One can use general real quantifier elimination packages, such as Reduce package in Mathematica, to perform the steps involving real quantifier elimination problems. To make an efficient implementation, one needs to take into account specifics of the problems at hand. This lies outside of the scope of the current paper and is a subject of our future work.
Output: The truth of the statement: ∈ CP, such that X = P (Z). Steps: 1.
[If X is a line, then determine whether Z is coplanar.] 6. [Compute the rational invariants.] compute K P | γ , K P | , T P | γ and T P | using the formulae (47), (48) in Appendix A.
7. [Determine whether, for some c, the signature of the Zariski closureZ c of the curve parameterized by (c, s) equals to the signature of X .] if K P | γ is a constant rational function, then return the truth of the statement else return the truth of the statement ∃ c ∈ R 3 : c is generic ∧ K P | is not a constant rational function, where we define Proof of Algorithm 1. On the first step of Algorithm 1, we consider the case when X is a line. Then Z can be projected to X if and only if Z is coplanar. Both conditions can be checked by computing determinants of certain matrices. If X is not a line we define, on Step 2, a rational map that parameterizes a family of curves. On Step 3, we compute restrictions of differential function ∆ 2 to γ(t) and (c, s). We remind the reader, that in the latter case derivatives are taken with respect to s. Since on this step we know that X is not a line and there are values of c for whichZ c is not a line, these restrictions are defined. On Step 4, we consider the case when X is a conic. Equivalently, by Corollary 3, 0. Then Z can be projected to X if and only if ∃ c such that the Zariski closureZ c of the curve parameterized by (c, s) is projectively equivalent to X and therefore is a conic (see Remark 6). Equivalently, 0. If X is not a conic, we reach Step 5, where we check for a possibility thatZ c is a conic for all parameters c (equivalently ∆ 2 | = R(c,s) 0) and therefore it can not be projected to X , which at this step is known to have a higher degree. If that is not the case, we proceed to Step 6, where we compute restrictions of differential invariants K P and T P to γ(t) and (c, s).
Since on this step we know that X is of degree greater than 2 and there are values of c for whichZ c is of degree greater than 2, these restrictions are defined. On Step 7, where we know that X is non-exceptional and decide if there exists c ∈ R 3 such that: (1)Z c is non-exceptional which is equivalent to condition (39); (2) the signatures of the algebraic curves X andZ c are the same. On Step 6, we computed rational functions K P | (c, s) and T P | (c, s). We need to show that if we substitute a specific value c = c 0 ∈ R 3 into these functions we obtain the same rational functions of s as we would obtain by computing restrictions of the invariants to the curve parameterized by (c 0 , s). For generic values of c defined by (39), we can show that this is true. Indeed, it is well known that taking derivatives with respect to one of the variables and specialization of other variables are commutative operations. From condition (39) it follows that the curveZ c is not a line and so the denominators of (27) are not annihilated by such specialization. Therefore the restriction of jet variables to a curve parameterized by (c, s) commutes with a specialization of c. From condition (39) it also follows that the denominators of (47) and (48) are not annihilated by a generic specialization. Therefore, for a generic c 0 , rational functions K P | (c 0 , s) and T P | (c 0 , s) equal to the restrictions of the invariants K P and T P to (c 0 , s). To decide equality of signatures of the algebraic curve parameterized by γ(t) and the curveZ c we use Corollary 2 with (37) analyzing the case of constant invariant K P | X and (38) the case of non-constant invariant K P | X .
Remark 7 (reconstruction). If the output is true, then, in many cases, in addition to establishing the existence of c 1 , c 2 , c 3 in Step 4 or 7 of the Algorithm 1, we can find at least one of such triplets explicitly. We then know that Z can be projected to X by a projection centered at (−c 1 , −c 2 , −c 3 ). We can also, in many cases, determine explicitly a transformation [A] ∈ PGL(3) that maps X to the Zariski closureZ c of the image of the map (c, s). We then know that Z can be projected to X by the projection projects to any of the four cubics planar cubics described in Example 1. We start with cubics X 1 , X 2 pictured on Fig. 2, whose parameterizations are given by (28) and (29), respectively. Since these two cubics are PGL(3)-equivalent then the twisted cubic can and X 2 , centered at (−1, 0, 0), there is a complex projection centered at (−1, 0, 0) from Z to X 4 . We also established, in Example 1 that and, therefore, there is no real projection centered at (−1, 0, 0) from Z to X 4 which, as we have seen, does not preclude the existence of a real projection with a different center (−1, −1, 0). Finally we consider X 3 , pictured on Fig. 2 with parameterization (30). From Example 1 we know that invariants for X 3 are constants, see (35). Following Algorithm 1, we need to decide whether there exists c ∈ R 3 , such that (c, s) does not parameterize a line or a conic and This is, indeed, true for c 1 = c 2 = 0 and c 3 = 1. This is sufficient to conclude the existence of a real projection. We can check that Z can be projected to X 3 by the a central projection x = z 1 z 3 +1 , y = z 2 z 3 +1 . The above example underscores Remark 1: although the twisted cubic can be projected to each of the planar curves X 1 , X 2 , X 3 and X 4 , the planar curve X 3 is not PGL(3, C)-equivalent to X 1 , or X 2 , or X 4 . Also X 4 is not PGL(3, R)-equivalent to X 1 or X 2 . Since all conics are PGL(3)-equivalent, we established that the twisted cubic can be projected to any conic. Moreover, we established that the twisted cubic is projected to a conic if and only if the center of the projection lies on the twisted cubic.
So far in all our examples the outcome of the projection algorithm was true. Below is an example with false outcome.
Example 5. We will show that the twisted cubic (40) can not be projected to the quintic ω(t) = (t, t 5 ). The signature of the quintic is parameterized by a constant map K P | ω (t) = 1029 128 and T P | ω (t) = 0, ∀ t.
Following Algorithm 1, we need to decide whether there exists c ∈ R 3 , such that (c, s) does not parameterize a line or a conic and Substitution of several values of s in the above equation yields a system of polynomial equations for c 1 , c 2 , c 3 ∈ R that has no solutions. We conclude that there is no central projection from Z to ω(t) = (t, t 5 ). This outcome is, of course, expected, because a cubic can not be projected to a curve of degree higher than 3.

Parallel projections
The algorithm for parallel projections is based on the reduced parallel projection criterion stated in Corollary 1. This algorithm follows the same logic but has more steps than Algorithm 1, because we need to decide whether a given planar curve is A(2)-equivalent to a curve parameterized by α(s) = (z 2 (s), z 3 (s)), or to a curve parameterized by β(b, s) = (z 1 (s) + bz 2 (s), z 3 (s)) for some b ∈ R, or to a curve parameterized by δ(a 1 , a 2 , s) = (z 1 (s) + a 1 z 3 (s), z 2 + a 2 z 3 (s)) for some a = (a 1 , a 2 ) ∈ R 2 . Since the affine transformations are considered, projective invariants are replaced with affine invariants (see (46)). Due to its similarity to Algorithm 1, we refrain from writing out the steps of the parallel projection algorithm and content ourselves with presenting examples. A Maple implementation of the parallel projection algorithm over complex numbers is included in [7].
Example 6. As a follow-up to Example 3, it is natural to ask whether the twisted cubic can be projected to any of the cubics considered in that example by a parallel projection. Our implementation of the parallel projection algorithms [7] provides a negative answer to this question, the twisted cubic can not be projected to X 1 , or X 2 or X 3 , or X 4 under a parallel projection even over complex numbers. There are plenty of rational cubics to which the twisted cubic can be projected by a parallel projection. For example, the orthogonal projection to the z 1 , z 3 -plane projects the twisted cubic to (s 3 , s).

Example 7.
As a follow-up to Example 4, we consider the problem of the parallel projection of the twisted cubic to a conic. To answer this question we first consider a curve α(s) = (z 2 (s), z 3 (s)) = (s 2 , s), which is a parabola, and therefore the twisted cubic can be projected to any parabola. We then define a one-parametric family of curves β(b, s) = z 1 (s) + bz 2 (s), z 3 (s) = s 3 + bs 2 , s and a two-parametric family δ(a, s) = z 1 (s) + a 1 z 3 (s), z 2 + a 2 z 3 (s) = s 3 + a 1 s, s 2 + a 2 s .
Obviously, there are no parameters a or b such that a curve in those two families becomes a conic (we can check this formally by computing rational functions ∆ 2 | α and ∆ 2 | β and seeing that there are no values of a or b that will make them zero functions of s). Thus we conclude that the twisted cubic can not be projected to either a hyperbola or an ellipse by a parallel projection.
For a less obvious example and to finally get away from the twisted cubic we consider the following: Example 8. We would like to decide whether the spatial curve Z parameterized by Γ(s) = s 4 , s 2 , s , s ∈ R can be projected to X parameterized by The signature of X is parameterized by invariants K A | γ (t) = −1600 (24t 5 + 51t 4 + 57t 3 + 33t 2 + 9t + 1) 2 (24t 3 + 32t 2 + 24t + 5) 3 , T A | γ (t) = −40 448t 7 + 1304t 6 + 1956t 5 + 1735t 4 + 915t 3 + 287t 2 + 51t + 4 (24t 3 + 32t 2 + 24t + 5) 2 .  is not A(2)-exceptional and its invariants are given by Independently of the value of b all curves in the family have the same signature equation which is different from the implicit equation for the signature for X , and therefore the curves from this family are not A(2)-equivalent to X . We finally consider a two-parametric family δ(a, s) = z 1 (s) + a 1 z 3 (s), z 2 + a 2 z 3 (s) = s 4 + a 1 s, s 2 + a 2 s and find out that for a 1 = 20 and a 2 = 2 the implicit equations of the signatures of X and the curve parameterized by δ(a, s) are the same. Thus we conclude that Z projects to X by a parallel projection over the complex numbers.
By solving equations K A | δ (20, 2, s) = K A | γ (t) and T A | δ (20, 2, s) = T A | γ (t) for s in terms of t, we find a real reparameterization s = 1 + 4t which matches the signature maps of two curves, i.e. S| γ (t) = S| δ (20, 2, 1 + 4 t). Thus the signatures of X and the curve parameterized by δ(20, 2, s) are identical and, therefore, Z projects to X by a parallel projection over the real numbers. We proceed to find a projection. Since S| γ (t) = S| δ (20, 2, 1 + 4t), we not only know that the exists A(2)-transformation A that maps γ(t) to δ 20, 2, (1 + 4t) , but that for any value of t the transformation A maps the point γ(t) to the point δ(20, 2, (1 + 4t). Three pairs of points in general position are sufficient to recover an affine transformation. Using three pairs of points corresponding to t = 0, 1, 2 we find the affine transformation x = 256x + 96y + 21,ȳ = 16y + 3 On Step 2 of Algorithm 1, where we are describing the family of curvesZ c 1 ,c 2 ,c 3 , we must produce all three possible implicit equations A c (x, y) = 0, when c 3 3 − c 1 = 0 and c 2 3 + c 2 = 0, B c (x, y) = 0, when c 3 3 − c 1 = 0, but c 2 3 + c 2 = 0 and C c (x, y) = 0, when c 3 3 − c 1 = 0 and c 2 3 + c 2 = 0. Then the rest of the algorithm should run for each of these cases with appropriate conditions on c.
We found that, for majority of the examples, producing the set of all possible implicit equations for the curvesZ c 1 ,c 2 ,c 3 (3) from the given implicit equations of an algebraic curve Z ⊂ R 3 to be a very challenging computational task.

Projection problem for f inite lists of points
The projection criterion of Theorem 1 adapts to finite lists of points as follows: The proof of Theorem 5 is a straightforward adaptation of the proof of Theorem 1. The parallel projection criteria for curves, given in Theorem 2 and Corollary 1, are adapted to the finite lists in an analogous way.
The central and the parallel projection problems for lists of m points is therefore reduced to a modification of the problems of equivalence of two lists of m points in PR 2 under the action of PGL(3) and A(2) groups, respectively. A separating set of invariants for lists of m points in PR 2 under the A(2)-action consists of ratios of certain areas and is listed, for instance, in Theorem 3.5 of [27]. Similarly, a separating set of invariants for lists of m ordered points in PR 2 under the PGL(3)-action consists of cross-ratios of certain areas and is listed, for instance, in Theorem 3.10 in [27]. In the case of central projections we, therefore, obtain a system of polynomial equations on c 1 , c 2 and c 3 that have solutions if and only if the given set Z projects to the given set X and an analog of Algorithm 1 follows. The parallel projections are treated in a similar way. Details of this adaptation appear in the dissertation [6].
We note, however, that there are other computationally efficient solution of the projection problem for lists of points. In their book [20], Hartley and Zisserman describe algorithms that are based on straightforward approach: one writes a system of equations that relates pairs of the corresponding points in the lists Z ⊂ R 3 and X ⊂ R 3 and determines if this system has a solution. The book also describes algorithms for finding parameters of the camera that produces an optimal (under various criteria) but not exact match between the object and the image.
In [2,1], the authors present a solution to the problem of deciding whether or not there exists a parallel projection of a list Z = (z 1 , . . . , z m ) of m points in R 3 to a list X = (x 1 , . . . , x m ) of m points in R 2 , without finding a projection explicitly. They identify the lists Z and X with the elements of certain Grassmanian spaces and use Plüker embedding of Grassmanians into projective spaces to explicitly define the algebraic variety that characterizes pairs of sets related by a parallel projection. They also define of an object/image distance between lists of points Z ⊂ R 3 and X ⊂ R 2 , such that the distance is zero if and only if there exists a parallel projection that maps Z to X. As illustrated by Fig. 7, a solution of the projection problem for lists of points does not provide an immediate solution to the discretization of the projection problem for curves. Indeed, let Z = (z 1 , . . . , z m ) be a discrete sampling of a spatial curve Z and X = (x 1 , . . . , x m ) be a discrete sampling of a planar curve X . It might be impossible to project the list Z onto X, even when the curve Z can be projected to the curve X .

Applications: challenges and ideas
A discretization of projection algorithms for curves will pave a road to real-life applications and is a topic of our future research. Such algorithms may utilize invariant numerical approximations of differential invariants presented in [5,9]. Differential invariants and their approximations are highly sensitive to image perturbations and, therefore, pre-smoothing of the data is required to use them. Since affine and projective invariants involve high order derivatives, this approach may not be practical. Other types of invariants, such as semi-differential (or joint) invariants [27,32], integral invariants [16,19,29] and moment invariants [31,33] are less sensitive to image perturbations and may be employed to solve the group-equivalence problem.
One of the essential contributions of [1,2] is the definition of an object/image distance between ordered sets of m points in R 3 and R 2 , such that the distance is zero if and only if these sets are related by a projection. Since, in practice, we are given only an approximate position of points, a "good" object/image distance provides a tool for deciding whether a given set of points in R 2 is a good approximation of a projection of a given set of points in R 3 . Defining such object/image distance in the case of curves is an important direction of further research.