WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
Surface detail mapping system    
United States Patent4888713   
Link to this pagehttp://www.wikipatents.com/4888713.html
Inventor(s)Falk; Edward K. (Grand Rapids, MI)
AbstractA system and method for providing surface detail to computer generated two-dimensional graphic images of apparel or other free-form surfaces such that the three-dimensional appearance of the image is provided or enhanced. That is accomplished through a combination of user-controlled mesh generation for providing the topology of the image "surface" and a texture-mapping technique for applying the surface detail once the mesh has been generated. The system and method of the present invention may be used as one function of a larger two-dimensional computer aided design system for apparel, footwear, textiles, interior design, or other applications where the user may wish to add surface detail to a two-dimensional computer image of a three-dimensional object or surface.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History
Drawing from US Patent 4888713
Surface detail mapping system - US Patent 4888713 Drawing
Surface detail mapping system
Inventor     Falk; Edward K. (Grand Rapids, MI)
Owner/Assignee     CDI Technologies, Inc. (Grand Rapids, MI)
Patent assignment
All assignments
Publication Date     December 19, 1989
Application Number     06/904,682
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     September 5, 1986
US Classification     345/582 345/419 700/182 703/6
Int'l Classification     G06F 003/14
Examiner     Clark; David L.
Assistant Examiner     Herndon; H. R.
Attorney/Law Firm     Cox & Smith
Address
Parent Case    
Priority Data    
USPTO Field of Search     364/518 364/519 364/520 364/521 364/522 340/703 340/747 340/721 340/723 340/724
Patent Tags     surface detail mapping
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
3534396



[0 after 0 votes]
4719585
Cline
345/424
Jan,1988

[0 after 0 votes]
4703426
Flinchbaugh
367/72
Oct,1987

[0 after 0 votes]
4685070
Flinchbaugh
345/424
Aug,1987

[0 after 0 votes]
4546434
Gioello
700/90
Oct,1985

[0 after 0 votes]
4070710
Sukonick
345/533
Jan,1978

[0 after 0 votes]
4058849
Fitzgerald
358/1.2
Nov,1977

[0 after 0 votes]
3732557
Evans
345/179
May,1973

[0 after 0 votes]
3716705
Newell
345/441
Feb,1973

[0 after 0 votes]
3693168
Halkyard
358/1.3
Sep,1972

[0 after 0 votes]
3653071
Hill
716/12
Mar,1972

[0 after 0 votes]
3636328
Korelitz
703/1
Jan,1972

[0 after 0 votes]
3614410
Bailey
200/61.47
Oct,1971

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


I claim:

1. In a computer-assisted design system, a method for providing surface detail to computer generated two-dimensional graphic images of three-dimensional surfaces to create a three-dimensional appearance comprising:

generating a perspective mesh on said computer-generated two-dimensional graphic image such that said mesh creates a three-dimensional visual appearance;

mapping surface detail to said mesh point-by-point such that said surface detail produces a three-dimensional appearance; and

producing a graphic visual image of said two-dimensional graphic image with said surface detail applied.

2. A method for providing surface detail to computer-generated two-dimensional graphic images as set forth in claim 1, wherein the step of generating a perspective mesh comprises:

dividing said two-dimensional image into segments, each segment representing a portion of said three-dimensional object;

circumscribing each of said segments by polygons; and

calculating a perspective mesh for each segment circumscribed by each said polygon, said perspective meshes each comprising a plurality of horizontal and vertical lines spatially arranged to form a plurality of quadrilaterals representing the three-dimensional surface forms for said three-dimensional object.

3. A method for providing surface detail to computer-generated two-dimensional graphic images as in claim 1, wherein said step of mapping comprises:

a. scan-converting each quadrilateral within said mesh;

b. calculating a surface detail coordinate for each pixel lying within each segment based on the location of the pixel in the quadrilateral and on the location of the quadrilateral in the mesh;

c. mapping the surface detail coordinates to the array of pixel making up the selected surface detail and selecting the appropriate pixel;

d. repeating steps a-c for every pixel in the quadrilateral scan line, and for every scan line in the quadrilateral, and for every quadrilateral in the mesh.

