Hello everyone, my name is Pascal and I will be presenting our work on Urban Brush: Intuitive and Controllable Urban Layout Editing
The goal of this work is to provide a framework for procedural urban layout design which
1) Incorporates behavioral modelling into the design process
and 2) allows for intuitive and local control.
Urban layout generation is an old research topic in Computer Graphics
On the one hand, procedural methods are able to produce large scale results, but do not offer local control off the shelf
On the other hand, reconstruction methods are generally limited to the input and not scalable.
Finally interactive methods are tedious and slow, and they do not help towards consistency and realism of the result
Also related to our work is the topic of functional simulation of a city.
This includes simulating the dynamics of population and other variables in the city
and can be used to simulate the evolution of cities over time for instance.
Generating a city is then done by providing and modifying high level parameters
like distribution of population, jobs, activity, land use etc.
These methods generally only give global control.
Finally editing of procedural urban layout is also a research topic on its own
but previous work never combined local editing with functional modeling of the city.
As examples, Vanegas et al. introduced a system that closes the loop between behavioral and geometrical modeling,
allowing behavioral variables to directly modify the visual appearance of the city.
But their work does not provide local control as the entire layout is regenerated after each modification.
Reversely, Lipp et al. proposed interactive editing tools for urban layout manipulation
that are intuitive and able to produce plausible city layouts
but they do not take into account behavioral modeling and consistency.
So the contributions of our paper are as follows
We introduce a set of intuitive brushes for local modification of procedural urban layouts which preserves the consistency of the city.
We propose a novel space colonization algorithm that allows for the intuitive generation of urban layouts with different styles.
And finally, we show how brushes can be further combined into fully automatic, global operations on urban layouts.
In our framework, an urban area is represented in a procedural way using several layers of content.
Starting from the terrain, a road network is generated,
The latter delimits the blocks, and each block is subdivided into lots
and each lot contains at most one building.
The user also needs to provide an initial distribution of population and jobs over the area as heatmaps
So we want to provide an intuitive way to edit a procedural urban layout
that allows for local modifications AND preserves consistency.
And consistency here is defined on three levels:
Functional consistency relates to behavioral modeling of the city
and means in our case, preserving the total number of agents (population and jobs) throughout the editing process
Visual consistency refers to preserving the visual style of the urban area
And geometrical consistency means maintaining the validity of all city elements (buildings, lots, blocks...)
For example, buildings cannot exceed a certain height, lots cannot be too thin etc.
Please refer to the paper for more detail on these
A building directly reflects the behavioral variables that it contains,
which can either be population (so space dedicated to residential apartments),
or jobs (space dedicated to offices).
Each building has a maximum capacity which is a non-linear function of its base area.
and the larger the base area, the higher it can go.
The user has the possibility to visualize the job/population ratio of buildings during editing, as seen on the right.
For this first contribution, we took inspiration from the painting and sculpting metaphor that has already been explored in the literature in other contexts.
We employ a bottom-up approach by combining ”atomic operations”,
so operations that only affect one or two elements,
into larger consistent brushes.
These brushes come with intuitive parameters which allow users to adjust their effect.
The typical interface of a brush can be seen on the right,
with an impact region where the effect of the brush is applied,
and an influence region where modifications can be made to compensate for the effect
in order to preserve the consistency of the city.
Note that these brushes really provide local control over the urban layout
as it is guaranteed that nothing outside of the influence region will be modified.
Among these brushes, we have the Repulsor and the Attractor, which work as opposites.
The Repulsor, on the left, pushes agents away from the impact region into the influence region,
While the Attractor draws them in.
We also implement a Drag and Drop brush, which moves agents from one area to another.
Observe that brushes can be applied independently on jobs and populations as shown with the blue and green color code.
The mask brush gives users the possibility to temporarily lock some lots
so that they are not affected by the other brushes we just presented.
This gives more flexibility and precision to the editing of the layout.
Finally, the Break brush acts similar to the Repulsor, with the addition that roads in the impact region are also removed.
And the Connect brush creates new individual roads
while preserving the consistency of the urban area.
These brushes come with different options which are detailed in the paper.
Among them, there is the possibility for buildings to merge as they get more volume
or to split as they get smaller (which avoid the presence of small buildings with large bases)
Our second contribution is a space colonization algorithm which allows to generate urban layout with different styles.
This is used in the Re-Build brush,
which, when applied to an area without roads, regenerate the area with a selected style. Like here.
In order to make this brush work, we had to define the concept of style for an urban layout.
We believe one aspect of it can be summarized by the distribution over the different types of intersections.
That is why we give an ID to each road intersection,
which is a sequence of letters and numbers stating the type of road and the angle as we turn around the node.
Please refer to the paper for more details.
The style of an urban area is thus determined by several histograms:
the distributions over the v-IDs, that we just presented,
but also the histogram of the branching angles,
And the average distance between a node and its neighbors for each type of intersections.
Here is an urban layout with a different style and the corresponding distributions.
So once the concept of style defined, the space colonization algorithm is applied hierarchically,
by first generating the main arterial roads, and then growing the streets.
Here we see an example of how the Re-Build brush can be used:
starting from an urban layout with a fairly regular style,
we remove part of the city using the Break brush
and then apply the Re-Build brush with a more organic style, giving the result on the right.
Lastly, we show in our paper how the brushes we introduced earlier can be combined into large-scale operations.
We show this on three examples
First, Reconfigure will adapt the urban layout to terrain changes made by the user so to recover the consistency of the city
Then, Expand and Shrink will respectively extend and shrink the entire layout along a given direction in a consistent manner.
All these operations start by detecting regions in the city that are invalid
for example building on a high slope terrain, or under the water
Then, a priority queue is built for each type of element
and the brushes presented earlier are called automatically
and applied onto the right regions until consistency is reached.
Here are two examples with Reconfigure
on the left the user adds a small hill in the city, while on the right part of the city is flooded.
In both cases the brushes are called several times to make the urban layout consistent again.
as we can see on the left and on the right
In this example, the urban layout is first shrunk along two orthogonal directions before expanded again.
Finally we conducted user studies with 12 participants.
In a first task they were given a satellite image of the target (San Francisco) and an initial template.
The goal was to match the visual appearance of the real city, with a focus on the CBD area and the parks.
Here are some results
The users were also able to create their own urban layout easily.
Thank you for your attention, If you have any questions please reach out to Xiaochen or myself.
Bye!