Grainy image rendered with Jetson-Utils

Hi,

I encountered some weird behavior that I can’t really explain. I have an IMX477 camera connected over CSI. My application, that uses the Jetson-utils library, captures frames from the camera, overlays graphics on top and then saves the resulting video file.

The behavior that I’m seeing is that, when the lighting is good and the camera captures good, clear frames, the overlay looks good as well. Very sharp, good resultion. When the frames captured from the camera are in low-light, not only the camera picture itself is very very grainy and low-res, but the overlay applied on is equally worse. I have a hunch that it’s somehow related to the rendering process, but can’t see any setting that would cause this.

Thank you!

Hi,
It looks like the camera sensor generates noisy frames in the condition. Please try gst-launch-1.0 command and see if you observe the issue:

$ gst-launch-1.0 nvarguscamerasrc ! nvvidconv ! video/x-raw,format=I420 ! xvimagesink sync=0
1 Like

The problem is not that, but that the overlay ends up being noisy as well. I’ve attached two screenshots, used as source two video files: one grainy and one with a perfect image. The difference is very visible.

@dusty_nv any ideas? It’s using the Jetson Utils wrapper.


@alexx88 are you viewing that over an encoded network stream or video file? My guess is that the random noise is adding compression artifacts (you could try changing the bitrate if that makes a difference), or in the alpha blending of the overlay since the background is somewhat random.

1 Like

Thank you, @dusty_nv ! I think that’s it. I’m viewing the output as a file.

I think my next step will be to try and get the camera to output a darker picture, rather than trying to light it up and ending up with grainy output.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.