Raspberry Pi Camera Module 3 review – HDR, autofocus, wide angle, and NoIR camera

A few days before launching the Raspberry Pi Camera Module 3 with HDR and autofocus, Raspberry Pi Trading asked me whether I would be interested in reviewing the new modules, and sent me three samples: the standard module, the Raspberry Pi Camera Module 3 Wide, as well as the NoIR version that lacks an IR filter and is better suited for night shots.

It took a full week for DHL to send the package to my house, but I’ve now had time to review the new Raspberry Pi Camera Module 3, mostly with libcamera, but also Picamera2, focusing on the new features such as HDR, autofocus, and wide angle. I also had a quick try at the Raspberry Pi Camera Module 3 NoIR but without IR lights.

Raspberry Pi Camera Modules 3 Wide Noir

Raspberry Pi Camera Module 3 front back

Regular readers know I had already made some DIY camera mounts using empty gum bottles, and I just replaced the Lotte XYLITOL stickers with some CNXSoft stickers for this review.

Raspberry Pi Camera Module 3 review

Getting started with Raspberry Pi Camera Module 3

The first time I used the camera I had some unnecessary problems because a web search sent me to outdated documentation on Raspberry Pi dot org where you are told to enable the camera in the settings and raspi-config. The place where you need to go to for the latest documentation is Raspberry Pi dot com. I still had issues because I downloaded Raspberry Pi OS last month, and when I used libcamera-hello application to check whether the camera was detected it would just report “no camera is available”. I just had to update my image with apt, and all good.

The good news is that the Raspberry Pi camera module 3 works out of the box without any configuration. Just make sure your install the latest Raspberry Pi OS or upgrade your installation, and make sure you use the correct documentation and you are good to go.

All my three modules could be detected properly as follows:

  • Raspberry Pi Camera Module 3:
  • Raspberry Pi Camera Module 3 Wide:
  • Raspberry Pi Camera Module 3 NoIR:

Each has a different signature, so if you’re writing an application that needs to detect the camera variants that should not be a problem.

I already reported that when playing with the gum bottle mount, I had troubles with the Camera Module 3 Wide after a while as the system would return errors or show the camera is not available. I initially tried to check the FPC cable connection, but no luck, and I thought I had somehow damaged the module. But I eventually found on the camera was slightly dislodged from the connector (I took it out for the photo).

Raspberry Pi Camera Module 3 connector

Once I inserted it and press on it again, the Wide camera module worked as expected.

HDR and autofocus testing with libcamera

Let’s take some photo samples with libcamera starting with a non-HDR photo with the standard module:

Raspberry Pi Camera Module 3 no hdr
4608 x 2592 photo

Note I have to rotate the image by 180 degrees because of the way the module is mounted. You can click on the photos to see the original size (but converted to WebP for most people)

Let’s now do that with HDR:

Raspberry Pi Camera Module 3 HDR
HDR photo with 2304 x 2196 resolution

I took the photo a few hours before sunset and the difference is not dramatic, but we can better the left side of the background in the HDR photos. We do lose resolution with HDR, as while the first photo has a 4608 x 2592 resolution, the HDR one is 2304 x 2196.

Camera Module 3 Sample 9cm no hdr
Close-up sample at around 9cm from the lens

The Camera Module 3 (and the NoIR) can focus from 10 cm to infinity, and I move a subject close to the camera. I looked clear on the small HDMI screen I used, but it was about 9cm from the lens so the logo is a little blurry. We can see the background is blurry because of the focus.

I also used libcamera-vid to test autofocus while shooting a video. That’s with HDR enabled.

YouTube video player

It works reasonably fast in well-light environments even with HDR enabled. Autofocus feels a bit faster without HDR.

YouTube video player

Let’s now switch the Raspberry Pi Camera Module 3 Wide placed in about the same position as the first module.

Raspberry Pi Camera Module 3 Wide Sample No HDR
Wide camera sample

We have a greater field of view and in this particular scene the HDR comes to life as we can see some of the details under the roof of the gazebo.

Raspberry Pi Camera Module 3 Wide Sample HDR
Wide angle camera – HDR sample

I place the Linux Tux/CNXSoft logo in the same position as previously (~9cm from the lens) and we can see more of the bottle with the greater field of view, and it’s clearer since the Wide camera module can focus from 5cm to infinity.

Raspberry Pi Camera Module 3 Wide close up no hdr
Close-up sample at about 9cm from the lens

Autofocus is working relatively well in the video below.

YouTube video player

But I’d like to note something interesting which happens with both the standard and wide camera modules. In video mode, the field of view is greater when enabling HDR, while the captured zone is much smaller when HDR is disabled.

That’s probably because the resolution is set to 2304×1296 with HDR, and 1536×864 without HDR. I tried to force the resolution to 4608×2592 or 2304×1296 in non-HDR mode:

The videos themselves are recorded at 640×480 resolution:

The NoIR camera module should shine in dark scenes and at night, preferably with IR lights. I just tried it a night with a light on.

Camera Module 3 NoIR no hdr
NoIR camera module sample

I was expecting some pinkish image, so I felt like something was wrong. Switching to the standard camera module does not actually make much difference for this specific scene.

RPI Camera 3 no hdr dark scene
Standard Raspberry Pi Camera 3 sample in a dark scene

I also tried the NoIR camera during the day to make sure the camera output was different, and indeed it is, with washed-out and pink colors as expected, although not quite as pronounced as samples from the NoiR v2 camera.

