GB2396091A - Generating enhanceable images - Google Patents

Generating enhanceable images Download PDF

Info

Publication number
GB2396091A
GB2396091A GB0403104A GB0403104A GB2396091A GB 2396091 A GB2396091 A GB 2396091A GB 0403104 A GB0403104 A GB 0403104A GB 0403104 A GB0403104 A GB 0403104A GB 2396091 A GB2396091 A GB 2396091A
Authority
GB
United Kingdom
Prior art keywords
image
vertices
ordinates
existing
vertex
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
GB0403104A
Other versions
GB2396091B (en
GB0403104D0 (en
Inventor
Gordan Jonathan Grove
Sean Tristram Leguay Ellis
Paul Charles Gregory
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Superscape Group PLC
Original Assignee
Superscape Group PLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from GBGB9926131.5A external-priority patent/GB9926131D0/en
Application filed by Superscape Group PLC filed Critical Superscape Group PLC
Publication of GB0403104D0 publication Critical patent/GB0403104D0/en
Publication of GB2396091A publication Critical patent/GB2396091A/en
Application granted granted Critical
Publication of GB2396091B publication Critical patent/GB2396091B/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • G06T17/205Re-meshing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/08Bandwidth reduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/52Parallel processing

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Abstract

Generating enhancable images<WC 1> <WC 1>is achieved by comparing, at each iteration, an enhanced form of the image with a target image, also stored in a memory of the, to reduce the difference between the enhanced form of the image the target image, to thereby obtain data defining an image which, when enhanced, will approximate the target image. Data defining an image comprises a plurality of co-ordinates defining, in three-dimensional space, the vertices of a plurality of polygonal surface facets of the image. According to a first embodiment, the image is enhanced by modifying the image by introducing new vertices between existing vertices. The new vertices are positioned to subdivide the polygonal facets of the image according the co-ordinates of the existing vertices, the co-ordinates of vertices neighbouring existing vertices, and according to the value of a variable associated with the polygon edge which joins together existing vertices and the values of variables associated with the polygon edges which join existing vertices to neighbouring vertices. A second embodiment has existing vertices moved, according to the same criteria.

Description

GB 2396091 A continuation (74) Agent and/or Address for Service: Parabola
1 Richfield Place, Richfield Avenue,
READING, Berkshire, RG1 HEM, United Kingdom
Method and Apparatus for Generating Enhancable Images The present invention relates to a method and apparatus for generating distributable and displayable digital images.
It is known to provide a distributed computer network wherein a digital image is transmitted, on demand, from a first computer to a second computer.
10 However, for a high resolution image stored in a conventional format, the time taken to transmit the data defining that image can often be unacceptably high. This problem is exacerbated where an animated display of a three dimensional object is to be provided, as a plurality of 15 different images of the object must be transmitted over the network. We have now devised an arrangement which overcomes the drawbacks associated with existing distributed computer 20 networks in the transmission and display of digital images.
According to a first aspect, the present invention provides a computer arranged to iteratively modify data defining a digital image stored in a memory thereof, by 25 comparing, at each iteration, an enhanced form of the image with a target image, also stored in a memory of the computer, to reduce the difference between the enhanced form of the image the target image, to thereby obtain data defining an image which, when enhanced, will approximate the 30 target image.
According to a second aspect, the present invention
provides a computer program for operating a computer to iteratively modify data defining a digital image stored in a memory thereof, by comparing, at each iteration, an enhanced form of the image with a target image, also stored in a 5 memory of the computer, to reduce the difference between the enhanced form of the image the target image, to thereby obtain data defining an image which, when enhanced, will approximate the target image.
10 According to a third aspect, the present invention provides a method for deriving data defining an image which, when enhanced, will approximate a target image, wherein data defining an image is iteratively modified, by comparing, at each iteration, an enhanced form of the image with a target 15 image, Co reduce the difference between tile enhanced form of the image the target image.
The various aspects of the invention further provide that the data defining an image comprises a plurality of co 20 ordinates defining, in three-dimensional space, the vertices of a plurality of polygonal surface facets of the image, wherein the image is enhanced by modifying the image according to the co-ordinates of said vertices; wherein at least one variable is associated with each polygonal edge 25 joining together two vertices, the image being modified according to the values of those variables by introducing new vert..ices between existing vertices to subdivide the pol.ygonalfacets of the images and wherein the co-ordinates of each new vertex is determined by the co-ordinates of the 30 existing vertices; and the co-ordinates of vertices neighbouring said existing vertices according to the value of a variable associated with the polygon edge which joins together said existing vertices and the values of the variables associated with the polygon edges which join said
existing vertices to neighbouring vertices thereof.
The invention further provides that the data defining an image comprises a plurality of co-ordinates defining, in 5 three-dimensional space, the vertices of a plurality of polygonal surface facets of the image, wherein the image is modified by varying the co-ordinates of its existing vertices, the new co-ordinates of each existing vertex being determined by the co-ordinates the vertex itself; and the ]O co-ordinates of vertices neighbouring the vertex, according to the values of the variables associated with each of the polygon edges which join the vertex to those neighbouring vertices. 15 The image defining data is intended for use in a distributed computer system comprising a first computer and a second computer and arranged for a digital image to be transmitted from the first computer to the second computer, via a telecommunications link, wherein the second computer 20 is arranged to enhance the image by modifying the image according to the co-ordinates of said vertices.
Thus, very little data need be transmitted from the first computer to the second computer for the latter to 25 provide a high-resolution display of a three-dimensional object. It will also be appreciated that the transmitted image may be readily manipulated, by applying appropriate 30 transformation algorithms to the co-ordinates of the vertices, to display an object from various different aspects. Thus, an animated display of an object may be generated by the second computer from only a very small amount of transmitted data.
Various methods have hitherto been proposed for enhancing the display of a multi-faceted digital image, by varying the co-ordinates of the vertices of that image and 5 by introducing new vertices between existing vertices to subdivide the polygonal facets of the image.
However, as will be described in more detail hereinafter, existing image enhancement methods typically 10 introduce undesirable surface artefacts into the displayed image. Such effects are particularly apparent where the division of a symmetrical surface into triangular facets is not correspondingly symmetrical, and even more so where different surface regions of the image are to he displayed 15 in different colours.
According to the present invention, this drawback is preferably overcome by associating at least one variable with each polygonal edge joining together two vertices and 20 by modifying the image according to the values of those variables. Preferably a respective value is assigned to a variable associated with each new edge formed, that value being 25 determined by the values of the same variable associated with existing edges in its vicinity.
Preferably a normal to each vertex is determined by the co-ordinates of vertices neighbouring that vertex and by the 30 values of the variables associated with the polygon edges which join the vertex to those neighbouring vertices.
Initial values may be assigned to the variables associated with the polygon edges by the second computer or
those values may be transmitted from the first computer to the second computer.
Preferably the computer is arranged to establish 5 whether a receiving computer is provided with a computer program adapted to modify said coordinates to enhance said image is present on said receiving computer and, if not present, transmitting such a program to said receiving computer. The resultant final image defining data is also usable with computer program for operating a computer to transmit, via a telecommunications link, the image defining final data. Preferably the computer program is arranged for operating said computer to establish whether receiving computer is provided with a computer program adapted to modify said coordinates to enhance said image is present on 20 said receiving computer and, if not present, transmitting such a program to said receiving computer.
The final image defining data is designed to be received by a computer arranged to receive, via a 25 telecommunications link, a plurality of coordinates defining, in three-dimensional space, the vertices of a plurality of polygonal surface facets of an image, and to enhance the image by modifying the image according to the co-ordinates of said vertices.
Preferably the image is modified by varying the co-
ordinates of its existing vertices, the new co-ordinates of each existing vertex being determined by: the co-ordinates of the vertex itself; and
the co-ordinates of vertices neighbouring the vertex, according to the values of at least one respective variable associated with each of the polygon edges which join the vertex to those neighbouring vertices.
Preferably the image is modified by introducing new vertices between existing vertices to subdivide the polygonal facets of the image, the coordinates of each new vertex being determined by: 10 the co-ordinates of the existing vertices; and the co-ordinates of vertices neighbouring said existing vertices, according to: the value of a variable associated with the polygon 15 edge which joins together said existing vertices; and the values of variables associated with the polygon edges which join said existing vertices to neighbouring vertices thereof.
20 Preferably a respective value is assigned to a variable associated with each new edge formed, that value being determined by the values of the same variable associated with existing edges in its vicinity.
25 Preferably a normal to each vertex is determined by the co-ordinates of vertices neighbouring that vertex and by the values of variables associated with the polygon edges which join the vertex to those neighbouring vertices.
30 The final image defining data is also applicable for use by a computer program for operating a computer to receive, via a telecommunications link, a plurality of co ordinates defining, in three-dimensional space, the vertices of a plurality of polygonal surface facets of an image, and
to enhance the image by modifying the image according to the co-ordinates of said vertices.
Preferably the computer program is arranged such that 5 the image is modified by varying the co-ordinates of its existing vertices, the new coordinates of each existing vertex being determined by: the co-ordinates of the vertex itself; and the co-ordinates of vertices neighbouring the vertex, 10 according to the values of at least one respective variable associated with each of the polygon edges which join the vertex to those neighbouring vertices.
Preferably the computer program is arranged such that 15 the image is modified by introducing new vertices between existing vertices to subdivide the polygonal facets of the image, the co-ordinates of each new vertex being determined by: the co-ordinates of the existing vertices; and 20 the co-ordinates of vertices neighbouring said existing vertices, according to: the value of a variable associated with the polygon edge which joins together said existing vertices; and 25 the values of variables associated with the polygon edges which join said existing vertices to neighbouring vertices thereof.
Preferably the computer program is arranged such that a 30 respective value is assigned to a variable associated with each new edge formed, that value being determined by the values of the same variable associated with existing edges in its vicinity.
Preferably the computer program is arranged such that a normal to each vertex is determined by the co-ordinates of vertices neighbouring that vertex and by the values of variables associated with the polygon edges which join the 5 vertex to those neighbouring vertices.
Preferably the program operates the computer to obtain the image from a remote computer.
JO Preferably the program operates the computer to provide for real-time manipulation, e.g. translation and rotation, of the image in threedimensional space.
Embodiments of the present invention will now be 15 described by way of examples only and with reference to Lhe accompanying drawings, in which: Figure 1 is a schematic diagram of a distributed computer system in accordance with the present invention) Figure 2 is a reduced complexity image made up of a plurality of surface polygons) Figure 3 is a modified image derived from that of 25 Figure It Figure 4 is a sequence of images of increasing surface definition; 30 Figure 5 is a second reduced complexity image made up of a plurality of rectangular polygons; Figure 6 is the image of Figure 5 shown divided into a plurality of triangular surface facets)
Figure 7 is a modified image derived from that of Figure 6 according to a prior art method;
5 Figure 8 is a modified image derived from that of Figure 6 according to the present invention; Figure 9 is a schematic showing the polygon edges which join an existing vertex to its neighbouring vertices; Figure 10 is a second schematic showing the polygon edges which join an existing vertex to its neighbouring vertices; 1.> Figure ll is a third schematic showing the polygon edges which join together two existing vertices and which join each of the two existing vertices to its remaining neighbouring vertices; 20 Figure 12 is a fourth schematic showing a first example of how new polygon edges may be formed in accordance with the present invention) Figure 13 is a corresponding first look up table for 25 determining at least one characteristic to be associated with a new polygon edged Figure 14 is a fifth schematic showing a second example of how new polygon edges may be formed in accordance with 30 the present invention; and Figure 15 is a corresponding second look up table for determining at least one characteristic to be associated with a new polygon edge.
Referring to Figure 1 of the drawings, a distributed computer network is shown comprising two interconnected computers 1,3. According to the present invention, the 5 second computer 3 might transmit a request to the first computer 1 for an image stored in a memory thereof, for three dimensional manipulation of an enhanced form of the image on a display screen the second computer. Prior to, or subsequent to, transmitting the requested image, the first 10 computer 1 would preferably interrogate the second computer 3 to determine whether the latter 3 was provided with software suitable for receiving and enhancing the requested image and if it was not, would transmit such software to the second computer together with the requested image.
Figure 2 shows an image comprising a plurality of triangular surface facets which, in accordance with the present invention, might be transmitted from the first computer 1 to the second computer 3 as a plurality of three 20 dimensional co-ordinates each corresponding with a respective vertex of the image.
The receiving computer 3 would enhance the image for display by varying the co-ordinates of existing vertices and 25 by introducing new vertices between existing vertices to further subdivide the surface facets as shown in Figure 3.
For each triangular facet in the original image, e.g. facet 2 in Figure 2, four new triangular facets 4,6,8 and 10 are formed by joining together three new vertices 12,14 and 16, 30 which are introduced along respective edges of the original facet. By repeatedly subdividing the surface of the image, as shown in Figure 4, the surface definition of the image may
be increased to the point where the image surface appears substantially continuous, the so-called "limit surface".
It will be appreciated that by transmitting and then 5 enhancing the display of a reduced complexity image, a considerable amount of time can be saved over that which would be required to transmit an equivalent high complexity image stored in a known format, for example as a bit-map image. Once received, the image may also be readily 10 manipulated, for example by translation or rotation thereof in real time.
However, we have found that enhancement techniques, which modify an image according to vertex co-ordinates l: ad one, are limited in that their application tends to result in undesirable surface artefacts in the displayed image.
As an example, an image of a car windscreen is shown in Figure 5. In order to enhance the image, the four-sided 20 polygons which make up the surface of the image are each divided, as shown in Figure 6, into two triangular facets.
It will be noted that after triangulation, the vertex 18 has only one polygon edge 20 radiating downwards from it, 25 whereas the corresponding vertex 22 on the opposite side of the image has two polygon edges 24,26 extending downwards from it.
Where an enhancement algorithm based on vertex co 30 ordinates alone is applied to the triangulated image, the result is to skew the image as shown in Figure 7. The preferred algorithm described below, on the other hand, when applied to the image of Figure 6, will produce the correct image shown in Figure 8.
According to the present invention, undesirable distortion of an image is preferably avoided by associating, with each polygon edge, a characteristic which determines 5 how the co-ordinates of its neighbouring vertices will be modified. In more detail, the preferred method enhances the display of an image by varying the co-ordinates of existing 10 vertices and introducing new vertices as follows Each edge in the image has two variables associated with it. The first variable can take one of two values according to whether the edge is sharp or smooth. The second 15 variable can also take one of two values according to whether the edge is visible or invisible, sharp edges being always also visible.
In the present example, the polygon edges shown in 20 Figure 5 would be designated as being visible, whereas the triangulation lines introduced in Figure 6 would be designated as being invisible.
With reference to Figures 9 and lO, the new co 25 ordinates of each existing vertex are determined by the visibility and sharpness of the polygon edges projecting from it.
The visibility and sharpness of the edges influence the 30 effect that the co-ordinates vO of the vertex itself have, and the effect that the coordinates v,..,v of the vertices at the opposite ends of visible edges radiating from that vertex have, on the new co-ordinates of the vertex, according to the following rules
If no edges surrounding the point are sharp, as shown in Figure 9, it is a smooth vertex. To obtain the new co-
ordinates of a vertex, all of the neighbouring vertices v1 5 to on to which the vertex is joined by visible polygon lines are averaged with weight l each, and the vertex itself, no, is added with weight a (a), where n is the number of visible neighbours: 10 Anew= () o+vl+v2+v3++vn n+ (n) The factor a (a) is defined as: lx(n)= n(l -a(n)) a(n) Where a (a) is defined as: 5 (3+2cos/n))2 a(n)=-- 64 For a vertex that has a single sharp edge, the same weighting is used.
For a vertex having exactly two sharp edges in its 25 neighborhood, as shown in Figure lO, the vertex vO itself is given weight 6, and the two sharp neighborhood points (e.g. in Figure lO, vertices v1 and V4) are given weight 1. The other points in the neighborhood have no effect.
V = 3Vo +VI +V4 new 8 The co-ordinates of vertices having more than two sharp edges in their neighborhood are unchanged.
Vnew Vo Similarly, and with reference to Figure ll, the co-
ordinates of a new vertex introduced along an edge are 10 determined by the co-ordinates of the vertices in its neighbourhood according to whether the edge is sharp or not.
The co-ordinates of the new vertex are determined by those of the existing vertices at each end of the edge (vO 15 and v:), and those of the vertices on the nearest visible edges to the left and right at each end (V2, V3, V4 and V5).
In some cases, these edges will connect to the same vertex -
in a triangular mesh, for instance, V2 is V3, and V4 is vS.
In this case, each doubly connected vertex is counted twice, 20 once for each role it plays.
For a visible smooth edge, the position of the new vertex is a weighted average of all the vertices, with the original edge vertices vO and vl weighted with a value of 6 25 each, and the remaining vertices weighted as l each.
v _6Vo+6v' +v2 +V3 +V4 +V5 new 1 6
For an invisible smooth edge, these nearest visible neighbour vertices are weighted in the same way, but the original edge vertices are only given weight 2 each.
5 v = 2Vo +2v +v2 +V3 +V4 +V5 new 8 For a sharp edge, only the edge vertices are considered, with their weights determined by the total number of visible edges n and m in their respective 10 neighborhoods.
no' + me i 7 + M? 15 In order to perform operations such as lighting on a surface, it is necessary to determine the normal to that surface at each vertex. This is the direction at right angles to the limit surface at that point.
20 In order to obtain this, it is necessary first to obtain two tangent vectors, t1 and t2, which are directions that lie along the surface rather than at right angles to it. Given these, a vector cross product will result in the desired normal: n = t1 x t2 For a smooth vertex, with no sharp edges, or one with a single sharp edge, the tangents are weighted averages of the 30 positions of the neighbourhood vertices. Referring again to Figure 9, each of the n neighbourhood vertices vi (v:, v2,
up to vn), is given a corresponding weight ci (c1, c2 up to en). The weights are calculated using: Ci =COs/n) The two tangent vectors are then: al = clVl + C2V2 + C3V3 + .. + COVE t2 C2V' + C3Vo + C4V3 +... + Clan For a vertex with two sharp edges, the sharp edges represent a dividing line between a region on the left, which has a definite normal, and a region on the right, whir}-: has a separate -Norma]. (For a boundary edge, one of 15 these regions is missing completely.) Referring again to Figure lO, the left region consists of vertices vat, V2, V3 and V4. The right hand region consist of vertices v<, vs. v6 and vet.
, 20 In general, in the region to the left of the sharp edge, there are m vertices, from v1 at one end of the sharp crease, in order through V2, V3, etc. for the non-sharp edges, finally round to vm which is at the other end of the sharp crease.
The tangent vector t1 along the sharp edge is given by the difference between the start and end points of the sharp edge, i.e.: 30 t1 = v1 - vm
i The tangent t2 across the sharp edge on one side is determined by yet another weighed average of the vertices on the side of interest.
5 For m=2 t2 = -2vo + v1 + v2 For m=3 t2 = v2 v0 For m=4 t2 2vo - v1 + 2v2 + 2v3 - V4 If m is more than 4, each vertex vi is weighted with a 10 weight pi such that the sharp edge w1 and em are: Wit = Wm = sip The other points v to vn-1 are weighted as wi=(2Co-2)sin(-] Where 20 m-1 The tangent t2 is then: t2 wavy + w2V2 + w3v3 + + wmvm Once again, the normal is obtained as the cross product of these two tangents.
The visibility of the new edges needs to be determined, 30 if the enhancement method is to be re-applied. In the example shown in Figure 12, the introduction of a new vertex
creates new edges. The visibility of each of these edges is determined according to visibility of other edges in its ., vlclnlty. 5 Two edges will be the two halves of the original edge E, which edges keep the visibility of the original edge.
Of the remaining four new edges, two edges will be to the right hand side of the original edge, and two more to 10 its left. These new edges, labelled clockwise as e1, e2, e3 and e4, connect to other new points created by dividing the original edges labelled Ei, E2, E3 and E4. The visibility of each new edge is found by looking up which combination of E, E, a, lo, and EN are visible using the lookup table in 15 Figure 13.
In the alternative example shown in Figure 14, the introduction of a new vertex again creates new edges, and
the visibility of each of these edges is again determined 20 according to visibility of other edges in its vicinity.
In this case, two edges will be the two halves of the original edge E, which are labelled ea and eb.
25 As before, of the remaining four new edges, two edges will be to the right hand side of the original edge, and two more to its left. These new edges, labelled clockwise as e1, e2, e3 and e4, connect to other new points created by dividing the original edges labelled E1, E2, E3 and E4. The 30 visibility of each new edge is now found in this example by looking up which combination of E, E1, E2, E3 and E4 are visible using the lookup table in Figure 15.
In each case, in order to obtain an appropriate digital image for transmission, that will produce a desired target image when enhanced at a receiving computer according to a pre-determined enhancement algorithm (such as the 5 preferred algorithm described above), a set of data defining the image to be transmitted may be iteratively modified by comparing, at each iteration, the enhanced image resulting from an application of the algorithm to that data with the target image, and modifying the data to reduce the 10 difference between the two images.
The data may be modified manually, for example by the operator of a computer, who compares a display of the enhanced image with a display of the target image and 15 adjusts the data fly means of arl interface device s.:ch as a mouse. Alternatively, the data may be modified automatically using an error minimization algorithm, such as a gradient 20 descent error minimization algorithm or a genetic algorithm.
Although the embodiments of the invention described with reference to the accompanying drawings comprise computer apparatus and processes performed in and by 25 computer apparatus, the invention also extends to computer programs, particularly computer programs on or in a carrier, adapted for putting the invention into practice. The program may be in the form of source code, object code, a code, intermediate source and object code (such as in a partially 30 compiled form) or in any other form suitable for use in the implementation of the processes according to the invention.
The carrier may be any entity or device capable of carrying the program.
For example, the carrier may comprise a storage medium, such as a ROM, for example a CD ROM or a semiconductor ROM, or a magnetic storage medium, for example a floppy disc or hard disc. Further, the carrier may be a transmissible 5 carrier such as an electrical or optical signal, which may be conveyed via electrical or optical cable or by radio or other means.
When the program is embodied in a signal, which may be 10 conveyed directly by a cable or other device or means, the carrier may be constituted by such cable or other device or means. Alternatively, the carrier may be an integrated circuit 1> in which- the rrogram is embedUcd, the integrated circuit being adapted for performing, or for use in the performance of, the relevant processes.
The processes, apparatus and computer programs thus 20 described provide effective means for rapidly distributing and displaying digital images.

