Exporting high resolution LIC

Hello,

I am trying to render a high resolution image using the LIC representation. If I export a screenshot up to the size of my working window, everything looks fine. However, if I double it, there are inconsistencies at the stitch points between the four separate rectangles the image is split into. I can see that the full image is rendered in four pieces but is there a way to make them blend seamlessly?

Exporting in other formats, e.g. ps, pdf, svg creates smaller pictures. A sample picture can be found below and if needed, I can provide the Paraview state file and the source data.


Maria

I’m afraid this is a limitation of the surfaceLIC and the way we generate high resolution images.
You are welcome to open an issue in our bugtracker.
https://gitlab.kitware.com/paraview/paraview/issues/

@Joachim_Pouderoux @Michael

Thank you for the quick reply. I posted an issue on the bugtracker and I am marking this topic as solved.

Dear Maria, one thing to add, you seem to have Contrast Enhancement enabled, which is applied per image. If you turn this off, the transitions become well less pronounced. I am using some high-res LIC from ocean data in which the images are also stitched together. With Contrast Enhancement set to Off, if is good enough for me…
Cheers, Niklas

Hi,
I’m reviving this old topic since the issue remains (tested in 5.6.0 and 5.8.1).
I have the same issue as you describe and a workaround is to main the Paraview window as large as you need to avoid resorting to making the screenshot larger than what your window provides…
Yes, I just drag, move, and resize the window and then save screenshot or animation. It is somewhat “unprofessional” but the result is much better, see attached.
Kind regards,
-Louis

PS: here are two examples, one with scaled screenshot and one with bigger window (using 5.6.0, with 5.8.1 it’s actually worst for me, the contrast becomes even more random):

1 Like

The main problem is that LIC, in it’s current implementation, is a screen based technique. We should make it a feature request, that this is upgraded, and the noise texture is computed per object, also with the orientation and size of this object. That should remedy these problems, as well as help if you animate a camera and move away/closer to a LIC surface.
Cheers, Niklas

1 Like

A workaround for the issue @Niklas mentions when saving large screenshot with upcoming 5.9 is to use the View > Preview to pick the target resolution first and then use File > Save Screenshot to save the rendering results. The new implementation of preview-mode creates an internal rendering viewport of the target resolution rather than a scaled-version. This avoids the need for tiling which is the culprit for the artifacts you’re seeing.

You can test it out using the nightly binaries.

1 Like

Thank you @utkarsh.ayachit for the hint. That is great. Another related area where I have issues with LIC is camera animation: SurfaceLIC and Camera Animation
It’s not an urgent problem, to me at least, but it prohibits using LIC for camera animation. I usually divert to bump mapping, as implemented in the embossing plugin developed by Kitware SAS in France, which is a great technique.
Thanks and Cheers, Niklas

2 Likes

By the way, the LIC plugin should become an option in the Representation next spring. https://gitlab.kitware.com/paraview/paraview/-/issues/17548.

1 Like

Hello, I was just wondering if any further work on this had been done? I’m looking to export the textures too. If not I’ll use the screen shot method and texture map in other software.

1 Like

Curious if there are any changes on this issue? I get the patchy image regardless of resolution in pvbatch. Turning off contrast enhancement doesn’t help (and makes the image impractically dark)

The workaround from @utkarsh.ayachit works well in the GUI - is there any equivalent operation for pvbatch? At the moment I cannot even get LIC to run in 5.91 (works fine in 5.7 though), so just wondering if I should invest time in figuring this out. If the workaround is GUI-only, then I’ll stick to 5.7

5.9 LIC crashes on SaveScreenshot. The output leaves me stuck on where to start.

############ ABORT #############
############ ABORT #############
############ ABORT #############
############ ABORT #############
############ ABORT #############
############ ABORT #############
############ ABORT #############
############ ABORT #############
############ ABORT #############
############ ABORT #############

application called MPI_Abort(MPI_COMM_WORLD, 607725327) - process 8
application called MPI_Abort(MPI_COMM_WORLD, 876160783) - process 9
application called MPI_Abort(MPI_COMM_WORLD, 406398735) - process 10
application called MPI_Abort(MPI_COMM_WORLD, 3745551) - process 4
application called MPI_Abort(MPI_COMM_WORLD, 1010378511) - process 5
application called MPI_Abort(MPI_COMM_WORLD, 876160783) - process 6
application called MPI_Abort(MPI_COMM_WORLD, 540616463) - process 7
application called MPI_Abort(MPI_COMM_WORLD, 272181007) - process 2
application called MPI_Abort(MPI_COMM_WORLD, 540616463) - process 3
application called MPI_Abort(MPI_COMM_WORLD, 607725327) - process 1
application called MPI_Abort(MPI_COMM_WORLD, 547956495) - process 0