PTCInc / vuforia-engine

Bug and feedback issue tracker for the Vuforia Engine SDK
https://developer.vuforia.com
20 stars 0 forks source link

ATG: Validation of the E57 file failed #20

Closed Lacreon closed 1 year ago

Lacreon commented 1 year ago

Summarize the bug: Unable to import E57 file from Leica RTC 360 to ATG.

Reproducible steps Steps to reproduce the behavior:

  1. Make scan with Leica RTC 360
  2. Follow Vuforia Scan and Export Instructions for Leica RTC 360: Export with Cyclone REGISTER 360
  3. Load e57 to ATG
  4. Click on Import or Generate
  5. Error appears: E57 processing: Validation of the E57 file failed. Check the validation report for details. Failed requirement: 'nor:normalX', 'nor:normalY', 'nor:normalZ' fields in PointRecord structure shall be defined or we need to be able to estimate the normals. To estimate normals each Data3D structure shall have associated images from exactly one scanning position through Image2D associatedData3DGuid field.
  6. Export E57 again but with Cyclone CORE and ticked options: image
  7. Load e57 to ATG
  8. Click on Import or Generate
  9. Error appears: E57 processing: Validation of the E57 file failed. Check the validation report for details. Failed requirement: E57 shall contain one or more Image2D structures that have either 'sphericalRepresentation' field or 'pinholeRepresentation' field.

Affected ATG v10.15.3.

Affected platform: Windows

Device or platform logs [ SUCCESS ] E57 shall contain one or more Data3D structures.

[ SUCCESS ] 'cartesianBounds' field in Data3D structure shall be defined.

[ SUCCESS ] 'colorLimits' field in Data3D structure shall be defined with color minimum < color maximum for all channels.

[ SUCCESS ] 'cartesianX', 'cartesianY', 'cartesianZ' fields in PointRecord structure shall be defined.

[ SUCCESS ] 'colorRed', 'colorGreen', 'colorBlue' fields in PointRecord structure shall be defined.

[ SUCCESS ] 'nor:normalX', 'nor:normalY', 'nor:normalZ' fields in PointRecord structure shall be defined or we need to be able to estimate the normals. To estimate normals each Data3D structure shall have associated images from exactly one scanning position through Image2D associatedData3DGuid field.

[ SUCCESS ] 'isColorInvalid' field in PointRecord structure must not be defined.

[ FAIL ] E57 shall contain one or more Image2D structures that have either 'sphericalRepresentation' field or 'pinholeRepresentation' field.

[ SUCCESS ] 'pose' field in Image2D structure shall be defined.

[ SUCCESS ] Spherical images shall have minimal resolution of 4096x2048 and their width = 2 * height.

[ SUCCESS ] Pinhole images shall have minimal resolution of 1024x1024.

E57 processing: Validation of the E57 file failed. Check the validation report for details.

Workaround None

Lacreon commented 1 year ago

Hi,

no this is first time i am going through this process and i was only using this version of ATG: v10.15.3.

ptc-ddowning commented 1 year ago

Hello,

Overall, it is very important that you follow the steps exactly as documented. I know that you included that you did in step #2, but it is important to understand that the Leica software is complex so any change in the workflow steps can result in a failed import.

We believe that REGISTER 360 may have added an option to unify pointclouds - be sure to unselect that for the export .

Additionally, the logging information indicates that the individual scans were merged/unified after alignment, and exported as one 'unstructured' scan. Since REGISTER 360 didn't add the normals, the ATG cannot re-create them. If you export the scan without merging them, the ATG has an internal ability to create the normals.

Lastly, the use of Cyclone Core is not recommended so please only work with REGISTER 360.

If you believe you've resolved all of the issues above, have followed our documentation exactly and the import still fails, please provide the detailed steps and settings from the REGISTER 360 export so that we can review them further.

Thank you.

ptc-ddowning commented 1 year ago

Hello,

We believe this could be a new option that needs to be unchecked during export: https://rcdocs.leica-geosystems.com/cyclone-register-360/latest/option-to-create-single-point-cloud-when-creating-

We currently recommended a similar option Create point cloud during finalized registration creation to be checked, but this may work differently in newer REGISTER 360 versions.

Thank you.

ptc-pscheper commented 1 year ago

@Lacreon Was the feedback from Dave good enough to support you in creating a successful Area Target?

Lacreon commented 1 year ago

Hello,

unfortunately, the steps described above didn't work for me. However, I have sent Dave a step-by-step video of my export process via email. I will post an update as soon as there is something new.

