Towards an Automated Home Interior Designer System

52
Int'l Conf. Artificial Intelligence | ICAI'16 |
Towards an Automated Home Interior Designer System
Aakanksha Bapna1 and G. Srinivasaraghavan2
1,2 Department of Computer Science, IIIT Bangalore, Karnataka, India
Abstract— We present an almost completely automated
intelligent system that produces realistic and aesthetically
appealing interior designs for homes. We present the results
from our current implementation that generates interior designs for rectangular living rooms. The particularly striking
feature of our system is that it generates multiple plausible
options for an empty room. The relationships between different elements of a room and items placed in the room are
represented as Bayesian networks. The causal relationships
defining the network structure are derived from standard
thumbrules of interior designing. The parameters for every
node in the network are learnt from information extracted
semi-automatically from the top view images of furnished
living rooms and conversation areas. New layouts based on
user inputs are generated upon inferencing from this learnt
network. We have successfully dealt with living rooms having
(i) dimensions varying from 9 to 25 ft, (ii) 1-3 doors, (iii) 2
windows, (iv) TV or/and fireplace as focal points, (v) dining
area, (vi) second conversation area.
Keywords: Interior designing, Intelligent system, Bayesian networks
1. Introduction
Interior designing is a curious mix of established thumbrules and creativity to shape the experience of the space inside a home, office or even a single room. It requires making
the space functional, clutter-free, aesthetically pleasing and
comfortable by a combination of creative spatial alignment
and cosmetic touches through texture, lighting and colors.
All of these are indeed subjective and personal tastes and
preferences of the occupants do play a significant role in
interior designing. It is therefore essential in interior designing for the designer/architect to work closely with the client
and arrive at a design that meets the client (occupant’s) needs
best. The typical process followed in interior designing is: (i)
the user gives loose, high level preferences and requirements,
(ii) the architect generates multiple plausible designs that
more-or-less meet the stated requirements, while clarifying
why some of the preferences if any as stated by the client
are inappropriate for various reasons (high cost, violating
established best practices, feasibility, etc.), (iii) client makes
choices on his/her preferred options, (iv) the architect iterates
on the designs by using the client responses and choices
as fresh inputs, (v) the final design is arrived at iteratively
through a series of interactions between the client and the
architect. Much of the discussion in the process described
above is visual in nature, involving pictures, drawings and
graphical illustrations.
We propose a system that is intended to work a lot
like what has been described above and effectively play
the role of an interior designer/architect. The system takes
basic information such as dimensions and shape (including
location of doors, windows, staircase etc.) of the space for
which the user wants the interiors designed. It then takes
structured input from the user on preferences and constraints
(may be an old antique furniture that needs to be accommodated, TV and/or fireplace as focal point for the room,
dining area, second conversation area, etc.). The designer’s
‘knowledge base’ is encoded as a Bayesian network learnt
from several layouts that have been generated by human
designers. The iterative process described above seems to
lend itself naturally to a ‘Bayesian’ interpretation. The user
inputs form the evidence for driving nodes of the network
with which the system infers the distributions of the locations
and attributes of the other nodes in network. Multiple options
are generated by sampling from these distributions, with
some minimum probability threshold for feasibility. This
process can be iterated till the user is happy with a design
of his/her choice. We have currently implemented such a
system to generate the interiors for a single room (the living
room). Our algorithm however can be extended to more
complex layouts and multiple spaces naturally.
The main contributions of our work are 1) object extraction along with their positions and orientations semi-automatically (supported by little manual
annotation) from 2d-layout diagrams.
2) a modeling framework entirely in terms of Bayesian
networks that creates interior designs only from user
requirements.
3) parameter learning in a hybrid Bayesian network with
both continuous and discrete nodes.
4) a generic algorithm that can be easily extended to find
shape, size, color, texture etc. of the objects and also
to generate designs for other rooms.
The third one is, we believe, of independent interest. Hence
we focus on the modeling and learning part of the problem
which is of primary relevance in the current context.
The rest of the paper is organized as follows. Section 2
is a brief survey of similar attempts at building automated
interior designer systems, in the past. Section 3 gives an
overview of our system. Sections 4 through 7 describe each
of the key conceptual modules in our scheme, an overview
of each of which along with a bird’s-eye-view of the entire
ISBN: 1-60132-438-3, CSREA Press ©
Int'l Conf. Artificial Intelligence | ICAI'16 |
53
system is explained in Section 3. Our results are summarized
in Section 8. We conclude with some extensions and scope
for future work that we foresee in Section 9 followed by a
list of references.
2. Previous Works
In the graphics domain, researchers have applied optimization algorithms to the problem of constrained layout
synthesis. For example, a parallel tempered MetropolisHastings algorithm has been used to synthesize furniture
layout [1]. A similar layout problem has been solved using
simulated annealing [2]. In these two systems, the designers
need to specify the number and types of objects in advance.
Another major drawback we see of these systems is that it
can handle only spatial arrangement of pieces of furniture
selected by the user. In contrast our system generates multiple suggestions for the user even in the choice of furniture,
other than the ones that the user wants to preserve. Our
system is lot more flexible and can include other features of
interior designing such as colors, texture etc. Moreover the
rule extraction process is largely manual and is essentially
hard-coded into the system. We have implemented a rule
extraction algorithm from designs created by human designers and architects, instead. In [2], distance and orientation
of every object w.r.t. wall seems to be fixed and specified
prior, but that may not always be the case (shown in Figure
1)
In [3] Merrell and others also proposed a method to generate residential building layouts. We also employed Bayesian
networks for modeling relationships between different rooms
but we derive its structure from standard thumbrules of interior designing (details can be found in section 4). and learn
the parameters of the network. [4] developed a tool called
FurnIt that automatically places furniture into the given floor
plan using some predefined hierarchical templates which
have certain functionality. This system also has the limitation
that it cannot by design handle anything other than spatial
arrangements of objects. Also the templates are manually
created and constrains the user to a small set of choices
implied by the templates.
Apart from the optimization field, many works have been
done in the object synthesis domain to render functional
designs for indoor scenes. Example-based [5] and activitycentric [6] scene synthesis have been described by Fisher
et. al. in recent years. In example based scene synthesis,
their algorithm consisted of occurrence model (Bayesian
Networks), arrangement model (Mixtures of Gaussians) and
contextual categories (clusters). In our system the Hierarchical Bayesian networks handle everything from occurrence,
arrangement and interchanging of objects. Also when location and orientation of few objects govern the presence,
location , orientation of other objects the results are better.
In activity-centric scene synthesis, when modeling a
scene, they first identify the activities supported by a scanned
Fig. 1: Few training images depicting that the distance and
orientation of sofas w.r.t. wall and w.r.t. each other is not
always same. It is largely dictated by room size and location
of doors.
environment and then determine semantically-plausible arrangements of virtual objects. In these two works Bayesian
networks were just used to create occurrence models. That
implies they have just utilized Bayesian networks to model
relationships between discrete variables. Whereas, we used
Bayesian networks to model relationships between both
discrete and continuous variables. Learning such networks
from data is in itself a significant contribution of our work.
Also using their algorithm for arranging furniture within a
room may lead to only subtle changes in the interior designs.
Our work actually creates many functional scenes for empty
spaces. After extending our work from 2-d to 3-d layouts,
their method can be used to create stylistically different
scenes by scanning the different furniture arrangements
suggested by our system.
An algorithm to model the structural relationships between
objects using graph kernels was given in [7]. Objects or
group of objects form the nodes and relationships between
them such as enclosure, horizontal, vertical or oblique support form the edges. It is mainly used for scene matching
and search purposes. Our system aims to exactly mimic
the interior designing process. Their approach of forming
a network to represent relationships is good for arranging
tables etc. but in case of living rooms when all furniture
items are kept on floor,which implies no surface contact and
no enclosure of furniture objects, the edges in the graph
would be very few. Hence matching could be difficult. Also,
we don’t just model dependencies between objects, in our
case properties of room govern properties of subspaces and
then properties of subspaces govern properties of objects.
We derive the design in hierarchical manner, hence they are
less brittle.
A new algorithm called locally annealed reversible jump
MCMC (Markov-chain Monte Carlo) that generates samples from transdimensional distributions encoding complex
constraints is described in [8]. This however is fit for
ISBN: 1-60132-438-3, CSREA Press ©
54
Int'l Conf. Artificial Intelligence | ICAI'16 |
open worlds only where good layouts not only satisfy the
constraints of physical plausibility and functionality, but also
crowded-ness and appropriateness of the furniture. In open
world layouts where the number of objects are not fixed and
optimal configurations for different numbers of objects may
be drastically different. Also, sampling can make the system
very slow as mentioned in [6].
Our proposed system is clearly lot more flexible and
generic in its ability to generate a number of ‘creative’
suggestions for the user.
3. Overview
Figure 2 give a bird’s-eye-view of our system. The
rectangular boxes represent the major conceptual modules
comprising our system and arrows represent dependencies
between these modules in the overall workflow. The blue
line separates the parts of the system that work offline (one
time). The portion below the blue line represents recurring
use which essentially involves inferencing from the Bayesian
networks with evidence from the user and other constraints
to generate design options. The red arrow indicates possible
iterations between the inference engine and the user.
Object Detection
Hierarchical BBN
Offline
Learn the BBN
Bayesian Inference User Inputs
Design Options
Fig. 2: System Overview
We now describe each of the components shown in the
above figure. The system consists of a set of hierarchically
defined set of Bayesian Belief Networks (BBN). The structure of these networks is fixed and is derived from assumed
causal relationships between the different elements in a
living space. The structure and the hierarchy of these BBNs
are derived from accepted thumb rules of interior design
and interviews with professional interior designers. However
the structure of these BBNs encodes only the basic causal
relationships between the different elements occupying the
space. The causal arrow between a node A and a node B
only says that A will have a direct influence on B. The exact
nature of this influence is learnt from layouts designed by
human architects. The assumption about causal relationships,
which is the only set of hard-coded assumptions in the
system, we believe are in some sense essential and in any
case are much milder than those in the ones the earlier
systems we have surveyed.
The object detection module facilitates automatic parameter learning for the BBNs. It detects different object types
from standard interior layouts and annotates them with
attributes of the objects such as locations and orientations.
The Learning module carries out parameter learning for
the BBNs. This required a rather non-trivial extension of
existing parameter learning algorithms for Hybird BBNs.
The BBNs in our context are hybrid in the sense that some
nodes have continuous values (location, orientation) and
others take discrete values (yes/no, colors from a set of
choices, etc.).
At the end of the learning phase, we have a large hierarchically arranged BBN whose parameters (conditional
probability densities) have been learnt. The Inference engine
uses the user constraints and preferences as evidence on the
network and carries out an inference propagating the evidence through the network to arrive at the target distributions
for each node. We describe each of these in detail in the
sections that follow.
Note: In all the layout diagrams, the arrows represent doors
and the direction of the arrow tells whether it is an ’entrydoor’ or ’exit-door’. L,T,O,w,l stand for location, type,
orientation, width and length of an object respectively.
4. Hierarchically Organized Bayesian
networks
The BBN was organized as a hierarchical collection of
smaller BBNs and were intended to capture a set of generally
accepted causal relationships that mimic the process a typical designer/architect follows during interior design. Some
patterns that we observed in the layouts that we studied in
the process had a significant influence on the final structure
of the network.
Patterns observed in Conversation Area: We observed
certain shapes of conversation areas repeating in the training
images as shown in Figure 3. We considered 18 different
possibilities for conversation area shapes. In all shapes the
one edge represents the big sofa. Other edges may be formed
by any of the 3-seater, 2-seater, 1-seater or a chair or a
combination of any of these.
Patterns observed in room: The images in the Figure 4.
show some observations made about the location of doors
affecting the conversation area shape in medium sized living
rooms. The images in Figure 5 show some observations
made in large living rooms which may contain dining area
or second conversation areas. Their most occurring locations
and sizes are drawn out in the figure.
4.1 BBN Construction
The observations illustrated above played an important
role in deciding the structure of Bayesian networks. It also
helped in discarding few nodes. The idea is to categorize the
living spaces into conversation area types. Each conversation
area would then drive a different network. For each conversation area type we start with the largest objects (typical
ISBN: 1-60132-438-3, CSREA Press ©
Int'l Conf. Artificial Intelligence | ICAI'16 |
55
Fig. 3: Some training images of conversation area. (Left to
right) Smile shape, C shape, tilted-hut shape, big L shape.
Fig. 4: Examples of different conversation area types based
on location of doors observed in living room images.
example would be big sofas). There would be different
networks for cases where such large objects exist and those
where such large objects do not exist. In case large objects
exist, these would drive the placement of the other objects
relative to them. Multiplicities are handled by duplicating
the nodes appropriately.
We walk through a detailed example of a BBN for a living
room. We needed 2 different networks one for describing
the relationships between main areas and objects in the
room and another for describing the relationships between
objects within the conversation area. The following steps
are taken to construct the complete network- (i) We first
form 2 template networks depicting dependencies between
different objects of a room and conversation area based on
domain knowledge gained from designers, different websites
and observations made in the training set. (a network having
nodes- room, conversation area, sofa, table etc.) (ii) Every
node in these networks is split into multiple nodes each
representing a property of that object (one node each for
location, orientation, and size of the object). Therefore all the
parents of an object will become the parents of every node
representing a property of that node. (iii) It was checked if
Fig. 6: A model Bayesian network for living room. (conv.
means conversation. The squares within a node represent
properties of an object. L,T,O,w,l stand for location, type,
orientation, width and length of an object respectively.
Properties modelled using discrete variables are shown in
blue squares and those modelled by continuous variables
are shown in yellow. )
some property of a node was independent of some parent
(like orientation of sofa wont affect type of table). All
properties for all parent and child pairs which intuitively
seemed to be unrelated were checked and the corresponding
edges were removed. (iv) If a property of an object affected
some other properties of the same object then edges were
added between them (e.g. orientation of sofa affects its
location). (v) If any object in these networks can occur
multiple times in a room then there should be multiple
instances of it in the network. (like multiple 1-seater sofas).
The connection to other nodes, the inter connections between
the properties of a node are also copied for all instances.
The variable big sofa type belongs to the conversation area
but its value is determined by a few elements of the room.
Therefore we created a different network for deciding the
big sofa type. After all these steps we obtained 3 networks
which are visited in hierarchical top down manner to arrive at
the results. First one for capturing the relationships between
properties of subspaces and objects of room, second for
deciding the type of big sofa. And third for the objects
within main conversation area. A condensed form of these
3 networks together is shown in Figure 6.
4.2 Object Nodes and their Properties
Fig. 5: Examples of different sizes and locations of main
conversation area (CA1), dining area (DA) and second
conversation area (CA2) observed in living room images.
Column 1 of Table 1 gives the list of all the objects used
to furnish the living room in our system, maximum number
of instances of each object which were encountered in the
training images is shown in column 2 and the distinct types
of each object considered (based on its size or shape) is
ISBN: 1-60132-438-3, CSREA Press ©
56
Int'l Conf. Artificial Intelligence | ICAI'16 |
Table 1: List of objects used to furnish the living room.
Object
Door
Window
Fireplace
TV
L-shape sofa
3-seater sofa
2-seater sofa
1-seater sofa
Chair
Coffee table
Corner table
Dining unit
Number of
instances
4
1
1
1
1
2
2
4
2
1
4
1
Types (based on
shape/size)
2
1
1
1
6
2
2
2
1
3
1
2
Fig. 7: Small, square and long L-shape sofas used in our
system.
shown in column 3. The types of each object class could be
based on their shape:
•
•
•
coffee table — square, rectangular or round
L-shape sofa — small, square or long (Figure 7)
dinning table — square or rectangular
or on their size as is the case for doors and sofas. The size
of the door matters, because if there’s a big door on a small
wall hardly anything else can be accommodated, or if the
big door is on a larger wall the size of the conversation area
decreases.
For all objects except doors and fireplace location is stored
using a continuous variable (x,y) and orientation is stored
using a discrete variable. We checked the range (out of 8
ranges from 0◦ to 180◦ ) to which actual orientation belonged
to find its discrete orientation. For objects which may or
may not appear in the room and that is decided by the userthe property called Y/N is also stored. For other objects
it is combined with the discrete variable for orientation,
i.e. the last value of orientation representing object is not
present. Doors, windows and fireplace are present on the
wall therefore their orientation can be determined from their
Fig. 8: Discrete locations for doors and fireplace on the wall.
Fig. 9: (a) SURF features detected in a living room image.
(b) Conversation area, dinning area, TV matched from
templates.
position on the wall and for storing their location just one
discrete variable was used. As shown in Figure 8 we divided
the wall into 12 sections: one at left, right and centre of
every wall. The doors can lie at any location on the wall,
but to store its discrete location, it is determined into which
of these 12 sections that location falls. The number of the
sections was independent of room size. The discrete location
was given by one of these 12 numbers. The sizes of room
and conversation areas were also discretized.
Note: In our entire procedure the sofas and tables belong
to conversation area. The remaining objects and conversation
area belong to the room. Big sofa can be any of the 6 Lshape sofas or a 3 or 4-seater sofa.
5. Object Detection and Property extraction from Manual Designs
Figure 1. shows some sample top view images of the
living room used for training the Bayesian network. We used
top view images of living room as these best exhibit the
location and orientation of objects with respect to each other.
In 3-d images automatic detection of various kinds of objects
was difficult, even if we annotate the objects and bounding
boxes manually, automatic extraction of exact relationships
between objects was not possible. Nearly 65 living room
top view images were gathered from various websites from
web. Also, few living room layouts were found in the book
‘Time-saver standards for interior designing’ [9].
5.1 Extraction within Room
From every living room image main conversation areas,
TV and second conversation area, dining area (if present)
were cropped and saved separately. Matching these templates
(rotated object images) to living room images using SURF
(Speeded-Up Robust Features)[10] gives an affine transformation matrix, which can be used to find the orientation (rotation angle −π to −π) and location (transformed centroid(x,y)) of these objects in the living room. Figure 9 (a) shows
the SURF features computed for a living room image, Figure
9 (b) shows the bounding boxes for conversation area, dining
area and TV drawn after matching these with the templates.
For rest of the objects- doors, windows and fireplace, their
discrete location was set manually for training images.
ISBN: 1-60132-438-3, CSREA Press ©
Int'l Conf. Artificial Intelligence | ICAI'16 |
Fig. 10: Outputs after performing different steps of image
segmentation on conversation area image.
5.2 Extraction within Conversation Area
The data for conversation areas consisted of images of
these cropped from the living room images as mentioned
above. We also collected many more images of conversation
areas from different sources. The book titled ‘Design Rules:
The Insider’s Guide to Becoming Your Own Decorator’ by
Elaine Griffin [11] contained many common conversation
areas. SURF could not be used here because the objects like
sofa and table in the line drawings lack the minimum number
of features required for matching. Therefore we performed
image segmentation on these images to get the individual
objects within a conversation area. Figure 10, (a) shows the
actual image of a conversation area from Griffin’s book, (b)
shows the enhanced image after thresholding and dilation,
(c) shows the output image after performing hole-filling,
erosion and connected component labelling (every connected
component represents an object in the conversation area).
The properties such as centroid, minimum bounding box,
length, width, area, aspect ratio, minor and major axis length,
perimeter and solidity were extracted for every object.
With these region properties as features we used logistic
regression to classify the objects into different classes such
as 3-seater sofa, 2-seater sofa, 1-seater sofa, square table,
rectangular table, round table, tiny table, triangular L-shape
sofa, square L-shape sofa etc. We achieved an accuracy of
nearly 97% for classifying objects within conversation area
when we had only 20 images (training+testing) and 10 object
classes. However it dropped to 80% when a total of 108
images were used for training and testing and 17 object
classes were considered. It happened mainly because the
shapes of same object varied a lot in the bigger data set.
The last image in Figure 10. shows the bounding boxes
for every object with every edge colored differently. For
sofas and chairs, for annotating their front edge, we specified
which colored edge is their front edge. Then the angle front
edge makes with the positive x-axis was calculated and
discretised. To the Bayesian network, centroid and angle are
given for training.
6. Learning the Bayesian Networks
All networks elicited in the last section were implemented
in Matlab using the Bayes Net Toolbox (BNT) by Kevin
Murphy [12]. BNT was used as it allows multivariate Gaussian (continuous) nodes and mixed (discrete+continuous)
57
networks. It also supports inferencing using junction tree
inference engine. But Bayesian parameter learning was available only for pure discrete network. Hence we extended BNT
to include generic Bayesian parameter learning for mixed
networks.
As per the details about the properties of objects mentioned in the section 4.2 the corresponding nodes were
initialised as discrete or continuous. Every continuous node
storing the location property was assumed to have a multivariate Gaussian distribution in order to store (x, y) together
at a node. The initial means and weights were set to
zeros and covariance was set to identity matrix. All other
discrete nodes were assumed to have a Dirichlet distribution
initialised with random counts. For learning parameters the
input data were the values of the properties of every node
extracted from the images as explained in section 5. For
objects having just one instance in the network the data was
given directly, but for objects having multiple instances some
criteria were adopted to decide that the data for an object
should go to which instance of that object in the network.
Some of them are as follows - if 2 instances of 3-seater sofa
are present in a room, the first one is always the one forming
the top edge in conversation area another one is assigned to
second instance in the network. Corner tables for big sofa
were checked whether they appeared on the right side or
the left side of it and then assigned to respective nodes. For
2 instances of 1 or 2-seater sofas if they have the same xcoordinate then the first one from left is given to first instance
of that sofa and the other one to second. And if they have
the same y-coordinate then the first one from top is given to
first instance of that sofa and the other one to second.
7. Inferring Realistic Designs
Having learnt the networks, the task of filling an empty
room is accomplished by performing inference on these networks in a hierarchically top-down manner. The user inputs
the dimensions of a room, location of doors and windows
in it and a few more requirements. The properties of the
objects/subspaces in the room such as TV, dinning area,
conversation areas are inferred as distributions conditional
on the user choices and the actual placement of the objects
(and potentially other stylistic attributes) are decided by
sampling from these distributions, with a threshold minimum
probability. The inferred properties of main conversation
area are passed on to the sub-network. The sub-network
predicts type of big sofa which will be most suitable for
the given area.
Big sofa type is passed on to the next network for
conversation area. And the properties (location, orientation
and type) of other sofas and tables that form the conversation
area are inferred. If the inference results in none of the big
sofas to be present then we use the different version of
the third network where the 2-seater (or a similar smaller
object) is the main sofa to infer the properties of other
ISBN: 1-60132-438-3, CSREA Press ©
58
Int'l Conf. Artificial Intelligence | ICAI'16 |
Fig. 11: User inputs: room size -16.7 ft x 24.6 ft, doors at location shown in first image, fire place as focal point, wants to
have dining or second conversation area in extra space. 4 different suggestion generated by our system.
Fig. 12: User inputs: for the room shown in first row: room size-19.4 ft x 13.2 ft and for the one in second row: room size17.7 ft x 11 ft, doors at location shown in first image, TV as focal point, 2 different suggestion generated by our system
for both.
objects. If the inference results in multiple big sofas to be
equally possible then different properties of other objects are
inferred for every big sofa type to generate multiple designs.
Similarly, if different kinds of conversation ares are inferred
to be equally probable then different designs are generated
upon inferencing from remaining networks with different
properties of conversation area as input. If the room is large
and the user wants a dining area or second conversation area,
it is checked whether that will fit into the room and then its
location and orientation are found.
8. Results and Conclusion
Our automated interior designing system successfully carries out the tasks of furniture selection and its positioning
at the best possible location and orientation. It was carefully
done so as to maintain a balance in the room and leave
sufficient space for pathways and circulation within in the
room. Our outputs reflect the robustness of our system as it
creates aesthetically sound interiors for living rooms having
(i) dimensions varying from 9 to 24 ft, (ii) 1-3 doors, (iii)
1-2 windows, (iv) TV or/and fireplace as focal points, (v)
dining area, (vi) second conversation area. Figure 11 exhibits
multiple interior designs for a big room generated by our
system, having different type and orientation of conversation
area. Figure 12 exhibits different designs for an average size
room having different types of big sofa. All of this is done
automatically by our system (as explained in section 7).
These designs generated were completely realistic. The
user can readily use our outputs to buy the furniture of
appropriate sizes and furnish their living room themselves.
Comments by Interior Designer Navni after looking at
outputs produced by our system“An intelligent system is introduced which is time saving,
easy to operate, requires no user intervention or knowledge
of interior designing principles, and outputs are multiple.
User can discuss with his family various options in just one
click. As an Interior Designer, while discussing with the
client, the tool is helpful as the layouts generated can be
understood well by the client. I really liked the outputs where
the same conversation area type is being realized in different
rooms by selecting different objects or changing the distance
and angle between the objects slightly. Another good point is
that the user also comes to know about the seating capacity
as he inputs the size of the living room. Problem -The sofas
should be at a less distance from the walls so as to get
maximum space for movement and circulation in centre. ”
ISBN: 1-60132-438-3, CSREA Press ©
Int'l Conf. Artificial Intelligence | ICAI'16 |
We also plan to undertake a more extensive and systematic
user study to validate the designs generated by our system
and to improve on it.
9. Extensions and Future work
Our current implementation (i) works only for rectangular
living rooms, (ii) did not consider all possible objects in
a living room. Objects such as showcase, armoire, flower
vase, bookcase etc. occur often in living room but were not
used in our system since these were not essential elements.
Their instances in the training set were scarce, (iii) Number
of persons living in that house was not taken into account
to calculate the number of seats as no data for that was
available, (iv) Sizes were considered only for sofas (only 2
sizes) and shapes for tables only, (v) Color and texture were
not considered at all, (vi) no room other than living was
considered. (vii) ours is currently a 2-d system that works
on floor plans.
Most of these can however be handled with our framework
described in this paper. A node to store room shape can be
added to deal with non-rectangular rooms. New nodes can
be added to store new furniture objects, capacity of the room
in terms of the number of persons that can comfortably be
accommodated in the room, stylistic choices such as genre of
furniture, colors, texture etc., can be considered by adding
more properties to the nodes in the network. We believe
creating interior designs for multiple rooms would also be a
simple extension largely because many of the attributes of
the items across different rooms would be almost completely
decoupled. Hence conditioned on a common set of user
defined stylistic and functional choices that are inherited for
the entire design, each room can be more-or-less designed
independently of the others.
We plan to extend our work described in this paper
to a complete working interior designer system. Though
conceptually it seems straightforward, we do anticipate some
challenging problems we might encounter in the process,
such as: (i) automated detection of objects in a layout and
extraction of relationships between these, from a much wider
class of available interior layout diagrams, (ii) reducing the
level of manual annotation in these diagrams before learning,
(iii) handling the computational difficulty associated with
much larger networks, particularly hybrid networks of the
kind we require, (iv) simulating an iterative interaction
between the designer (our system) and the user to arrive
at the design most appealing to the user. (v) extending our
algorithms to realistic interior designing in 3-d.
59
books on interior designing. People at livspace.com for some
the living room layouts they provided us.
References
[1] P. Merrell, E. Schkufza, Z. Li, M. Agrawala, and V. Koltun, “Interactive furniture layout using interior design guidelines,” ACM
Transactions on Graphics (TOG)-Proceedings of ACM SIGGRAPH
2011, vol. 30, no. 4, p. 87, 2011.
[2] L.-F. Yu, S.-K. Yeung, C.-K. Tang, D. Terzopoulos, T. F. Chan,
and S. J. Osher, “Make it home: automatic optimization of furniture
arrangement,” ACM Transactions on Graphics (TOG)-Proceedings of
ACM SIGGRAPH 2011, v. 30, no. 4, July 2011, article no. 86, 2011.
[3] P. Merrell, E. Schkufza, and V. Koltun, “Computer-generated residential building layouts,” in ACM Transactions on Graphics (TOG),
vol. 29, p. 181, ACM, 2010.
[4] K. A. H. Kjølaas, Automatic furniture population of large architectural
models. PhD thesis, Massachusetts Institute of Technology, 2000.
[5] M. Fisher, D. Ritchie, M. Savva, T. Funkhouser, and P. Hanrahan,
“Example-based synthesis of 3d object arrangements,” ACM Transactions on Graphics (TOG), vol. 31, no. 6, p. 135, 2012.
[6] M. Fisher, M. Savva, Y. Li, P. Hanrahan, and M. Nießner, “Activitycentric scene synthesis for functional 3d scene modeling,” ACM
Transactions on Graphics (TOG), vol. 34, no. 6, p. 179, 2015.
[7] M. Fisher, M. Savva, and P. Hanrahan, “Characterizing structural
relationships in scenes using graph kernels,” in ACM Transactions
on Graphics (TOG), vol. 30, p. 34, ACM, 2011.
[8] Y.-T. Yeh, L. Yang, M. Watson, N. D. Goodman, and P. Hanrahan,
“Synthesizing open worlds with constraints using locally annealed
reversible jump mcmc,” ACM Trans. Graph., vol. 31, pp. 56:1–56:11,
July 2012.
[9] J. De Chiara, J. Panero, and M. Zelnik, Time-saver standards for
interior design and space planning. McGraw-Hill Companies, 1991.
[10] H. Bay, T. Tuytelaars, and L. Van Gool, “Surf: Speeded up robust
features,” in Computer vision–ECCV 2006, pp. 404–417, Springer,
2006.
[11] E. Griffin, Design Rules: The Insider’s Guide to Becoming Your Own
Decorator. Penguin Publishing Group, 2009.
[12] K. P. Murphy, Bayes Net Toolbox for Matlab, 1997-2002.
[13] K. P. Murphy, “Inference and learning in hybrid bayesian networks,”
Tech. Rep. 990, University of California Berkeley, Dept. of Comp.
Sci., 1998.
[14] K. P. Murphy, “A variational approximation for bayesian networks
with discrete and continuous latent variables,” in In UAI, pp. 457–
466, Morgan Kaufmann, 1999.
[15] R. E. Neapolitan, Learning Bayesian Networks. Northeastern Illinois
University Chicago, Illinois: Prentice Hall, 2004.
[16] D. Geiger and D. Heckerman, “Learning gaussian networks,” in
Proceedings of the Tenth International Conference on Uncertainty in
Artificial Intelligence, UAI’94, (San Francisco, CA, USA), pp. 235–
243, Morgan Kaufmann Publishers Inc., 1994.
[17] D. Heckerman, “A tutorial on learning with bayesian networks,” Tech.
Rep. MSR-TR-95-06, Microsoft Research, March 1995.
[18] R. Daly, Q. Shen, and S. Aitken, “Review: Learning bayesian networks: Approaches and issues,” Knowl. Eng. Rev., vol. 26, pp. 99–157,
May 2011.
[19] S. Bottcher, “Learning bayesian networks with mixed variables,”
Proceedings of the Eighth International Workshop in Artificial Intelligence and Statistics, 2001.
[20] R. G. Cowell, “Local propagation in conditional gaussian bayesian
networks,” J. Mach. Learn. Res., vol. 6, pp. 1517–1550, Dec. 2005.
[21] S. L. Lauritzen and F. Jensen, “Stable local computation with conditional gaussian distributions,” Statistics and Computing, vol. 11, no. 2,
pp. 191–203, 2001.
Acknowledgements
We would like to thank Prof. Dinesh and Sowmya for their
guidance in the field of object detection and recognition.
Interior Designer Navni for enlightening us with various
interior designing principles and making us aware of popular
ISBN: 1-60132-438-3, CSREA Press ©