Claims (9)

Claims
1. A computer arranged to iteratively modify data defining a digital image stored in a memory thereof, by comparing, at 5 each iteration, an enhanced form of the image with a target image, also stored in a memory of the computer, to reduce the difference between the enhanced form of the image the target image, to thereby obtain data defining an image which, when enhanced, will approximate the target image.
2. A computer, according to claim 1, said data defining an image comprises a plurality of co-ordinates defining, in three-dimensional space, the vertices of a plurality of polygonal surface facets of the image, wherein the image is 1: enhanced by modifying the image according to tic co-
ordinates of said vertices; wherein at least one variable is associated with each polygonal edge joining together two vertices, the image being modified according to the values of those variables by introducing new vertices between 20 existing vertices to subdivide the polygonal facets of the image; and wherein the co-ordinates of each new vertex is determined by the co-ordinates of the existing vertices; and the co- ordinates of vertices neighbouring said existing vertices according to the value of a variable associated 25 with the polygon edge which joins together said existing vertices and the values of the variables associated with the polygon edges which join said existing vertices to neighbouring vertices thereof.
30
3. A computer, according to claim 1, said data defining an image comprises a plurality of co-ordinates defining, in three-dimensional space, the vertices of a plurality of polygonal surface facets of the image, wherein the image is modified by varying the co-ordinates of its existing
vertices, the new co-ordinates of each existing vertex being determined by the co-ordinates of the vertex itself) and the co-ordinates of vertices neighbouring the vertex, according to the values of the variables associated with S each of the polygon edges which join the vertex to those neighbouring vertices.
4. A computer program for operating a computer to iteratively modify data defining a digital image stored in a 10 memory thereof, by comparing, at each iteration, an enhanced form of the image with a target image, also stored in a memory of the computer, to reduce the difference between the enhanced form of the image the target image, to thereby obtain data defining an image which, when enhanced, will approximate the 15 targetimage.
5. A computer program, according to claim 4, said data defining an image comprises a plurality of co-ordinates ! defining, in three-dimensional space, the vertices of a 20 plurality of polygonal surface facets of the image, wherein the image is enhanced by modifying the image according to the co-ordinates of said vertices; wherein at least one variable is associated with each polygonal edge joining together two vertices, the image being modified according to 25 the values of those variables by introducing new vertices between existing vertices to subdivide the polygonal facets of the image; and wherein the co-ordinates of each new vertex is determined by the co-ordinates of the existing vertices; and the co-ordinates of vertices neighbouring said 30 existing vertices according to the value of a variable associated with the polygon edge which joins together said existing vertices and the values of the variables associated with the polygon edges which join said existing vertices to neighbouring vertices thereof.
6. A computer program, according to claim 4, said data defining an image comprises a plurality of co-ordinates defining, in three-dimensional space, the vertices of a 5 plurality of polygonal surface facets of the image, wherein the image is modified by varying the co-ordinates of its existing vertices, the new co-ordinates of each existing vertex being determined by the co-ordinates the vertex itself; and the co-ordinates of vertices neighbouring the 10 vertex, according to the values of the variables associated with each of the polygon edges which join the vertex to those neighbouring vertices.
7. A method for deriving data defining an image which, when 15 enhanced, will approximate a target image, wherein data defining an image is iteratively modified, by comparing, at each iteration, an enhanced form of the image with a target image, to reduce the difference between the enhanced form of the image the target image.
8. A method, according to claim 7, for use where said data defining an image comprises a plurality of co-ordinates defining, in threedimensional space, the vertices of a plurality of polygonal surface facets of the image, 25 including the step of enhanced the image by modifying the image according to the co-ordinates of said vertices; wherein at least one variable is associated with each polygonal edge joining together two vertices, the image being modified according to the values of those variables by 30 introducing new vertices between existing vertices to subdivide the polygonal facets of the image; and wherein the co-ordinates of each new vertex is determined by the co-
ordinates of the existing vertices; and the co-ordinates of vertices neighbouring said existing vertices according to
the value of a variable associated with the polygon edge which joins together said existing vertices and the values of the variables associated with the polygon edges which join said existing vertices to neighbouring vertices 5 thereof.
9. A method, according to claim 7, for use where said data defining an image comprises a plurality of co-ordinates defining, in threedimensional space, the vertices of a 10 plurality of polygonal surface facets of the image, said method including the step of modifying the image by varying the co-ordinates of its existing vertices, the new coordinates of each existing vertex being determined by the co-ordinates of the vertex itself; and the co-ordinates of 15 vertices neighbouring the vertex, according to the values of the variables associated with each of the polygon edges which join the vertex to those neighbouring vertices.
GB0403104A 1999-11-05 2000-11-06 Method and apparatus for generating enhancable images Expired - Fee Related GB2396091B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB9926131.5A GB9926131D0 (en) 1999-11-05 1999-11-05 Image enhancement
GB0027066A GB2358569B (en) 1999-11-05 2000-11-06 Image enhancement