Thank you.

bbiaudet commented 1 year ago

Hello, I also have a problem importing a leica RTC360 scan, like you, I followed the vuforia doc but on the other hand I do not encounter the same error as you.

Affected ATG v10.15.3.

Affected platform: Windows / Mac

Device or platform logs [ SUCCESS ] E57 shall contain one or more Data3D structures. [ SUCCESS ] 'cartesianBounds' field in Data3D structure shall be defined. [ SUCCESS ] 'colorLimits' field in Data3D structure shall be defined with color minimum < color maximum for all channels. [ SUCCESS ] 'cartesianX', 'cartesianY', 'cartesianZ' fields in PointRecord structure shall be defined. [ SUCCESS ] 'colorRed', 'colorGreen', 'colorBlue' fields in PointRecord structure shall be defined. [ FAIL ] 'nor:normalX', 'nor:normalY', 'nor:normalZ' fields in PointRecord structure shall be defined or we need to be able to estimate the normals. To estimate normals each Data3D structure shall have associated images from exactly one scanning position through Image2D associatedData3DGuid field. [ SUCCESS ] 'isColorInvalid' field in PointRecord structure must not be defined. [ SUCCESS ] E57 shall contain one or more Image2D structures that have either 'sphericalRepresentation' field or 'pinholeRepresentation' field. [ SUCCESS ] 'pose' field in Image2D structure shall be defined. [ SUCCESS ] Spherical images shall have minimal resolution of 4096x2048 and their width = 2 * height. [ SUCCESS ] Pinhole images shall have minimal resolution of 1024x1024.

Lacreon commented 1 year ago

Hello bbiaudet,

it is the same error.

Export with Cyclone REGISTER 360 gives me:

[ FAIL ] 'nor:normalX', 'nor:normalY', 'nor:normalZ' fields in PointRecord structure shall be defined or we need to be able to estimate the normals. To estimate normals each Data3D structure shall have associated images from exactly one scanning position through Image2D associatedData3DGuid field.

Export with Cyclone CORE gives me:

[ FAIL ] E57 shall contain one or more Image2D structures that have either 'sphericalRepresentation' field or 'pinholeRepresentation' field.

Cyclone REGISTER 360 version: 2022.0.1

bbiaudet commented 1 year ago

Hello Lacreon,

I managed to load another scan into ATG, the first scan was with an exterior view and the second the interior of a church. So I wonder if ATG does not need a "ceiling" to generate the mapping?

ptc-ddowning commented 1 year ago

Hello @bbiaudet - This should not be the case. The scan should be agnostic towards having the ceiling as part of the scanning data. However, I will provide your recent feedback to the team.

@Lacreon & @bbiaudet - We are working to get an updated license for the latest REGISTER versions and will update our documentation accordingly. I will post an update with any immediate findings to unblock you here.

Thank you for your patience and understanding.

ptc-ddowning commented 1 year ago

@bbiaudet as we are working with a 3rd party tool, i.e REGISTER, it is most helpful to provide a detailed description of both the steps taken in addition to the error messages from the ATG, similar to @Lacreon's original post. Otherwise, we will only be guessing as to the possible source of the issue.

bbiaudet commented 1 year ago

@bbiaudet as we are working with a 3rd party tool, i.e REGISTER, it is most helpful to provide a detailed description of both the steps taken in addition to the error messages from the ATG, similar to @Lacreon's original post. Otherwise, we will only be guessing as to the possible source of the issue.

Hello Dave, what extra step do you need, because I followed the workflow followed here: https://library.vuforia.com/area-targets/leica-scans#transfer-scan

ptc-ddowning commented 1 year ago

@bbiaudet thank you for the confirmation as it is helpful.

If the team needs it, would you be willing to share the scan that failed import?

bbiaudet commented 1 year ago

Yes no problem

bbiaudet commented 1 year ago

Hello everyone,

we redid tests on our side with the RTC360 with the following workflow:

Trial 1

Trial 2

We asked leica if there was a difference between the point clouds by transferring the files to them, and they said no.

The files are available if you want to test on your side.

Good day to you

ptc-ddowning commented 1 year ago

Hello,

We've published an updated article for the Leica REGISTER 360 workflow: https://library.vuforia.com/area-targets/leica-scans

Can you please let us know if this resolves your issue?

Thank you for the continued patience.

ptc-ddowning commented 1 year ago

Closing due to lack of response. Feel free to reopen if required.