New autofocus camera modules!

Today, we’re happy to announce the launch of Raspberry Pi Camera Module 3. Four different variants of Camera Module 3, in fact, starting at the familiar price of $25. We’ve produced Camera Modules with both visible-light and infrared-sensitive options, and with either a standard or wide field of view (FoV). And in place of the fixed-focus optics of its predecessors, Camera Module 3 provides powered autofocus — which many of you have requested — allowing you to take crisp images of objects from around 5cm out to infinity. There’s a video demo further down the page.

Raspberry Pi Camera Module 3
A glamour shot. Not life size.

Once again, we’ve partnered with Sony, this time using their back-illuminated IMX708 sensor: this offers higher resolution (twelve megapixels); a larger and more sensitive pixel design; and support for high-dynamic-range imaging.

Raspberry Pi Camera Module 3

The Camera Module was our very first official Raspberry Pi accessory. Launched in 2013, it was an instant success. We followed it later that year with the NoIR infrared-sensitive variant. Camera Module 2, built around Sony’s eight-megapixel IMX219 sensor, was released in 2016, and has served us faithfully ever since, selling two million units on its way to becoming our longest-lived flagship product.

But time, and CMOS image sensor technology, marches on.

We’ve been able to stick to the $25 price point for the standard-FoV variants. The wide‑FoV variants have a more complex and expensive optical stack, and are priced at $35.

Let’s break down each of those feature upgrades in turn.

Higher resolution, bigger pixels

Compared to IMX219’s 3280×2464 (8.1 megapixel) array of 1.12μm pixels, IMX708 provides a 4608×2592 (11.9 megapixel) array of 1.40μm pixels. The higher horizontal resolution implies an ability to image finer details; the 16:9 aspect ratio allows us to capture HD video which makes use of the entire sensor area; and the larger pixels, and more modern pixel architecture, translate into higher sensitivity, and better low-light performance.

Field-of-view options

The standard-FoV variants of Camera Module 3 provide a 66° (horizontal) FoV, which is a close match to its predecessor’s 62° FoV; for these variants, IMX708’s higher linear resolution translates directly into higher angular resolution, and a more detailed picture. Here are some comparison photographs so you can see the difference between the standard and wide fields of view.

A wintry day in Ely
Still a wintry day in Ely, just a wider view

The wide-FoV variants offer a 102° (horizontal) FoV; they spread IMX708’s higher linear resolution over a larger angle, yielding a slightly lower angular resolution than Camera Module 2, but enabling interesting new applications including digital panning.

Autofocus

Every camera module we’ve made to date has had fixed-focus optics: a physically static set of lenses, optimised to focus at infinity, but capable of yielding a reasonably sharp image of objects as close as a metre away.

Camera Module 3 introduces powered autofocus support for the first time. The lens assembly is mounted on a voice-coil actuator, allowing us to move it backwards and forwards relative to the sensor until a selected area (by default the middle) of the scene is optimally focused. Here’s Brian with a quick demo.

To select the appropriate lens position, we use the Phase Detection Autofocus (PDAF) capabilities of the IMX708 sensor, falling back to our own Contrast Detection Autofocus (CDAF) algorithm if a high-confidence PDAF result is not available. A nice bonus of PDAF is that it allows us to run the autofocus algorithm continuously during video recording, maintaining optimal focus as the camera, and objects in the scene, move.

High dynamic range

For me, this is the most exciting feature of Camera Module 3.

An image sensor captures an image by counting the number of photons that hit each pixel during some exposure time. The choice of exposure time is important: for a dark scene we want a long exposure to capture poorly illuminated details with the best possible signal-to-noise ratio, while for a bright scene we want a short exposure to avoid saturating the sensor and blowing out the image.

Camera Module 3 on blue background next to computer tablet