4. In a computer-assisted design system, a method for providing surface detail to computer generated two-dimensional graphic images of three-dimensional surfaces to create a three-dimensional appearance comprising:

a. producing a two-dimensional image of a three-dimensional object in a digital form for storage and processing by a digital computer;

b. dividing said two-dimensional image into segments, each segment representing a portion of said three-dimensional object;

c. circumscribing said segments by polygons in digital form for storage and processing by said digital computer;

d. generating at least one mesh within each segment wherein said at least one mesh creates a three-dimensional visual appearance;

e. repeating steps b-d until meshes have been generated for all segments of said two-dimensional image;

f. storing said segments with said meshes in a data storage unit;

g. producing at least one image of surface detail in the form of a rectangular array of pixels for storage and processing by a digital computer;

h. storing said surface detail images in said data storage unit;

i. mapping said surface detail to said mesh within each said segment such that said surface detail produces a three-dimensional appearance; and

j. producing a graphical visual image of said two-dimensional image covered by said surface detail wherein said image presents a three-dimensional appearance.

5. A method for providing surface detail to computer-generated two-dimensional graphic images as set forth in claim 4 wherein said step of producing a two-dimensional image comprises:

forming a video image of said three-dimensional object; and

converting that video image into a digital form suitable for storage and processing by a digital computer.

6. A method for providing surface detail to computer-generated two-dimensional graphic images as set forth in claim 4 wherein said step of producing a two-dimensional image comprises:

creating a graphic representation of said three-dimensional object in two-dimensional form; and

converting said graphic representation into a digital form suitable for storage and processing by a digital computer.

7. A method for providing surface detail to computer generated two-dimensional graphic images as set forth in claim 4 wherein said step of circumscribing said segments comprises:

displaying said two-dimensional image on a graphic visual input/output device; and

forming polygons around each segment as displayed on said graphic visual input/output device.

8. A method for providing surface detail to computer-generated graphic images as set forth in claim 7 wherein said step of forming polygons comprises:

entering information representing the boundaries of said polygons into said computer using a computer input device.

9. A method for providing surface detail to computer-generated two-dimensional graphic images as set forth in claim 4 wherein said step of generating at least one mesh comprises:

displaying at least one of said segments bounded by said polygon on a graphic visual input/output device;

entering information into said computer for creating a series of bounding polylines which enclose each said segment; and

calculating a perspective mesh contained by said bounding polylines which perspective mesh consists of a plurality of horizontal and vertical lines spatially arranged to form a plurality of quadrilaterals representing a three-dimensional surface for each said segment, as such three-dimensional surface would appear to the eye, in two-dimensional form.

10. A method for providing for providing surface detail to computer-generated two-dimensional graphic images as set forth in claim 9 further comprising:

modifying the locations of points lying within said perspective mesh to effect local changes in the shape of the mesh.

11. A method for providing surface detail to computer-generated two-dimensional graphic images as set forth in claim 10 wherein said step of modifying the locations of points comprises:

A. entering x, y coordinates into said computer for a point within said mesh;

B. comparing the x, y coordinates entered in step a. with stored x, y coordinates for the existing mesh;

C. selecting the stored x, y coordinates closest to the x, y coordinate entered in step a.;

D. entering a second x, y coordinate into said computer, said second x, y coordinate representing the desired modification; and

E. replacing the stored x, y coordinate with said second x, y coordinate.

12. A method for providing surface detail to computer-generated two-dimeinsional graphic images as set forth in claim 9 wherein said step of calculating a perspective mesh comprises:

calculating the intersection of said bounding polylines; and

generating a perspective mesh based on those bounding polylines.

13. A method for providing surface detail to computer-generated two-dimensional graphic images as set forth in claim 9 further comprising:

controlling the interior shape of said mesh by entering information into said computer for creating additional horizontal polylines and additional vertical polylines within each segment circumscribed by said boundary polylines, said additional vertical and horizontal polylines creating sub-areas within each said segment.

14. A method for providing surface detail to computer-generated two-dimensional graphic images as set forth in claim 13 wherein said step of calculating a perspective mesh comprises:

