RPI v2 Camera showing white pixels

I have used RPI v2 camera on Jetson Nano without any issues.
When I attached the same camera on Xavier NX, I see some pixels that are just white, looks opposite to a dead pixel. Some pixels twinkle, on and off. I’ve obtained a different camera and I see the same effect. When I connect these cameras to Jetson Nano, these effects disappear.

I am using the latest SD Card Images for both Nano and Xavier NX.

Does anybody have a clue as to how to remove these white pixels on Xavier NX?

hello sjg23ie,

please refer to Issues with the CSI cameras attached to the Xavier NX - #28 by JerryChang,
there’s nvodm pre-built binary which include some tuning parameters for Raspberry Pi v2 cameras (IMX219) as an example.
thanks

Hi:
I have the following equipment with me:
Jetson Nano: x1
Jetson Xavier NX: x2
Jetson AGX Xavier: x1 (but this is not relevant for this thread)
RPI v2 cameras: x2

Both of the RPI v2 cameras work without any white pixels on Nano.
Both cameras exhibit white pixels on both Xavier NX’s.

Per your referred thread, I’ve replaced the library file you mentioned (libnvodm_imager.so).

The new library is better than the library included with the JetPack 4.4. But I still see white pixels on both Xavier NX’s. The number of white/twinkling pixels have reduced.
Camera 1: Reduced from about 4 dozens to about 2 dozens.
Camera 2: Reduced from about 2 dozens to about 1 dozen

The white pixels seem to be differently located for different cameras but consistent for each camera across cold and warm boot, physical insertion/removals.

The new library still has twinkling pixels. When twinkling pixels go off, they show correct color for that pixel position.
The blinking rate for twinkling pixels seem to be different from each other.

So you guys seem to be doing something that is in the correct direction, but not yet complete. Is there any further information on what to tune and/or how to tune the parameters?

I noticed these errors while booting on Xavier NX:

imx219 9-0010: imx219_board_setup: error during i2c read probe (-121)
imx219 9-0010: board setup failed

Does this have anything to do with the white pixel?

Seems the second camera failed to be probed.
If you didn’t had a 2nd camera plugged in, this would be expected.

Ah. Indeed. I only have 1 camera hooked up.
Thanks,
SJ

hello sjg23ie,

you may ignore that 2nd camera probing error since you’d only one IMX219 connected. due to Xavier NX is by default define two IMX219 camera devices in the sensor device tree.
please also check camera sensor device tree sources of Xavier NX for reference,
for example,
$L4T_Sources/r32.4.3/Linux_for_Tegra/source/public/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-camera-rbpcv2-imx219.dtsi

hello sjg23ie,

actually, it’s an issue from camera hardware modules.
we’ve notice that IMX219 (raspberry Pi version) has unusually high noise level with bad pixels. you can also seen different noisy capture results on different IMX219 camera modules.
for example,

camera image quality tuning specific to each sensor modules, and it always an extra efforts.
there’re some explanations you may also check in discussion thread, Topic 139727. the attach binary adjust noise reduction tuning settings for Xavier NX/ IMX219.

we don’t provide image tuning support via forum discussion threads.
you may share your actual use-case and also the IQ expectation, please contact with nvidia sales team if you would like dedicated tuning supports.
thanks

Hi:
I would like to accept your explanation that the IMX219 has a high noise level which causes the white and twinkling pixels.

But the thing is that I don’t see such effects on Jetson Nano sitting next to Xavier NX using the same exact cameras. I disconnect the NX and move the camera over to Nano. I don’t see the white pixels. I move the same camera back over to NX. The white pixels are back. Then I move the camera back to Nano, the white pixels are no where. Even in with no lights other than monitors.

Well, a correction. The noisy camera in NX has no white pixel in Nano even when all the lights are off. But the quieter camera in NX has 1 (one) white pixel in Nano. So I don’t think you can blame the issue to the sensor module since Nano seems to be dealing with it quite well.

If NX and Nano share the same code, then I would suspect the hardware on NX would be the cause of the issue. The second NX exhibits the identical behavior. So the cause doesn’t appear to be isolated to the specific NX device.

Also, captured images in NX have saturation problem. That is the color resolution seems to be much lower in NX than Nano. This effect is also identical in the second NX. I’m using identical code for both NX and Nano.

hello sjg23ie,

that is incorrect, Nano and NX did not sharing the same code.
as I mentioned in post #9, it’s attach binary to adjust noise reduction tuning settings. this modification specific to Xavier NX/ IMX219.

there are differences in camera hardware, drivers are different for each Jetson platforms, you may access Technical Reference Manuals from download center, please check VI and NVCSI chapters for more details.

please share your actual use-case and also the IQ expectation, and contact with nvidia sales team for image quality tuning supports.
thanks

Hi:

I have applied the updated library to address the noise reduction. Even though it made the situation better it didn’t solve the problem.

Based on this thread as well as others in this forum, my opinion is that Xavier NX is not yet ready for the prime time. At least with IMX219.

I have returned both of NX’s. I’ll continue my work with Nano, AGX and GPU based Ubuntu machines for now. When things look better in the future, I’ll explore the possibility with NX again.

Wishing the best for the NX team.
SJ

hello sjg23ie,

FYI,
we’re not having IQ changes for Xavier NX/ IMX219 currently.
please expect next public release version (i.e. l4t-r32.5) will include the changes (i.e. Topic 139727) to adjust the noise reduction tuning settings for Xavier NX/ IMX219.

please contact with nvidia sales team if there’s request for IQ tuning supports.
thanks

Hello @JerryChang ,

Thanks for your help. I tried with the new .so file, but there are still some white dots that appear and it looks like a camera quality expected from a 5$ camera.

I am wondering why is my resolution this bad compared to Paul McWhorter who hasn’t mentioned fixing the tuning parameters?

Thanks,
Daniel

Seems scene lightening was low, so autogain increased and lead to more noise.
Is it the same when lightening more ?

hello danaiedaniel,

is this an image captured under low-light environment?
due to the low-light environment, it’ll configure higher sensor gain to make active pixels to have more light sensitive. however, increasing sensor gain always increases image noises.
thanks

Yes, thanks for the replies. Here is a picture under the light. I guess that’s not too bad for a 35$ CAD Mipi csi-2 camera. Any suggestions for a better resolution global shutter camera supported by nvidia for an ok price? I am looking to do depth sensing for a drone (not sure if this camera will do). Thanks in advance.

hello imagidan,

here’s a list of cameras, which supported by Jetson Camera Partners on the Jetson platform.
please contact with them for your camera solutions,
thanks