For a scene with both bright and dark regions (one with high dynamic range), there isn’t necessarily a single good choice of exposure time: you’re faced with an invidious choice between blowing out the bright regions or underexposing the dark ones. High-dynamic-range (HDR) sensors like IMX708 tackle this problem by taking multiple simultaneous exposures with different exposure times. We can then select the exposure which best captures the detail in each region of the image, and apply a tone mapping process to compress the dynamic range of the result for display or storage.

The resulting images have a quarter of the resolution of a non-HDR shot, but I think the results speak for themselves.

Interior underexposed to capture exterior detail
Interior correctly exposed; exterior detail blown out
Tone-mapped HDR image captures both interior and exterior detail

And one more thing – High Quality Camera with M12 mount

Launched in 2020, the Raspberry Pi High Quality Camera supports interchangeable lenses conforming to the C- and CS-mount standards. Some of our industrial customers have been adding adapters to allow them to use M12-mount lenses: fisheye and other specialist lenses are more readily available in this format.

To better support these customers, today we’re also launching a variant of the High Quality Camera with a native M12 mount at $50. This eliminates the need for an adapter, and supports a much broader selection of lenses due to the increased back focus flexibility.

Compatibility

Camera Module 3 is compatible with all Raspberry Pi computers with CSI connectors — that is, all except Raspberry Pi 400 and the 2016 launch version of Zero. Board dimensions and mounting-hole positions are identical to Camera Module 2. Due to changes in the size and position of the sensor module, it is not mechanically compatible with the camera lid for the Raspberry Pi Zero Case.

Comparing the cameras – click to go to the documentation!

The new Camera Module 3 is only supported by the modern libcamera software environment and by the libcamera-based Picamera2 beta under Raspberry Pi OS Bullseye, and not by the legacy closed-source camera stack – you’ll need to make sure you have the latest version of the software before you dig in, as only the latest release has autofocus support. But don’t worry, the hardware and software documentation has been updated to get you going, including the documentation around our Picamera2 library.

Credits

The Camera Module 3 hardware, and the updated High Quality Camera, were designed by Simon Martin. Naush Patuck, Nick Hollinghurst, David Plowman, Serge Schneider and Dave Stevenson wrote the software. Alasdair Allan, David Plowman, Andrew Scheller and Liz Upton worked on documentation. Austin Su led on sourcing. Jack Willis designed the packaging, and Brian O Halloran (not included with camera) took the shiny photos.

We’d like to acknowledge the assistance of Phil Holden and John Conroy at Sony, Chongqing TS-Precision Technology, and Shenzhen O-HN Optoelectronic.

72 comments
Jump to the comment form

NeoStormer avatar

Really excited to try this out, a fantastic set of upgrades!

Reply to NeoStormer

Laurent avatar

Nice upgrade, congratulations to Raspberry Pi folks!
Every feature we can expect are there: w/ and w/o IR filter; 2 FoV versions; autofocus; HDR.
One question though: how entry level Pis are supported (especially with low RAM: Pi Zero (1/2) W and Pi 3A+) ?

Ok, time to sell my cr*ppy Ard*cam autofocus modules now ><'

Reply to Laurent

Alasdair Allan avatar

I wouldn’t really call those boards “entry level”? Should work just the same.

Reply to Alasdair Allan

Jon Plews avatar

Great news!
Looking forward to testing PDAF and comparing images with Arducam 16MP autofocus cameras.
BTW, the hardware and software links in the post point to localhost:4000.

Reply to Jon Plews

Alasdair Allan avatar

Yup, we just spotted that. Fixed!

Reply to Alasdair Allan

Paul avatar

Thanks for spotting the mistake, Jon!

Reply to Paul

Julia avatar

What wavelengths is the infrared camera module sensitive too?

Reply to Julia

anders avatar

I believe it is just the same as the standard camera but with the IR filter removed.

Reply to anders

Alasdair Allan avatar

