Disabling Xavier NX ISP Oversharpening

hi all,

please also check you still capture oversharp images with Argus sample applications,
for example, Argus/public/samples/oneShot,
thanks

Here is a still image captured with argus_camera (denoising, EE, digital ISP gain disabled). HW setup: Jetson NX devkit, imx477 camera, Edmund Optics 4mm lens.

hello player500,

I don’t see white halo surroundings but lots of noise according to your capture results.
I’ll also arrange resources to check this from our side, thanks

Hi player500,

Share our image captured with argus_camera on r32.5.1/Nano-2GB/imx477 result for you reference.

Hello carolyuu,

here is the problem in your picture.

glow

Hi,

I have tried argus oneshot and obtained the following images (With a Xavier NX and IMX296 sensor). Note how the outdoor image still shows oversharpening (trees and the roof have a white halo).

quick questions,
are you working with sensor vendors to have ISP tuning parameter applied? could you please contact with them to figure out what’s the settings being used.
thanks

hi all,

I’ve upload a pre-built binary based-on r32.5.1 to disable ISP sharpness function. Topic175200_May27_libnvscf.zip (2.7 MB)
could you please have a try to replace /usr/lib/aarch64-linux-gnu/tegra/libnvscf.so with the attachment.
please also share the results for reference,
thanks

Hi @JerryChang thanks for the update.

I logged in into my NX, and replaced the file you mentioned with your attachement.

However after a reboot, I get the following error:

Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, execute:557 No cameras available

The pipeline I used was:

gst-launch-1.0 nvarguscamerasrc ispdigitalgainrange=“1 1” gainrange=“1 1” aeantibanding=0 wbmode=0 ee-mode=0 tnr-mode=0 ! ‘video/x-raw(memory:NVMM), format=(string)NV12, width=(int)1440, height=(int)1080’ ! nvvidconv ! ximagesink -e

BTW I am currently using Jetpack 4.4

P.S concerning your previous question, no I am not currently working with sensor vendors for ISP tuning.

I see, the pre-built binary I’ve just attach is based-on JetPack-4.5.1 / l4t-r32.5.1
here’s another binary based-on JetPack-4.4 / l4t-r32.4.3 for your verification. Topic175200_JP44_libnvscf.zip (2.7 MB)

note,
it just a workaround to disable ISP sharpness function.
please do have verification and share us the results, so we could have investigation this further.
thanks

Hello @JerryChang

This time, I was able to capture footage (See attached screenshots). However I do not see any visual changes regarding the oversharpening. In the screenshots the trees and the roof both show white halos.


To capture this footage I used:

gst-launch-1.0 nvarguscamerasrc ispdigitalgainrange=“1 1” gainrange=“1 1” aeantibanding=0 wbmode=0 ee-mode=0 tnr-mode=0 ! “video/x-raw(memory:NVMM),width=1440,height=1080,framerate=60/1,format=NV12” ! omxh265enc control-rate=0 qp-range=0,1:0,1:0,1 quant-i-frames=0 quant-p-frames=0 temporal-tradeoff=0 preset_level=3 ! matroskamux ! filesink location=test.mkv

Please let me know if there is anything else I could try/test on my side.

hello alexisguiter,

could you please try again with the attach pre-built binary,
Topic175200_May31_libnvscf.zip (2.7 MB)
thanks

Hello @JerryChang
Can you please make the same file (to disable ISP sharpness) for Jetson Nano 2Gb (Jetpack 4.5.1)?

they’re sharing the same camera library, please download the attachment in comment #20 for testing.

Hello @JerryChang

I have tested a gstreamer pipeline with the file you gave for Jetpack 4.4. As the attached screenshot shows, the sharpening effect is reduced. Is there a way we could control the degree/amount of sharpening? Instead of it simply being on/off as is currently the case.

Again for reference the Gstreamer pipeline I used was as follows:

gst-launch-1.0 nvarguscamerasrc ispdigitalgainrange=“1 1” gainrange=“1 1” aeantibanding=0 wbmode=0 ee-mode=0 tnr-mode=0 ! “video/x-raw(memory:NVMM),width=1440,height=1080,framerate=60/1,format=NV12” ! omxh265enc control-rate=0 qp-range=0,1:0,1:0,1 quant-i-frames=0 quant-p-frames=0 temporal-tradeoff=0 preset_level=3 ! matroskamux ! filesink location=test.mkv

hello alexisguiter,

it’s tuning process to adjust the degree/amount of sharpening.
please also refer to Camera Architecture Stack, there’s tuning block if you going through nvarguscamerasrc.

since you’re currently not working with sensor vendors for ISP tuning, sensor took the default sharpness settings and that’s why you see oversharp results.

so,
please either use the workaround to disable ISP sharpness function, or, please contact with sensor vendor to complete tuning process.
thanks

Hello @JerryChang
I tried this and got error:
argus_camera: error while loading shared libraries: libnvcapture.so: cannot open shared object file: No such file or directory

(gst-launch-1.0:7212): GStreamer-WARNING **: 08:28:58.979: Failed to load plugin ‘/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvarguscamerasrc.so’: libnvcapture.so: cannot open shared object file: No such file or directory

hello prapor,

since this is topic for Xavier NX platform. please initial another new thread to have better supports.
thank

@JerryChang

Thank you for your help. I will use the file you gave for now, and will decide later on if I need ISP tuning.