Explorable 3D Hyperspectral Models from Multi-Angle Gimballed LWIR Pushbroom Imagery
Highlights
- Co-registering gimballed pushbroom hyperspectral imagery with RGB frame camera data enables 3D reconstruction using commercial photogrammetric software.
- A texture-to-image mapping algorithm preserves the link between 3D model coordinates and original hyperspectral pixels, enabling retrieval of multi-angle spectra (8–50 viewing angles) for any point on the reconstructed model.
- Explorable 3D hyperspectral models allow for interactive analysis of how long-wave infrared spectral signatures vary with viewing angle, supporting material identification for non-Lambertian surfaces where single-angle observations may be insufficient.
- The workflow bridges the gap between specialized hyperspectral sensors and widely available photogrammetry tools, making multi-angle LWIR remote sensing more accessible for applications such as chemical detection, geological mapping, and environmental monitoring.
Abstract
1. Introduction
2. Data
3. Methods
- (1)
- Images from both hyperspectral sensors, side 1 and side 2, were mosaicked to a single image to improve spatial resolution. The images have a constant 15-pixel overlap in the x-direction, but their vertical alignment varies with the viewing angle. We attempted to co-register them automatically, but due to the small overlap, some images failed to co-register. As a result, we resorted to manual registration, in which the operator must select the vertical offset for each image pair (106 in total).
- (2)
- We selected the images from the visible-light cameras that were roughly synchronized in time with the hyperspectral images. Since precise timestamps are not available for the visible-light images, but the visible-light camera starts and stops imaging at approximately the beginning and the end of the hyperspectral image acquisition sequence in the batch, for each hyperspectral image at position within a batch, the corresponding visible-light image index, , was determined bywhere and are the total number of visible-light and hyperspectral images acquired in the batch, respectively.This gave us approximate corresponding visible-light images, created at approximately the same time as the hyperspectral images. The full-size visible images were subset to the coordinates (upper left corner x, y and lower right corner x, y) [700:100] and [1300:900], approximately matching the extent of the hyperspectral images.
- (3)
- Hyperspectral image mosaics were automatically co-registered with the visible image subsets. We used the “MatchAnything” deep learning image registration model [21]. The MatchAnything deep learning model was selected for image co-registration after traditional methods (SIFT/SURF and ENVI’s automatic registration workflow) failed due to our images’ small spatial footprint and cross-modality appearance differences. MatchAnything is built upon two detector-free architectures: ROMA, which uses DINOv2 features with transformer-based dense matching, and ELoFTR, which employs a coarse-to-fine strategy with attention mechanisms. The model was pre-trained on diverse datasets (MegaDepth, ScanNet++, BlendedMVS, DL3DV, SA-1B, Google Landmark) using both multi-view geometry and synthetic cross-modal pairs (visible–thermal, visible–depth, day–night), enabling it to learn fundamental structural correspondences rather than appearance-based features. This approach achieved a significant improvement over baseline methods on cross-modal benchmarks and demonstrated strong generalizability across unseen multi-modal registration tasks. This makes this model well suited for our geospatial imagery, where conventional correspondence detection methods are failing. The model parameters used to run the registration process are listed in Table 1.
- (4)
- Now we have co-registered hyperspectral image mosaics. Because they have frame-camera-conforming geometry, 3D models can be created directly from these images using photogrammetry. Using image mosaics facilitates co-registration between visible-light and hyperspectral images by expanding the image area. However, it also makes it harder to create texture-to-image mappings that link (x, y) coordinates to the source hyperspectral image (x, y) because of the overlap within the mosaic. To unambiguously create the mappings, we have co-registered original hyperspectral images (from side 1 and side 2 separately) to the registered image mosaics. We have used the same image registration settings in MatchAnything as before. The homography matrices that describe the mappings of the source line scanner image to the registered mosaic image were preserved. This allows us to map texture pixels to the original hyperspectral images when building the model from the registered images.
- (5)
- At this step, we could build models either directly from hyperspectral images, registered single-side images (s1 or s2), or from visible-light images. In our experiments, the best camera alignment is achieved when building the model from visible-light images. After that, camera alignment parameters can be reused to facilitate image matching.The following models from different imagery sources were created:
- A model from visible-light images, then re-textured using the co-registered hyperspectral images.
- A model from registered mosaiced hyperspectral images. This works to some extent, but the camera alignment is not as good as that of the visible-light images.
- A model from the registered single-sided images. This method performs poorly, with significant issues in camera alignment.
- Models are created from mosaics and single registered images using the exported camera alignment from the visible-light model. Transferring the camera parameters from the visible-light project significantly improves the effectiveness of the tie-point search. By reusing the camera orientations, we could build reasonably accurate models from the “single-side” hyperspectral images and mosaics. The geometry of the model built from the registered mosaics appears to be better (with no false bridges between buildings), whereas using the single-sided registered hyperspectral images results in a rougher building geometry.
- (6)
- Models were exported in OBJ format for use in an interactive web-based viewer. Also, a mapping linking a texture x, y coordinate to the source hyperspectral image name and x, y coordinates was created using the procedure explained below.
3.1. Creating a Mapping Between Texture (x, y) Coordinates and Source File (x, y) Coordinates
| Algorithm 1: Texture-to-image mapping |
| Input: 3D model M with faces F, cameras C, texture size T Output: Mapping records R 1: for each face f ∈ F do 2: Extract texture coordinates (u1,v1), (u2,v2), (u3,v3) 3: Extract 3D coordinates V1, V2, V3 4: Apply model transform if present 5: visible_cameras ← ∅ 6: for each camera c ∈ C do 7: Project V1, V2, V3 → I1, I2, I3 using c.project() 8: if all Iᵢ within image bounds then 9: d ← distance (c.position, center (V1, V2, V3)) 10: visible_cameras ← visible_cameras ∪ {(c, I1, I2, I3, d)} 11: end if 12: end for 13: for each (c, I1, I2, I3, d) ∈ visible_cameras do 14: for each pixel (x, y) in texture triangle do 15: (u, v, w) ← barycentric ((x, y), texture_coords) 16: if u, v, w ≥ 0 then 17: (img_x, img_y) ← u·I1 + v·I2 + w·I3 18: R ← R ∪ {(x, y, c.filename, img_x, img_y, d)} 19: end if 20: end for 21: end for 22: end for |
3.2. HDF5 Storage Structure
3.3. Backend for a Web Application
3.4. Spectral Preprocessing and Library Matching for Material Identification
4. Results
- (1)
- A hyperspectral model (further referred to as HS) was created from the hyperspectral image data converted to RGB composite images consisting of bands 194, 126, 23 using the Agisoft Metashape Professional (v. 2.2.0) software [20].
- (2)
- An RGB model (further referred to as RGB) was created using the imagery from the CorvusEye 1500CM camera pointed at the center of the PSU campus (Old Main building).
- (3)
- An aiming camera model (further referred to as AIM) was created using visible-light imagery from the aiming camera mounted on the same gimballed platform as the Blue Heron hyperspectral sensor. In this model, full-sized (1920 × 1080) images were used.
- (4)
- A LiDAR model was created by subsetting the extent of the area of interest, consisting of Walker, Deike, ARL, parts of Westgate, and Hoisler buildings from the original LiDAR scanning LAS file 23001935.las. The data was retrieved from the Pennsylvania Spatial Data Access portal (PASDA) [19], and the model was built using Poisson reconstruction in the CloudCompare 2.13.2 Kharkiv software [26].
- (5)
- A model from the subsets of the images of the RGB aiming camera (referred to as VIS-COREG). This model was built from the subsets of RGB images. The extent of the subsets is roughly equivalent to the extents of the s1 and s2 hyperspectral mosaics by width and about 2× the height. We ensure that the RGB subset fully encompasses each mosaic extent.
- (6)
- A model from the Blue Heron hyperspectral images (referred to as HS-COREG). Images from both subsensors (side 1 and side 2) were mosaicked together and referenced to subsets of the aiming camera images to correct for geometry. Then, the S1 images were referenced to the referenced mosaics. Camera orientation was imported from the VIS-COREG project to facilitate the search for the tie points.
- (1)
- To build RGB texture on HS model: Export HS model—co-register with RGB model—import to RGB project—build texture—export model with RGB texture—apply reverse registration to match exported model with RGB texture with HS.
- (2)
- To build HS texture on RGB model: Export RGB model—co-register with HS model—import to HS project—build texture—export model with HS texture—apply reverse registration to match exported model with RGB texture with HS.
4.1. Image Alignment
4.2. Visual Assessment of the Resulting 3D Models
4.3. Qualitative Comparison of Model Reconstruction with Non-Photogrammetric Methods
4.4. Quantitative Assessment of Different Models’ Geometric Reconstruction Accuracy
4.5. Material Identification Using Spectral Signatures Captured in Multi-Angle Imagery Collection
5. Discussion
5.1. Interpretation of Geometric Reconstruction Accuracy
5.2. Multi-Angle Spectral Classification
5.3. Strengths and Implications
5.4. Limitations and Sources of Uncertainty
6. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- Golosov, N.; Cervone, G. Integrating Thermal Infrared Imaging and Weather Data for Short-Term Prediction of Building Envelope Thermal Appearance. Remote Sens. 2024, 16, 3981. [Google Scholar] [CrossRef]
- Golosov, N.; Cervone, G.; Salvador, M. Quantifying Emissivity Uncertainty in Multi-Angle Long-Wave Infrared Hyperspectral Data. Remote Sens. 2025, 17, 2823. [Google Scholar] [CrossRef]
- Liang, J.; Zia, A.; Zhou, J.; Sirault, X. 3D Plant Modelling via Hyperspectral Imaging. In Proceedings of the IEEE International Conference on Computer Vision Workshops, Sydney, Australia, 1–8 December 2013; pp. 172–177. [Google Scholar]
- Zia, A.; Liang, J.; Zhou, J.; Gao, Y. 3D Reconstruction from Hyperspectral Images. In Proceedings of the 2015 IEEE Winter Conference on Applications of Computer Vision; IEEE: New York, NY, USA, 2015; pp. 318–325. [Google Scholar]
- Mäkeläinen, A.; Saari, H.; Hippi, I.; Sarkeala, J.; Soukkamäki, J. 2D Hyperspectral Frame Imager Camera Data in Photogrammetric Mosaicking. Int. Arch. Photogramm. Remote Sens. Spat. Inf. Sci. 2013, 40, 263–267. [Google Scholar] [CrossRef]
- Markelin, L.; Honkavaara, E.; Näsi, R.; Nurminen, K.; Hakala, T. Geometric Processing Workflow for Vertical and Oblique Hyperspectral Frame Images Collected Using UAV. Int. Arch. Photogramm. Remote Sens. Spat. Inf. Sci. 2014, 40, 205–210. [Google Scholar] [CrossRef]
- Edelman, G.J.; Aalders, M.C. Photogrammetry Using Visible, Infrared, Hyperspectral and Thermal Imaging of Crime Scenes. Forensic Sci. Int. 2018, 292, 181–189. [Google Scholar] [CrossRef] [PubMed]
- Jurado, J.M.; Pádua, L.; Hruška, J.; Feito, F.R.; Sousa, J.J. An Efficient Method for Generating UAV-Based Hyperspectral Mosaics Using Push-Broom Sensors. IEEE J. Sel. Top. Appl. Earth Obs. Remote Sens. 2021, 14, 6515–6531. [Google Scholar]
- Kirsch, M.; Lorenz, S.; Zimmermann, R.; Tusa, L.; Möckel, R.; Hödl, P.; Booysen, R.; Khodadadzadeh, M.; Gloaguen, R. Integration of Terrestrial and Drone-Borne Hyperspectral and Photogrammetric Sensing Methods for Exploration Mapping and Mining Monitoring. Remote Sens. 2018, 10, 1366. [Google Scholar] [CrossRef]
- Salehi, S.; Lorenz, S.; Vest Sørensen, E.; Zimmermann, R.; Fensholt, R.; Henning Heincke, B.; Kirsch, M.; Gloaguen, R. Integration of Vessel-Based Hyperspectral Scanning and 3D-Photogrammetry for Mobile Mapping of Steep Coastal Cliffs in the Arctic. Remote Sens. 2018, 10, 175. [Google Scholar] [CrossRef]
- Ferrera, M.; Arnaubec, A.; Istenič, K.; Gracias, N.; Bajjouk, T. Hyperspectral 3D Mapping of Underwater Environments. In Proceedings of the IEEE/CVF International Conference on Computer Vision, Montreal, QC, Canada, 11–17 October 2021; pp. 3703–3712. [Google Scholar]
- Al-Khafaji, S.L.; Zhou, J.; Zia, A.; Liew, A.W.-C. Spectral-Spatial Scale Invariant Feature Transform for Hyperspectral Images. IEEE Trans. Image Process. 2017, 27, 837–850. [Google Scholar] [CrossRef]
- Ahlberg, J.; Renhorn, I.G.; Chevalier, T.R.; Rydell, J.; Bergström, D. Three-Dimensional Hyperspectral Imaging Technique. In Proceedings of the Algorithms and Technologies for Multispectral, Hyperspectral, and Ultraspectral Imagery XXIII; SPIE: Nuremberg, Germany, 2017; Volume 10198, pp. 44–53. [Google Scholar]
- Aasen, H.; Honkavaara, E.; Lucieer, A.; Zarco-Tejada, P.J. Quantitative Remote Sensing at Ultra-High Resolution with UAV Spectroscopy: A Review of Sensor Technology, Measurement Procedures, and Data Correction Workflows. Remote Sens. 2018, 10, 1091. [Google Scholar] [CrossRef]
- Kurz, T.H.; Buckley, S.J. A Review of Hyperspectral Imaging in Close Range Applications. Int. Arch. Photogramm. Remote Sens. Spat. Inf. Sci. 2016, 41, 865. [Google Scholar] [CrossRef]
- Phuc Truong, T.; Yamaguchi, M.; Mori, S.; Nozick, V.; Saito, H. Registration of RGB and Thermal Point Clouds Generated by Structure from Motion. In Proceedings of the IEEE International Conference on Computer Vision Workshops, Venice, Italy, 22–29 October 2017; pp. 419–427. [Google Scholar]
- Molnár, A.; Lovas, I.; Domozi, Z. Practical Application Possibilities for 3D Models Using Low-Resolution Thermal Images. Acta Polytech. Hung. 2021, 18, 199–212. [Google Scholar] [CrossRef]
- van Eekeren, A.W.; van Huis, J.R.; Eendebak, P.T.; Baan, J. Vehicle Tracking in Wide Area Motion Imagery from an Airborne Platform. In Proceedings of the Electro-Optical and Infrared Systems: Technology and Applications XII; and Quantum Information Science and Technology; SPIE: Nuremberg, Germany, 2015; Volume 9648, pp. 114–122. [Google Scholar]
- Pennsylvania Spatial Data Access|Full Metadata. Available online: https://www.pasda.psu.edu/uci/FullMetadataDisplay.aspx?file=PSU_OPP_LIDAR2019.xml (accessed on 10 December 2025).
- Agisoft LLC. Agisoft Metashape Professional; Agisoft LLC: Saint Petersburg, Russia, 2024. [Google Scholar]
- He, X.; Yu, H.; Peng, S.; Tan, D.; Shen, Z.; Bao, H.; Zhou, X. Matchanything: Universal Cross-Modality Image Matching with Large-Scale Pre-Training. arXiv 2025, arXiv:2501.07556. [Google Scholar]
- Young, S.J.; Johnson, B.R.; Hackwell, J.A. An In-scene Method for Atmospheric Compensation of Thermal Hyperspectral Data. J. Geophys. Res. Atmos. 2002, 107, ACH-14. [Google Scholar] [CrossRef]
- Hook, S.J.; Gabell, A.R.; Green, A.A.; Kealy, P.S. A Comparison of Techniques for Extracting Emissivity Information from Thermal Infrared Data for Geologic Studies. Remote Sens. Environ. 1992, 42, 123–135. [Google Scholar] [CrossRef]
- Meerdink, S.K.; Hook, S.J.; Roberts, D.A.; Abbott, E.A. The ECOSTRESS Spectral Library Version 1.0. Remote Sens. Environ. 2019, 230, 111196. [Google Scholar] [CrossRef]
- Yuhas, R.H.; Goetz, A.F.; Boardman, J.W. Discrimination among Semi-Arid Landscape Endmembers Using the Spectral Angle Mapper (SAM) Algorithm. In Proceedings of the JPL, Summaries of the Third Annual JPL Airborne Geoscience Workshop. Volume 1: AVIRIS Workshop, Pasadena, CA, USA, 1–5 June 1992. [Google Scholar]
- CloudCompare Team. CloudCompare; CloudCompare Team: Paris, France, 2024. [Google Scholar]
- Wang, J.; Chen, M.; Karaev, N.; Vedaldi, A.; Rupprecht, C.; Novotny, D. Vggt: Visual Geometry Grounded Transformer. In Proceedings of the Computer Vision and Pattern Recognition Conference, Nashville, TN, USA, 11–15 June 2025; pp. 5294–5306. [Google Scholar]
- Müller, T.; Evans, A.; Schied, C.; Keller, A. Instant Neural Graphics Primitives with a Multiresolution Hash Encoding. ACM Trans. Graph. (TOG) 2022, 41, 1–15. [Google Scholar] [CrossRef]

















