IMX582
IMX582 is a rolling shutter color sensor.Spec | Value |
---|---|
Shutter type | rolling |
Type | color |
Sensor size | 1/2" ( 12.7mm) |
Pixel size | 0.8 μm |
RVC2 supported resolutions
Resolution name | Resolution size | Max FPS | MIPI lanes | Mode |
---|---|---|---|---|
THE_48_MP | 5312x6000 | 10 | 4 | Full resolution and maps to THE_5312X6000 (not supported) |
THE_5312X6000 | 5312x6000 | 10 | 4 | Width is cropped - QBC remosaic’ed mode |
THE_4000X3000 | 4000x3000 | 30 | 4 | Full FOV - QBC Binning |
THE_4_K | 3840x2160 | 42 | 4 | QBC Binning (to 4000x3000) then Cropping |
RVC2 driver limits
Sensor driver adds support for that sensor to the RVC2. Here are RVC2 driver specifications for this sensorPart of the ISP (Image Signal Processor) is also the 3A (Auto Exposure, Auto White Balance, Auto Focus) algorithm. They are enabled by default, but you can also disable them and manually set the exposure, gain, white balance, etc.Manual limits
- Min FPS: 1.67
- Min exposure time: 1 μs
- Max exposure time:
1 / CAM_FPS
seconds. Eg. 33ms @ 30FPS
Auto limits
- Min exposure time: 101 μs
- Max exposure time: Depends on the Anti-Banding mode:
- Anti-Banding mode OFF: 33 ms
- Anti-Banding mode 50Hz: 30 ms
- Anti-Banding mode 60Hz: 25 ms
Py
1cam = pipeline.create(dai.node.ColorCamera) # Or MonoCamera
2# "OFF", "MAINS_50_HZ", or "MAINS_60_HZ"
3cam.initialControl.setAntiBandingMode(dai.CameraControl.AntiBandingMode.OFF)
IMX582 RAM consumption
At highest resolution, the IMX582 image sensor produces 32MP frames, which can consume a lot of RAM. As OAK cameras are embedded devices, they don’t have a lot of RAM to begin with. In most pipelines, even just the color camera with default pool sizes will be too large, so you need to be very cautious when it comes to RAM and we suggest reading the RAM usage documentation . For ColorCamera node, you’d likely need to change pool sizes, example here:Command Line
1cam = pipeline.create(dai.node.ColorCamera)
2cam.setResolution(dai.ColorCameraProperties.SensorResolution.THE_5312X6000) # 32MP
3# Decrease pool sizes for all outputs (raw, isp, preview, video, still):
4cam.setNumFramesPool(2,2,1,1,1)
HDR
IMX582 sensor supports on-sensor HDR, so it can be leveraged by the Robotics Vision Core 2 (RVC2) as well. In the comparison image below we are using OAK-1 Max. HDR support is currently on branch camera_controls_misc and will be merged to main soon.HDR image comparison in different exposure settings:For the HDR image above we used the following argument for cam_test.py:Python
1python3 cam_test.py -cams rgb,c -rs -cres 12mp -fps 10 -misc hdr-exposure-ratio=4 hdr-local-tone-weight=75