Raspberry Pi Camera Module 3 NoIR day hdr
NoIR camera (day) with HDR
Raspberry Pi Camera Module 3 NoIR no hdr
NoIR camera (day) without HDR

I also tried autofocus in HDR mode with the NoIR camera module at night, and it did not work very well, as in not at all.

YouTube video player

I also had this issue during day time from time to time, and it depends on the scene and lighting conditions as well. I actually have similar issues with my DSLR camera, but I can always tap the display or switch to manual focus. It should also be possible to do so with the Camera Module 3, but it would require a touchscreen display, a rotary encoder, and implement the software to support those features.

Camera Module 3 and Picamera2

Finally, I gave a try at the Picamera2 Python camera library that was officially released last September. It relies on libcamera, so I only used it with the standard camera module to make sure the new features were properly implemented.

I used the Qt Picamera2 app, after getting it as follows

It started and I could see the camera output for both the Still Capture…

Qt Picamera2 App Still Capture

and Video tabs.

Qt Picamera2 App Video

The preview window is quite small because I’m using a 1280 x 800 HDMI display, and it would look much better on a Full HD display. You’ll also notice the message “HDR unavailable: install opencv to try it”.

Picamera2 is a Python library so so I tried to install Python OpenCV with pip:

The last command took around 1h30 to complete, and it failed due to a missing file:

I ended up spending four hours on this only to find out I should use apt instead:

It took around 2 to 3 minutes to install, and the HDR options are now showing up with the ability to select the number of HDR frames and gamma setting.

Picamera2 HDR Raspberry Pi Camera 3

The app has plenty of other options with image tuning, pan/zoom, AEC/AWB, and I also notice I could adjust the focus manually by moving a slider. But when I clicked on the “Take photo” button, my Raspberry Pi 4 froze for several long seconds (Numlock would not turn on/off), and eventually, the Qt Picamera2 app crashed. I went to check out the kernel to find out the system had run out of memory:

So besides using a Full HD display, it might be better to run the Qt app on a board with more RAM, as I’m using a Raspberry Pi 4 SBC with 1GB RAM only. I had no such problem with the command line utilities based on libcamera.

I’d like to thank Raspberry Pi Trading for sending the Camera Module 3 for review. The standard versions sell for $25, and the wide-angle modules go for $35. You’ll find them at the usual Raspberry Pi distributors.

Share this:
FacebookTwitterHacker NewsSlashdotRedditLinkedInPinterestFlipboardMeWeLineEmailShare

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK 5 ITX RK3588 mini-ITX motherboard

19 Replies to “Raspberry Pi Camera Module 3 review – HDR, autofocus, wide angle, and NoIR camera”

  1. Very through.

    Not bad for the money but they need to work on stock and price gouging far more than releasing new products at this time. Not saying stop developing them however.

  2. I wish they had a model with a switchable IR-filter instead of just models with a permant one or no filter at all. Makes them far less useful.

    1. Nobody keeps you from putting a filter wheel in front of a filterless camera. In fact, that is what many astrophotographers do.

  3. Looks quite decent. However at high resolution the JPEG compression artefacts are clearly visible on the concrete wall which looks too smoothed, and on the red helmet of the LEGO character. I used to have a low-quality digital camera based off a sensor and processor made exclusively for MJPEG, which was emitting photos with a number of simplifications which looked a bit like these (albeit at a much lower resolution). Capturing tiles on a roof was really cool, it would look like an aquarelle drawing 😉

      1. Thanks. So it might instead be that the camera is configured to strengthen sharpening. The concrete cylinder in the background should be blurred everywhere, but some areas such as the edge of the hat, are extremely sharp while other areas on the same device are almost flat.

  4. Let the hunt begin for a Camera Module 3. I am surprised to see the regular version is available in Romania already (non-wide and without NoIR). I would love to see how a Pi Zero 2 W handles the new module.

  5. I never had any luck making proper night vision shots using either esp32 or RPi no-ir cams. Images looked so bad compared to commercial webcams,
    So I ended up disassembling 20eur webcams instead of using these diy cams..

  6. not sure I like move libcamera and away from MMAL. What the point of having a GPU if it is not used for much?

    1. libcamera still uses the ISP. It’s just that now instead of being run on the GPU with closed source software, which you can’t change or adapt, it all runs entirely open source.

  7. What about frame rates? I haven’t been able to find frame rates in any documentation for the module or for the sensor.

    1. The advertised frame rates can be seen in libcamera-hello output:

      But the actual ones should be lower than that especially in low-light environments.

  8. Did you have to make any changes to get autofocus to work? I´m using libcamera-vid and have tried all the parameter I can think of (ens-position, autofocus-range etc.) but it just doesnt work.
    No matter what I do, i just can´t get a sharp image but just a blurry mess at arount 25cm where my target is at. Running it on a Raspberry Pi 3B+ if that matters.

    1. No, I did not change anything. It’s automatic. Which model do you have? It should not matter though as they have either a 5 or 10cm to infinity focus range, so at 25cm it should not matter.

      Autofocus is harder to achieve with HDR and/or low-light conditions.

      1. I have the regular module3, not the IR or anything. I´m running without an extra lens but that shouldn´t be necessary either if I´m correct? Right now I´m leaning more towards a faulty unit to be honest.

        1. Try to move the target around to see if auto focus works. If not maybe you have faulty unit. You’ll get a better chance getting an answer that solve your issue on Raspberry Pi forums.

          1. Thanks, will reach out to them and see what happens, but I have contacted the reseller as well 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *

Khadas VIM4 SBC
Khadas VIM4 SBC