Read image metadata from Python
See bpy.types.Image for the available information about images.

The current image of an editor can be accessed from SpaceImageEditor.image. So for a given context

context.space_data.image


Can you be more precise about what kind of metadata you are interested ? 

It depends on the graphics file format (i. e. png format) and might be a question for Stack Overflow



Reading chunks from png

import os

# chunk generator
def chunk_iter(data):
    total_length = len(data)
    end = 4

    while(end + 8 &lt; total_length):     
        length = int.from_bytes(data[end + 4: end + 8], 'big')
        begin_chunk_type = end + 8
        begin_chunk_data = begin_chunk_type + 4
        end = begin_chunk_data + length

        yield (data[begin_chunk_type: begin_chunk_data],
               data[begin_chunk_data: end])

# open arbitrary pngs
blender_path = os.path.join(os.environ['HOME'], "Documents", "Blender")
pngs = (os.path.join(blender_path, elem)
            for elem in os.listdir(blender_path) if elem.endswith(".png"))

for png in pngs:
    with open(png, 'rb') as fobj:
        data = fobj.read()

    # check signature
    assert data[:8] == b'\x89\x50\x4E\x47\x0D\x0A\x1A\x0A'
    print("-" * 80, "chunks of: %s" % png, "-"*80, sep='\n')

    for chunk_type, chunk_data in chunk_iter(data):
        print("chunk type: %s" % chunk_type.decode())
        if   chunk_type == b'iTXt':
            print("--chunk data:",  chunk_data.decode())
        elif chunk_type == b'tEXt':
            print("--chunk data:", *chunk_data.decode('iso-8859-1').split('\0'))


Output

--------------------------------------------------------------------------------
chunks of: /home/User/Documents/Blender/0001.png
--------------------------------------------------------------------------------
chunk type: IHDR
chunk type: pHYs
chunk type: tEXt
--chunk data: File &lt;untitled&gt;
chunk type: tEXt
--chunk data: Note Test
chunk type: tEXt
--chunk data: Date 2015/08/12 17:07:41
chunk type: tEXt
--chunk data: Time 00:00:00:01
chunk type: tEXt
--chunk data: Frame 1
chunk type: tEXt
--chunk data: Camera Camera
chunk type: tEXt
--chunk data: Scene Scene
chunk type: tEXt
--chunk data: RenderTime 00:00.06
chunk type: IDAT
chunk type: IDAT
chunk type: IEND


So metadata for png is stored in tEXt chunks, separated by 0 character. See png specification