Skip to content
This repository has been archived by the owner on Jan 13, 2023. It is now read-only.

Latest commit

 

History

History

oic

Oriented Imagery Demos

360-degree Overlay

Overlay Widget (now w/ navigation and mini-map)

The panoramic image rendered using the Three.JS library and is overlayed onto the SceneView directly. Arrows are added using the SVGLoader into the ThreeJS.Scene for navigation. A mathematical formula is used to synchronise the zoom levels of the ThreeJS.Scene and the SceneView for zooming in/out.

Instructions

To use tools like Measurement and Line of Sight in Overlay Mode, you need to add a layer with 3D buildings to the Scene beforehand.

For Hong Kong, you may find 3D buildings from governmental organisations (e.g. HKMS 2.0, Geodata Store). Yet, for Macau and cities in mainland China (e.g. Shanghai in the second demo below), official data are not always available. You may find shared items on ArcGIS Online from other users, or obtain the data from OSM-Buildings. Be cautious that the coverage of OSM-Buildings is limited, and the data may have large discrepancies.

A custom ArcGIS geoprocessing toolbox (see figure below, osm_buildings_to_feature_lyr.pyt) is made using the Overpass API Interpreter to convert OSM-Buildings into extruded features. It is not possible to directly import GeoJSON from OSM-Buildings into ArcGIS Pro, because the GeoJSON format is quite unstructured. Without a fixed schema, some records probably have missing attributes. Therefore, you should use the toolbox instead. It can get attributes such as building names.

Fig. 1

The retrieved 3D models are not supposed to be used out-of-the-box. It is meant to be a base mesh that has to be double-checked and altered.

After that, an Oriented Imagery Catalogue has to be created and uploaded online. First, download and install the Oriented Imagery Management Tools for ArcGIS Pro.

Caution!

Unlike point clouds, the 3D buildings do not fit into the photo perfectly since they are low-poly polyhedra with smooth, flat surfaces. In reality, building exteriors (especially roofs) are bumpy. This explains why most 3D buildings appear shorter than those in the photo.

If extra-high accuracy is desired, use the PointCloudLayer.

Demos

Future enhancements

Calculate Intersections, Historical Panel

Image segmentation using the MaskRCNN library from arcgis.learn

The Python tool leverages the open-source MaskRCNN convolutional neural network (CNN) library bundled in the arcgis.learn Python library. The neural network is designed for image segmentation. The segmented boundaries are not neccessarily continuous, it can be partially occluded by something else.

Future enhancements

Support for irregular buildings (no longer uses extrusion, uses i3s 3DObjects instead)

Work in progress

i18n, more models

Demos