Camera development progress

Latest megapixels on Amber (updated a couple of days ago) still can not save anything from the main camera.

Same here - although I think the problem is in the driver, not in Megapixels.

Yup - when it comes to the big camera it seems like there’s some race condition in the driver and it works better on some devices but worse on others. On one of my phones it works pretty much perfectly, on another one it sometimes needs some encouragement, and on another one it mostly fails. It obviously needs some more work.

The selfie cam driver should already be reliable everywhere though - at least I’m not aware of any issues with it.

2 Likes

Yeah, it’s hard to scan a QR code using the selfie cam though. :frowning:

Be creative irvinewade ! use a mirror ! :smiley:

About the selfie cam, when I use Megapixels, it goes to 250% CPU usage, and after around 1 min, the battery is notified to 0% and the phone shuts down (when I reboot, the percentage battery is back to normal)

Am I the only one having this issue on amber ?

2 Likes

I was able to save a front camera picture for the first time today.

Trying to switch to the back camera does nothing; whatever the front camera was seeing remains frozen in view. If I close the app and then come back to it, I can tell that the back camera is engaged, because the “Focus” control has been added to the screen. The view is just pitch black, though.

One curious thing: there’s a delay in viewing the subject through the front camera, e.g. the subject moves a bit and the same action is seen a second or two later on the screen view.

It also seems that I have to crank the phone’s brightness all the way up to see the subject, and again, only present with the front camera. Back camera view sees nothing.

3 Likes

Yes, I thought about that. :slight_smile: Or a USB webcam. (Part of the problem is that there is often a queue for the COVID check-in, so getting a photo of the QR code needs to be fast and efficient. What happens after that can be slow and clunky i.e. running a shell script to do something with the photo. I can leave the queue to do that.)

I’m not. Even though I can’t save main camera photos (most of the time), whereas selfie camera photos seem to work reliably, I have not experienced anything like what you did. I just have a malfunctioning application that is annoying but, no drama, I can close it and continue to enjoy use of the phone.

That said, I haven’t tested the cameras since the updates that were applied just this morning.

Hype up, folks. There’s progress on the big camera again: https://source.puri.sm/Librem5/linux-next/-/issues/330#note_168594

Some ppl who had trouble with it earlier now can take photos after installing the mentioned kernel on their Byzantium phones. If you test it, don’t hesitate to mention it in the issue, so we can close it and celebrate (or get back to the drawing board).

14 Likes

Thanks for all the team’s work on a very challenging problem!
I’m certainly eagerly anticipating the official Byzantium go-live on the L5.

3 Likes

The kernel got an update to 5.13.0-1-librem5 on Amber but still can not save images from the main camera. It seems we must wait for Byzantium to become the default.

By the way is Autofocus coming to megapixels anytime soon?

2 Likes

Yes, Byzantium is now where development takes place. It should be available in the near future.

No, I don’t think we’re going to have enough capacity to work on autofocus. There’s a lot of foundational work left - media interface, switch handling, calibration, libcamera. But I might be wrong and it might pop up as the next logical step.

6 Likes

I was thinking about that too, thinking it’s something I could try implementing myself.

Since megapixels already has a way to control focus manually, hopefully it’s easy to find a place in the code where we can insert a loop to try out different focus settings. It would be necessary to have some way of measuring how good the focus is currently, maybe simply looking for sharp jumps between different pixel color values from one pixel to the next, in the current image. Then let the loop try a few different focus values looking for a good focus setting.

It would be fun to try implementing some little hack like that.

What do you think, would something like that work, or is it more difficult than this for some reason?

4 Likes

It would totally work short term, and even we’d probably pragmatically accept it.

Long term though, we want the wider community to benefit from it (and to participate), so we need that integrated with libcamera.

3 Likes

One of the problems for not having autofocus available is that older people (like myself) with farsightedness can not really take a focused picture if they do not have their glasses with them. In such a scenario the advice “use manual focus” is not realistic.

2 Likes

I don’t know how it’s made in Android, iOS and other systems, but isn’t it something machine learning AIs can solve best? Not only because it can “learn” how pixels have to look (like Skalman said), but also to get very fast good results for nearly no energy needed. I just have no idea how much work it would be (and I think it is a lot - including training). Such AI may also can do other stuff like auto focus on faces which are not centered etc.

I am just interested in theoretical ways (also what’s realistic and what’s “only theoretical possible”). So hopefully someone can and want to tell me more.

It totally is - my camera has a display resolution much smaller than the sensor resolution, and it shows a zoomed in fragment of the image while focusing. Without it anyone would be out of luck.

No, it’s very well known what well-focused pixels look like: they are full of local contrast. That’s solvable by a simple pass over a portion of the image, instead having to involve neural networks. Maybe if you’re aiming at the algorithm detecting what portions of the picture are “interesting” (like the faces you mention), but that’s a problem on an entirely different level.

5 Likes

So it compares contrast of different zooms. Highest average contrast in a specific area will result in the correct focus. Sounds not as complicated as I thought. Thanks for your explanation.

OK so here is a new attempt at the Stockholm view from Västerbron, only this time I adjusted the brightness setting as @dcz suggested, to avoid the image getting too bright:

It looks much better now, but I still suspect the camera can do better than this. Is it possible to get higher resolution somehow?

An image viewer program says the resolution is 2104 x 1560 pixels, the size of the jpg file is about 170 KB.

16 Likes

Yes, it’s possible to adjust the resolution in Megapixels config file. That didn’t work very reliably though, so it’s not the default.

2 Likes

Your photo is 3,2 megapixel while camera can reach around 13 or 15 megapixel (forgot the correct number). So you can reach 4-5x higher resolution in theory.

Btw, did you focus on the water next to you or was there any problem with manual focus? Everything behind is unsharp.

1 Like