Forum

Author Topic: Regression in Pointcloud 3DTiles tileset data  (Read 3557 times)

EE

  • Newbie
  • *
  • Posts: 26
    • View Profile
Regression in Pointcloud 3DTiles tileset data
« on: October 11, 2021, 03:39:01 PM »
When updating from 1.6.3 to 1.7.5 we noticed the following regression, especially the height is weird.
Expected
Code: [Select]
{'Height': {'maximum': 586.442 ± 5.9e-04, 'minimum': 406.613 ± 4.1e-04},
 'Latitude': {'maximum': 0.7694819644872486 ± 7.7e-07,
              'minimum': 0.7692585288653095 ± 7.7e-07},
 'Longitude': {'maximum': -2.0872437834475623 ± 2.1e-06,
               'minimum': -2.0874694308012236 ± 2.1e-06}}
Actualy
Code: [Select]
{'Height': {'maximum': -6356138.153753753, 'minimum': -6356339.057442965},
 'Latitude': {'maximum': 1.5611652318912046, 'minimum': 1.5359569979858492},
 'Longitude': {'maximum': 1.8649031691950797, 'minimum': -3.046626475879601}}

Our flow is: importPoints, exportPoints(PointsFormatCesium)

Is there a relevant changelog available for what could affect this?

Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 15177
    • View Profile
Re: Regression in Pointcloud 3DTiles tileset data
« Reply #1 on: October 11, 2021, 05:28:41 PM »
Hello EE,

Please check, that the coordinate system is properly selected during import and export operations.

Also check, that there are no boundary shapes taken into account.
Best regards,
Alexey Pasumansky,
Agisoft LLC

EE

  • Newbie
  • *
  • Posts: 26
    • View Profile
Re: Regression in Pointcloud 3DTiles tileset data
« Reply #2 on: October 11, 2021, 05:44:04 PM »
Using the Python API, this is the code we use:
Code: [Select]
            doc = Metashape.Document()
    doc.addChunk()
    doc.chunk.crs = Metashape.CoordinateSystem("EPSG::3857")
    doc.save("PSP.psx")
    doc.chunk.importPoints(
            projected_file,
            crs=Metashape.CoordinateSystem("EPSG::3857"),
        )
        doc.chunk.exportPoints(
            os.path.abspath(output_path),
            format=Metashape.PointsFormat.PointsFormatCesium,
        )

Is there anything that should be changed between 1.6 and 1.7?

I am not sure how to check the boundary shapes

Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 15177
    • View Profile
Re: Regression in Pointcloud 3DTiles tileset data
« Reply #3 on: October 11, 2021, 08:11:06 PM »
Hello Evert,

Could you please check, if setting WGS84 coordinate system for Cesium export resolves the problem:

Code: [Select]
chunk.exportPoints(os.path.abspath(output_path), format=Metashape.PointsFormatCesium, crs=Metashape.CoordinateSystem('EPSG::4326'))
Best regards,
Alexey Pasumansky,
Agisoft LLC

EE

  • Newbie
  • *
  • Posts: 26
    • View Profile
Re: Regression in Pointcloud 3DTiles tileset data
« Reply #4 on: October 11, 2021, 08:23:46 PM »
That does indeed seem to change the behaviour.
The values look similar (not exactly, few meters shift)
Code: [Select]
{'Height': {'maximum': 588.2065221817237, 'minimum': 411.24811327206055},
 'Latitude': {'maximum': 0.7694814403213569, 'minimum': 0.769259291829557},
 'Longitude': {'maximum': -2.08724332318532, 'minimum': -2.087468395182987}}

I thought Cesium was in ECEF and not 4326?