The IR-Cut filter in the standard version cuts wavelengths above 650nm. So the NoIR model will have sensitivity above that. Unfortunately, we don’t have transmission graphs for wavelengths above 700nm. We would need to get our hands on an optical spectrometer and measure it. Don’t suppose you have one handy?

Reply to Alasdair Allan

Leo Shmuylovich avatar

I sure do, and I am exploring using raspberry pi cameras and SBCs to build medical NIR fluorescence imaging devices! I’ve measured the transmission graphs for the built in filters and can share with you if you like, and look forward to getting some of the new pi cameras to test them out! One question for you – does the new camera 3 module PCB expose a fstrobe pin in the same way that the HQ camera does? Would be wonderful to achieve synchronized laser illumination with frame grabbing. I’ve done it with the V2 camera using delays and reading off the frame end event on the SBC itself, but getting access to the event on the PCB side would be much better and currently only the HQ model allows that.

Reply to Leo Shmuylovich

Ashley Whittaker avatar

OK – I asked a real life engineer and they said the answer to this: “Does the new camera 3 module PCB expose a fstrobe pin in the same way that the HQ camera does?”

Is “no… stick to the HQ Camera.”

Reply to Ashley Whittaker

Leo avatar

Thanks for checking! The form factor of the v3 is so nice, I’ll keep hoping for strobe control in future versions!

Paul Kersey-Smith avatar

Nice upgrades :) Is there a list of available video sensor modes (along with fps details)?

Reply to Paul Kersey-Smith

Alasdair Allan avatar

See the comparison table in the post. That’d be; 1080p50, 720p100, and 640 x 480p120.

Reply to Alasdair Allan

Paul Kersey-Smith avatar

Hi Alasdair,
I saw the 3 standard video modes, just wondering if there’s a list of all available modes (i.e. 1296×972 on the V1 camera)?
Cheers
Paul

Reply to Paul Kersey-Smith

SamVimes78 avatar

Great news!
Does the autofocus of the wide variant really start at 5cm? That’s awesome!
I’ll definitely buy one…
Greetings

Reply to SamVimes78

Alasdair Allan avatar

The “wide” FoV version of camera has a depth of field from 5cm to ∞, the standard version is (still) 10cm. The two camera versions have very different optics.

Reply to Alasdair Allan

SamVimes78 avatar

Will it fit into the official case for Pi Zero?

Reply to SamVimes78

Liz Upton avatar

From the post:

Due to changes in the size and position of the sensor module, it is not mechanically compatible with the camera lid for the Raspberry Pi Zero Case.

Reply to Liz Upton

Dan Whitehead avatar

Will another case lid be made available in the future?

Curtis Fletcher avatar

Interesting new hardware. Is focus control done 100% internal to the camera board or can the pi-side software manually alter the focus during capture?

Reply to Curtis Fletcher

Liz Upton avatar

You can do it in software too. Check out the manual here: https://datasheets.raspberrypi.com/camera/picamera2-manual.pdf – it should tell you everything you need to know.

Reply to Liz Upton

JBeale avatar

Great to see from the docs that the lens focus is manually adjustable, in absolute units (diopters = 1/meters). I will be interested to learn what the accuracy and stability of that setting is, for example if you have a subject with low contrast, or targets at different distances so you need to set focus in manual mode, will the actual focus position drift at all, once set?

Reply to JBeale

Steinar Aandal-Vanger avatar

Hi.
Very interesting! What kind of cameramodule lens type are you using for the large FOV / AF?
TLens from poLight? Sourced from maybe Sunny Optical?

Reply to Steinar Aandal-Vanger

petrosilius avatar