calculating the intersection of all vertical polylines including the vertically disposed bounding polylines with all of said horizontal polylines including the horizontally disposed bounding polylines;

generating temporary interior boundary polylines for each sub-area;

generating a perspective mesh for each sub-area based on those temporary interior boundary polylines; and

creating a composite perspective mesh for each said segment for each perspective mesh generated for each sub-area.

15. A method for providing surface detail to computer-generated two-dimensional graphic images as set forth in claim 9 wherein said step of entering information into the computer for creating a series of bounding polylines comprises:

entering at least two polypoints into the computer which polypoints form each of said bounding polylines.

16. A method for providing surface detail to computer-generated two-dimensional graphic images as set forth in claim 15 further comprising:

modifiying said bounding polylines by moving, deleting, or inserting at least one of said polypoints forming said bounding polylines.

17. A method for providing surface detail to computer-generated two-dimensional graphic images as set forth in claim 9 wherein said step of producing at least one image of surface detail comprises:

entering at least one image of at least one surface detail feature into the computer in such form as to permit display on a graphic visual input/output device; and

storing at least a portion of said surface detail image in a data storage device through storing the information necessary to define the color and intensity attributes of each elemental point on the graphic input/output device displaying said image, such information thus defining a rectangular array of pixels representing the surface detail.

18. A method for providing surface detail to computer-generated two-dimensional graphic images as set forth in claim 17 wherein said surface detail comprises a pattern.

19. A method for providing surface detail to computer-generated two-dimensional graphic images as set forth in claim 17 wherein said surface detail comprises texture.

20. A method for providing surface detail to computer-generated two-dimensional graphic images as set forth in claim 17 wherein said step of mapping comprises:

A. selecting a segment of the two-dimensional image to which surface detail is to be applied;

B. selecting the surface detail to be applied;

C. retrieving the selected segment and mesh from data storage;

D. retrieving the selected surface detail from data storage;

E. scan-converting the x, y points forming the boundary of the selected segment by creating and storing a list of scan lines contained within the selected segment;

F. examining each quadrilateral within said mesh to determine whether any part of said quadrilateral lies within the bounding polylines of the selected segment;

G. scan-converting each quadrilateral in said mesh, wherein at least a portion of said quadrilateral lies within the bounding polyline of the selected segment, by converting and temporarily storing a list of scan lines for each quadrilateral;

H. examing each scan-line from step g. on a pixel-by-pixel basis to determine those pixels lying within the selected segment;

I. calculating a surface detail coordinate for each pixel lying within the selected segment based on the location of the pixel in the quadrilateral and on the location of the quadrilateral in the mesh;

J. mapping the surface detail coordinates back to the array of pixels making up the selected surface detail and selecting the appropriate pixel;

K. blending the surface detail pixel color and the pixel color at this position in the mesh;

L. repeating steps e-k for every pixel in the quadrilateral scan line, for every scan line in the quadrilateral, and for every quadrilateral in the mesh.

21. a system for providing surface detail to computer-generated two-dimensional graphic images in a computer-assisted design system of three-dimensional free-form surfaces to create a three-dimensional appearance comprising:

means for producing a two-dimensional image of a three-dimensional object in a form for storage and processing by a digital computer;

means for dividing said two-dimensional image into segments, each segment representing a portion of said object;

means for circumscribing said segments by polygons in digital form for storage and processing by a digital computer;

means for generating at least one mesh within each segment wherein said at least one mesh creates a three-dimensional visual appearance;

means for producing at least one image of surface detail in the form of a rectangular array of pixels for storage and processing by a digital computer;

means for storing said surface detail image in a data storage unit accessable by said digital computer;

means for mapping said surface detail to said mesh within said segment such that said surface detail produces a three-dimensional appearance; and

means for creating a graphic visual image of said two-dimensional image, covered by said surface detail, giving a three-dimensional appearance.

22. A system for providing surface detail as set forth in claim 21 wherein said means for producing a two-dimensional image comprises:

means for forming a video image of the three-dimensional object; and

means for converting said video image into a digital form suitable for storage and processing by additional computer.

23. A system for providing surface detail as set forth in claim 21 wherein said means for producing a two-dimesional image comprises:

means for creating a graphic representation of said three-dimensional object in two-dimensional form; and

means for converting said graphic representation into a digital form suitable for storage and processing by a digital computer.

24. A system for providing surface detail as set forth in claim 21 wherein said means for circumscribing said segments comprises:

means for displaying said two-dimensional image on a graphic visual input/output device; and

means for entering information into said computer representing polygons formed around each segment as displayed on said graphic visual input/output device.

25. A system for providing surface detail as set forth in claim 21 wherein said means for generating at least one mesh comprises:

means for displaying at least one of said segments bounded by said polygon on a graphic visual input/output device;

means for entering information into the computer for creating a series of bounding polylines which enclose said segment; and

means for calculating a perspective mesh contained by said bounding polylines perspective which mesh consists of a plurality of horizontal and vertical lines spatially arranged to form a plurality of quadrilaterals representing a three-dimensional surface for said segment, as such surface would appear to the eye, in two-dimensional form.

26. A system for providing surface detail as set forth in claim 21 wherein said means for producing at least one image of surface detail in the form of a rectangular array of pixels comprises:

means for entering at least one image of at least one surface detail feature into the computer in such form as to permit display on a graphic visual input/output device; and

means for storing at least a portion of said surface detail image in a data storage device, said storage device permitting the storing of information necessary to define the color and intensity attributes of each elemental point on the graphic visual input/output device displaying said image, such information defining a rectangular arrray of pixels representing the surface detail.

27. A system for providing surface detail as set forth in claim 21 wherein said means for mapping comprises:

means for selecting a segment of the two-dimensional image to which said surface detail is to be applied;

means for selecting the surface detail to be applied;

means for retrieving the selected segment and mesh from data storage;

means for retrieving the selected surface detail from data storage;

means for scan-converting the x, y points forming the boundary of the selected segment by creating and storing a list of scan lines contained within the selected segment;

means for examining each quadrilateral in said mesh to determine whether any part of said quadrilateral lies within the bounding polylines of the selected segment;

means for scan-converting each quadrilateral in said mesh and temporarily storing a list of scan-lines for each quadrilateral;

means for examining each scan-line on a pixel-by-pixel basis to determine those pixels lying within the selected segment;

means for calculating a surface detail coordinate for each pixel lying within the selected segment based on the location of the pixel and the quadrilateral and on the location of the quadrilateral in the mesh;

means for mapping the surface detail coordinates back to the array of pixels making up the selected surface detail and means for selecting the appropriate pixel;

means for blending the surface detail pixel color and the pixel color at this position in the mesh.
 Description Submit all comments and votes
 


BACKGROUND OF THE INVENTION

1. Field of the Invention

The invention is in the field of computer aided design ("CAD") systems, and specifically relates to a system and method for providing texture mapping to a two-dimensional design system.

The present invention has specific application to the apparel and footwear design industries.

2. Background Description

In the field of computer aided design, one of the objectives of any CAD system is to display a realistic image of whatever is being designed on the graphic visual input/output device, e.g. cathode ray terminal ("CRT"), of the system. One technique for enhancing the realism of the generated image is to add detail to the surfaces or areas making up the image using a texture mapping technique. That has been employed in three-dimensional CAD systems, notably those used in making animated films. The objects designed on and displayed by such systems are represented internally by a data structure that reflects the three-dimensional topology of the object. The texture mapping algorithms incorporated into those systems use that topology as a guide for applying the texture over the surface of the object in a realistic manner. Procedural Elements for Computer Graphics by David Rogers, pp. 354-363 (McGraw-Hill 1985); "Texture and Reflection Computer Generated Images" by James F. Blinn and Martin E. Newell, pp. 542-547, Communications of the ACM, (Oct. 1976); "Simulation of Wrinkled Surfaces" by James F. Blinn, Computer Graphics, Vol. 12, Proceedings of SIGGRAPH (1978) pp. 286-292. In order to obtain that realism, the texture applied to any surface of the object that is not perpendicular to the viewing direction (line of sight) must show distortion to give the appearance of being "tipped away" from the viewer; the applied texture should be shaded the same as the object based on a light source at a given location; the texture should appear larger near the front of the object and smaller near the back due to perspective; and, the texture should not appear if it is mapped to a surface that is on the back of the object. Those are a few of the visual cues that a texture-mapping algorithm used in a three-dimensional CAD system can give a user to enhance the three-dimensional appearance of the object being designed.