| Parameter | Value | Description |
|---|---|---|
| match_threshold | 0.1 | Minimum matching confidence threshold |
| extract_max_keypoints | 1000 | Maximum number of keypoints to extract |
| keypoint_threshold | 0.015 | Keypoint detection sensitivity threshold |
| key | matchanything_roma | Feature matching algorithm |
| ransac_method | CV2_USAC_MAGSAC | RANSAC outlier rejection method |
| ransac_reproj_threshold | 8 | Reprojection error threshold (pixels) |
| ransac_confidence | 0.999 | Required confidence level |
| ransac_max_iter | 10,000 | Maximum RANSAC iterations |
| choice_geometry_type | Homography | Geometric transformation model |
| force_resize | False | Image resizing flag |
| api_name | /run_matching | API endpoint identifier |
| Field Name | Data Type | Description |
|---|---|---|
| batch_id | uint32 | Batch identifier |
| image_number | uint16 | Image sequence number |
| image_x | uint16 | X coordinate in source image |
| image_y | uint16 | Y coordinate in the source image |
| camera_distance | float32 | Camera-to-face distance (m) |
| Array Name | Dimensions | Description |
|---|---|---|
| coords | N × 2 (uint16) | Unique texture coordinate pairs (x, y) |
| start_idx | N (uint64) | Starting index in the records dataset |
| count | N (uint32) | Number of records per coordinate |
| Dataset | Type/Dimensions | Description |
|---|---|---|
| /{batch}_{file}/data | H × W × B (float32) | Hyperspectral cube (gzip level 6) |
| /{batch}_{file}/angle | scalar (float32) | Gimbal elevation angle (degrees) |
| /{batch}_{file}/shape | 3 (int32) | Cube dimensions [H, W, B] |
| Model | Vertices | Triangles | MAE | RMSE | Std Dev | 90th %ile | 95th %ile | Mean Signed Dist |
|---|---|---|---|---|---|---|---|---|
| LiDAR (GT) | 17,056 | 33,383 | 0 | 0 | 0 | 0 | 0 | 0 |
| HS | 12,218 | 23,853 | 18.221 | 23.898 | 15.462 | 38.335 | 46.163 | 1.240 |
| RGB | 4679 | 9080 | 7.331 | 9.380 | 5.852 | 14.127 | 17.159 | 3.704 |
| AIM | 12,731 | 21,598 | 3.305 | 4.806 | 3.489 | 4.643 | 6.474 | 0.793 |
| HS-COREG | 10,785 | 21,187 | 5.222 | 6.999 | 4.660 | 9.856 | 14.076 | 0.944 |
| VIS-COREG | 2744 | 5265 | 3.692 | 4.945 | 3.289 | 6.043 | 7.989 | 0.856 |
| Model | Points Above GT | Points Below GT | Mean Bias |
|---|---|---|---|
| HS | 6467 (52.9%) | 5751 (47.1%) | 1.240 |
| RGB | 3370 (72.0%) | 1309 (28.0%) | 3.704 |
| AIM | 7573 (59.5%) | 5158 (40.5%) | 0.793 |
| HS-COREG | 5583 (51.8%) | 5202 (48.2%) | 0.944 |
| VIS-COREG | 1532 (55.8%) | 1212 (44.2%) | 0.856 |
| Model | MAE | RMSE | Median | Std Dev | P90 | P95 | Hausdorff |
|---|---|---|---|---|---|---|---|
| HS | 18.221 | 23.897 | 14.102 | 15.462 | 38.335 | 46.163 | 148.662 |
| RGB | 7.331 | 9.380 | 5.616 | 5.851 | 14.127 | 17.159 | 47.167 |
| AIM | 3.305 | 4.806 | 2.705 | 3.489 | 4.643 | 6.474 | 37.923 |
| HS-COREG | 5.222 | 6.999 | 3.699 | 4.660 | 9.856 | 14.076 | 60.478 |
| VIS-COREG | 3.692 | 4.945 | 2.953 | 3.289 | 6.043 | 7.989 | 39.121 |
| Model | MAE Reduction (%) | RMSE Reduction (%) | P90 Reduction (%) | Std Dev (m) | Mean Signed Dist (m) | Multi-Angle Spectral Retrieval |
|---|---|---|---|---|---|---|
| HS (baseline) | - | - | - | 15.46 | +1.24 | Yes |
| RGB | 59.8 | 60.7 | 63.2 | 5.85 | 3.7 | No |
| AIM | 81.9 | 79.9 | 87.9 | 3.49 | 0.79 | No |
| HS-COREG | 71.3 | 70.7 | 74.3 | 4.66 | 0.94 | Yes |
| VIS-COREG | 79.7 | 79.3 | 84.2 | 3.29 | 0.86 | Yes |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2026 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license.
Share and Cite
Golosov, N.; Cervone, G.; Salvador, M. Explorable 3D Hyperspectral Models from Multi-Angle Gimballed LWIR Pushbroom Imagery. Remote Sens. 2026, 18, 781. https://doi.org/10.3390/rs18050781
Golosov N, Cervone G, Salvador M. Explorable 3D Hyperspectral Models from Multi-Angle Gimballed LWIR Pushbroom Imagery. Remote Sensing. 2026; 18(5):781. https://doi.org/10.3390/rs18050781
Chicago/Turabian StyleGolosov, Nikolay, Guido Cervone, and Mark Salvador. 2026. "Explorable 3D Hyperspectral Models from Multi-Angle Gimballed LWIR Pushbroom Imagery" Remote Sensing 18, no. 5: 781. https://doi.org/10.3390/rs18050781
APA StyleGolosov, N., Cervone, G., & Salvador, M. (2026). Explorable 3D Hyperspectral Models from Multi-Angle Gimballed LWIR Pushbroom Imagery. Remote Sensing, 18(5), 781. https://doi.org/10.3390/rs18050781