Thanks for adding new cameras to the portfolio, our nonprofit project SearchWing, which you covered already in previous blogpost (https://www.raspberrypi.com/news/searchwing-maritime-search-and-rescue-drones/), is looking forward to test the new cameras for maritime search and rescue missions!
As we have a weight limited drone, we would be very much interested on the weight of the new “High Quality Camera with M12 mount” Camera. Is it possible to get this info, as its not included in the documentation so far?
Thank you alot!

Reply to petrosilius

Ashley Whittaker avatar

I have found (well, Roger found) scales sensitive enough to weigh it and the M12 mount is:

37.8g all in
37.1g without the rubber cap
30.3g without the tripod mount and bolts

Hope that works for you!

Reply to Ashley Whittaker

Axel Jerabek avatar

That really sounds like good news! The increased pixel size, along with the bigger aperture sounds like this cam module is my replacement for the v2 model soon. The only question I have: Is the h264 stream in 1080p again cropped or is it the full fov now?

Reply to Axel Jerabek

David Plowman avatar

Yes, you’ll get full FoV by default, though you can crop if you want. The 2×2 binned camera mode is large enough to give you 1080p, whereas for the v2 camera it wasn’t.

Reply to David Plowman

JL avatar

Can we expect to see an HQ camera (w/ interchangeable zoom lenses) based on the new v3 camera (w/ new sensor and autofocus) anytime soon?

Reply to JL

Simon Martin avatar

I did look into this. Sadly the motorised C-mount lenses are either too bulky or very, very expensive. Also each lens has a different drive system and connector so it would only be able to work with one lens. This is why we opted for doing it cost effectively on the Camera Module 3.

Reply to Simon Martin

JL avatar

Too bad. maybe some kind of teleconverter situation where the core module does the focusing and the lens just acts like a zoom? Or maybe a version with a zoom? (like arducam PTZ)

Reply to JL

JBeale avatar

I don’t know, but I had the impression all the RPi camera offerings are based on phone camera technology. Are there any phones that offer interchangeable lenses with autofocus?

Reply to JBeale

Alasdair Allan avatar

There are a couple of concept phones, but nothing in production as fas as I know.

Reply to Alasdair Allan

Dale Wellman avatar

Looks very interesting — I’ll probably give it a try. I currently have an Arducam Hawkeye 64mp, but it only does video in HD at about 16mp, if I understand correctly. But the biggest plus I see on your CM3 is the HDR. My questions:
1) Can you clarify the statement that HDR will result in “a quarter of the resolution” — so, what would be the effective resolution of an HDR still photo?
2) Does HDR also work during video recording?
3) Will the libcamera driver support more of the camera adjustments than Arducam supports during video recording? For example, it seems that most controls (brightness, contrast, sharpness, ev, saturation, etc.) are NOT adjustable during a libcamera video stream. I have to make a best guess at the start. But I CAN adjust focus and gain. However, I would love to be able to tweak the video on-the-fly. Will that be possible with the CM3 driver and libcamera? (This used to be easily done with the pre-libcamera systems using V4L2 controls.)

Reply to Dale Wellman

David Plowman avatar

To answer some of those questions:
1) It’s a 12MP quad Bayer sensor, and so will deliver 3MP HDR images. (Also answers the post just below.)

2) Yes, it works during video recording. In fact I would say it’s particularly well suited to video recording

3) All of libcamera’s normal controls are available while recording a video, such as brightness, contrast, sharpness, exposure, gain, lens position, and so on.

Reply to David Plowman

David Plowman avatar

I should add to the last part of my reply that you don’t get to control these things using V4L2. You need to use libcamera which exists largely to support this kind of thing on MIPI-style camera sensors (which are becoming increasingly common). In practice, this will mean entering the commands into a Python interpreter (using Picamera2).

Reply to David Plowman

Gannon Burgett avatar

Hello. The Sony IMX708 is a 48MP sensor, so you’re presumably using the Quad Bayer pixel binning to get 12MP images, correct? If that’s the case, are you also getting 12MP stills for HDR photography with Sony’s HDR merging or are you doing your own merging on the 12MP images to get 3MP images from the HDR mode? I assume the former, but wanted to confirm.

Reply to Gannon Burgett

Gannon Burgett avatar

Thanks for your response above. Feel free to delete my original question. Cheers!