Those systems, however, are complicated and require comparatively large, expensive computer systems. Moreover, there is a need to be able to provide texturing which would provide for a three-dimensional appearance for two-dimensional CAD systems.

In the case of a two-dimensional CAD system, the image on the graphic visual input/output device, i.e. CRT, may have been drawn freehand by the user or may be a digital photograph that was input via a video camera. In any case, the data structure describing the three-dimensional topology of the object or image being designed does not usually exist in a two-dimensional CAD system; hence there is no well-defined procedure by which surface detail may be "correctly" applied to the different parts of the image. That is the problem the present invention addresses.

SUMMARY OF THE INVENTION

Once an image has been displayed on the graphic input/output device or CRT of a two-dimensional CAD system, the present invention provides the user with a capability of creating perspective meshes that cover different parts of the image in such a way as to give the appearance of describing the three-dimensional topology of the underlying image. The user is given the "tools" for controlling how the perspective meshes cover the image; these are used for the initial placement of the mesh and subsequent adjustment of the mesh until the user feels that it adequately describes the shape of the underlying surface.

A "perspective mesh", as used herein, is a mesh created by a plurality of horizontal and vertical lines which form a number of quadrilaterals. The horizontal and vertical lines are spatially arranged such that the resulting image is a representation of a three-dimensional form, or, in short, represent the three-dimensional image as it might appear to the eye, but in two-dimensional form.

In the case of apparel design, the present invention gives the user, for the first time, the capability to place a mesh over a piece of material in such a way as to follow any curves in the shape, as well as follow the contours of any folds and wrinkles. If the image is of a room interior, meshes can be placed on curtains or furniture in the scene so that surface detail (in this case fabrics, patterns and so forth) can be applied to their surfaces in a realistic manner. A mesh can also be placed on a floor in a room in such a way as to show perspective, allowing different carpet patterns and color to be applied to the floor.

After meshes have been applied to the different parts of the image, the present invention permits the use of surface detail mapping to apply the surface detail to the parts of the image that are covered by the meshes. A surface detail mapping function in a three-dimensional CAD system uses the actual topology of the object being designed as a guide when applying the surface detail to the parts of the object. For the purpose of summarizing the present invention, a surface detail mapping method of the present invention uses the user-defined meshes which have been developed as described above.

In the apparel industry, the present invention now permits a designer to use a video camera or digitizing drafting tablet to enter an image of a model, for example, wearing a dress of a particular design into the computer of a two-dimension CAD system. That stored image can be retrieved to a CRT or other graphic visual input/output device which then presents a two-dimensional image of the model and the dress. In order to obtain a three-dimensional appearance, the designer, using the present invention, creates a perspective mesh overlaying the dress which now gives the designer the ability to represent, in two-dimensional form, the actual three-dimensional surface. The designer then retrieves various surface details (in this case, various cloth/materials having differing textures, weaves, patterns, colors, and the like) from computer storage and can easily "dress" the model on the CRT with those differing textures, weaves, patterns and the like until a final design is reached. The designer can then produce a hard-copy image of the resulting design.

In interior design, the present invention permits a designer to use a video camera, for example, and take a video image of an actual room and then, using the mesh generation and surface detail mapping techniques of the present invention, change the texture, pattern and colors of floor coverings (i.e. carpet), window treatments (i.e. drapes and the like), and other room features until a final design is reached. Rather than guessing how a particular carpet will look in a particular room, the design can now actually "lay" the carpet in the room using a CAD system and see how the carpet looks in a three-dimensional representation.

Thus, it is an object of the present invention to provide a system and method for providing surface detail to computer generated two-dimensional graphic images of apparel or other free-form surfaces and three-dimensional objects.

It is another object of the present invention to provide a user-controlled mesh generation system and method for producing a topology for a two-dimensional graphic image of a three-dimensional free-form surface or object.

