Is there a Depth Map in these Motorola Edge 50 Neo images?

Started by motorolaedge50neoUnblur, February 16, 2025, 10:18:42 AM

Previous topic - Next topic

motorolaedge50neoUnblur

SG edit: Split from old thread

Hello,
Apologies for reviving this thread.

I recently got a new phone. Previously, I had a budget Honor 6X that could create JPEGs with embedded depth data, which could be viewed as different layers on sites like Photopea.com. However, these JPEGs do not show depth data when inspected with ExifTool—but that's not my main issue. I'll attach an example nonetheless.

My main concern is with my new Motorola Edge 50 Neo. Photos taken in "Portrait Mode" have an artificial blur effect based on estimated distance, which suggests that a depth map exists somewhere. However, the Google Photos app can't unblur them, and ExifTool doesn't seem to detect any depth data.

I tried the following commands:
  • exiftool -b -ImageData PHOTO.jpg > ImageData.jpg
  • exiftool -depthmapdata -b PHOTO.jpg > depth.dat
  • exiftool -a -G1 -s PHOTO.jpg

I don't want to believe that the camera bakes the blur in the jpeg without saving the depthmap...!

Attached images taken in portrait mode:
  • honor 6x -> layers visibile in photopea, no data from exiftool
  • motorola edge 50 neo
    • focus on foreground, artificially blurred background
    • focus on background, artificially blurred foreground
    • censored screenshot of a picture where the blur is ridiculously wrong

honor pictures give this error:
Warning: [minor] Unrecognized MakerNotes [x2]
motorola pictures create empty files (.jpg and .dat)

Thank you

StarGeek

Phil will have to look at these to see if there is anything to find.

Using this command (FAQ #3 command plus the -u (-unknown) option)
exiftool -G1 -a -s -u file.jpg
lists a bunch of unknown tags, but none of those are large enough to hold any sort of binary data needed to be a depth map.

Looking at the file with the -v3 (-verbose3) option shows three APP6 block. A different command gave this warning
Warning: [minor] Unknown APP6 'MMIMETA' segment [x3] One is 65,533 bytes long and the one after it is another 532 bytes. I believe that 65,533 bytes is the maximum amount of data a JPEG block can contain, (16 bit unsigned int→ 65,535 bytes - 2 byte header).

One of these APP6 block contains the text Raw-HDR-State-Machine

That's as far as I can get.

Edit: There's a comment in the exiftool code that says this
# also seen Motorola APP6 "MMIMETA\0", with sub-types: AL3A,ALED,MMI0,MOTD,QC3AOne of the APP6 blocks is the MOTD subtype, but the other two are LMB1 subtype.
"It didn't work" isn't helpful. What was the exact command used and the output.
Read FAQ #3 and use that cmd
Please use the Code button for exiftool output

Please include your OS/Exiftool version/filetype

motorolaedge50neoUnblur

Hello StarGeek,

Thank you for your time and for splitting the thread. I must admit it's been a while—since 2005, to be exact—since I last participated in a PHP forum, so I may have forgotten some etiquette.

Anyway, I'm afraid the Motorola camera app does not save the depth map. However, since ExifTool couldn't find a depth map in the Honor 6X pictures (which Photopea was still able to read), I'm hoping you might have a trick up your sleeve.

Thank you once again!

StarGeek

As I said, Phil will have to look at this. I'm just throwing out details that I can find

I didn't take a look at the Honor image before, but took the time now. I don't see anything big enough for an actual depth map in that file. But what I do see is an entire second image added to the end of the file. This trailer is unknown to exiftool, so Phil will probably want to look at it.

The second appears to be the unblurred image and is bigger than the main image, 3,216,693 bytes out of 5,592,806 bytes
honor_trailer.jpg
"It didn't work" isn't helpful. What was the exact command used and the output.
Read FAQ #3 and use that cmd
Please use the Code button for exiftool output

Please include your OS/Exiftool version/filetype

motorolaedge50neoUnblur

while we wait some news from Phil on the motorola pictures, may I ask you how you extracted the original focused honor image? It was my old phone but I still could save some blurred photos from years ago.
Thank you!

StarGeek

Quote from: motorolaedge50neoUnblur on February 24, 2025, 10:13:23 AMmay I ask you how you extracted the original focused honor image? It was my old phone but I still could save some blurred photos from years ago.

I use the -b (-binary) option and the Trailer tag (see the Extra Tags page)
exiftool -b -trailer >Y:\!temp\x\y\honor_trailer.jpg Y:\!temp\x\y\honor.jpg
"It didn't work" isn't helpful. What was the exact command used and the output.
Read FAQ #3 and use that cmd
Please use the Code button for exiftool output

Please include your OS/Exiftool version/filetype

Phil Harvey

Sorry for the delay in responding.

The moto-far.jpg and moto-ridiculous-censored-example.jpg didn't contain any depth map information.

As StarGeek mentioned, moto-close.jpg contains some interesting-looking APP6 MMIMETA segments that likely would contain the depth map information, but I not in any image format that I can recognized.

And as StarGeek also points out, honor.jpg contains a trailer which is a JPEG-format image.  This JPEG itself has a trailer which contains a raw-format 816x612 pixel image which is likely the depth data.  This trailer has a header that gives the image dimensions and length plus some other information, and a footer that provides identification and information about the trailer length.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

StarGeek

I didn't even think to check to see if the trailer had a trailer. <insert Inception sound here>
"It didn't work" isn't helpful. What was the exact command used and the output.
Read FAQ #3 and use that cmd
Please use the Code button for exiftool output

Please include your OS/Exiftool version/filetype

motorolaedge50neoUnblur

Thank you guys, I tried contacting the motorola support and if something comes up I'll post here again.

By the way "moto-ridiculous-censored-example.jpg" is a screenshot taken on a windows computer with the snipping tool so there shouldn't be useful data.

Phil Harvey

...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).