2
ISPRS Journal of tq~otogrammelry and Remote Sensing
R o n g x i n g Li i
Generation of geometric representations of 3D objects in CAD~CAM by digital photogrammetry * This paper presents a method for the generation of geometric represcntations of 3D objects by digital photogrammetry. In CAD/CAM systems geometric modelers are usually used to create three-dimensional (3D) geometric representations for design and manufacturing purposes. However, in cases where geometric information such as dimensions and shapes of objects are not available, measurements of physically existing objects become necessary. In this paper, geometric parameters of primitives of 3D geometric representations such as Boundary Representation (B-rep), Constructive Solid Geometry (CSG), and digital surface models are determined by digital image matching techniques. An algorithm for reconstruction of snrfaces with discontinuities is developed. Interfaces between digital photogrammetric data and these geometric representations are realized. This method can be applied to design and manufacturing in mechanical engineering, automobile industry, robot technology, spatial information systems and others.
1. Introduction
Three-dimensional (3D) objects in Computer Aided Design (CAD) and Computer Aided Manufacturing (CAM) systems are described by geometric representations which describe geometric entities of 3D surfaces and volumes. With the help of proper geometric representations CAD/CAM systems can handle' all geometric aspects of design and manufacturing of products very efficiently. Usually, such a geometric representation of a 3D object can be generated by a geometric modeler if a design concept and necessary related data are known. But in some cases, where geometric information such as dimensions and shapes of the objects is not available, measurement of physically existing objects becomes necessary. Measuring machines are often utilized to measure 3D coordinates of objects in mechanical engineering (VW-GEDAS, 1989; Albertz, 1989). A surface point to be measured is touched by a contact point of the measuring machine. The position of the contact point can be determined by its 3D translation according to the origin of the coordi*Revised paper honoured with the Young Author's Award and presented at the 17th Congress of ISPRS, Commission V, Washington D.C., U.S.A., August 1-14, 1992. 1Department of Geomatics Engineering, The University of Calgary, Calgary, Alta. T2N 1N4, Canada
nate system of the machine. Thus, the object can be measured point by point. Among others two drawbacks of this method are: (a) physical contacts between objects and the measuring machine may limit its applications where such contacts are impossible; (b) the long operating time makes it unsuitable for measuring mass points, for example, for generation of digital surface models. Close-range photogrammetry derives object positions in the object space by multi-frame approaches where object models are reconstructed and used to triangulate object points from identical points in multi-images. This enables an optical measurement of objects without contacting the objects. Digital photogrammetry, especially supported by digital image matching, can automate the measuring procedure (Kreiling, 1976; Cogan and Hunter, 1984; Ackermann, 1984; Wrobel, 1987; Helava, 1988; Gruen and Baltsavias, 1988; ElHakim, 1989; M. Li, 1991; Iteipke, 1992; Dowman et al., 1992). Developments in pattern recognition and computer vision help analyze image features and identify objects. Surface features, for instance surface edges (potential surface discontinuities), can be matched, so that their locations in the object space can be reconstructed (Ohta and Kanade, 1985; Ohta and Ikeda, 1988; Terzopoulos, 1986; Li, 1988, 1990). InduSURF system (ZE1SS, 1987) is able to photograph objects by using analog metric cam-
ISPRS Journal of Photogrammetry and Remote Sensing, 48(5): 2-I I 0924-2716/93/$06.00 © 1993 Elsevier Science Publishers B.V. All rights reserved.
Volume 48, number 5, 1993
eras, and measure object surfaces from scanned images by digital image matching. Automatic capture of surface discontinuities is not included in the system. This paper presents a method which applies digital image matching to generate geometric elements of primitives of 3D geometric presentations, such as points, edges, curves and surfaces, from stereo images. An algorithm for generation of digital surface models with surface discontinuities by area and feature based image matching is developed. An interface between the digital image matching system and CAD/CAM systems makes it possible to convert the data acquired by digital photogrammetry to 3D geometric representations. Therefore, design and manufacturing procedures can be automated and processing time can be reduced by applying digital photogrammetry. 2. Geometric representations and digital image matching
2.1. Three dimensional geometric representations 3D geometric representations are basic elements in CAD/CAM systems. With proper definitions and applications of these geometric representations many tasks can be simplified and accomplished efficiently and comfortably. For instance, a part of design works can be transformed to a description of products by predefined primitives; furthermore, the manufacturing process may be simulated by operations of geometric representations. Generally, an object can be represented by two principal techniques, namely by its boundary and by its interior. The following are some well known and frequently used geometric representations in mechanical engineering (Spur and Krause, 1984; Mortenson, 1985; Samet, 1990): (1) Boundary representation (B-rep): an object is represented by its boundary elements, which are decomposed into a set of face, edge and point subelements hierarchically. An extension, volume elements, can also be included in this representation (Fig. 1). (2) Constructive solid geometry (CSG): predefined solid primitives of objects, such as cubes, cones, cylinders and others, are combined to form complex objects by geometric transformations and Boolean set operations.
3 •
I
QO
Volume Face Edge Point
0' /
C
C
j,,,
©
0
(: & . . . . "
Figure 1. Subelements of boundary representations.
(3) Cell decomposition: the object space is decomposed into cells with different sizes. For exampie, an octree is a regular decomposition variant of this representation, where an object can be approximated recursively by cubes of different sizes. Generally, it is recognized that B-rep and CSG are more appropriate for design applications, while cell decomposition based methods are more advantageous for manufacturing applications. Figure 2 shows a simple part described by Brep, CSG, and octree representation.
2.Z Digital image matching Digital image matching is a powerful method for matching geometric information in multiimages. Identical primitives in different images can be found automatically by the matching procedure. Given transformation parameters between image and object space, locations in the object space can be calculated. Generally, image matching techniques may be classified into three categories: (1) area based image matching which directly uses gray scale of images that might be preprocessed; (2) low-level feature based image matching which compares low-level primitives such as interest points, edges and other features in stereo images; and (3) high-level feature based image matching which uses processed primitives such as identified objects, object parts and relations between them. High-level feature based image matching supplies reliable and stable results, but the extraction of high-level features and the identification of objects themselves represent very difficult problems. The area based image matching is widely applied in practice. This method achieves good results in cases where the surface relief is relatively flat and
4
ISPRS Journal of Photogrammetry and Remote Sensing
(a)
(b)
ity. Edges can be extracted by using digital image processing. Corresponding edges in stereo images are found by edge based matching (Marr, 1982; Ohta and Kanade, 1985: l.i, 1990). Because of its high precision, least squares image matching (Ackermann, 1984) is applied to locate point positions in stereo images. Given good approximate positions of points in stereo images with sufficient image texture, least squares image matching provides high matching precision. But the accuracy of the matched points in the object space is mainly dependent on image resolution (pixel size), image quality, matching algorithm, transformation model between image and object spaces, and others. A method of least squares matching in object space (Li, 1990) has been developed which includes an image-object-space constraint in the image matching model in order to achieve more plausible results. Edge based image matching searches identical image edges in images. An algorithm for edge matching by dynamic programming has been developed, under considerations of edge continuity and geometric constraints of the approximate surface model (Li, 1988, 1990). The result of the edge based image matching is combined with that of area based image matching, so that discontinuous parts of the surface can also be represented in the reconstructed digital surface model. An iterative procedure is employed. This results in an improved digital surface model which is closer to the real object surface.
3. Generation of 3D object representations by digital image matching
3.1. Measuring primitives of B-rep and CSG
Figure 2. A simple part describedby three representations: (a) a display of the B-rep of the part, (b) its CSG tree, and (c) its shaded octree representation.
image texture is available. Conversely, the reconstruction of discontinuous surfaces and surfaces with few texture is problematic. However, in such cases image features such as edges are often available. Edges are usually only a small percentage of the whole image content, but they imply a great deal of information about the surface discontinu-
In digital images, geometric information of objects is represented by locations and gray scales of pixels. The objectives of the application of digital photogrammetry are (a) to analyze the images digitally, (b) to identify object shapes, and (c) to locate geometric positions of objects in the object space. Geometric data thus obtained can be used to generate geometric representations. Although progress in digital photogrammetry and computer vision has been made, automatic recognition of objects with arbitrary geometric forms still remains a research area. Therefore, interactive operations are often necessary.
Volume 48, number 5, 1993
A B-rep or CSG representation of an object is composed of a number of primitives among which point, edges, and curves are basic elements. Other complex primitives can be derived from these basic elements. The following describes how to reconstruct basic elements and some primitives from digital images. Image points displayed on a monitor are defined and located with a cursor interactively, as long as the areas containing the points are not lacking of image texture. By means of least squares image matching corresponding points in other images can be found provided that their approximate locations are pointed out by an operator. On the monitor, definition of a point in the left image of a stereo pair by the cursor provides the accuracy of one pixel. This can be realized interactively by driving the cursor approximately to the desired point; then we can use the zooming function to locate the point at the pixel level. If a point is depicted by an artificial pattern (for example, a marked control point), a matrix which digitally represents the artificial pattern can be built. Through a matching between the matrix and the image area of the point, the definition of the point can be reached at a subpixel precision. Because the corresponding point on the right image is found by least squares image matching, it is also located in subpixel precision. The matching precision is presented by the standard errors of image coordinates after the matching procedure is performed (Ackermann, 1984). The photogrammetric spatial intersection transforms the matched points from the image space into the object space. Straight lines can be determined by measuring two end-points. Parameters of curves with regular forms such as circles, ellipses etc. can be determined analytically if a certain number of points on the curves are visible in images and are measured by digital image matching. Curves with irregular forms (free forms) are reconstructed by measuring points on the curves which represent changes of the curvature. These points are used to generate polygons or to estimate parameters of B-spline functions. Faces are located by measuring boundaries and auxiliary points. For example, a cylindrical face may be described by a circle and two central points on the top and the bottom, respectively. Similarly, volume primitives can be determined by the obtained faces.
5
Thus, primitives of B-rep and CSG are reconstructed in object space from stereo images. These reconstructed primitives are combined by using geometric modelers in order to generate B-rep and CSG representations. 3.2. Generation of octree representations 3.2.1. Reconstruction of digital surface models The above procedure for reconstruction of primitives of B-rep and CSG by digital image matching is mostly performed interactively. Generation of an octree representation from digital images can be automated because of its hierarchical data structure. The presented algorithm first reconstructs a digital surface model from digital images, and then converts it to an octree representation. Generation of digital surface models by means of digital image matching has been researched in the last few decades (Kreiling, 1976; Claus, 1983; Foerstner, 1986; Wong and Ho, 1986; Brockelbank and Tam, 1991; M. Li, 1991; Heipke, 1992). But handling discontinuities of surfaces still remains a difficult problem. However, objects with discontinuous surfaces often occur in CAD~CAM applications. Thus, image matching must be able to reconstruct both continuous and discontinuous portions of surfaces. To reconstruct a complete digital surface model, area based image matching is used to acquire surface information in relatively flat areas of the surface, and edge based image matching is applied to extract discontinuities of the surface. The results of these two processes are combined, so that continuous and discontinuous parts of the surface can be reconstructed. At the same time the efficiency of digital image matching can be improved (Li, 1988, 1990). Figure 3 illustrates a schema of the method by which continuous and discontinuous portions of a surface can be reconstructed from digital stereo images. The digital input images are preprocessed by methods such as contrast enhancement and high and low pass filtering, so that the image quality can be improved for further image processing and image matching. Edge detection and edge following supply edge elements which are correlated during edge based matching. An approximate surface is built hierarchically with a pyramid structure by
6
ISPRS Journal q[ Ph~togrammetry and Remote Sensing i=l
Image Preprocessing
-]
Generation of the Approximate Surfacemodel I
I
f ......
t
A r ~ n g
I
I Edge BasedMatching
I
I
Eliminationof MatchingErrors and Interpolation i
Criteria Fulfilled?
I I No
Yes Digital Surface Model Figure 3. A schema of tile algorithm for reconstruction of a surface with discontinuities by digital image matching techniques.
digital image matching. Multiresolution grids are defined. In an iterative procedure the grid processed becomes denser and denser; and at every grid point in the object space, a Z value is determined by vertical line locus (VVL) matching (Cogan and Hunter, 1984; Li, 1990). This insures a reliable approximate surface and reduces computing time. Based on the approximated surface model, an area based image matching module, namely a least squares matching in object space (Li, 1990), is applied to calculate grid points in the object space point after point. This refines the Z values at all grid points in relatively flat regions. At the same
time edges are extracted and matched by a procedure of dynamic programming under constraints of edge continuity and geometric consistency with the obtained object surface to determine discontinuities of the surface. In order to acquire a complete surface model in continuous and discontinuous regions, results achieved by the area based and edge based image matching methods have to be combined. The preservation of local surface discontinuities during the integration of the results is realized in such a way that (a) unmatched points along an edge are linearly interpolated, and (b) points with matching failures, which often appear near surface discontinuities, are interpolated sep-
Volume 48, number 5, 1993
7
arately on both sides of edges. False matches are detected by checking slope changes of points in their neighborhood and then replaced by values calculated according to weighted points of their neighborhood (Hannah, 1981). Thus, the error detection and correction can be implemented in an automatic fashion. In order for area and feature based image matching to assist each other, the image matching procedure starts with the improved digital surface model as an approximate surface again. Since the information of surface discontinuities acquired by the feature based matching is contained in the updated approximate surface model, re-execution of the module of area based matching will improve the digital surface model, especially in areas close to surface discontinuities. On the other hand, the improved surface model supplies better geometric constraints in the feature based matching in order to restrict mismatched edges. Therefore, the complete matching process should be performed interactively so that the interaction between area and feature based matching will approach the result of a digital surface model, which approximates the real object surface as closely as possible. This iterative procedure continues until at least one of the following conditions is satisfied: (a) the maximum number of iterations is reached, and (b) percentage of mismatched points is below some threshold. A detailed description of this algorithm for the reconstruction of digital surface models can be found in Li (1990). It is applied successfully
to different image types, e.g. aerial photography, close-range photography and electron-microscopic images. 3.2.2. Conversion from a digital surface model to an octree representation Octree representations describe objects by a spatial numerical structure. Octree micro cells represent geometric details of objects hierarchically (Spur et al., 1989, 1990; Samet, 1990; Li, 1991). Figure 4 shows an example of octree representation. In order to create the octree representation, the simple object of Fig. 4a is subdivided at three levels. The first level contains the root (Fig. 4b); the second level contains five Full-leaves, two Empty-leaves and one Partial-leaf. This Partialleaf is further divided at the third level into eight leaves. Among these are seven Full-leaves, one Empty-leaf and no Partial-leaves. Figure 4c shows a linear octree of the object. An interface between digital image matching and CAD/CAM systems is developed to convert a digital surface model into an octree representation (Li, 1992). Figure 5 demonstrates the concept of this conversion. The digital surface model is transformed from a regularly gridded data structure into voxel elements (a 3-D extension of pixels) of the original leaf. From the original leaf, subdivision of octree construction begins. After the octree is coded, its representation of the object is built. The most important part in the conversion from a digital surface model to an octree is to transform the surface information to solid infor-
Root
1,2, 3, 7, 60, 61, 62, 63, 65, 66, 67. 60 6162 63 64 65 66 67
(a)
(b)
(c)
Figure 4. An example of octree representation: (a) a 3D object, (b) its octree and (c) its linear octree.
8
ISPRS Journal of Photogrammetry and Remote Sensing
~Surface M~ 1 I enerationoftheOriginalLeaf [ 1 ,Subdivisionof OctreeLeavesI
l
1
[
Octree Coding ~e
[
1
Representat~t~
Figure 5. A concept for conversion from a digital surface model to an octree representation.
mation. This is realized by applying a ray tracing technique. The surface model is defined in the 3D Cartesian coordinate system. Rays are projected from one of the principal planes to the digital surface model. Solid information is obtained by the analysis of intersection segments of the rays and the digital surface model. The solid information
is then used to form the original leaf. Details of the ray tracing algorithm and the octree coding are described in Li (1991, 1992) For some applications, real time processing may be required. But the conversion from a digital surface model to an octree may take a relatively long time. A graphic engine, which is a hardware unit, consists of micro-processors for special conversion algorithms. It can be applied to accelerate the conversion process (Spur, 1987; Li, 1991). Thus, the software system is able to react quickly to user requirements in various applications. 4. Example Measuring primitives of B-rep and CSG, and 3D surface reconstruction from digital images by digital image matching and the interface for conversion from digital surface models to octree representations have been implemented by programming in FORTRAN on a VAX/VMS system. The following example demonstrates the results of the application of the method presented. Figures 6a and 6b illustrate a stereo-image (512 x 512 pixel 2) pair of a test model which simulates a discontinuous surface. The test area has a dimension of about 0.70 x 0.55 m 2 and consists of objects of different shapes including a box, a wedge and a free-form object.
Figure 6. Generation of 3D geometric representations from stereo images by digital image matching: (a) and (b) a pair of stereo images.
Volume 48, number 5, 1993
9
tdi
~" ;-:', ....
Figure 6 (continued). (c) Generatedboundaryrepresentation, (d) reconstructeddigitalsurfacemodel, and (e) octree representation. In order to generate a B-rep of the test model dimensions and parameters of shapes and locations of regularly shaped objects were measured interactively on a monitor by using least squares image matching. In addition, 36 surface points of the free
form object were also determined by image matching. This geometric information was used as input to a B-rep based geometric modeler. Figure 6c illustrates the resulted B-rep of the test model by the geometric modeler.
10
A conversion from B-rep to octree (Li, 1991) would be able to build an octree representation from the B-rep (Fig. 6c). However, one of the objectives of this research is the direct and automatic construction of octree representations from digital images, without interactive editing through geometric modelers. Therefore, a digital surface model was first generated from digital images automatically, and then converted to an octree representation by an interface. Area based image matching produced an approximate surface model. From this first surface model, the least squares image matching in object space was started to refine surface points in relatively flat regions. Edges are extracted and matched by using dynamic programming. The combination of results from area and edge based image matching provides a digital surface model with extracted discontinuities. In order to obtain fine surface structures, two more photographs were taken at different locations. With these images, the area and edge based image matching were also carried out. Figure 6d is the reconstructed 3D digital surface model made from the combination of results from these two stereo-image pairs. The iterative procedure of computation was stopped after three iterations, when the percentage of successfully matched points reached 97%. In this discussion a point is successfully matched if the standard errors of its corresponding image coordinates are less than or equal to three times the average of standard errors of all surface points. Because of image noise and objects-camera geometry, for example, some edge may not be fully detected in all images, so that the matched edge in the object space will not represent the complete object boundary. In this case, the system interpolates the points, which are actually boundary points, by using their neighbor points. This causes small artifacts of surface points at one of the corners of the cube in Fig. 6d. This drawback can be avoided by an interactive editing if a complete automatic procedure is not necessary, or by integrating the knowledge of object shapes into the matching process in the future research. To generate an octree representation of the test model, an original octant with a dimension of 64 x 64 x 64 was defined. A ground Z value was added to the digital surface model in Fig. 6d. Therefore, the digital surface model became a digital solid description of the test model and was transformed
ISPRS Journal of Photogrammetty and Remote Senstng
into the original leaf of tile octree. After the subdivision of the original leaf and octree coding, a linear octree representation was built. Figure 6e displays a wire frame model of the resulted octree representation. 5. Conclusions
3D geometric data for generation of geometric representations in CAD/CAM can be acquired by digital photogrammetry. The method which uses both area and edge based image matching for reconstruction of digital surface models is efficient, especially for objects with surface discontinuities. The interface between digital image matching and CAD/CAM systems makes it possible to transform the acquired digital surface model directly into an octree representation, The presented method may be applied in the fields of design and manufacturing, automobile industry, robot technology and other engineering applications. Further efforts should be made in automatic recognition of primitives of B-rep and CSG representations from digital images. Conversion from octree representations to other geometric representations is a topic which requires further investigation. Acknowledgements
The research work was in part done when the author was with the Department of Photogrammetry and Cartography, the Institute for Machine Tools and Manufacturing Technology of the Technical University of Berlin, Germany, and the Pacific Mapping Center, University of Hawaii. The author would like to thank Prof. N. Saxena and Prof. Dr.-Ing. J. Albertz for their encouraging discussions. The Volkswagen Foundation, Technical University of Berlin, USGS and NOAA are acknowledged for supporting this research work. References
Ackermann, E, 1984. High Precision Digital Image Correlation. Schriftenreihe lnstitut ffir Photogrammetrie,Universily of Stuttgart, No. 9, Stuttgart. Albertz, J. and Mehlbreuer, A., 1986. Digital Data Acquisition for Close-RangePhotogrammetry.Proc. ISPRS Comm. l Syrup., Stuttgart, Sept. 1-5, 1986. Albertz, J. (Editor), 1989. Interpretation von Oberflaechenstrukturen und -veraenderungen auf Grund digitaler stereophotogrammetrischer Bilddatenauswertung.Techni-
Volume 48, number 5, 1993
cal Report for the Research Project IFP 7/2, Technical University of Berlin. Brockelbank, D.C. and Tam, A.P., 1991. Stereo elevation determination techniques for SPOT imagery. Photogramm. Eng. Remote Sensing, 57(8): 1065-1073. Claus, M., 1983. Korrelationsrechnung in Stereobildpaaren zur automatischen Gewinnung von digitalen Gelaendemodellen, Orthophotos und Hoehenlinienplaenen. German Geodetic Commission (DGK), Ser. C, No. 283. Cogan, L. and Hunter, D., 1984. DTM Collection and the Kern Correlator. Kern and Co. Ltd. Dowman, I., Ebner, H. and Heipke, C., 1992. Overview of European developments in digital photogrammetric workstations. Photogramm. Eng. Remote Sensing, 58(1): 5156. El-Hakim, S.E, 1989. A hierarchical approach to stereo vision. Photogramm. Eng. Remote Sensing, 55(4): 443-448. Foerstner, W., 1986. Beispiele zur automatischen Erfassung von digitalen Oberflaechenmodellen. Photogramm. Fernerkundung/BuL, 54(2): 71-79. Gruen, A. and Baltsavias, E., 1988. Geometrically constrained multi-photo matching. Photogramm. Eng. Remote Sensing, 54(5): 633-641. Hannah, M.J., 1981. Error detection and correction in digital terrain models. Photogramm. Eng. Remote Sensing, 47(1): 63-69. Heipke, C., 1992. A global approach for least-squares image matching and surface reconstruction in object space. Photogramm. Eng. Remote Sensing, 58(3): 317-323. Helava, U.V., 1988. Object-space least-squares correlation. Photogramm. Eng. Remote Sensing, 54(6): 711-714. Kreiling, W., 1976. Automatische Herstellung yon Hoehenmodellen und Orthophotos aus Stereobildern durch digitale Korrelation. Dissertation, University of Karlsruhe, Karlsruhe. Li, M., 1991. Hierarchical multipoint matching. Photogramm. Eng. Remote Sensing, 57(8): 1039-1047. Li, R., 1988. Erstellung digitaler Oberflaechenmodelle durch Flaechen- und Kantenkorrelation. Photogramm. Fernerkundung/Bul, 56(4): 119-130. Li, R., 1990. Reconstruction of Discontinuous Surface Models Using Digital Images by Area and Edge Based Digital Image Matching. German Geodetic Commission (DGK), Ser. C, No. 364, 77 pp. Li, R., 1991. An algorithm for building octree from boundary representation. In: A. Bagchi and J.J. Beaman (Editors), Intelligent Design and Manufacturing For Prototyping. PED-Vol. 50, ASME, pp. 13-23.
11
Li, R., 1992. Building octree representations of threedimensional objects in CAD/CAM by digital image matching technique. Photogramm. Eng. Remote Sensing, 58(12): 1685-1691. Marr, D., 1982. Vision. W.H. Freeman, San Francisco, Calif. Mortenson, M.E., 1985. Geometric Modeling. John Wiley and Sons, New York. Ohta, Y. and Kanade, T., 1985. Stereo by intra- and interscanline search using dynamic programming. IEEE Trans. Pattern Analysis and Machine Intelligence, PAMI-7, No. 2, pp. 139-154. Ohta, Y. and Ikeda, K., 1988. Collinear trinocular stereo using two level dynamic programming. 9th Int. Conf. Pattern Recognition, Rome, pp. 658-662. Samet, H., 1990. The Design and Analysis of Spatial Data Structures. Addison-Wesley, Reading, Mass. Spur, G. (Editor), 1987. Forschungsbericht 1984-1987, Sonderforschungsbereich: 203 (Rechnerunterstuetzte Konstruktionsmodelle im Maschinenwesen). Technical University of Berlin. Spur, G. and Krause, E-L., 1984. CAD-Technik. Carl Hanser Verlag, M~inchen-Wien. Spur, G., Krause, E-L., Hayka, H. and Li, R., 1989. Common Project IWF-CMSR Intermediate Report, Technical University of Berlin. Spur, G., Krause, E-L., Li, R., Lenz, E., Shpitalni, M. and Fischer, A., 1990. Multirepresentation based geometrical modeler. CIRP Ann., 39(1): 141-144. Terzopoulos, D., 1986. Regularization of inverse visual problems involving discontinuities. IEEE Trans. Pattern Analysis and Machine Intelligence, PAMI-7, No. 4, pp. 413424. VW-GEDAS, 1989. AUDIMESS - - An Interactive Graphic System for Generating Measuring Programs for CNC Measuring Machines. VW-Gesellschaft fiir Technische Datenverarbeitungssysteme mbH, Berlin. Wong, K.W. and Wei-Hsin Ho, 1986. Close-range mapping with a solid state camera. Photogramm. Eng. Remote Sensing, 52(1): 67-74. Wrobel, B., 1987. Digitale Bildzuordnung durch Facetten mit Hilfe von Objektraummodellen. Photogramm. Fernerkundung/Bul, 55(3): 93-101. ZEISS, 1987. InduSURF - - Photogrammetrisches System zur Automatischen Oberflaechenmessung von IndustrieObjekten. Carl Zeiss, Oberkochen. (Received July 20, 1992; revised and accepted December 13, 1992)