It is a further object of the present invention to provide a system and apparatus for applying surface detail to a two-dimensional graphic image which gives the image a three-dimensional appearance.

It is yet a further object of the present invention to provide a simpler system and method for providing surface detail in CAD systems, and one requiring comparatively less expensive and complicated computer hardware and systems.

It is yet another object of the present invention to provide a system and method which permits a user to provide visual images of a variety of apparel or other designs illustrating differing surface textures, patterns and colors, which images give a three-dimensional appearance.

It is a still further object of the present invention to provide a system and method which allows a user to input to a two-dimensional graphic system the image of a room, apparel design, or other free-form three-dimensional surface and then vary, at the user's will, the surface texture, pattern and colors of selected portions of that image, for example floor and wall coverings, window treatments, apparel fabric and so forth.

These and other objects, features and advantages of the invention will become evident in light of the following detailed description, viewed in conjunction with the referenced drawings, of a preferred Texture Mapping System according to the invention. The foregoing and following description of the invention is for exemplary purposes only. The true spirit and scope of the invention is set forth in the appended claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an illustration of a CAD hardware system useful in the present invention.

FIG. 2 is a flowchart illustrating a portion of the two-dimensional CAD system according to the present invention.

FIG. 3 is a flowchart illustrating the mesh generation functions of the present invention.

FIG. 4 is a flowchart illustrating the polyline input functions of the present invention.

FIG. 5 is a flowchart illustrating a portion of the polyline input functions of the present invention.

FIG. 6 is a flowchart illustrating the "Move Polypoint" function of the present invention.

FIG. 7 is a flowchart illustrating the "Delete Polypoint" function of the present invention.

FIG. 8 is a flowchart illustrating the "Insert Polypoint" function of the present invention.

FIG. 9 is a flowchart illustrating the mesh generation function of the present invention.

FIG. 10 is a flowchart illustrating the mesh editing function of the present invention.

FIG. 11 is a flowchart illustrating the mesh storing function of the present invention.

FIG. 12 is a flowchart illustrating the store texture or pattern of the present invention.

FIG. 13 is a flowchart illustrating the first portion of the mapping function of the present invention.

FIG. 14 is a flowchart illustrating the second portion of the mapping function of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

Although the current invention has particular application in the apparel industry and the following description focuses on that application, it should be understood that the invention may be applied in any instance involving a three-dimensional object.

For purposes of this description, there are a few assumptions made about the nature of the two-dimensional images that are displayed on standard graphic CRTs of CAD systems which are to be used as a backdrop for mesh generation and subsequent application of surface detail. The two-dimensional image being worked on should be realizable as a set of constituent parts that, though perhaps appearing to be a three-dimensional object, are simply the projection into two dimensions of the parts making up the object. The individual parts making up the object (in the case of apparel: sleeves, fronts, yokes, etc.) are then bounded by two-dimensional polygons, each of which contains a region of the image that consists of a single piece of material, and as a collection cover all pieces of material or parts making up the image. Those polygons are referred to as "segments" and may be applied to the image point by point via a manual digitizing process using a locating instrument such as a standard light pen or mouse. The two-dimensional image may have been input to the CAD system through a video camera or by being sketched in directly by the user. Once in the system, the image is stored on a data storage system, preferably a hard disk, for later retrieval. The definition of the segments digitized by the user to define the image parts are stored with the image.

After an image has been segmented, the user may then generate the meshes which will guide the texture mapping, with one mesh per segment. The segments used to subdivide the image will usually each cover one part or piece of material; the associated mesh that the user places on the segment will then determine how the surface detail will then be applied to that piece of material.

