Academia.eduAcademia.edu

Make it home

2011, ACM Transactions on Graphics

Figure 1: Left: Initial layout where furniture pieces are placed arbitrarily. Middle and right: Two synthesized furniture arrangements optimized to satisfy ergonomic criteria, such as unobstructed accessibility and visibility, required of a realistic furniture configuration.

This is the Pre-Published Version Make it Home: Automatic Optimization of Furniture Arrangement Lap-Fai Yu1 1 Sai-Kit Yeung1 Chi-Keung Tang2 University of California, Los Angeles 2 Demetri Terzopoulos1 Tony F. Chan2 Stanley J. Osher1 Hong Kong University of Science and Technology Figure 1: Left: Initial layout where furniture pieces are placed arbitrarily. Middle and right: Two synthesized furniture arrangements optimized to satisfy ergonomic criteria, such as unobstructed accessibility and visibility, required of a realistic furniture configuration. Abstract We present a system that automatically synthesizes indoor scenes realistically populated by a variety of furniture objects. Given examples of sensibly furnished indoor scenes, our system extracts, in advance, hierarchical and spatial relationships for various furniture objects, encoding them into priors associated with ergonomic factors, such as visibility and accessibility, which are assembled into a cost function whose optimization yields realistic furniture arrangements. To deal with the prohibitively large search space, the cost function is optimized by simulated annealing using a MetropolisHastings state search step. We demonstrate that our system can synthesize multiple realistic furniture arrangements and, through a perceptual study, investigate whether there is a significant difference in the perceived functionality of the automatically synthesized results relative to furniture arrangements produced by human designers. CR Categories: I.3.7 [Computing Methodologies]: Computer Graphics—Three-Dimensional Graphics and Realism; Keywords: Procedural modeling, interior design, interior generation, interior modeling, virtual reality, stochastic optimization Links: 1 DL PDF Introduction Whereas in recent years numerous publications have appeared demonstrating the automatic modeling of building exteriors and facades, the automatic generation of realistic indoor configurations has not yet received the attention that it deserves. With the growing popularity of social virtual worlds and massively-multiplayer online games that feature large quantities of realistic environmental content, automated procedural methods for synthesizing indoor environments are needed, as it would be too tedious and impractical to model every indoor scene manually. Currently, such indoor modeling is usually simplified or even ignored, which severely limits the realism of many virtual environments. A realistic indoor scene is typically populated by several different kinds of furniture objects, but only a few of the many possible spatial arrangements of these objects are functional and livable. For example, the front of a television or computer screen should not be blocked, since it is supposed to be visible. Furthermore, most of the objects in the scene should be accessible to human habitants. On the other hand, one object is often placed on top of another object, such as a vase on a table, so there exists a hierarchical relationship among the two objects if we regard the carrier object as the parent and the supported object as its child. While the aesthetic and creative process of interior design would best be done by professional interior designers, our goal is to create software capable of automatically generating furniture arrangements for complex indoor scenes that are optimized to respect important ergonomic factors. This technique would be useful in multiplayer online games and other graphics applications requiring fully automatic interior design with a high degree of realism. The system that we present in this paper achieves this goal in two stages: First, our system extracts spatial relationships on the placement of furniture pieces from user-supplied exemplars of furnished indoor scenes. This step is done only once, in advance. The acquisition of examples and subsequent extraction of spatial relationship should not be costly, given that many virtual worlds feature user-created content and collaborative design. A scene is then initialized with furniture pieces randomly placed at arbitrary positions and orientations. Here, the furniture placement is almost always unlivable, with objects that are wrongly-located (e.g., a bookshelf is placed at the center of the room rather than against a wall) or wronglyoriented (e.g., a television screen is facing the wall), and furniture is usually blocking pathways between doors. Given an arbitrary initial arrangement, such as the one shown in Figure 1(left), optimizing a furniture arrangement subject to human ergonomics is not an easy task, since the search space can be prohibitively large. To address this issue, in the second stage, the initial layout will be adjusted iteratively by minimizing a cost function that accounts for factors, such as human-accessibility, visibility, pairwise object relationships, and so forth, wherein the spatial relation- manually defined, however, this task will become prohibitive as the number of objects grows. Furthermore, as ergonomic factors such as good accessibility and visibility are disregarded, unrealistic and uninhabitable configurations suffering undesired physical or visual blocking are unavoidable. 2.2 No human ergonomics Figure 2: Examples of furniture arrangement. Left: An unsatisfactory spatial arrangement resulting from the neglect of human ergonomics considerations; note that the furniture objects are packed together near the upper-left corner and are blocking the door. Right: A satisfactory arrangement with realistically positioned furniture objects that are accessible, do not obstruct the door, and include a television that is readily viewable from a well-positioned chair. ships extracted from the exemplars are encoded as prior cost terms. We demonstrate that the overall cost function can be optimized by simulated annealing with a Metropolis-Hastings state-search step. From the random initial arrangement in Figure 1, the optimization produces the two synthesized example scenes shown in the figure. We furthermore perform a perceptual study that adopts a subjective forced-choice approach to investigate whether people have a preference based on perceived functionality between our synthesized results and arrangements produced by human designers. 2 Related Work We will first discuss the scarce existing research on generating functional furniture arrangements and then review other relevant work ranging from floor-plan generation and interior design metrics to applications requiring (rapid) generation of livable indoor scenes, such as virtual worlds and artificial life. 2.1 Floor Plan Generation With human ergonomics Furniture Arrangement Previous systems that generate furniture arrangements [Kjølaas 2000; Akazawa et al. 2005; Germer and Schwarz 2009; Larive et al. 2004; Sanchez et al. 2003] require manual control or intervention, or do not adequately consider ergonomic factors, which makes them susceptible to generating uninhabitable arrangements. Figure 2 shows an unsatisfactory arrangement where ergonomic factors are neglected in the interior design. To generate a furniture layout, Kjølaas [2000] represents a given room as a nested hierarchy of rectangular templates, which are swapped by eight predetermined mutation functions. Empty boxes are placed in front of doors and windows to represent free space. However, the approach is limited to rectangular rooms, and each template plus the set of corresponding parameters must be carefully designed. Akazawa et al. [2005] use a semantic database to explicitly store furniture spatial relationships in order to synthesize new arrangements. Our furniture representation is similar in its use of furniture object interrelationships with parent-child hierarchies where each object is represented as a bounding box. Unlike our approach, however, their inter-object contact constraints must be manually specified in the database. Germer and Schwarz [2009] take a similar approach, regarding each furniture object as an agent seeking to attach itself to a parent object. Since the parent-child relationships of each object must be Relevant floor plans can be generated before planning the layout of furniture pieces. Recently, Merrell et al. [2010] proposed a datadriven method to generate residential building layouts. In their work, 120 examples of architectural programs are used to train a Bayesian network that captures the relationships among different rooms. Given certain user requirements as priors, the Bayesian network can then be used to generate a floor plan, which is iteratively modified to incorporate desirable human factors. The result is a synthesized floor plan for a residential building. We also note the work of Chun and Lai [1997], which encapsulates architectural design knowledge into an expert system. The system modules can be used to evaluate floor plan and furniture arrangement according to government regulations and interior design guidelines, providing suggestions for changes. 2.3 Interior Design Metrics Although interior design involves creative solutions that can be fairly subjective, a set of quantifiable design criteria has long been accepted in the industry. Specifically, such criteria determine whether the design is functional and suitable for human inhabitants. Panero and Zelnick [1979] conducted a detailed study on human dimensions and ergonomics, by carefully defining metrics such as height, width, reachable-range, and visibility, which are believed to be conducive to functional and comfortable designs. For example, a television should maintain a certain distance from the normal viewing area (e.g., a sofa) depending on the dimensions of its screen. Viewing from an oblique angle should also be avoided for the sake of the viewer’s comfort. Note that [Ching and Binggeli 2005] describes these human factors as the “prime determinants” of interior design, emphasizing that while average measurements should be used, flexibility should be exercised to satisfy specific user needs. In optimization terms, such guidelines can be interpreted as soft constraints. In [Mitton and Nystuen 2007; Ching and Binggeli 2005], the importance of accessibility in furniture placement is noted, which is a common consideration in decorating rooms with different purposes. Ching and Binggeli [2005] illustrate how pathways connecting doors may affect human movement and interior furnishing. In general, a pathway connecting doors should be a short path that facilitates movement while leaving considerable floor areas for furnishing. The width of a pathway should depend on the habitant’s body width, with possible amendments when designing homes for the physically-challenged to allow wheelchair movement. 2.4 Related Applications The realistic synthesis of spatial arrangements of objects can tremendously facilitate virtual world modeling. For example, [Shao and Terzopoulos 2007] demonstrated a large-scale virtual model of a train station populated by numerous autonomous pedestrians. The mobile human agents can perceive the environmental objects they encounter and respond to them appropriately. An automatic means for properly placing various different kinds of environmental content in the scene would be useful in this context. Collaborative design spaces have been used to assist object modeling [Talton et al. 2009], and they are commonly used in con- Figure 3: Overview of our approach. (a) Figure 4: Left: A television, its bounding box, and six surfaces; Right: A candelabrum on a table; the table is a first-tier object and the candelabrum is a second-tier object. structing virtual worlds, such as Second-Life and many massivelymultiplayer online games. The first stage of our approach entails the extraction of spatial and hierarchical relationships from positive furnished examples, which is a more practical approach compared to the manual specification of such relationships, especially for scenes where there are hundreds of different kinds of objects. There are numerous efforts in the modeling and synthesis of cities and building exteriors. In [Chen et al. 2008; Müller et al. 2006; Parish and Müller 2001] a procedural modeling approach was used to realistically synthesize streets, buildings, and cities, by which parameters such as height and age can be specified to guide the synthesis. The result is a realistic city model populated with buildings. Other efforts [Müller et al. 2007; Xiao et al. 2008] also employ image-based approaches to model facades. Such techniques can be adopted in Google Earth, Bing Maps, and other applications that enable users to zoom into street views and navigate the exteriors of texture-mapped buildings in 3D. 3 Furniture Relationship Extraction Figure 3 provides an overview of our approach, which is divided into two stages: (1) the extraction of spatial, hierarchical, and pairwise relationships from positive examples and (2) the synthesis of novel furniture arrangements through optimization. This section describes the first stage. (b) (c) Figure 5: An example object i. (a) Length di measures the distance of the object center pi to its nearest wall. Angle θi is the orientation of the object relative to the nearest wall (or the tangent plane if the wall is nonplanar). Length bi gives the diagonal of the bounding box. (b) The object has 4 accessible spaces centered at ai1 , ai2 , ai3 , and ai4 respectively. (c) A viewing frustum associated with the object is represented by 3 rectangles centered at vi1 , vi2 , vi3 . Quantities adik and vdik denote the corresponding diagonal lengths of the rectangles. 3.1 Object Representation Optimizing furniture arrangement into a realistic and functional indoor configuration involves considerable complexity, taking into account various interacting factors, such as pairwise furniture relationships, spatial relationships with respect to the room, and other human factors. An effective representation that captures the necessary spatial relationships is needed. Bounding surfaces: Similarly to [Germer and Schwarz 2009; Kjølaas 2000], each object in the scene is represented by a set of bounding surfaces (it can be a simple rectangular bounding box or a convex hull to deal with more complex spatial arrangements). Figure 4 shows an example object (television) represented by a bounding box whose six surfaces are labeled 1 to 6. Apart from the top and bottom surfaces, we search for the “back” surface of every object, which is the surface closest to any wall. Other surfaces are labeled as “non-back” surfaces. The back surface is used to define a reference plane for assigning other attributes. Center and orientation: Figure 5(a) shows the key attributes of an object—center and orientation, denoted by (pi , θi ), where pi denotes the (x, y) coordinates and θi is the angle relative to the nearest wall (defined as the angle between the nearest wall and the back surface). An optimized furniture arrangement {(pi , θi )} involving all objects i is one that minimizes our cost function defined in the next section. Accessible space: For each surface of the object, we assign a corresponding accessible space (see Figure 5(b)). We define aik to be the center coordinates of accessible space k of object i. The diagonal of the region is measured by adik , which is used to measure how deep other objects can penetrate into the space during optimization. The size of the accessible space is set from available examples or given as input related to the size of a human body. If the space is very close to the wall in all the examples, the corresponding surface need not be accessible; otherwise, we set it to be the dimension of an average-sized adult if such a measurement is not given. Viewing frustum: For some objects, such as the television and painting, the frontal surface must be visible. We assign a viewing frustum to this particular surface. Given an object i, its viewing frustum is approximated by a series of rectangles with center coordinates vik , where k is the rectangle index. vdik is the diagonal of the rectangle, which is useful in defining the penetration cost akin to that for the accessible space. Figure 5(c) provides an example. Other attributes: Other attributes are involved in the optimization process. Referring again to Figure 5(a), the distance from pi to its nearest wall is defined as di ; the diagonal from pi to the corner of the bounding box is defined as bi (the current implementation is a rectangle). We also record the z-position zi of the object. Note that to simplify the optimization process, the translation step considers the (x, y)-space only. In other words, an object’s zposition is fixed as the z-position of the surface of its first-tier parent. Nevertheless, the z-position can still change in the swapping step, when a second-tier object changes its first-tier parent and is placed on a different surface. Possible collisions in the z-dimension will still be considered when evaluating accessibility and visibility costs. For example, an overlap between a chair and a bed in the (x, y) space is penalized, while that between a wall clock and a bed is not, as the former involves collision in the z-dimension but the latter does not. Thus, the chair tends to move away from the bed in the (x, y) space, whereas the wall clock does not. in the UI, after which the mean relative distance and angle are extracted from the examples for use as pairwise constraints. Table 1 summarizes the pairwise relationships used for each scene in our experiments in Section 5. 4 Furniture Arrangement Optimization Given the spatial relationships extracted as described above, our goal is to integrate this information into an optimization framework with a properly defined cost function quantifying the quality of the furniture arrangement. Given an arbitrary room layout populated by furniture objects, the synthesized arrangement should be useful for virtual environment modeling in games and movies, interior design software, and other applications. The search space of our problem is highly complex as objects are interdependent in the optimization process. The furniture positions and orientations depend on numerous factors, such as whether the object should be visible or accessible. It is very difficult to have a global optimization scheme or a closed-form solution that yields a unique optimum. To tackle this problem, we resort to stochastic optimization methods, specifically, simulated annealing [Kirkpatrick 1984] with a Metropolis-Hastings state-search step [Metropolis et al. 1953; Hastings 1970] to search for a good approximation to the global optimum. Note, however, that given a room, a set of furniture objects, and the prior spatial and hierarchical relationships, numerous acceptably-good configurations will be possible. This is the rationale for finding a good approximation in a reasonably short time, rather than searching exhaustively over the complex search space in order to find the global optimum of the cost function. The evaluation of interior decoration results can be subjective; hence, we will perform a perceptual study to validate the realism of our synthesized results. 4.1 3.2 Learning Prior Relationships Given the above object representation, the following furniture relationships are extracted automatically from positive input examples. Spatial relationships: The key prior relationships are the distance of an object to its nearest wall d¯i and its relative orientation to the wall θ¯i . They are respectively estimated as the clustered means of input examples, where we can assign one of the clustered means as d¯i and θ¯i respectively for object i during optimization. The number of clusters can be preset or estimated by [Grunwald 2007]. Hierarchical relationships: Given two objects A and B, object A is defined as the parent of B (and B as the child of A) if A is supporting B by a certain surface. Figure 4 shows a candelabrum on top of a table. The table is hence the parent of the candelabrum, and the candelabrum is the child of the table. Suppose an example room populated by furniture objects is given. With the room itself regarded as the root, all objects directly supported by the floor or the wall are defined as “first-tier objects” (e.g. bed, table, clock on the wall). All objects supported by a surface of a first-tier object (e.g., a vase on top of a cupboard) are defined as “second-tier objects”. A room configuration is thus represented by a hierarchy of relationships. For simplicity, our optimization considers only first-tiers and second-tiers, which should cover most objects of interest. Pairwise relationships: Certain objects, such as a television and a sofa or a dining table and chairs, interact with each other in pairs subject to pairwise orientation and distance constraints. Each pairwise relationship can be set by clicking the corresponding objects Simulated Annealing Simulated annealing is a computational imitation of the (physical) annealing process, which gradually lowers the temperature of a heat bath that controls the thermal dynamics of a solid in order to bring it into a low-energy equilibrium state. Theoretically, the algorithm is guaranteed to reach the global minimum at a logarithmic rate given a sufficiently slow cooling schedule [Geman and Geman 1984]. Using such a slow cooling schedule is impractical, however. Nevertheless, it has been widely used to find quasioptimal configurations in circuit design, operations, and many scientific problems. As in the work on floor-plan generation [Merrell et al. 2010], we found that simulated annealing with the simple Metropolis criterion [Chib and Greenberg 1995] is effective in our problem of optimizing configurations in the space of possible furniture arrangements. For additional details about the simulated annealing method, refer to [Schneider and Kirkpatrick 2006; Liu 2008; Aarts and Korst 1989]. By analogy, the furniture objects in our application are regarded as the atoms of a metal being annealed—they are initially “heated up” to allow flexible rearrangement, and refine their configuration as the temperature gradually decreases to zero. At each temperature, the Metropolis criterion is used to determine the transition probability. It employs a Boltzmann-like objective function f (φ) = e−βC(φ) , (1) where the state of the system φ = {(pi , θi )|i = 1, . . . , n} represents a furniture configuration comprising the positions pi and orientations θi of each of the n furniture objects, C is the cost (energy) function, which will be defined in Section 4.3, and β is inversely Initialization 1000 iterations 5000 iterations 15000 iterations 25000 iterations Figure 6: Furniture arrangement optimization from a random initial configuration (left). As the optimization process proceeds, the furniture configuration is iteratively updated until it achieves an optimized final arrangement φ∗ in 25,000 iterations (right). Swapping Objects: To enable a more rapid exploration of the arrangement space and avoid becoming stuck in local minima, a move involving the swapping objects in the existing arrangement may be proposed. Two objects of the same tier are selected at random and their positions and orientations are interchanged: (pi , θi ) ↔ (pj , θj ) for objects i and j. Object swapping usually changes the cost significantly, thereby leading to considerable rearrangement of the configuration. Figure 7: Left: A pathway connecting doors. Right: A pairwise constraint between the television and the sofa. proportional to the temperature, increasing over the iterations as the system anneals from a high temperature to a low temperature. At each iteration, a new furniture configuration φ′ , or “move”, is proposed, and it is accepted with probability α(φ′ |φ) = min    f (φ′ ) ,1 f (φ) (2)  = min exp(β(C(φ) − C(φ′ )), 1 . (3) Note that the Metropolis criterion can accept moves that increase the cost, which enables the method to avoid becoming stuck at local minima. Figure 6 depicts an example furniture optimization process. We typically initialize the furniture objects in random positions and orientations, a configuration that typically has very high energy. The supplemental videos include animations of the optimization process. 4.2 Proposed Moves To explore the space of possible arrangements effectively, the proposed move φ → φ′ involves both local adjustment, which modifies the current arrangement, and a global reconfiguration step that swaps objects, thereby altering the arrangement significantly. Translation and Rotation: The basic move of the optimization modifies the position of an object and its orientation. For the purposes of the furniture arrangement problem, 2D translation and rotation transformations suffice to configure objects into practicable arrangements, since in most cases furniture objects stand upright on the floor due to gravity. In addition, we found in practice that performing translation and rotation separately gives a more stable optimization. In mathematical terms, an object i or a subset of objects is selected and updated with the move (pi , θi ) → (pi +δp, θi ) or (pi , θi ) → (pi , θi + δθ), where δp ∼ [N (0, σp2 ) N (0, σp2 )]T 2 2 and δθ ∼ N (0, σθ2 ), with N (µ, σ 2 ) = (2πσ 2 )−1/2 e−(x−µ) /2σ a normal (Gaussian) distribution of mean µ and variance σ 2 . The variances σp2 and σθ2 , which determine the average magnitude of the moves, are proportional to the temperature. Moving Pathway Control Points: Given two doors, multiple pathways are possible. By moving the control points of the pathway, which is represented as a cubic Bezier curve, the pathway can change its course to avoid colliding with furniture objects. As shown in Figure 7, the free space of a pathway is represented by a series of rectangles along the curve. Thus, pathways can also be regarded as “furniture objects” whose control points may be modified, and a move can be defined as the translation of a pathway control point in a certain direction. With the aforementioned moves, given a floor-plan and a fixed number of furniture objects that define the solution space, the configuration of a furniture object (pi , θi ) has a positive probability to move to any other configuration (p′i , θi′ ). Given the annealing schedule, the solution space is explored more extensively with larger moves early in the optimization, and the furniture configuration is more finely tuned with smaller moves towards the end. 4.3 Cost Function The goal of the optimization process is to minimize a cost function that characterizes realistic, functional furniture arrangements. Although it is often difficult to quantify the “realism” or “functionality” of a furniture arrangement, the following basic criteria should not be violated. Accessibility: A furniture object must be accessible in order to be functional [Mitton and Nystuen 2007; Ching and Binggeli 2005]. In Section 3.1, we defined for every face of an object an accessible space determined from prior examples and the dimensions of the human body (see Figure 5). To favor accessibility, the cost increases whenever any object moves into the accessible space of another object. Suppose object i overlaps with the accessible space k of object j, the accessibility cost is defined as Ca (φ) = XXX i j k  max 0, 1 −  kpi − ajk k . bi + adjk (4) Note that we simplify the move by dropping the optimization of orientation θi , only measuring the relative distance. Our experiments revealed that this simplification suffices to ensure accessibility and more easily prompts the overlapping object to move away. Visibility: Some objects, such as a television or a painting, impose strict requirements on the visibility of their frontal surfaces, since their fundamental functionality is compromised if their fronts are blocked by another object. For every such object that must be (a) Initial random arrangement (b) Arrangement including all ergonomic terms (c) No accessibility term (wa = 0) (d) No visibility term (wv = 0) d (e) No pairwise distance term (wpair = 0) θ (f) No pairwise orientation term (wpair = 0) (g) No pathway term (wpath = 0) (h) No prior distance term (wprd = 0) (i) No prior orientation term (wprθ = 0) Figure 8: The effect on the automatic arrangement (b) of the furniture in (a) resulting from the omission of individual cost terms: Disregarding human ergonomics results in unrealistic synthesized arrangements that that are not livable in several ways; e.g., (c) the furniture objects are colliding, (d) a potted plant is blocking the television and the armchair, (e) the work-chair is too far from the desk, (f) the armchair is facing away from the television, (g) the desk and work-chair are blocking the door, (h) furniture objects are too far from the wall, (i) objects are randomly oriented. visible, we associate with it a viewing frustum (see Figure 5). Similar to the accessibility constraint, whenever another object moves into some object’s viewing frustum, the cost increases in order to discourage the move. As discussed in Section 3.1, for an object j with a viewing frustum we approximate the frustum by a series of rectangles whose center coordinates are defined as vjk . If object i overlaps with the visibility approximation rectangle k of object j, the visibility cost is defined as Cv (φ) = XXX i j k  max 0, 1 −  kpi − vjk k . bi + vdjk (5) Note that it is similar to the accessibility cost Ca , where the accessible space of object j is replaced by the viewing frustum. Pathway Connecting Doors: Another important criterion involves pathways between doors [Ching and Binggeli 2005]. The placement of furniture objects such that they block doors should obviously be inhibited. However, a room configuration with circuitous and narrow pathways should also be avoided. To strike a balance, we assume that a pathway in a typical living environment should be smooth, and we define its locus by a cubic Bezier curve, where the free space of the pathway is approximated by a series of rectangular objects, as shown in Figure 7. Thus, the movement of furniture objects into the rectangles is penalized. Apart from moving furni- ture objects, the pathway itself can be adjusted by translating the control points of the Bezier curve. Because a pathway should be free of obstacles and thus visible, the pathway cost Cpath can be defined similarly as Cv defined in Eq. (5), and applied to the series of rectangles along the pathway. Prior: The prior cost controls the similarity between the new configuration and configurations seen in the examples. According to Section 3.2, we extract for each furniture object its prior distance and orientation to the nearest wall (d¯i , θ¯i ). Alternatively, for any new furniture object that is absent from the positive examples, the user can manually assign the prior. Given a new room layout, the current furniture arrangement will be compared with the prior by Cprd (φ) = X ||di − d¯i || (6) ||θi − θ¯i ||, (7) i Cprθ (φ) = X i where di and θi can be computed from the current pi ; i.e., finding the distance and relative angle to the nearest wall. Pairwise Constraint: The pairwise constraint is applied between two furniture objects with a specific pairwise relationship; e.g., the television should be facing the sofa as shown in Figure 7, and a bed- Living Room Bedroom Restaurant Resort Factory Flower Shop Gallery Number of Objects 20 24 54 30 51 64 35 Pairwise Relationships television & sofa television & armchair, desk & work chair chair & dish set, chair & table easel & stool, drum & chair, guitar & chair, couch & tea table work desk & chair, supervisor’s desk & chair none chair & chair Number of Iterations 20000 20000 25000 42000 42000 22000 18000 Total Time (sec) 22 48 219 126 262 376 88 Table 1: Computation times are measured on a 3.33GHz Intel Xeon PC. Spatial and hierarchical relationships are extracted automatically from positive examples. Each pairwise relationship can be set by clicking the corresponding objects in the UI, whereupon the mean relative distance and angle are extracted from the examples for use as pairwise constraints. side table should be close to a bed. It thus encodes the natural affinity of certain furniture objects in the optimized result. We define d θ the pairwise constraint Cpair (φ) and Cpair (φ) by simply replacing the distance and orientation to the wall in the prior cost as defined by Eqs. (6) and (7), with the desired distance and orientation between the pair of objects. Given the above costs, we define the overall cost function as C(φ) = wa Ca (φ) + wv Cv (φ) + wpath Cpath (φ) +wprd Cprd (φ) + wprθ Cprθ (φ) d d θ θ +wpair Cpair (φ) + wpair Cpair (φ). (8) The w coefficients determine the relative weighting between the cost terms; in practice, we set wa = 0.1, wv = 0.01, wpath = 0.1, d θ wprd = wpair = [1.0, 5.0], and wprθ = wpair = 10.0. The effect of omitting individual terms is depicted in Figure 8. The optimization formulation can be readily extended to secondtier objects—optimization is performed to move second-tier objects on the supporting surfaces provided by their first-tier counterparts in the same way that furniture objects move over the floor space of a room, which is regarded as the root in the hierarchy. However, second-tier objects will attach to their first-tier parents if they are not already attached when the optimization begins. 5 The Factory scene in the figure shows the efficacy of the pairwise constraint. By modifying the weights of the pairwise distance and orientation terms, different groupings of work desks and chairs are obtained. The accessibility and visibility constraints acting together prevent the door and poster from being blocked. The Flower Shop provides a striking example of the effect of the pathways constraint, which maintains a clear path between the doors despite the dense coverage of the remainder of the room by flowers. For this scene, we change the position of the main door in each synthesis to illustrate different path generation solutions. The accessibility constraint also prevents the cashier from being blocked. We modeled the Gallery scene based on an image of the Yale University Art Gallery. The scene consists of a non-rectangular room supported by numerous pillars. Our synthesis result suggests a new interior arrangement for the gallery, where optimizing visibility and accessibility helps avoid obstruction of the pictures and information counter. The Resort provides another example of a non-rectangular room. Using pairwise constraints between the easel and the stool, our system automatically generated a area dedicated to painting. We choose a different mean position for the sofa in Synthesis 2 so that the optimized location is farther from the wall. The Restaurant example illustrates the significance of the pairwise relationship on both first-tier and second-tier objects. With the use of a concentric spatial relationship between the chairs and table extracted from the exemplars, different numbers of chairs are correctly oriented and evenly distributed around their respective tables and each dish-set is near and properly oriented to its corresponding chair. Results 6 Perceptual Study Figure 9 shows typical input exemplars that serve in extracting furniture relationships. For each scene, we build five exemplars which cover the most common types of furniture objects. The furniture objects used in the input exemplars for relationship extraction may differ in appearance from those used in the synthesis, although they are of the same type. To demonstrate the efficacy of our optimization approach, we tested it on seven different scenes, the Living Room and Bedroom examples shown in earlier figures, plus the five additional scenes, Factory, Flower Shop, Gallery, Resort, and Restaurant, shown in Figure 10. Table 1 tabulates the computational complexity, running time, number of iterations, and the pairwise relationships used in each scene. Note that the respective positions and orientations of the windows, doors, and ceiling fans are fixed and not updated during the optimization unless otherwise stated. For each scene, we synthesized three different furniture arrangements; the same view of each synthesized arrangement is shown in Figure 10 for comparison. Two additional views of each synthesized arrangement are included in the perceptual study, which will be detailed in the next section. All the images for the input exemplars and synthesized arrangements can be found in the supplementary materials supporting this paper. We performed a perceptual study to evaluate the realism and functionality of the furniture arrangements synthesized by our interior design system. Our null hypothesis H0 was that users perceive no significant differences in the functionality of the synthesized arrangements relative to those produced by a human designer given the same rooms and sets of furniture objects. The alternative hypothesis H1 was that users did perceive significant differences. Our experiment was conducted using a subjective, two-alternative, forced-choice preference approach patterned after the one reported in [Jimenez et al. 2009]. 6.1 Participants 25 volunteer participants were recruited who were unaware of the purpose of the perceptual study. This number of participants was comparable with similar studies in which 16 users were recruited [Jagnow et al. 2008; Jimenez et al. 2009]. The participants included 18 males and 7 females whose ages ranged from 20 to 60. All the subjects reported normal or corrected-to-normal vision with no color-blindness and reported that they are familiar with the indoor scenes to be tested in the study. 14 subjects reported that they did not have any expertise in interior design. Living Room Bedroom Factory Flower Shop Gallery Resort Restaurant Figure 9: Typical input examples for different scenes. Synthesis 1 Synthesis 2 Synthesis 3 Figure 10: Selected views of our synthesized results. Top to bottom: Factory, Flower Shop, Gallery, Resort, Restaurant. Figure 12: A screenshot used in our perceptual study. Each participant was shown 70 pairs comprising a synthesized arrangement and an arrangement created by a human designer given the same room and set of furniture objects. Left: Overhead and 2 different views of a synthesized furniture arrangement. Right: Corresponding views of a human-designed furniture arrangement. video viewing easily causes fatigue. Figure 12 shows a screenshot used in our perceptual study for pairwise comparison. The left and right color plates respectively show three views of a furniture arrangement, one synthesized by our system and the other created by a human designer. Each participant viewed a total of 70 trials (5 paired comparisons × 7 scenarios × 2 trials). Participants were encouraged to ask any questions prior to the study. After completing a consent form and questionnaire, they were given a sheet indicating the task description: “This test is about selecting a color plate from a pair of color plates, and there are 70 pairs in total. Each plate shows three views of a furniture arrangement. You will be shown the plates side-by-side with a grey image displayed between each evaluation. Figure 11: Synthesis results obtained without enforcing a selected constraint. Left: No distance constraint; e.g., in the Living Room, the couch is not placed against the wall and, in the Factory, some work-chairs are placed far from their respective work desks. Right: No orientation constraint; e.g., in the Living Room the television is oriented at an awkward angle against the wall and, in the Factory, some work-chairs are oriented arbitrarily. 6.2 Data The synthesis results shown in Figure 10 were compared against furniture arrangements designed by humans. To assess the significance of priors and pairwise constraints, we produced two addid tional synthesis results by respectively setting wprd = wpair = 0 θ θ and wpr = wpair = 0. Figure 11 shows selected views of the two additional synthesized examples of the five scenes. Note that the positions of objects mounted on the walls, such as paintings and posters, are fixed in the examples. 6.3 Procedure The study was conducted in a manner similar to the traditional practice adopted in industry, where interior decorators present their design alternatives to customers and request their preference. It involved static 2D image viewing rather than 3D scene navigation so as to eliminate differences due to varying degrees of skill among the participants in using navigation software. The viewing of video was avoided because, as our preliminary experiments showed, repeated Your task in each evaluation is to select the arrangement in which you would prefer to live, stay, work, visit, etc., depending on the primary function of the room, by clicking on the color plate. You can view the test pair for an unlimited amount of time, but we suggest that you spend around 15 seconds on each set before making your selection.” The color plates were presented to each participant in a different random order. Counterbalancing was used to avoid any order bias— each paired comparison was assessed twice by each participant, where in half of the trials the synthesized arrangement is displayed as the left plate and as the right plate in the other half. 6.4 Outcome and Analysis The primary goal of the experiment was to validate the quality of the furniture arrangements synthesized by our system relative to that of arrangements designed by humans. If human-designed arrangements are not clear winners over the synthetic ones, then our system may be considered successful. The collected preference outcomes were analyzed to determine if any statistically significant trend exists. To this end, we first adopted the Chi-square nonparametric analysis technique. A one-sample Chi-square includes only one dimension, such as is the case in our perceptual study. The obtained (AE /A1 ,AE /A2 ,AE /A3 ,AE /A4 ,AE /A5 ) frequencies were compared to an expected 25/25 (50 for each comparison) result to ascertain whether this difference is significant. The Chi-square values were computed and then tested for significance. Table 2 tabulates the survey results. Overall, they indicate that the furniture arrange- Scene Living Room Bedroom Factory Flower Shop Gallery Resort Restaurant AE /A1 χ2 -value p-value 1.210 0.271 0.810 0.368 0.490 0.484 0.090 0.764 0.250 0.617 0.010 0.920 3.610 0.057 AE /A2 χ2 -value p-value 0.010 0.920 7.290 0.007 1.690 0.194 9.610 0.002 3.610 0.057 2.890 0.089 0.250 0.617 AE /A3 χ2 -value p-value 0.010 0.920 0.010 0.920 0.810 0.368 6.250 0.012 0.090 0.764 0.090 0.764 1.690 0.194 AE /A4 χ2 -value p-value 5.290 0.021 4.410 0.036 13.69 0.000 0.090 0.764 1.690 0.194 9.610 0.002 8.410 0.004 AE /A5 χ2 -value p-value 10.89 0.001 20.09 0.000 20.25 0.000 10.89 0.001 3.610 0.057 12.25 0.000 2.890 0.089 Table 2: Chi-square analysis (degrees of freedom = 1, level of significance = 0.05). AE , A1 , A2 , A3 are, respectively, the example arrangement and synthesis results 1, 2, and 3 in Figure 9 and Figure 10. A4 and A5 are the respective synthesis results without distance and orientation considerations. Values shown in boldface indicate significant differences. Scene Living Room Bedroom Factory Flower Shop Gallery Resort Restaurant AE /A1 odds (1.377) (2.135) 3.050 4.894 4.020 5.506 0.102 AE /A2 odds 5.506 0.002 (0.818) 0.000 0.102 0.223 4.020 AE /A3 odds 5.506 5.506 (2.135) 0.005 4.894 4.894 (0.818) AE /A4 odds 0.016 0.042 0.000 4.894 (0.818) 0.000 0.000 AE /A5 odds 0.000 0.000 0.000 0.000 0.102 0.000 0.223 Table 3: Odds on the null hypothesis H0 over the alternative hypothesis H1 . Values shown in boldface favor H0 , indicating no significant difference; values shown in parentheses are inconclusive; other values favor H1 . ments created by humans are not clearly preferred over the arrangements A1 , A2 , and A3 , when all the cost terms participate in the optimization that synthesizes the furniture arrangements. For the AE /A1 , AE /A2 and AE /A3 pairs, among the 21 synthesized arrangements, only 3 showed a significant difference (p < 0.05) inasmuch as most of the participants were able to identify the humandesigned arrangement in these cases. Second, we adopted a Bayesian analysis [Gallistel 2009; Rouder et al. 2009] to determine whether the number of participants who selected the synthesized layout was what would be expected by chance, or if there was a preference pattern. For each scene, we assumed that the participant had a probability P of picking the human-designed arrangement, and that the results of different trials of the same scene were independent of each other. Based on these assumptions, we used a binomial distribution to model the results, where the only parameter was P . Then H0 has P = 0.5 and H1 has P = [0, 1]. We computed the odds O on H0 over H1 . According to [Rouder et al. 2009], O > 3 shows evidence favoring H0 whereas O < 1/3 shows evidence favoring H1 , while other odds values are inconclusive. Table 3 tabulates the odds computed. For the AE /A1 , AE /A2 , and AE /A3 pairs among the 21 synthesis results, 10 favor H0 indicating the lack of a significant perceived difference between the furniture arrangements synthesized by our system and the human-designed arrangements, 6 favor H1 indicating a significant difference, and 5 are inconclusive. Orientation vs distance: Most users chose the human-designed arrangement when the distance or orientation constraint was inhibited, and it was easier for users to detect the difference when we inhibited the orientation term than when we inhibited the distance term. Omitting orientation constraints yields bad results in practice, which suggests that a greater weight can be applied in penalizing orientation deviation during optimization. 7 Discussion and Future Work Although our framework espouses optimization as a means of synthesizing realistic furniture arrangements, it provides users the flex- ibility to control furniture placement that respects furniture functionality and interior design aesthetics. For instance, the pairwise constraint promotes the even distribution of chairs around a circular table in the Restaurant example, which is a typical case of radial balance or symmetry [Ching and Binggeli 2005; Malnar and Vodvarka 1992]. Our framework also demonstrates its effectiveness in a “tight fit” scenario, where many functional groupings of furniture (e.g., work desks and chairs) are possible as in the Factory example, as well as in a “loose fit” scenario, where the placement is more flexible and furniture types are more diverse, as in the Resort example. The framework is also flexible enough to cater to specific needs related to human factors, which may be readily encoded into the accessibility and pathway terms in order to generate livable furniture arrangements. Note that we make the implicit assumption that the perimeter of a room is long enough to accommodate all the furniture objects that ought to be placed against walls. Violating this assumption may lead to local suboptima or failure cases, where in the resulting layout some furniture objects that should be positioned against walls may be placed at a distance from the nearest wall that is already occupied by another object. Given our automatic tool for synthesizing furniture arrangements plus existing methods for synthesizing floor-plans, buildings, and cities, we can potentially create and model virtual worlds much faster and with much less human effort. The resulting interior enrichment would enhance the level-of-detail and, therefore, the realism of large-scale buildings in virtual worlds, which are becoming increasingly ubiquitous in motion pictures and interactive games. The future extension of our framework will focus on functional issues, including consideration of interior lighting design and the acoustic qualities of a synthesized furniture configuration, as well as on subjective, aesthetic issues, among them the selection of furniture styles and colors consistent with design concepts such as balance, harmony, and emphasis [Ching and Binggeli 2005; Malnar and Vodvarka 1992]. Furthermore, pairwise relationships between objects in exemplars should be analyzed in a more sophisticated manner from the perspective of unsupervised machine learning. 8 Conclusion We have introduced a framework for the automatic synthesis of furniture layouts, avoiding manual or semi-automated interior design approaches that are impractical in graphics applications requiring full automation. We believe that our work is the first to consider in a comprehensive manner human factors, among them accessibility, visibility, pathway constraints, and so forth. We have demonstrated the effectiveness of our automated interior design approach in generating arrangements for various scenarios, and our results have been deemed by human observers to be perceptually valid in functionality compared to arrangements generated by human designers. Acknowledgements We are grateful to the anonymous reviewers for their constructive comments. The Google 3D Warehouse provided us with a rich source of 3D models, which helped us tremendously in speeding up our modeling process. Our special thanks go to Shawn Singh for his expert advice and efforts in video editing, scene-modeling, and rendering, to Yu-Wing Tai for his helpful suggestions in running experiments and on a draft of this paper, to Michael S. Brown for narrating our demonstration video, to Howard Alexander Greene for his advice on video editing, to Jan Adamec for providing a modified version of his Room Arranger software, which enabled our early testing, to Wenze Hu for technical advice on stochastic optimization, and to Lap-Fai Lee for his advice on data analysis in our perceptual study. The research reported herein was supported in part by the Hong Kong Research Grant Council under grant no. 620309, RICE/MURI Award 443948-SN-80050, NSF Award Nos. 443948TH-22487 and 0905671, and ONR grant N00014-09-1-0105. LapFai Yu is supported by a Sir Edward Youde Memorial Fellowship from the Government of Hong Kong. References A ARTS , E., AND KORST, J. 1989. Simulated Annealing and Boltzmann Machines: A Stochastic Approach to Combinatorial Optimization and Neural Computing. Wiley, New York, NY. A KAZAWA , Y., O KADA , Y., AND N IIJIMA , K. 2005. Automatic 3D scene generation based on contact constraints. In Proc. Conf. on Computer Graphics and Artificial Intelligence, 593–598. C HEN , G., E SCH , G., W ONKA , P., M ÜLLER , P., AND Z HANG , E. 2008. Interactive procedural street modeling. ACM Trans. Graph. 27, 3. C HIB , S., AND G REENBERG , E. 1995. Understanding the Metropolis-Hastings algorithm. The American Statistician 49, 4, 327–335. C HING , F. D., AND B INGGELI , C. 2005. Interior Design Illustrated, 2nd Ed. Wiley, New York, NY. C HUN , H. W., AND L AI , E. M.-K. 1997. Intelligent critic system for architectural design. IEEE Trans. Knowl. Data Eng. 9, 625– 639. G ALLISTEL , C. R. 2009. The importance of proving the null. Psychological Review 116, 2, 439–453. G EMAN , S., AND G EMAN , D. 1984. Stochastic Relaxation, Gibbs Distributions and the Bayesian Restoration of Images. IEEE Transactions on Pattern Analysis and Machine Intelligence 6, 6, 721–741. G ERMER , T., AND S CHWARZ , M. 2009. Procedural arrangement of furniture for real-time walkthroughs. Computer Graphics Forum 28, 8, 2068–2078. G RUNWALD , P. 2007. The Minimum Description Length Principle. MIT Press. K IRKPATRICK , S. 1984. Optimization by Simulated Annealing: Quantitative Studies. Journal of Statistical Physics 34, 5, 975– 986. K JøLAAS , K. A. H. 2000. Automatic Furniture Population of Large Architectural Models. Master’s thesis, Massachusetts Institute of Technology, Department of Electrical Engineering and Computer Science, Cambridge, MA. L ARIVE , M., ROUX , O. L., AND G AILDRAT, V. 2004. Using meta-heuristics for constraint-based 3D objects layout. In Proc. Conf. on Computer Graphics and Artificial Intelligence, 11–23. L IU , J. S. 2008. Monte Carlo Strategies in Scientific Computing. Springer, New York NY. M ALNAR , J. M., AND VODVARKA , F. 1992. The Interior Dimension: A Theoretical Approach to Enclosed Space. Wiley, New York, NY. M ERRELL , P., S CHKUFZA , E., AND KOLTUN , V. 2010. Computer-generated residential building layouts. ACM Trans. Graph. 29, 181:1–181:12. M ETROPOLIS , N., ROSENBLUTH , A. W., ROSENBLUTH , M. N., T ELLER , A. H., AND T ELLER , E. 1953. Equation of state calculations by fast computing machines. Journal of Chemical Physics 21, 1087–1092. M ITTON , M., AND N YSTUEN , C. 2007. Residential Interior Design: A Guide to Planning Spaces. Wiley, New York, NY. M ÜLLER , P., W ONKA , P., H AEGLER , S., U LMER , A., AND VAN G OOL , L. 2006. Procedural modeling of buildings. ACM Trans. Graph. 25, 3, 614–623. M ÜLLER , P., Z ENG , G., W ONKA , P., AND VAN G OOL , L. 2007. Image-based procedural modeling of facades. ACM Trans. Graph. 26, 3, 85. PANERO , J., AND Z ELNICK , M. 1979. Human Dimension and Interior Space: A Source Book of Design Reference Standards. Watson-Guptill, New York, NY. PARISH , Y. I. H., AND M ÜLLER , P. 2001. Procedural modeling of cities. In Proc. Conf. on Computer Graphics and Interactive Techniques (SIGGRAPH ’01), ACM, New York, NY, 301–308. ROUDER , J. N., S PECKMAN , P. L., S UN , D., M OREY, R. D., AND I VERSON , G. 2009. Bayesian t-tests for accepting and rejecting the null hypothesis. Psychonomic Bulletin and Review 16, 225–237. S ANCHEZ , S., ROUX , O., L UGA , H., AND G AILDRAT, V. 2003. Constraint-based 3D-object layout using a genetic algorithm. In Proc. Conf. on Computer Graphics and Artificial Intelligence. S CHNEIDER , J. J., AND K IRKPATRICK , S. 2006. Stochastic Optimization (Scientific Computation). Springer-Verlag, Berlin. S HAO , W., AND T ERZOPOULOS , D. 2007. Autonomous pedestrians. Graphical Models 69, 5-6, 246–274. H ASTINGS , W. 1970. Monte Carlo samping methods using Markov chains and their applications. Biometrika, 97–109. TALTON , J. O., G IBSON , D., YANG , L., H ANRAHAN , P., AND KOLTUN , V. 2009. Exploratory modeling with collaborative design spaces. ACM Transactions on Graphics 28, 5, 167:1– 167:10. JAGNOW, R., D ORSEY, J., AND RUSHMEIER , H. 2008. Evaluation of methods for approximating shapes used to synthesize 3D solid textures. ACM Trans. Appl. Percept. 4, 4, 1–27. X IAO , J., FANG , T., TAN , P., Z HAO , P., O FEK , E., AND Q UAN , L. 2008. Image-based façade modeling. ACM Trans. Graph. 27, 5, 1–10. J IMENEZ , J., S UNDSTEDT, V., AND G UTIERREZ , D. 2009. Screen-space perceptual rendering of human skin. ACM Trans. Appl. Percept. 6, 4, 1–15.