Reply to Gannon Burgett

Nick Murphy avatar

Good news. Is the Camera Software section of your documentation going to be updated to cover the Camera Module 3 (the introduction has been updated)?.

Reply to Nick Murphy

Alasdair Allan avatar

As mentioned in the post the software documentation, both for libcamera and picamera2, has already been updated.

Reply to Alasdair Allan

Bruce Willner avatar

Is the v3 lens still removable, as it was with the v2? I have a project that uses the bare imager and I’d like the higher sensitivity. The larger pixels and HDR may also be a plus.
Looks like a great addition to the camera lineup, even if I don’t need the autofocus.

Reply to Bruce Willner

Liz Upton avatar

I’m afraid not – this is somewhere where we had to compromise. The autofocus will break if the lens is removed.

Reply to Liz Upton

Liz Upton avatar

Wait! No! Simon Martin, who designed the hardware, just grabbed me: he’s spent a little while with some pliers this afternoon, and the lens can be detached AND doesn’t appear to interfere with the autofocus. HOWEVER, you’ll void any warranties if you do choose to do that, so continue at your own risk!

Reply to Liz Upton

JBeale avatar

I have to give props to you folks for being willing to humor such “I want to take the product apart” requests. Even more amazing that the module has any chance of working at all afterwards. However, was the intention to say the sensor still operates generally, or that the autoexposure still works? I’m having difficulty imagining how autofocus could be said to operate, if the lens has been entirely removed.

Reply to JBeale

Liz Upton avatar

Once the lens is BACK ON the autofocus still works! The sensor is pretty robust as long as it stays perfectly clean: people taking the lens off for infrared shenanigans were the reason we started making the NoIR version. They started screwing lenses off in 2013, and we don’t expect them to have stopped in 2023!

Paul Kersey-Smith avatar

Does anyone know what the minimum lux level for low light recording?

Reply to Paul Kersey-Smith

JBeale avatar

I don’t know, but wouldn’t that be quite subjective in how much noise you are willing to tolerate, and how long a shutter speed? By all accounts, the Sony IMX708 sensor on this new camera is better in low light than the prior RPi cameras. It has a larger chip and it is fairly recent; it came out in 2020 while the other sensors are older.

Reply to JBeale

Andreas Bahr avatar

This probably is the best news for the raspi-camera ethusiast in the hole year 2023! THX alot!

Reply to Andreas Bahr

Andrew Waite avatar

Just ordered one!
Will Raspberry Pi ever make a pico-ITX form factor Raspberry Pi SBC?

Reply to Andrew Waite

MW avatar

What does an ITX RPi have to do with this Blog ??

Reply to MW

Methlal Pallewatta avatar

Aperture control would have been a nice additional feature.

Reply to Methlal Pallewatta

Abu Abdulla avatar

awaited module, thanks again. I placed an order for it.
it is more fitted to drone applications (HDR, native wide FOV). let’s see.
i was hoping you will continue supporting new sensors on the legacy stack as i have many Pi0W around me. the new stack is overloading this pi

Reply to Abu Abdulla

MW avatar

With the goal of software to be as open-source as feasible, a decision was made to discard legacy software, which has been extensively discussed in several forum posts. Therefore may I suggest you post on the forum your issues with Libcamera etcetera running under Raspberry Pi Bullseye Lite on your RPi Zero….

Reply to MW

Bruce Hanson avatar

Do these camera boards have the same connector as V2?
Curious as to being able to use on Pi Z & Pi Z2.

Reply to Bruce Hanson

Liz Upton avatar

They do, yes.

Reply to Liz Upton

grubernd avatar

Any chance of linking the sample pictures to the original resolution? And add some more samples?
It’s a camera after all, so it would be really nice to see the optical quality available.

Reply to grubernd

Ashley Whittaker avatar

If you scroll to the bottom of this product page: https://www.raspberrypi.com/products/camera-module-3/