Publications (3)

Publication Number Publication Date
GB0403104D0 GB0403104D0 (en) 2004-03-17
GB2396091A true GB2396091A (en) 2004-06-09
GB2396091B GB2396091B (en) 2004-08-11

Family

ID=32299701

Family Applications (2)

Application Number Title Priority Date Filing Date
GB0403104A Expired - Fee Related GB2396091B (en) 1999-11-05 2000-11-06 Method and apparatus for generating enhancable images
GB0403063A Expired - Fee Related GB2396458B (en) 1999-11-05 2000-11-06 Program provision in image enhancement

Family Applications After (1)

Application Number Title Priority Date Filing Date
GB0403063A Expired - Fee Related GB2396458B (en) 1999-11-05 2000-11-06 Program provision in image enhancement

Country Status (1)

Country Link
GB (2) GB2396091B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0451579A2 (en) * 1990-04-10 1991-10-16 Dainippon Screen Mfg. Co., Ltd. Apparatus for reading images and method for enhancing the outlines of shapes
US5271064A (en) * 1991-06-14 1993-12-14 University Of Cincinnati Apparatus and method for smoothing regions and enhancing edges in gray scale images
EP0712092A1 (en) * 1994-11-10 1996-05-15 Agfa-Gevaert N.V. Image contrast enhancing method
EP0898244A2 (en) * 1997-08-12 1999-02-24 Hewlett-Packard Company Image enhancement
US6055340A (en) * 1997-02-28 2000-04-25 Fuji Photo Film Co., Ltd. Method and apparatus for processing digital images to suppress their noise and enhancing their sharpness

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5421009A (en) * 1993-12-22 1995-05-30 Hewlett-Packard Company Method of remotely installing software directly from a central computer
US5630066A (en) * 1994-12-20 1997-05-13 Sun Microsystems, Inc. System and method for locating object view and platform independent object
EP0962097A4 (en) * 1997-01-29 2006-08-09 Digital Advertising And Market Method of transferring media files over a communications network
NO991371L (en) * 1999-03-22 2000-09-25 Fileflow As Procedure for transferring files in a data communication network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0451579A2 (en) * 1990-04-10 1991-10-16 Dainippon Screen Mfg. Co., Ltd. Apparatus for reading images and method for enhancing the outlines of shapes
US5271064A (en) * 1991-06-14 1993-12-14 University Of Cincinnati Apparatus and method for smoothing regions and enhancing edges in gray scale images
EP0712092A1 (en) * 1994-11-10 1996-05-15 Agfa-Gevaert N.V. Image contrast enhancing method
US6055340A (en) * 1997-02-28 2000-04-25 Fuji Photo Film Co., Ltd. Method and apparatus for processing digital images to suppress their noise and enhancing their sharpness
EP0898244A2 (en) * 1997-08-12 1999-02-24 Hewlett-Packard Company Image enhancement

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP 10243238 A (FUJI) 11/09/1998. See WPI Abstract Accession No. 1998/549307-47, PAJ abstract and references on english-language equivalent US 6055340 A *

