I'm creating a custom scanning solution for iOS and using RealityKit Object Capture PhotogrammetrySession API to build a 3D model. I'm finding the data I'm sending to it is ignoring the depth and not building the model to scale. The documentation is a little light on how to format the depth so I'm wondering if someone could take a look at some example files I send to the PhotogrammetrySession. Would you be able to tell me what I'm not doing correctly?
https://drive.google.com/file/d/1-GoeR_KMhX_i7-y8M8ElDRrySasOdoHy/view?usp=sharing
Thank you!
Post
Replies
Boosts
Views
Activity
I'm making an app that captures data using ARKit and will ultimately send the images+depth+gravity to an Object Capture Photogrammetry agent. I need to use the depth data and produce a model with correct scale, so from what I understand I need to send the depth file + set proper exif data in the image. Since I'm getting the images+depth from ARKit I'll need to set the exif data manually before saving the images. Unfortunately the documentation on this is a bit light, so would you be able to let me know what exif data needs to be set in order for the Photogrammetry to be able to create the model with proper scale?
If I try and set my Photogrammetry agent with manual metadata like this:
var sample = PhotogrammetrySample(id: id, image: image)
var dict:[ String: Any ] = [:]
dict["FocalLength"] = 23.551325
dict["PixelWidth"] = 1920
dict["PixelHeight"] = 1440
sample.metadata = dict
I get the following error in the output and depth is ignored:
[Photogrammetry] Can't use FocalLenIn35mmFilm to produce FocalLengthInPixel! Punting...
I need to save certain frames' capturedImage to heic file but also include proper exif metadata. Right now when I save the file there is no exif data defined. How do I go about adding this?
Looking at Apple's CaptureSample app I can see the exif metadata is included in the images captured but isn't through arkit.
Is there a way to get exif data while arkit is running?
Thank you!
I'm trying to gather some depth data in order to send off to Object Capture for processing. What depth file formats are supported? I can see from the capture sample code they are written in 32bit tiff grayscale converting depth to disparity. Are there any other formats supported? Unfortunately the documentation is very light on this. Do you know if 16bit png would be supported?
Some more detail on this would go a long way, thank you.