Dude, Where's My Model?

Workflow:

  1. Create model in RC via photogrammetry
  2. Export model as .obj from RC
  3. Export point cloud (.las) from RC
  4. Clean & segment point cloud in CloudCompare
  5. Create mesh surface in CloudCompare
  6. Export mesh .obj from CloudCompare, overwriting .obj that was exported from RC
  7. Import CloudCompare mesh .obj into RC

The imported model isn’t there. There’s nothing.

If my workflow is incorrect, please advise.

Hello @UAV_Data_Capt
I can see that your model is georeferenced. What were your export settings? Have you checked the coordinates in CloudCompare?
It looks like the model is imported, but I suppose it is too far away from the grid. Are you using the same coordinate system for export and import?
Why are you overwriting the exported OBJ? When you check the RCINFO file, what does it say?

It is definitely something with the coordinate systems and I do suspect it probably falls more to the side of CloudCompare than Reality Capture but I thought I would try here.

When I export from RC:

  • Coordinate System: Project output (EPSG 6491; MA State Plane)
  • Transformation Preset: Default

When importing the mesh model into RC:

  • Coordinate System: Project output (EPSG 6491; MA State Plane)
  • Import Coordinate System: EPSG 6491; MA State Plane
  • Transformation Preset: Default

So I’m maintaining the coordinate system between exports and imports.

I’m overwriting the .obj file that I first exported from RC since I was hoping that referencing the RCINFO file would help place it in the right spot. I did this after my attempts at saving a new .obj file from CC had the same results.

There are two attributes of CC that I think may be messing this up:

  1. CloudCompare is “unit-less”, so when you open a file that is in meters, 1m will read “1.0” and if you open a file that has used ft it will also read “1.0” when you measure 1’ ft, and
  2. When importing CC will transform the origin of your dataset so it is closer to the origin. Now, CC does promise to undo that transformation when you export, but since I’m converting the point cloud to a mesh, I’m wondering if it is forgetting to do this…

I guess just isolating the diagnosis and determining which system is causing this is what I’m looking for. Since the coordinate systems I’m using are consistent in RC, I think I’m going to have to explore this on the CloudCompare side of the coin.

You can check the coordinates of the model in CloudCompare.
I would compare the LAS imported one and then with re-imported OBJ.

Yeah, even when I manually input global shift I’m getting the same result. I’ll have to ping the CloudCompare forum and see if I can find someone who can dumb it down enough for me to understand what is going on.

One thing I don’t have a full grasp on in RC is the Transformation Presets and I can’t really find much about them.

OK
I’ve just tested your workflow and the imported model is where it should be in RealityCapture.
I’ve imported LAS file into CloudCompare with the Global shift and this one was implemented also for the exported OBJ (I re-imported it back and I was asked again about the shift).
So I suppose there will be some other issue. Is the issue also happening after the application reset?
How are you exporting the model from CloudCompare? Are you using the save option? Have you checked if the CloudCompare’s coordinates are proper there?

The transformation preset will change the scene and normal transformations to be accepted with the selected application (RealityCapture Help).

Did you manually enter it or did you just click ‘ok’?

I’m not sure what is going on, to be honest. I uninstalled CloudCompare then reinstalled the latest version from the website.

Yes, simply “Save” and selecting the .obj file format.

I’ve checked the shift in each entities’ properties, and they’re exactly where the shift window said they would be when I opened the file.

I’m going to reinstall Reality Capture and start over with a new RC project. I’ve tried everything, I’ve even messed around with a uniform scale across all 3 planes to see if the model was being imported either really small or really big, but nothing has worked.

Knowing that you were able to import it using the workflow I described is good. At least I know my logic is sound. As for fixing this…not sure, it’s like the model gets into the project but visibility is disabled or something.

UPDATE

So I ended up reinstalling both pieces of software, and then I created a new Reality Capture project and followed my workflows that I listed in the original post. The ONLY difference in the parameters/variables that I witnessed was when importing the .las into CloudCompare the global shift values made much more sense.

Previously it was shifting it only ~6m and ~45m along the x,y axis, respecively, which seemed weird to me because I knew normally for my region these are in the 800K m and 300K m.

When I reimported the .obj mesh into RC, it was exactly where it was supposed to be.

I’d like to keep this thread open as I continue forward with a couple more projects in the next few days. I’m going to repeat this workflow and try to identify any “do’s/don’ts” for anyone wanting to explore this.