Select to view content in your preferred language

Oriented Imagery Incorrect 360 image orientation and camera locations

275
3
05-19-2024 10:32 PM
Labels (1)
HabtamneshGoite
New Contributor II

I am trying to Add 360 images to Oriented Imagery Catalog I created in ArcGIS Pro. The images don’t have metadata attached so I used frame table which contains the following fields.

HabtamneshGoite_1-1716182376663.png

I used default values for Terrestrial 360 Camera parameters such as Camera Heading, Peach, Roll and distances. After running the tool, the Exposure Points are filled with new values of  Camera Heading, Peach, Roll, Horizontal and Vertical Field Of view..... 

HabtamneshGoite_2-1716182421714.png

when Selection OI location , the 360 image opens and camera locations are displayed. But the images are tilted about 90 degrees and the image stiches are completely wrong leading to a loss of a small part of the image(see screenshot below).  Camera locations are floating to the sky instead of the direction of the movement( images are taken from a camera mounted on top of a car). 

HabtamneshGoite_0-1716182355102.png

Has anyone faced a problem like this? Could the problem be the orientation values ( Omega Phi Kappa) I used? 

 

0 Kudos
3 Replies
vickyduran_AerialSphere
New Contributor III

Hi @HabtamneshGoite 


I see you selected the appropriate type of OIC and using a frame table is the correct approach. I would recommend using a few different fields on the frame table:

vickyduran_AerialSphere_4-1716311139479.png

  • AvgHtAG—Average height (meters) above ground of the camera.

  • Image—is the reference to the image. It should be the url location where the image is stored in a server.

  • AcquisitionDate (optional)—date only or may also include time of day when the image was captured.

  • CamOri —Detailed camera orientation, stored as a string. This is a very important field for this application. Here is a screenshot from the Oriented Imagery Catalog Schema document explaining each parameter in the string.

    vickyduran_AerialSphere_8-1716311243841.png
  • SRS —Spatial Reference System code used in the project. 

Note that once your catalog is published, you might need to adjust the Y,P,R parameters on the CamOri field to improve the viewshed alignment based on the data from the camera.

You can expand the way you interact with 360 Imagery by trying Experience Builder along with our XPGeo 3DViewer (Custom Oriented Imagery Widget). This widget allows you to overlay the 360 Image over an AGOL 3D Scene, allowing you to have the best of both technologies, a realistic image of the world with the power of 3D interactive web scenes.

Here is a link to our HowTo repository explaining how to add elements to layers on the fly with our custom widget for Experience Builder

https://aerialsphere.atlassian.net/wiki/spaces/AGD/pages/1673330689/Adding+elements+to+Feature+Layer...

Hope this helps

 

HabtamneshGoite
New Contributor II

Thank you for taking the time to write a detailed answer. 

I have been reading the documentations available. So The table I created used the schema for FrameTable. All Image Name and directory ( my images are saved locally) field names are correctly done well as XYZ and SRS. Hence, All the Exposure points are on the right place on the map and I am able to view each image in the Oriented Imagery Viewer. 

CamOri — this is the confusing part. In Frame table Schema i found ,the orientation is separate Omega Phi Kappa Fields. However in the Orientation Imagery Table it is listed as CameraOrientation and as a Pipe Seperated string. When i created Pipe separated string field and CameraOrientation as field name the values were not used in the calculation (as heading, Pitch and roll contained default values). Same is true for CamOri. On the other hand when i used Seperate Omega Phi Kappa Fields (instead of the PS string), New heading, Pitch and roll values are calculated despite putting default values in the parameter. 

HabtamneshGoite_3-1716364140665.png

The problem is mainly the orientation. Most notably the calculated CameraRoll values are way off! Docs say it should range (-90, 90). but the values I have range (-180,180)

HabtamneshGoite_4-1716365400132.png

Any ideas why this could happen?

 

 

 


 

 

0 Kudos
vickyduran_AerialSphere
New Contributor III

Hi @HabtamneshGoite 

In my experience with terrestrial 360 images in OICs, the values for CamHeading, CamPitch, CamRoll, HFOV, and VFOV are the same for all images, here is an example:

vickyduran_AerialSphere_2-1716414697186.png

What changes is the addition of the CamOri field, which contains the orientation data, here is a closer look of this field

vickyduran_AerialSphere_1-1716414443808.png

Hope this helps,