IAAC Workshop led by the Professorship of Digital Fabrication | Technical University of Munich

Faculty: Begüm Saral, Avishek Das and Pit Siebenaler

Design Goals and Process

When designing with the bricks, we began looking at their imperfections. We thought about using and exposing these defects as part of the material’s architectural expression.

The idea focused on reusing damaged construction elements. We detect cracks and deformations, integrating them into the design and assembly logic.

This developed a process using Gemini AI to detect deformations via prompts. Next, The system feeds this data into a visual and logical overlay in Grasshopper.

Scan → Detect surface irregularities → Classify and grade → Representative assembly 

Inspiration

Fakhr-o-Madin: The term refers to a “pierced” or “voided” brick wall where the arrangement of bricks and openings creates a rhythmic, functional screen

Ventilation (passive cooling system). By creating a porous boundary, it facilitates cross-ventilation, allowing breezes to permeate the building envelope.

Light (natural light diffuser). The wall breaks harsh, direct desert sunlight into a soft, patterned glow before it enters a room. 

Privacy (creating visual hierarchy). From the inside, the inhabitants can see out into the courtyard or street, maintaining a connection with the environment. However, the pattern’s density and contrasting light levels block views from the outside. This makes it nearly impossible for passersby to see in.

Material Evaluation

We analyzed RGB-8 images to better identify the bricks’ qualities before reassembly. This helped us decide on five categories (Surface Color identification is not shown below):

Material Loss in Corners , Edges , Surfaces : The engine performs a targeted scan of all visible vertices, edges, and faces. This identifies missing volumes like chips, spalls, or broken corners.It classifies each defect by geometry type. The system assigns an index of 0 for a vertex, 1 for an edge, or 2 for a surface.The system converts this data into a structured JSON entry. This entry contains precise world coordinates and the missing material’s volumetric percentage.

Mold or stain on Surfaces: The engine performs an independent scan of every visible face to identify biological or mineral discoloration. It classifies each patch into four categories: algae, white_efflorescence, iron_mold, or black_mold. It then assigns a typeIndex of 0 for the face surface. The system records each detected patch as a unique JSON entry. This entry contains specific RGB color, center UV coordinates, and the affected surface area percentage.

Roughness on Surfaces: The engine scans every visible face to evaluate its textural quality. It then assigns a typeIndex of 2 for the surface.It calculates a severity level based on granular pitting and textural irregularity. The system specifically records the faceCentroid as the primary world coordinate for each entry.The output provides a structured dataset with roughness data for each visible surface. This data anchors to the specific face’s centroid coordinate.

Cracks on Edges and Surfaces: The engine performs a scan for all linear fractures, including physical color markers indicating crack paths.It identifies structural through-cracks intersecting three brick edges. The system documents the specific coordinates of the three points where fractures meet these geometric boundaries.For these deep fractures, the engine outputs three points.

Damage Detection

We broke down and calculated these categorisations to give each brick a damage score. This score indicates what the brick would be most suitable for.

Design Exploration

This inspired a new design idea. We placed stronger bricks with the lowest damage scores at the bottom, and weaker, more damaged bricks at the top.

Generative AI helped us develop new structures, shown on the left. We eventually settled on the more symmetrical version pictured on the right. We wanted to see how to repeat this design en masse for a much larger wall structure. However, we first needed a successful robotic process for our 10 initial bricks.

We discussed the best way to implement the initial lumps and bumps concept. This led us to refine the design into a simple aperture stack. To test robotic placement stability, we mirror-rotated the stack along its center.

Robot Process

GALLERY

OLYMPUS DIGITAL CAMERA
OLYMPUS DIGITAL CAMERA