Image meshing via hierarchical optimization
Corresponding authors:
First author contact:
Received: 2015-05-27 Accepted: 2015-09-16
Fund supported: |
|
Keywords:
Cite this article
XIE Hao, TONG Ruo-feng.
1 Introduction
How to represent an image is an old yet still open topic. Currently, two categories, namely raster image and vector graphic, serve in our daily life. A raster image basically stores color values for all pixels (Compressed formats such as JPG and PNG are not considered for simplicity), and vector graphic is a type of geometric representation. Generally, the predominance of vector graphics is in part due to facility for editing, independence on display resolution, and usually volume reduction of storage, etc. Thus, vector graphic is a potential tool for representing images.
Image meshing, as a class of methods for converting raster images into vector graphics, is a popular branch of 'image vectorization'. With image meshing, many further applications, e.g., image wrapping, image composition, and object editing, become facilitated. The main process of image meshing is to find a (usually triangular) mesh covering the whole input image (This means that no pixel in the image would be left), with each vertex given a color value defined as its located pixel in the input image. Then, color values of other positions on the mesh can be expressed by the vertex colors mentioned above (mostly through linear interpolation). In this way, the input image can be rendered totally by the mesh. Naturally, the goal of image meshing is to find such an optimal mesh, to minimize the difference between the input image and its rendered counterpart as much as possible.
To obtain this optimal mesh, various methods have been proposed, most of which employ the Euclidean distance in the color space to measure the difference. In this paper, a hierarchical optimization method is presented. An example of inputs and outputs is illustrated in Fig. 1. The most difficult point here is not the modeling of the problem, but the solution. As will be shown later, these objectives are usually highly non-linear and non-smooth, and direct use of conventional routines in numerical optimization methods may not achieve the desired results, or can hardly make the variables move even a tiny step in the solution space. In numerical optimization, a global optimal solution to a non-convex problem can rarely be obtained. Generally, initialization plays a key role in influencing the performance of non-convex optimization. Apart from the property of the problem itself, which can hardly be improved, a proper initialization of variables is much easier to achieve. To achieve a better initialization, a hierarchical manner is proposed in this paper. As a preprocessing step, the input image is filtered into several levels, ranging from coarse to fine, by, e.g., the bilateral filter, which preserves meaningful features. In this way, the coarsest level becomes much smoother, and thus may be easier to solve than the original one. Then, the result of a coarser level is recycled and employed as the initial value of its finer descendant. As a result, the performance of the optimizer for the finest level, i.e., the original image, is improved.
Fig. 1
Fig. 1 Inputs and outputs. Given an image, 'Lena' (a), and the sampling ratio (1% in this example), our algorithm generates a mesh-based vector graphic (d) with its rendered result (b). Detail regions of both (a) and (b) are enlarged and shown in (c), in which upper and lower parts correspond to (a) and (b), respectively. References to color refer to the online version of this figure
In addition to a hierarchical process, the objective function at the stage of geometry optimization is still non-convex. Generally, without using 'greedy' schemes, the remaining choices of global optimization are mostly quasi-Newton methods, e.g., L-BFGS (Liu and Nocedal, 1989), and the result is still highly dependent on the initial values. To further reduce the complexity of the problem, a conversion from a non-convex problem to a convex one is proposed. Since the color space is also a metric space, it can be considered together with the image space, which thus forms a new 5D metric space. In this way, a pixel in the image, as well as its attached color, is mapped into a 5D point in the newly constructed metric space. Therefore, the original non-convex problem is converted into a simple linear least squares one, and can be efficiently solved via some common routines, independent of the initialization. The running time can also be reduced.
The contributions of this paper are summarized as follows:
1. A hierarchical process is proposed, which provides an initial input for a finer level with the result of a coarser level to make the original problem smoother.
2. By combining the color space and image space, a conversion from a non-convex problem to a convex one is proposed to further reduce the complexity of the problem at the stage of geometry optimization.
2 Related work
Recently, many algorithms have been proposed on image meshing. The most representative one, proposed by Adams (2011), is a type of greedy algorithm. The key idea is to simply eliminate redundant vertices iteratively from an initial mesh with a denser distribution of vertices. In each loop, the vertex with the least influence on the result of the whole system was removed, and the edges were rearranged; i.e., vertices were re-connected, based on Delaunay triangulation. To accelerate the algorithm, Yang et al. (2003) employed an error diffusion scheme to generate an initial mesh, instead of the initial mesh used in an adaptive thinning method (Demaret and Iske, 2004), consisting of vertices at all pixels. Although this algorithm is fast, it does not involve the quality of the recovered image when rearranging edges (simply because of using Delaunay triangulation), and thus the quality of the generated mesh is not sufficient.
As an improvement, Xie et al. (2014) took the movement of existing vertices into account, and got rid of the constraints of Delaunay triangulation. In Xie et al. (2014), an initial mesh was optimized by performing geometry and topology optimization alternately. Instead of processing a vertex only once as in Adams (2011), Xie et al. (2014) re-adjusted the position of a vertex by a reasonable number of times, so that the local optimality of that vertex would not be corrupted by later processing of other vertices.
Another type of algorithm involves Xia et al. (2009) and Liao et al. (2012): the authors considered the generated mesh as a surface mesh, with a third coordinate of a vertex, i.e., the color of its located pixel. From this viewpoint, an image can be processed by use of some geometry tools. Note that the three-channel colors are processed separately and consistently. As a result, three meshes with the same connectivity are generated for one given image. Although this conversion gives a good result, the reasons are not clearly stated in either study.
Xia et al. (2009) first constructed an initial dense surface mesh, with some crack holes corresponding to the edge features of the input image, then performed a mesh simplification while maintaining the main edge features of the image, and finally converted it into a Bézier triangular mesh. This algorithm employs a thin-plate spline (TPS) to interpolate colors on the mesh, generating a better result. The shortcomings of this algorithm involve the complex representation of the mesh, and the non-adaptive sampling when calculating the coefficients of the TPS.
Rather than a Bézier triangular mesh, Liao et al. (2012) employed piecewise smooth subdivision surfaces. The initial mesh was the same as the one in Xia et al. (2009), and in the stage of mesh simplification, edge features were maintained at different levels to form a multi-resolution mesh representation. Using these features, one can edit the generated mesh easily, with manipulations such as object deformation and feature enhancement. Although this representation is flexible, it is still somewhat complicated (edge features need to be stored). In addition, there is no standard criterion for the quality of the recovered image for either algorithm proposed by Xia et al. (2009) or Liao et al. (2012). The difference from our algorithm is that these two methods are based mainly on non-global mesh operations, while in ours, a global scheme is employed.
Still, there are many other image meshing methods, such as Demaret et al. (2006), Lecot and Levy (2006), and Swaminarayan and Prasad (2006). These methods assume that the color variation in each region is relatively plain, which can also be considered as being generated by linear interpolation. In another type of algorithm, Sun et al. (2007) and Lai et al. (2009) used gradient mesh to represent images. Their results are good, yet the algorithms depend heavily on image segmentation, as they can deal only with isolated objects with smooth color variance.
3 Objective
Given an input raster image
For geometry information, let
A sparse matrix
where
Let
where
Note that the sparse matrix
4 Hierarchical optimization
4.1 Overview
Once the problem has been modeled, the next task is to solve it. As shown in Algorithm 1, the pipeline simply involves several steps. As a preprocessing step, a hierarchy with several levels is established for the input image. An initial mesh is then generated, followed by the whole iterative process for all levels. At each level, a geometry and topology alternating optimization is performed. To further simplify the problem, a convexification of the objective function is performed beforehand. Some details are discussed in the following paragraphs.
Algorithm 1 Pipeline of our algorithm
1: HierarchyEstablishment |
2: MeshInitialization |
3: |
4: while Level i ≥ 0 do |
5: ObjectiveConvexification(i) |
6: AlternatingOptimization(i) |
7: |
8: end while |
4.2 Hierarchy establishment
As shown in Eq. (
Fig. 2
Fig. 2 Hierarchy establishment: a hierarchy with N levels, from coarser (higher level) to finer (lower level), is established. At each level, an image of this level and a mesh from the last level are employed to generate a mesh of this level. Note that the mesh of level 0 is the desired final mesh
As for the choice of the filter, our goal is to make the problem smoother, while preserving some necessary features in the image. Thus, general smoothing filters, e.g., the Gaussian filter, are not quite suitable. Instead, filters preserving features are preferable. In our algorithm, the simple bilateral filter is chosen. In fact, other filters, such as the filter proposed in Xu et al. (2011), might have a better result, yet are somewhat time-consuming compared with the bilateral filter.
4.3 Mesh initialization
Before the main process of various levels, an initial mesh for the coarsest level, i.e., level N-1, needs to be generated properly. Although our algorithm has convexified the problem at the stage of geometry optimization, the situation at the stage of topology optimization is not improved, and the whole problem is still somewhat complex. Thus, a totally random initial mesh might generate a undesirable result, and involve a longer running time. Therefore, to achieve better performance and effect, the results generated by Adams (2011) are employed as the very beginning initialization in our algorithm.
4.4 Objective convexification
To further simplify the problem, a convexification of the objective is performed. Specifically, the position of each vertex
where
The rationale for this conversion is explained as follows. In the original problem, the metrics in the image space and color space are both strongly related to the Euclidian distances. Therefore, the combination of these two spaces is possible in form. On the other hand, it makes sense in geometry. In fact, this is a type of approximation to the original problem. Take a 1D image with one channel as an example (Fig.3). Fig.3a shows the color distance in the original problem, where the segments (red line) connecting the recovered image (slope straight line) and original one (dashed curve) are orthogonal to the image plane (the horizontal line below); in contrast, in Fig.3b, this line is orthogonal to the triangular face of the mesh. When the distances become small enough, these two forms are supposed to generate similar effects. Based on the above explanation, this convexification is proposed and employed in our model.
Fig. 3
Fig. 3 Image meshing in a 1D image: the original problem (a) and that after convexification (b). References to color refer to the online version of this figure
4.5 Alternating optimization
After the preprocessing, the solution for each level can be solved via common routines. In general, to solve this problem, geometry and topology aspects are usually treated separately and alternately in each iteration, as in Xie et al.(2014). Both sub-optimization stages are discussed below.
4.5.1 Geometry optimization
In this stage, the topology
4.5.2 Topology optimization
Given a fixed geometry, i.e., positions of vertices
Before flipping the edges, a suspect set of edges is defined, the element in which is an edge indicating that it might be flipped. At the beginning, all edges excluding boundary edges, i.e., interior edges, are inserted into the set. To sort these suspect edges, a fitting error defined as the summation of fitting errors of two adjacent faces is attached to each suspect as a criterion. Then the suspect set becomes a priority queue. Each time, a suspect is popped up and checked whether to flip or not, depending on whether the total energy declines. If a suspect is flipped, its neighbor edges are also labeled as suspects and pushed into the queue. The process ends when the queue is empty. To avoid possible endless loops, the times visited for each edge are recorded, and edges visited enough times are no longer concerned in this pass.
5 Experiments and discussion
In our experiments, all images are tested on a PC with AMD PhenomTM II X4 945 CPU and 8~GB RAM. All the algorithms are implemented in an Arch Linux operating system, using C++ language, with the Surface_mesh library (Sieger and Botsch, 2012) employed to represent the mesh data structure.
5.1 Measurements
The peak signal-to-noise ratio (PSNR) (HuynhThu and Ghanbari, 2008) and running time are used to evaluate our algorithm. Here,
where
5.2 Parameters
The first parameter to be tuned is the number of hierarchy levels. In general, deeper levels might not produce better performance. To verify this, several images are tested via various levels. In our experiments, we find that using two or three levels usually generates better results. The reason for this is that after filtering enough times, the image is smooth enough, and the influence of initialization on the optimization fades.
Other parameters are described here. In bilateral filtering, the diameter of each pixel neighborhood that is used during filtering is set to 9, and the two parameters used to measure the size of convolution kernels in the color and coordinate space,
5.3 Comparisons
In this section, two algorithms given in Adams (2011) and Xie et al. (2014) are compared with ours. The images for evaluation are selected diversely, ranging from human to natural plants and animals. The results of PSNR are listed in Table 1. As shown, our algorithm performs better than the other two for most of the test images. Note that the PSNR value obtained here using the algorithm proposed by Xie et al. (2014) has some tiny difference from that given in Xie et al. (2014), due to the implementation. In Xie et al. (2014), the algorithm is for single-channel images, while in this study, it is implemented for color images, for convenience of comparison.
Table 1 Peak signal-to-noise ratio (PSNR) comparison among our algorithm and the algorithm proposed by Adams (2011) and Xie et al. (2014)
Image | SR (%) | PSNR (dB) | ||
---|---|---|---|---|
Adams(2011) | Xieet al.(2014) | Ours | ||
Lena | 1 | 27.3759 | 28.8600 | 29.7244 |
2 | 29.8263 | 30.9544 | 31.3691 | |
3 | 30.9801 | 31.9918 | 32.1422 | |
Fruits | 1 | 25.9269 | 26.9589 | 27.7363 |
2 | 28.5327 | 29.4424 | 29.7518 | |
3 | 29.9629 | 30.8024 | 30.5960 | |
Flowe | 1 | 25.8028 | 26.9718 | 27.7477 |
2 | 27.9217 | 29.6071 | 29.9863 | |
3 | 28.6615 | 30.8009 | 30.9495 | |
Falcon | 1 | 27.3196 | 29.9666 | 30.4886 |
2 | 28.5323 | 31.9729 | 32.1160 | |
3 | 28.8675 | 32.7877 | 32.7106 | |
Car | 1 | 23.1645 | 24.6478 | 25.0299 |
2 | 25.6941 | 26.8857 | 27.2032 | |
3 | 26.8163 | 27.9490 | 28.0324 | |
Fish | 1 | 23.9873 | 25.2301 | 25.9045 |
2 | 26.6296 | 27.7636 | 28.1316 | |
3 | 28.1074 | 29.2166 | 29.2648 | |
Leaf | 1 | 26.8061 | 27.8816 | 28.6272 |
2 | 28.8395 | 29.9846 | 30.3554 | |
3 | 29.5924 | 31.0008 | 31.1287 | |
Swan | 1 | 24.4826 | 25.9614 | 26.7547 |
2 | 26.9890 | 28.3783 | 28.9821 | |
3 | 28.3651 | 29.7019 | 30.0601 | |
Frog | 1 | 27.4404 | 28.9776 | 29.8903 |
2 | 29.8848 | 31.0584 | 31.5725 | |
3 | 30.8791 | 31.9689 | 32.2853 |
SR: sampling rate
To compare the mesh generated, the wireframes of both initial and final results are shown in Fig. 4. %The initial mesh is shown left, while the optimized counterpart is shown on the right. The mesh from Adams (2011) is a Delaunay triangular mesh, which has less ability than ours to express detailed features. Note that both meshes shown are generated by a 1% sampling rate.
Fig. 4
Fig. 4 Wireframes: (a) is the mesh generated from Adams (2011), employed as the initial mesh; (b) is ours. As shown, the triangles near edges are skinnier after optimization of our algorithm, to represent features better. References to color refer to the online version of this figure
To further illustrate the effect of our algorithm, some images rendered by the three algorithms, and the original ones, are shown in Fig. 5 (see p.39), with some details highlighted and compared.
Fig. 5
Fig. 5 {Detailed comparison:} the odd rows show the recovered images with original sizes, while the even rows enlarge their highlighted regions. From left to right: results obtained by the algorithms proposed by Adams (2011), Xie et al. (2014) and this study, and the original raster images. References to color refer to the online version of this figure
As demonstrated in Fig. 5, our algorithm has a better visual effect than the other two. For instance, the mouth of the frog in the first image is recovered much better, which can be seen in the enlarged regions in the second row. The competitiveness of our algorithm can also be seen in the edge of the leaf.
Among many factors, the main reason why our algorithm performs better is the choice of the initial value. A good initial value makes the problem much smoother, and thus makes it easier to reach a better local optimality. In addition, our algorithm converts a non-linear problem into a linear least squares one at the stage of geometry optimization, and such convexification of the original problem speeds up the whole process.
The running time of our algorithm is listed in Table 2. Although not in real time, it is already acceptable for daily use. Generally, a good initialization leads to a shorter running time, since it locates near the local optimum in the solution space.
Table 2 Runtime of our algorithm
Image | Resolution | SR(%) | Time(s) |
---|---|---|---|
Lena | 512×512 | 1 | 2.03 |
2 | 3.66 | ||
3 | 6.23 | ||
Fruits | 512×480 | 1 | 1.75 |
2 | 3.10 | ||
3 | 5.19 | ||
Flower | 400×300 | 1 | 0.66 |
2 | 1.02 | ||
3 | 1.61 | ||
Falcon | 400×280 | 1 | 0.59 |
2 | 0.86 | ||
3 | 1.33 | ||
Car | 400×300 | 1 | 0.64 |
2 | 1.04 | ||
3 | 1.61 | ||
Fish | 320×400 | 1 | 0.66 |
2 | 1.05 | ||
3 | 1.66 | ||
Leaf | 373×400 | 1 | 0.83 |
2 | 1.36 | ||
3 | 2.20 | ||
Swan | 286×400 | 1 | 0.60 |
2 | 0.95 | ||
3 | 1.48 | ||
Frog | 357×400 | 1 | 0.90 |
2 | 1.44 |
SR: sampling rate
5.4 Limitations
Our algorithm has some flaws. For instance, it is not quite suitable for images with complicated textures. Fig. 6 shows such an example of a failure case. The textures in the water and feather are not well recovered. Since the initial meshes are obtained by bilateral filtering, the results from our algorithm lack some details of complicated textures, while the main features are preserved.
Fig. 6
Fig. 6 A failure case: (a) is the result of swan by our algorithm at a 1% sampling rate; (b) is the original image. References to color refer to the online version of this figure
6 Conclusions
We present a novel algorithm to convert a raster image into a vector graphic represented by a triangular mesh. Compared with other algorithms, the results are improved by establishing a hierarchy of several levels for the input image. In addition, a convexification of the problem in the stage of geometry optimization is performed to further simplify the non-linear problem into a linear least squares one, which can be solved easily via common optimizers.
In the future, we will seek a way to obtain a better initial value. For this, the PatchNet technique (Hu et al., 2013) might be a favorable choice, for our algorithm to achieve a better local optimum. Meanwhile, we will consider using a more general non-linear model to represent images. We believe such a model would render results with better quality.
Reference
A flexible content-adaptive meshgeneration strategy for image representation
DOI:10.1109/TIP.2011.2128336
URL
PMID:21421439
[Cited within: 9]
Based on the greedy-point removal (GPR) scheme of Demaret and Iske, a simple yet highly effective framework for constructing triangle-mesh representations of images, called GPRFS, is proposed. By using this framework and ideas from the error diffusion (ED) scheme (for mesh-generation) of Yang , a highly effective mesh-generation method, called GPRFS-ED, is derived and presented. Since the ED scheme plays a crucial role in our work, factors affecting the performance of this scheme are also studied in detail. Through experimental results, our GPRFS-ED method is shown to be capable of generating meshes of quality comparable to, and in many cases better than, the state-of-the-art GPR scheme, while requiring substantially less computation and memory. Furthermore, with our GPRFS-ED method, one can easily trade off between mesh quality and computational/memory complexity. A reduced-complexity version of the GPRFS-ED method (called GPRFS-MED) is also introduced to further demonstrate the computational/memory-complexity scalability of our GPRFS-ED method.
Advances in digital image compression by adaptive thinning
This paper proposes a novel concept for digital image compression. The resulting compression scheme relies on adaptive thinning algorithms, which are recent multiresolution methods from scattered data approximation. Adaptive thinning algorithms are recursive point removal schemes, which are combined with piecewise linear interpolation over decremental Delaunay triangulations. This paper shows the utility of adaptive thinning algorithms in digital image compression. To this end, specific adaptive pixel removal criteria are designed for multiresolution modelling of digital images. This is combined with a previous customized coding scheme for scattered data. The good performance of our compression scheme is finally shown in comparison with the well-established wavelet-based compression method SPIHT.
Image compression by linear splines over adaptive triangulations
DOI:10.1016/j.sigpro.2005.09.003
URL
[Cited within: 1]
This paper proposes a new method for image compression. The method is based on the approximation of an image, regarded as a function, by a linear spline over an adapted triangulation, D ( Y ), which is the Delaunay triangulation of a small set Y of significant pixels. The linear spline minimizes the distance to the image, measured by the mean square error, among all linear splines over D ( Y ). The significant pixels in Y are selected by an adaptive thinning algorithm, which recursively removes less significant pixels in a greedy way, using a sophisticated criterion for measuring the significance of a pixel. The proposed compression method combines the approximation scheme with a customized scattered data coding scheme. We compare our compression method with JPEG2000 on two geometric images and on three popular test cases of real images.
PatchNet: a patch-based image representation for interactive librarydriven image editing
DOI:10.1145/2508363.250838
URL
[Cited within: 1]
We introduce PatchNets, a compact, hierarchical representation describing structural and appearance characteristics of image regions, for use in image editing. In a PatchNet, an image region with coherent appearance is summarized by a graph node, associated with a single representative patch, while geometric relationships between different regions are encoded by labelled graph edges giving contextual information. The hierarchical structure of a PatchNet allows a coarse-to-fine description of the image. We show how this PatchNet representation can be used as a basis for interactive, library-driven, image editing. The user draws rough sketches to quickly specify editing constraints for the target image. The system then automatically queries an image library to find semantically-compatible candidate regions to meet the editing goal. Contextual image matching is performed using the PatchNet representation, allowing suitable regions to be found and applied in a few seconds, even from a library containing thousands of images.
Scope of validity of PSNR in image/video quality assessment
Experimental data are presented that clearly demonstrate the scope of application of peak signal-to-noise ratio (PSNR) as a video quality metric. It is shown that as long as the video content and the codec type are not changed, PSNR is a valid quality measure. However, when the content is changed, correlation between subjective quality and PSNR is highly reduced. Hence PSNR cannot be a reliable method for assessing the video quality across different video contents.
Automatic and topology-preserving gradient mesh generation for image vectorization
DOI:10.1145/1531326.1531391
URL
[Cited within: 1]
Gradient mesh vector graphics representation, used in commercial software, is a regular grid with specified position and color, and their gradients, at each grid point. Gradient meshes can compactly represent smoothly changing data, and are typically used for single objects. This paper advances the state of the art for gradient meshes in several significant ways. Firstly, we introduce a topology-preserving gradient mesh representation which allows an arbitrary number of holes. This is important, as objects in images often have holes, either due to occlusion, or their 3D structure. Secondly, our algorithm uses the concept of image manifolds, adapting surface parameterization and fitting techniques to generate the gradient mesh in a fully automatic manner. Existing gradient-mesh algorithms require manual interaction to guide grid construction, and to cut objects with holes into disk-like regions. Our new algorithm is empirically at least 10 times faster than previous approaches. Furthermore, image segmentation can be used with our new algorithm to provide automatic gradient mesh generation for a whole image. Finally, fitting errors can be simply controlled to balance quality with storage.
Ardeco: automatic region detection and conversion
DOI:10.2312/EGWR/EGSR06/349-360 URL [Cited within: 1]
A subdivision-based representation for vector image editing
DOI:10.1109/TVCG.2012.76
URL
PMID:22392717
[Cited within: 3]
Vector graphics has been employed in a wide variety of applications due to its scalability and editability. Editability is a high priority for artists and designers who wish to produce vector-based graphical content with user interaction. In this paper, we introduce a new vector image representation based on piecewise smooth subdivision surfaces, which is a simple, unified and flexible framework that supports a variety of operations, including shape editing, color editing, image stylization, and vector image processing. These operations effectively create novel vector graphics by reusing and altering existing image vectorization results. Because image vectorization yields an abstraction of the original raster image, controlling the level of detail of this abstraction is highly desirable. To this end, we design a feature-oriented vector image pyramid that offers multiple levels of abstraction simultaneously. Our new vector image representation can be rasterized efficiently using GPU-accelerated subdivision. Experiments indicate that our vector image representation achieves high visual quality and better supports editing operations than existing representations.
On the limited memory BFGS method for large-scale optimization
DOI:10.1007/BF01589116 [Cited within: 1]
Design, implementation, and evaluation of the surface_mesh data structure
DOI:10.1007/978-3-642-24734-7_29
URL
We present the design, implementation, and evaluation of an efficient and easy to use data structure for polygon surface meshes. The design choices that arise during development are systematically investigated and detailed reasons for choosing one alternative over another are given. We describe our implementation and compare it to other contemporary mesh data structures in terms of usability, computational performance, and memory consumption. Our evaluation demonstrates that our new Surface_mesh data structure is easier to use, offers higher performance, and consumes less memory than several state-of-the-art mesh data structures.
Image vectorization using optimized gradient meshes
DOI:10.1145/1239451.1239462
URL
[Cited within: 1]
Recently, gradient meshes have been introduced as a powerful vector graphics representation to draw multicolored mesh objects with smooth transitions. Using tools from Abode Illustrator and Corel CorelDraw, a user can manually create gradient meshes even for photo-realistic vector arts, which can be further edited, stylized and animated. In this paper, we present an easy-to-use interactive tool, called optimized gradient mesh, to semi-automatically and quickly create gradient meshes from a raster image. We obtain the optimized gradient mesh by formulating an energy minimization problem. The user can also interactively specify a few vector lines to guide the mesh generation. The resulting optimized gradient mesh is an editable and scalable mesh that otherwise would have taken many hours for a user to manually create.
Rapid automated polygonal image decomposition
We present RaveGrid, a software that efficiently converts a raster image to a scalable vector image comprised of polygons whose boundaries conform to the edges in the image. The resulting vector image has good visual quality and fidelity and can be displayed at various sizes and on various display screen resolutions. The software can render vector images in the SVG (scalable vector graphics) format or in EPS (Encapsulated Postscript). The ubiquity of image data in graphics, on the Web, and in communications, as well as the wide range of devices, from big screen TVs to hand-held cellular phones that support image display, calls for a scalable and more manipulable representation of imagery. Moreover, with the growing need for automating image-based search, object recognition, and image understanding, it is desirable to represent image content at a semantically higher level by means of tokens that support computer vision tasks.
Patch-based image vectorization with automatic curvilinear feature alignment
DOI:10.1145/1618452.1618461
URL
[Cited within: 4]
Raster image vectorization is increasingly important since vector-based graphical contents have been adopted in personal computers and on the Internet. In this paper, we introduce an effective vector-based representation and its associated vectorization algorithm for full-color raster images. There are two important characteristics of our representation. First, the image plane is decomposed into nonoverlapping parametric triangular patches with curved boundaries. Such a simplicial layout supports a flexible topology and facilitates adaptive patch distribution. Second, a subset of the curved patch boundaries are dedicated to faithfully representing curvilinear features. They are automatically aligned with the features. Because of this, patches are expected to have moderate internal variations that can be well approximated using smooth functions. We have developed effective techniques for patch boundary optimization and patch color fitting to accurately and compactly approximate raster images with both smooth variations and curvilinear features. A real-time GPU-accelerated parallel algorithm based on recursive patch subdivision has also been developed for rasterizing a vectorized image. Experiments and comparisons indicate our image vectorization algorithm achieves a more accurate and compact vector-based representation than existing ones do.
Image meshing via alternative optimization
DOI:10.12733/jcis11723
URL
[Cited within: 13]
Image meshing is a type of method on image vectorization. It generates a proper mesh covering and representing a given input raster image. In this paper, we present a novel image meshing algorithm through alternatively performing both geometry and topology optimizations. In each iteration, we guarantee that the total energy strictly declines. Rather than processing a vertex only once as other existing methods do, our algorithm could re-adjust position for a vertex a reasonable number of times, so that the local optimality of that vertex would not be corrupted because of later processing of other vertices. Although our algorithm could not generate a global optimal mesh, a local optimality could be obtained in each iteration. Given a legal initial mesh with proper topology, our algorithm could converge within several iterations, and generate acceptable results, usually with enhanced quality compared to other approaches.
Robust surface reconstruction via dictionary learning
DOI:10.1145/2661229.2661263
URL
[Cited within: 1]
Surface reconstruction from point cloud is of great practical importance in computer graphics. Existing methods often realize reconstruction via a few phases with respective goals, whose integration may not give an optimal solution. In this paper, to avoid the inherent limitations of multi-phase processing in the prior art, we propose a unified framework that treats geometry and connectivity construction as one joint optimization problem. The framework is based on dictionary learning in which the dictionary consists of the vertices of the reconstructed triangular mesh and the sparse coding matrix encodes the connectivity of the mesh. The dictionary learning is formulated as a constrained ℓ2,q-optimization (0 < q < 1), aiming to find the vertex position and triangulation that minimize an energy function composed of point-to-mesh metric and regularization. Our formulation takes many factors into account within the same framework, including distance metric, noise/outlier resilience, sharp feature preservation, no need to estimate normal, etc., thus providing a global and robust algorithm that is able to efficiently recover a piecewise smooth surface from dense data points with imperfections. Extensive experiments using synthetic models, real world models, and publicly available benchmark show that our method outperforms the state-of-the-art in terms of accuracy, robustness to noise and outliers, geometric feature and detail preservation, and mesh connectivity.
Image smoothing via L0 gradient minimization
DOI:10.1145/2024156.2024208 [Cited within: 1]
A fast approach for accurate content-adaptive mesh generation
DOI:10.1109/TIP.2003.812757
URL
PMID:18237961
[Cited within: 1]
Mesh modeling is an important problem with many applications in image processing. A key issue in mesh modeling is how to generate a mesh structure that well represents an image by adapting to its content. We propose a new approach to mesh generation, which is based on a theoretical result derived on the error bound of a mesh representation. In the proposed method, the classical Floyd-Steinberg error-diffusion algorithm is employed to place mesh nodes in the image domain so that their spatial density varies according to the local image content. Delaunay triangulation is next applied to connect the mesh nodes. The result of this approach is that fine mesh elements are placed automatically in regions of the image containing high-frequency features while coarse mesh elements are used to represent smooth areas. The proposed algorithm is noniterative, fast, and easy to implement. Numerical results demonstrate that, at very low computational cost, the proposed approach can produce mesh representations that are more accurate than those produced by several existing methods. Moreover, it is demonstrated that the proposed algorithm performs well with images of various kinds, even in the presence of noise.
/
〈 |
|
〉 |