To define a mesh, the user first digitizes four bounding polylines, the `top`, `left`, `bottom`, and `right`. This is done in a manner similar to that done in digitizing the boundary of the segment. In fact, it is often useful to use portions of the boundary of the segment as part of the polylines making up the mesh boundary. Once the boundary polylines of the mesh have been digitized, the user can repeatedly generate the mesh bounded by the polylines while making changes to the polylines using editing functions (for example, instructions to move polyline point, insert, delete and so forth) until the shape of the mesh looks like it fits correctly over the underlying surface. An editing function for adjusting the points singlely inside the mesh may be used to make small adjustments in the appearance of the interior of the mesh. Another method for adjusting the interior of a generated mesh without changing the border or the mesh in the vicinity of the border is to actually digitize interior polylines, thus creating "sub-meshes" of the original mesh. Such technique gives the user a more general ability for controlling the interior shape of the mesh. The meshing algorithm is then applied recursively to create each of the sub-meshes, which as a whole make up the complete mesh. When the user is satisfied that the mesh is shaped correctly over the image surface under the segment, the user may then store the mesh with the associated segment.

Once a mesh has been created and stored with an image segment, the user may then apply surface detail to the segment using the texture mapping function of the present invention. The texture mapping function will then use the mesh associated with the segment as a guide for applying the surface detail to the portion of the image under the segment. The "surface detail", also known as "textures" or "patterns", may be digitized images brought into the system via video camera input, or they may have been designed using other facilities. Those facilities may be "paint" programs, fabric weaving programs, or patterning programs or some of the other functions in standard two-dimensional CAD systems. The textures or patterns (and images, for that matter) are stored on the data storage device, e.g. system hard disk, as a rectangular array of pixels.

Description of Hardware

The hardware requirements to support the present invention are basically those needed to support a standard two-dimensional CAD and image processing system. An illustration of such a system is given in FIG. 1. The hardware should consist of, minimally, a graphic visual input/output device, e.g. a CRT, 10 and 10', with a standard light pen 12 or mouse 14 as a locating instrument, a keyboard 16, a central processing unit 18 that will support program control of the individual pixels displayed on the graphic CRT 10 and 10' (through use of graphics command library), and a data storage unit 20, preferably a hard disk storage unit. If the images used in the system are to be inputted through a video input, a video camera 22 and standard associated frame-grabbing hardware (not shown) are also required. Input to the system may also be through a standard two-dimensional digitizing drawing device 32. The data storage unit 20 is needed for storage of the data files supporting the two-dimensional software system including the digital graphic images, segments and meshes thereon, and the textures, patterns, fabrics, etc., also stored as digital images for application as surface detail to the segments on the graphic images. For the mesh generation capability, the central processor should support floating-point mathematics computation. Another consideration is the number of simultaneously displayable colors possible on the graphic CRT 10 and 10' of the computer system; a minimum of 256 simultaneously displayable colors and preferably 4096 would be needed in a system with video camera input and colorization or texture mapping performed by the software. Adequate facilities for performing these functions are found in the "Engineering Workstations" currently available from several vendors such as Silicon Graphics Inc., Apollo Computer Inc., and SUN Microsystems.

The present invention is preferably used in conjunction with a Silicon Graphics Inc. IRIS workstation, currently configured with a keyboard, three-button mouse, graphic CRT with a viewable resulution of 768 by 1024 pixels, a central processor with 2 megabytes of main memory and supporting 4096 simultaneously displayable colors on a graphic CRT, and a 72 megabyte hard disk. Television input of images and textures are supported using a video camera and a video frame buffer. A system configured with greater viewable resolution, or more simultaneously displayable colors would permit even better visual results.

The output of the system can be directed in known manner to a video tape 24 for later viewing, an output camera 26 capable of producing color slides or photographs of various sizes, a graphic CRT 10' (which, of course, may be the same as the input graphic CRT 10), or to hardcopy for example through a printer 28, or a plotter 30.

Description of Software

In describing the functions of the present invention involved in applying surface detail to two-dimensional images such that the "three-dimensional appearance" is provided or enhanced, two groups of functions need to be detailed. The first is the set of functions used for defining, generating, editing, and storing a mesh. The second is the set of functions used for storing textures and patterns and applying them to the image. Since most current CAD systems are menu driven, the explanations given below will describe how the user would execute the functions by selecting from a menu displayed on the graphic CRT of the system.

Basic capability for creating and adjusting meshes can be provided in a menu with the following choices:

Top Polyline

Left Polyline

Bottom Polyline

Right Polyline

Generate Mesh

Modify Mesh Points

Store Mesh With Segment

The functions "Top Polyline", "Left Polyline", "Bottom