OSM Buildings: Fixing Incorrect Building Height Display
Hey guys! Today, we're diving into a common issue with OSM Buildings: incorrect building heights being displayed. It’s super important to get this right for accurate 3D visualizations and data representation. We'll break down a specific example, discuss why these errors happen, and explore how we can fix them together.
Identifying the Problem: A Case Study
Let's look at a real-world example. We have a building located at https://www.openstreetmap.org/relation/414072/. According to the data, this building has three main levels plus two roof levels. However, when visualized on OSM Buildings (https://osmbuildings.org/?lat=49.19795&lon=16.60409&zoom=19.4&tilt=30), the height is displayed as only 2 levels. This discrepancy is a clear indication of an issue that needs our attention.
As you can see from the image, the building clearly has more than two levels. To double-check, we can even refer to external sources like Wikimedia Commons (https://commons.wikimedia.org/wiki/File:Moravsk%C3%A1_zemsk%C3%A1_sn%C4%9Bmovna_(dnes_%C3%9Astavn%C3%AD_soud_%C4%8CR)_(02).jpg), which provides a visual confirmation of the building’s structure. So, what's causing this mismatch? Let’s dig deeper.
Why Do These Errors Happen?
There are several reasons why building heights might be displayed incorrectly on OSM Buildings. Understanding these causes is the first step in preventing and fixing these issues. Here are some common culprits:
- Incorrect Tagging: The most frequent cause is simply incorrect or incomplete tagging on OpenStreetMap (OSM). The
height=*tag, which specifies the building's total height in meters, or thebuilding:levels=*tag, which indicates the number of floors, might be missing, inaccurate, or conflicting. For example, if thebuilding:levelstag is set to 2, OSM Buildings will render the building as two stories, regardless of the actual number of levels. It's crucial to ensure that these tags are accurate and consistent with the building's actual structure. - Outdated Data: OSM data is constantly evolving as contributors add and update information. Sometimes, the OSM Buildings data might not be fully synchronized with the latest changes on OSM. This delay can lead to discrepancies, especially if recent edits haven't been processed yet. Patience is key here; sometimes, the issue resolves itself after a data refresh. However, if the problem persists, it's worth investigating further.
- Rendering Issues: Although less common, there might be occasional rendering glitches or bugs within the OSM Buildings platform itself. These could be due to software updates, server issues, or specific browser incompatibilities. While this is usually temporary, it's something to consider if you've ruled out other causes.
- Interpretation of Roof Levels: Roof levels can be tricky. Sometimes, what appears to be a roof level might actually be a habitable floor, especially in older buildings with mansard roofs or similar designs. The way these levels are tagged can significantly impact how they're rendered. If a roof level is tagged as a regular floor, it will be included in the height calculation. If it's tagged as a roof level, it might be treated differently, potentially leading to errors in the displayed height. It's important to carefully assess the building's architecture and tag roof levels appropriately.
- Complex Building Structures: Buildings with complex geometries, such as those with varying heights or multiple sections, can be challenging to map accurately. If different parts of the building have different heights, it's important to tag each section correctly to ensure accurate rendering. Overlapping or incorrectly connected geometries can also lead to rendering issues. When mapping complex structures, it's often helpful to break them down into simpler parts and tag each part individually.
How to Fix Incorrect Building Heights
Okay, so we've identified the problem and explored the potential causes. Now, let's get to the solution: how do we fix these incorrect building heights on OSM Buildings? Here’s a step-by-step guide:
- Inspect the OSM Data: The first step is always to examine the OpenStreetMap data for the building. Go to the OSM page for the building (https://www.openstreetmap.org/relation/414072/ in our example) and look at the tags. Pay close attention to the
height=*andbuilding:levels=*tags. Are they present? Are they accurate? Do they conflict with each other? This initial inspection will often reveal the source of the error. - Verify the Building's Structure: Next, verify the building's actual height and number of levels. Use any available resources, such as street-level imagery (Google Street View, Mapillary), local knowledge, or even architectural plans if you have access to them. Cross-referencing multiple sources helps ensure accuracy. For our example, the Wikimedia Commons image provides a clear visual confirmation of the building's levels.
- Correct the OSM Tags: If you find incorrect or missing tags, edit the OSM data to correct them. You'll need an OSM account to do this. Use an OSM editor like iD or JOSM to modify the tags. Make sure the
height=*tag reflects the building's total height in meters, and thebuilding:levels=*tag accurately represents the number of floors. If there are roof levels, consider using theroof:levels=*tag or other appropriate tagging schemes to differentiate them from regular floors. Remember to add a clear and concise edit comment explaining your changes. For instance, “Corrected building height and levels based on visual inspection and external sources.” - Consider Roof Levels Carefully: When dealing with roof levels, think critically about how they should be tagged. If a roof level is habitable or has significant vertical space, it might be appropriate to include it in the
building:levels=*count. However, if it's primarily a roof structure, consider using specific roof-related tags. Consistency in tagging is key to ensuring accurate rendering across different platforms. - Update Height Value: Be sure that the height value you entered is properly formatted. This includes using decimals when necessary, and using a period (.) rather than a comma (,).
- Check for Conflicts: Sometimes, multiple tags can conflict with each other. For example, if the
height=*tag suggests a different number of levels than thebuilding:levels=*tag, OSM Buildings might struggle to render the building correctly. Resolve any conflicts by ensuring that the tags are consistent and accurate. If necessary, remove redundant or conflicting tags. - Wait for the Update: After you've made the necessary changes to the OSM data, it might take some time for OSM Buildings to reflect those changes. The platform typically updates its data periodically, so be patient. Check back after a few hours or a day to see if the issue has been resolved. In many cases, the correction will propagate automatically.
- Report Persistent Issues: If the problem persists even after correcting the OSM data and waiting for an update, consider reporting the issue to the OSM Buildings community or developers. They might be able to identify underlying rendering issues or provide further guidance. Providing detailed information about the building, the specific problem, and the steps you've taken to address it will help them investigate the issue effectively.
- Use the Notes Feature: If you're unsure about how to tag a particular building or if you encounter a complex situation, use the OSM Notes feature to ask for help from other mappers. This allows you to leave a comment directly on the map, describing the issue and seeking input from the community. Collaborative mapping is a cornerstone of OSM, and leveraging the knowledge of others can be invaluable.
Best Practices for Accurate Building Heights
To minimize the occurrence of these issues in the future, let's talk about some best practices for mapping building heights accurately:
- Use Reliable Sources: Always base your height and level information on reliable sources. Visual inspection, street-level imagery, and local knowledge are excellent starting points. Architectural plans or official building records can provide even more accurate data. Avoid relying on guesswork or assumptions.
- Be Consistent with Tagging: Adopt a consistent tagging scheme for building heights and levels. This will help ensure that OSM Buildings and other platforms render buildings accurately. Stick to established conventions and guidelines to avoid ambiguity.
- Double-Check Your Work: Before submitting your edits, always double-check your work. Review the tags you've added or modified to ensure they are accurate and consistent. A quick review can catch errors before they propagate.
- Stay Updated on Tagging Conventions: OSM tagging conventions evolve over time. Stay informed about the latest recommendations and best practices for tagging building heights and other attributes. This will help you map more effectively and contribute high-quality data.
- Collaborate with Others: Engage with the OSM community and collaborate with other mappers. Sharing knowledge and experience can help improve the overall quality of OSM data. If you're unsure about something, don't hesitate to ask for help or feedback.
Conclusion
So, there you have it, guys! Fixing incorrect building heights on OSM Buildings is a collaborative effort that involves careful observation, accurate tagging, and a bit of patience. By understanding the common causes of these errors and following the steps outlined above, we can ensure that OSM Buildings provides a more accurate and visually appealing representation of the world around us. Remember, every contribution counts, and even small corrections can make a big difference in the quality of OSM data. Keep mapping, keep improving, and let's build a better OpenStreetMap together!