Inspiration
With the goal of replacing non-reusable energy with solar energy, we aim to find the best solution for solar panel installation for every house in Germany.
What it does
OpenSolar helps potential customers to quickly visualize how much energy they can produce and how much profit they can make by installing solar panels on their rooftop. Simply by entering their address, OpenSolar will show every user a customized solar-panel system installation plan and a detailed analysis of the system's production within the period of time they are interesed in, with a user-friendly interface and state-of-the-art ML tools.
How we built it
frontend side:
- streamlit allows us to quickly create and deploy web interfaces for our models.
backend side:
rooftop segmentation We train a yolov5 segmentation model over the DeepRoof dataset. Upon getting the coordinations of the user, we use GoogleAPI to get the picture of the rooftop at a scale of (ph), we run the detection and part segmentation of the rooftop and get the orientation of the rooftop.
solar panel organization After getting the segmentation, we first align different parts of the rooftop to the upright direction, then we fit panels into the rotated parts, taking the visable obstacles on the rooftop into account. Then we find the affine transformation that reverts each parts of the rooftops as well as the panels to the original position.
radiation forecasting We use prophet, a powerful model for forecasting seasonal time series data for radiation prediction. Given the coordinations of the customer, we look for the corresponding historical data of monthly direct and diffuse radiation in that location from the Deutscher Wetterdienst dataset, and fit a forecasting model on the fly. Then we show the user the recent trend of the solar radiation in the neighborhood area.
energy production approximation With the solar panel organization plan and the radiation information, we then provide the user with a dashboard that shows the amount of energy that can be produced within a given time slot and how much profit the customer should make when following the installation plan. The energy production is estimated by the solar route within the given period as well as the orientation and the available area of the rooftop.
Challenges we ran into
It is hard to find open-source rooftop dataset with segmentation; the way to place the panel on the rooftop to maximise the available area is also a challenging problem. The prophet model is hard to tune, especially when the data we get is sparse and we also have to limit the size of the dataset for it to be deployable with streamlit.
Accomplishments that we're proud of
We manage to deploy the website with streamlit and it is working pretty good, the visualization is clear and intuitive, also the interface is user-friendly. Apart from that, our solution is powered with the SOTA instance segmentation model, which makes the result very convincing, and shortens the user waiting time.
What we learned
Data engineering wise, we learnt about how we can finetune models on raw dataset; front-end wise, we start from scratch and learnt to deploy a web page with streamlit in two days.
What's next for OpenSolar
A great feature to have would be to look for the most promising region in Germany for solar panel installation, taking weather, density of buildings and transporation into account. Hopefully we will implement it soon in the future.
Log in or sign up for Devpost to join the conversation.