Project: Window Detection – Edelaar

  • Intro
  • Technical Aspects

Information

Primary software used Python
Software version 1.0
Course Computational Intelligence for Integrated Design
Primary subject AI & ML
Secondary subject Machine Learning
Level Intermediate
Last updated November 19, 2024
Keywords

Responsible

Teacher
Faculty

Project: Window Detection – Edelaar 0/1

Project: Window Detection – Edelaar link copied

Neural Networks for window detection, a step towards early daylight analysis

Buildings account for almost 40% of total energy consumption. The difference between predicted and actual energy consumption, known as the Energy Performance Gap (EPG), plays a significant role. To address the EPG, early architectural assessment of building physics, particularly daylight analysis, is critical. Proper daylight management is essential to reduce energy consumption. 

This project aims to simplify daylight analysis on floorplans by using machine learning. This will make the process more assessable in the early design phase. The report describes the workflow, which starts with the detection of windows in floorplans. Two different ML models were used in this project: YOLOv1 (YOLO version 1) and YOLOv8 (YOLO version 8). YOLO models are known for their efficiency in object detection using Convolutional Neural Networks (CNNs). YOLOv1, built from scratch in Python, and YOLOv8, implemented in Google Colab, are trained and tested on the same dataset of floorplan images. The two versions were used and compared to get a better understanding of the YOLO workflow.

The report explains the main differences between the two YOLO versions. YOLOv1 divides the image into grids and uses anchor boxes to predict object locations, whereas YOLOv8, a more advanced model, predicts on the entire image without using anchor boxes, increasing speed and accuracy. As expected, YOLOv8 was faster and more accurate than YOLOv1. YOLOv8 would most likely be suitable for good window detection, the first step in the workflow towards early stage daylight analysis.

Window Detection Summary Video (Content copyright remains with paper author(s). Used with permission.)

Project Information

  • Title: Neural Networks for window detection, a step towards early daylight analysis
  • Author(s): Sarah Edelaar
  • Year: 2024
  • Type: Course Project, Building Technology, Computational Intelligence for Integrated Design
  • ML tags: Convolutional Neural Network, daylight analysis, object detection, YOLO
  • Topic tags: Climate design, Comparative analysis

Project: Window Detection – Edelaar 1/1

Technical Aspects link copied

Software & plug-ins used

  • YOLOv1: Python with PyTorch
  • YOLOv8: Google Colab with imported model from RoboFlow

ML-workflow

Window Detection Technical Video (Content copyright remains with paper author(s). Used with permission.)

The main workflow of the YOLO model is as follows. In the YOLOv1 model, the image is divided into a grid of S x S cells. Each cell is resized to the required size, and each cell is scored on two features. The model predicts the class type of the main object within that grid cell by classification. It then uses regression to predict whether the cell contains the centre of an object. If the model predicts that there is a centre within the cell, a bounding box is created. This bounding box may overlap several cells. These two outputs are cleaned and combined.The output is a cleaned image with bounding boxes that can recognise different classes (Redmon, et al., 2016). For the YOLOv8 model, the overall method is almost the same, except that the model predicts on the entire image at once, rather than predicting on the individual grid cells (Wang et al., 2023). 

YOLO workflow (Content copyright remains with paper author(s). Used with permission.)
YOLO workflow (Content copyright remains with paper author(s). Used with permission.)