There are more shots taken on Module 3 around our photographer’s home town over the Christmas break.

Reply to Ashley Whittaker

grubernd avatar

..but they are also not the original resolution of the camera. No way to judge the optical quality of the sensor + lens assembly.

Reply to grubernd

JBeale avatar

Likely they will sell plenty, even without more details. I have a Model 3 camera on order, and I’ll post some random full-res images when I get a chance, but I’ll be astonished if someone else doesn’t beat me to it. I have used all the previous RPi cameras, so I can give a relative opinion.

Reply to JBeale

JBeale avatar

My Pi Camera Module 3 just arrived. Here is a full-res photo. You may have to click on it and then use the magnifier icon to zoom in to 1:1 view, and I’m not sure if Google Photos recompressed it. I’d say the image is ok, it is what I expected. Very cool to have manual focus under program control! It’s no DSLR if you pixel-peep. I doubt you’ll do better for $25. https://photos.app.goo.gl/rv62Z4Lia6s4nkhB9

Reply to JBeale

Chinna devarapu avatar

What is the highest possible FPS with the Camera v3.

Reply to Chinna devarapu

David Plowman avatar

There is a 1536×864 resolution mode for this sensor that runs at up to 120fps.

Reply to David Plowman

Franco Tecchia avatar

Hi, how does power consumption of the v3 compare vs v1 & v2?

Reply to Franco Tecchia

Simon Martin avatar

It depends on the function but Libcamera-still -t 0 will continuously run the viewfinder so this is a high power use case. Typically the V3 will consume 2W (at USB-C port) like this. This is the same power consumption as the HQ camera. A V2 is around 1.4W. I don’t have a V1 at hand to test but at a guess it will be around 1W.

Reply to Simon Martin

Andrew Ross McIvor avatar

My subject ( the birds ) are 6 ft away from the camera (v2). They are separated by a pane of glass. Will the autofocus work on the birds thru a pane of glass?

Reply to Andrew Ross McIvor

David Plowman avatar

Yes. The autofocus is based purely on the image detected by the sensor.

Reply to David Plowman

Aaron Einstein avatar

How well does autofocus do in the infrared-sensitive version?

Reply to Aaron Einstein

Dan Whitehead avatar

To get the Camera to fit in the Pi Zero W case, is it just a matter of making the hole bigger please or does the alignment of the lens differ from the v2?

Reply to Dan Whitehead

Brian avatar

Can you guys please release a 3D CAD file that could be further utilized in other design work? I don’t want to be forced into taking profile pictures, calipers and studying the given mechanical drawings to produce something that is highly likely to be available within your engineering department. Camera positioning is highly important in many areas of robotics, positioning systems and in some areas of computer science studies. Thanks for your time and effort!

Reply to Brian

Brian avatar

Additionally, if the camera lens position could be clearly marked in all 3 dimensions on the mechanical drawing that would be great. It can be roughly estimated from the drawings, but having firm numbers for this would be delightful. As I previously stated, the positioning of cameras can be crucial in building additional world knowledge in many technical applications of increasing study and importance.

Reply to Brian

Bog Flap avatar

Is it possible to do “capture in focus” or “focus trap” with this camera. i..e. only capture an image when the image is in focus within a specified window of the image and at a specified distance from the lens. This I assume would not use the autofocus functionality but would use the phase difference functionality to determine whether the image window contains something in focus. I am trying to take pictures of bees leaving and entering a hive.

Reply to Bog Flap

Hermann Stamm-Wibrandt avatar

If only low light sensitivity (astro photos) or HDR are needed, autofocus can be manually removed from v3 camera, and CStoC adapter ring can be superglued onto v3 camera PCB so that CS and C lenses can be used with v3 camera like the HQ camera:
https://forums.raspberrypi.com/viewtopic.php?p=2099581#p2099357

Reply to Hermann Stamm-Wibrandt

Leave a Comment