Best Settings for Low LUX IMX462
-
- wdrmode :If your scene is not a wide dynamic scene, without strong contrast between light and dark, it is recommended to turn it off.
- denoise : If your scene has no fast moving objects, it is recommended to keep the default noise reduction intensity.
- agc : In a dark environment, a higher agc setting can cause a larger gain value of the sensor, bringing stronger brightness and higher noise. Choose according to your actual test situation, it is not recommended to set too large.
- lowlight: If you can tolerate automatic frame rate reduction in dark environments, then lowlight can dramatically improve exposure times in dark environments and significantly improve image quality.
- mshutter :This is a manual mode, are you sure you need it?
-
@veye_xumm Thank you, that was helpful. Maybe I have a problem with my configuration or the preview method that I am using to display does not use the configurations becuase I dont see much of a difference for denoise, AGC, and lowlight regardless of the settings I use. Do I need to move to the v4l2 driver?
-
@picantepeperoni
The image effect has nothing to do with the use of legacy mode or v4l2mode.
You can upload a shot of the picture. -
@veye_xumm I can take pictures of my monitor but they will look exactly the same after changing the IO configuraitons. Is there a functionality to display the IO configurations and sensor attributes over the camera feed? For example, can I see the current AGC and shutter speed on the camera output?
-
@picantepeperoni With all the parameters modified using the veye_mipi_i2c.sh script, have you tried re-reading them after the changes?
Is your shooting scene a dark scene? -
@veye_xumm Hello, I think I have solved the problem by switching to the v4l2 driver and running the command :
gst-launch-1.0 v4l2src io-mode=dmabuf device=/dev/video0 ! "video/x-raw,format=(string)UYVY, width=(int)1920, height=(int)1080,framerate=(fraction)30/1" ! v4l2convert capture-io-mode=dmabuf output-io-mode=dmabuf ! autovideosink sync=false -v
However, I have a new problem where I am only getting 5 FPS to be displayed trough the HDMI out. I beleive that this is related to the debayer/conversion from Raw UYVY format to the HDMI output as when I run the FPS test:
gst-launch-1.0 v4l2src device=/dev/video0 ! "video/x-raw,format=(string)UYVY, width=(int)1920, height=(int)1080,framerate=(fraction)30/1" ! videoconvert ! fpsdisplaysink video-sink=fakesink -v
It will show a solid 30 FPS. Also when I run the command for including the timestamp, the framerate is much better, probably because it is down converting to a 640x360 format.
As such, is there some way that I can efficiecntly convert and output the Camera feed to HDMI?
Thank you,
-
@picantepeperoni
It is recommended that you use legacy mode, which uses the GPU to transfer the input image directly to the HDMI output, without taking up CPU resources. -
@veye_xumm Okay, I think I fixed the issue with low FPS by running it through multiple threads, I seem to be getting a pretty consistent high framerate and low latency.
However, I wanted to know how I can issue commands to the i2c when using the v4l2 driver. Does it have to go thorugh the gstreamer commands or is that something that I issue like normal through the legacy interface? Do I still need to have i2c enabled thorugh Raspi-config?
Thank you,
-
@picantepeperoni said in Best Settings for Low LUX IMX462:
Does it have to go thorugh the gstreamer commands or is that something that I issue like normal through the legacy interface? Do I still need to have i2c enabled thorugh Raspi-config?
You can implement it by writing registers directly through i2c scripts like legacy mode. Yes.
-
@veye_xumm Hello, I have been able to successfully set the i2c commands and the camera module is working great. Is there any way to increase the FPS that is supported by the module as it appears the module will only output a maximim of 30fps?
Additionally, I would like to know if there are alternative colorspace modes other than UYVY that would provide faster latency and allow for faster processing on my raspberry pi device.
-
@picantepeperoni said in Best Settings for Low LUX IMX462:
it appears the module will only output a maximim of 30fps?
Sorry, the maximum performance of this module is 1080p@30fps
@picantepeperoni said in Best Settings for Low LUX IMX462:
Additionally, I would like to know if there are alternative colorspace modes other than UYVY that would provide faster latency and allow for faster processing on my raspberry pi device.
Sorry,It just output UYVY for now.
-
@veye_xumm That is very helpful, thank you. Do you happen to know the device's inherent expected latency? Additionally, are there any options to adjust the camera module's data transmission rate either through frequency or blocksize?
-
@picantepeperoni Hello, I would like to follow up on this topic, any thoughts on the device's expected latency from when light hits the sensor to when its communicated to the host device through the CSI connector? I would expect it to be somewhere around 1-2ms but was wiondering if the processign that is occuring on the PCB is expected to take longer before it runs through the PCB due to buffering and/or processing.
-
@picantepeperoni Sorry, I didn't respond to your previous post in a timely manner. The VEYE series cameras have a relatively large delay because they have an ISP module built in. Some steps in the ISP module require buffering of the entire frame, such as HDR and denoise.
-
@veye_xumm If I was to disable the HDR and denoise features, would that reduce the ISP delay?
-
@picantepeperoni We have had customers attempt similar approaches, but the results were not significant.