Page 1 of 1

ray-count information without normalisation

Posted: Sun May 19, 2019 1:42 am
by signifiicant
My use case: I research the light usage of living organisms. I have a decent amount of experience quantifying visible light radiation (specifically photosynthetically available radiation - PAR) across the surface (both incident and reflected light) of complex shapes/living tissue arrangements. However, I am very new to 3D modelling. Luxcorerender however could prove to be very useful for my work!!!

I have started using photogrammetry to produce 3D models of my organisms of interest. For now I am looking for a way to correlate the mean number of rays per pixel of a render of a small area of the mesh (imaging the camera zoomed into a target area) versus what I have measured in real life using a micro PAR-meter. My approach (in blender) is to set up a scene with the sun in the right position in the sky relative to the mesh, create around 10 individual cameras throughout the scene that span exposed (high-light) to occluded (low-light) areas, switch between each camera, using luxcore to render each image for an equal amount of time (or could be equal number of samples or noise threshold) so that image pixels and their values can be directly compared. I was then thinking to output the raycount per pixel AOV, and compare the mean number of rays per pixel of each render, first to one another, and then second, to the measured real-life PAR values. However I now realise that raycount is normalised between 0 and 1, which is not useful for comparisons of raycounts between individual renders. I would need the non-normalised values.

Do you have any advice of how I might go about either retrieving the non-normalised ray counts of each render, or some other solution that would allow me to directly compare between renders as described above?

Thank you for your incredible work with LuxCoreRender!

Re: ray-count information without normalisation

Posted: Sun May 19, 2019 8:29 am
by B.Y.O.B.
About the problem at hand: normalization is done by the Blender-LuxCore-interchange code, so if you export your scene to standalone LuxCore files and render with luxcoreui or luxcoreconsole, you will get an EXR with the raw raycount data.

However, the raycount is purely a renderer statistic. A higher raycount does not mean that those surfaces receive more light, it only means that the renderer had to spend more rays to sample the specific surface and its shaders.

What you might be looking for is the Irradiance AOV.
These threads might interest you:
viewtopic.php?f=4&t=802#p8405
viewtopic.php?f=4&t=374&p=4134&hilit=irradiance#p4133

Re: ray-count information without normalisation

Posted: Sun May 19, 2019 9:47 pm
by signifiicant
Thank you B.Y.O.B for the fast reply!

The irradiance AOV looks very promising. I tested exporting the irradiance AOV as a HDR file in blendluxcore and it still appears that the values are bound between 0 and 1, but am I correct in thinking that these are not normalised and irradiance could in principal be compared between renders of different areas of the mesh?

Second - I am still interested in the Raycount AOV, but I am having trouble exporting my blend scene to .scn and .cfg files to test in luxcoreui. In fact, I cannot see the option use the filexporter engine at all. Could you please point me in the right direction?

Appreciate your help and all the hours you have put into this!

Re: ray-count information without normalisation

Posted: Sun May 19, 2019 10:08 pm
by B.Y.O.B.
signifiicant wrote: Sun May 19, 2019 9:47 pm The irradiance AOV looks very promising. I tested exporting the irradiance AOV as a HDR file in blendluxcore and it still appears that the values are bound between 0 and 1
Irradiance is not clamped or tonemapped. Check your light sources, maybe you have only one light with brightness of 1?
signifiicant wrote: Sun May 19, 2019 9:47 pm Second - I am still interested in the Raycount AOV, but I am having trouble exporting my blend scene to .scn and .cfg files to test in luxcoreui. In fact, I cannot see the option use the filexporter engine at all. Could you please point me in the right direction?
It's a bit unconventional: You have to enable the checkbox labeled "Only write LuxCore scene" in the config panel. For text files you also have to switch from binary to text in the dropdown beside the checkbox.
Then you press F12 and the export is done.