Also Published As

Publication number Publication date
GB2396458B (en) 2004-08-18
GB2396091B (en) 2004-08-11
GB0403063D0 (en) 2004-03-17
GB0403104D0 (en) 2004-03-17
GB2396458A (en) 2004-06-23

Similar Documents

Publication Publication Date Title
US7277096B2 (en) Method and apparatus for surface approximation without cracks
US7006155B1 (en) Real time programmable chroma keying with shadow generation
US5812214A (en) Apparatus and method for compositing video images
US6246414B1 (en) Image processing in which polygon is divided
US7612784B2 (en) Image processor and method, computer program, and recording medium
JP2002183761A (en) Image generation method and device
US5841443A (en) Method for triangle subdivision in computer graphics texture mapping to eliminate artifacts in high perspective polygons
JPH0285970A (en) Picture forming device and system of continuous tone to which smooth shadow is formed
JP4114191B2 (en) Image processing apparatus and image processing method
US20050017969A1 (en) Computer graphics rendering using boundary information
US6947058B1 (en) Incremental update of graphical images when using anti-aliasing techniques
JP3174342B2 (en) Multi-level to binary level raster shape converter
US6437795B1 (en) Method and apparatus for clipping a function
US7136065B1 (en) Refinement of transmitted polygonal mesh data
KR20050088191A (en) Low-cost supersampling rasterization
JP3026706B2 (en) Image processing device
GB2396091A (en) Generating enhanceable images
US7171059B1 (en) Method and apparatus for two-dimensional image scaling
EP0584941B1 (en) Methods and apparatus for generating graphic patterns
US7259766B1 (en) Aperiodic tiling of textured images
US6545674B1 (en) Method of selectively rendering graphic objects three-dimensional
JP2000151982A (en) Image compositor, image compositing method image generating device, image generating method and served medium
JP3606222B2 (en) Object image display device
JPS6383871A (en) Shadow display method
AU670841B2 (en) Pixel to spline based region conversion method

Legal Events

Date Code Title Description
PCNP Patent ceased through non-payment of renewal fee

Effective date: 20051106