[Pix4DMapper] [Desktop] Texture Artifacts Spherical Images

Hi there!

I’m playing with some equirectangular images and got this weird stripes on the model texture.

It looks like there’s a problem in the UVW mapping, 

What could be done to avoid this type of error?

Thank you

 

I did some further testing, instead of using all ~200 frames, I enabled only ~10 cameras for texturing phase (group2) - results are similar.

Maybe if I could provide my manual UVW unwrap it would solve the issue.

What do you think could be the problem?

Thanks for posting the screenshots. 

What camera are you using? 

Please share the quality report and log file of the project through a file sharing service (Google Drive, Dropbox,…), maybe I can find something in there that helps. 

Also, just to be on the safe side, what GPU are you using and what driver version is installed? Sometimes this can create display issues. 

Hi Pierangelo, thanks for reaching out.

I’m using a Ricoh Theta S, firmware 1.0 for the 201 frames extraction. Individual images taken with the camera were not used in this project since they could not be aligned - will explore this later.

Here is the quality report, had to take several screenshots instead of downloading the PDF, sorry:

https://drive.google.com/file/d/0B2PuaVWJbVM_YTVCRGZDTGwwN1k/view?usp=sharing

Log file can be viewed here:

https://drive.google.com/file/d/0B2PuaVWJbVM_eWtoZjlHaTFaSTQ/view?usp=sharing

My computer is an AMD FX-8230E, 8Gb RAM, NVidia GTX 970, driver version 385.69 of 20/09/2017, Windows 10.

Trying to isolate the problem, did 3 other tests:

  1. Used the same dataset with exact same parameters on another machine: intel i5-3210M, 8Gb RAM, NVidia GT 650M, driver 358.50, Windows 8.

  2. Inverted all parameters on the 2nd Step processing options (what was ticket I unticket and the opposite) - tentative to find if any of the options was causing the issue.

  3. Tried a different 360 video dataset with the Ricoh Theta, also auto-extracting frames.

All tests yelded the exact same stripes bug on the textures.

On previous tests you guys didn’t notice any issue? Do you have a demo?

Tried now using only the individual photographs, not frames extracted from video. Got same result.

My naive perception is that it seems like it’s not the input files, or the parameters, or the machine being used, but the core algorithm related to the spherical texture mapping itself.

 

I’m using pix4d in trial mode for 3 days and already eager to substitute my photogrammetry pipeline to use your solution :slight_smile:

Thanks for posting updates on your latest tests!

I had a look at the quality report and log file. Here are my comments: 

  1. GPU driver
    A new driver version is available, I’d suggest to update: 387.92 (Release Date: 2017.10.9), here is the link for the download: http://www.nvidia.com/download/driverResults.aspx/125516/en-us

  2. Matching between images and image resolution

The amount of matches between the images is pretty low (a median at 228): 

In order to increase this and thereby to improve the reconstruction I’d suggest to switch from extracting frames from a video to acquiring still images. This should significantly increase the resolution of the images and should improve the matching between the images.

Based on the specs of the Ricoh Theta S found here https://theta360.com/en/about/theta/s.html, the resolutions are: 

  • Still image resolution L: 5376 x 2688, M: 2048 x 1024
  • Video resolution/frame rate/bit rate L: 1920 x 1080/30 fps/16 Mbps
    M: 1280 x 720/15 fps/6 Mbps

The images in your project seem to be at 1920x960, so slightly lower resolution than the ones listed above. In your last comment you mentioned that you are using individual photographs instead of frames…so maybe you’ve already tried that. Could you make a dataset with still images available? I’d like to process it on my side. 

  1. RAM
    The log file shows that only a small amount of RAM is available for the software. Restarting and stopping other software can help free up some RAM for Pix4D software. 

[2017.10.15 15:57:37][80%RAM][37%CPU][Info]: Total RAM = 8GB, available RAM = 2GB

  1. Example dataset

Here is a spherical example dataset, which was made with the NCTech iStar, but it’s good to get used to spherical projects: 
https://support.pix4d.com/hc/en-us/articles/214580043

  1. Equirectangular format

Each manufacturer makes the transformation to the equirectangular format on his own, so there might be something there too, difficult to tell though. I’ll ask my team if they heard about anything with the Ricoh Theta S not working well. 

Keep us posted!

There is a whole of issues in this process and it starts with the data collection and includes Pix4D settings.

Pierangelo gave you some great info and if you want more direct help and access to a proper Pix4D computer…shoot me an email at Adam.Jordan@nhiae.com 

Still haven’t had time to try all those suggestions out, but will come back to you very soon. Thanks for the support so far!

Glad to help out. Let us know when you have updates!

Pierangelo,

About Ricoh Theta frames, the provided video unstitched is 1920 x 1080, but once stitched through their software it becomes equirectangular (1920 x 960), so this is not a problem.

Tried already same datasets in Agisoft without problems.

Regarding RAM, 8Gb it’s not a lot, but could manage 8 images in 10-5k

 

So I did the following:

  • Upgraded NVidia Driver to the latest.

  • Downloaded NC Tech dataset

  • Processed the input with the provided project (and settings)


Same thing, several stripes for processing 8 or even 3 images, full resolution settings.

Quality Reports attached: https://drive.google.com/drive/folders/0B2PuaVWJbVM_YmxqTnp2ejlyVk0?usp=sharing

 

Is it my machine? Can you confirm this dataset has no issues in the current software build?

Well, zero days left on the trial here!

1 Like

Francisco,

If all you want is a pretty mesh for people to look at then Pix4D isn’t your best option, I use RealityCapture for all my meshes.  If you want a fast and accurate point cloud then Pix4D is the best on the market.

I am sure others here have different opinions and have different uses for photogrammetry too.  I have tested ReCap, ContextCapture, PhotoModeler, and Agisoft in my 3D modeling work and found nothing to like about them.

Adam, only agisoft and pix4d process equirectangulars, pix4d is more accurate but has this bug I’m trying to identify the reason.

Have you tried processing the small NC Tech dataset on your machine? Do you get the same stripes output?

Would be great to have one more benchmark on this. I already tried with 2 very different computers.

Thanks

@Francisco Toledo: Well spotted! I have the same lines with version 4.0.24, but when I tried with version 3.3.29 these lines were not there. There has been some refactoring of the code and this must be a side effect. I will report this as a bug to our developers so that they can fix it. Thanks for reporting!

This probably also explains the problems you have in the original post. :) 

The 3.3.29 should be available here if you would like to try: https://cloud.pix4d.com/download/

You’re welcome Pierangelo, happy to help. I’m trying out 3.3.29 extensively and don’t see those problems anymore. I notice though that texture mapping should be highly improved yet in this use case.

If you have specific examples of texture mapping that should be improved, please share it in this post (e.g. screenshots, quality report,…). I’ll share it with the developers, so that they can take it into account. 

UPDATE : the developers have fixed the bug :tada:. The fix will be in the next Preview of 4.1. :) 

Thanks for reporting the issue! 

1 Like

Great Pierangelo!
You’re welcome.
Happy to help.
Will keep an eye for when 4.1 is released.