code: def test_png_round_trip():
      with NamedTemporaryFile(suffix=".png") as f:
          fname = f.name
  
      I = np.eye(3)
      imsave(fname, I)
      Ip = img_as_float(imread(fname))
      os.remove(fname)
      assert np.sum(np.abs(Ip - I)) < 1e-3
  
imports: import os
  from io import BytesIO
  from tempfile import NamedTemporaryFile
  import numpy
  import pytest
  from PIL import Image
  from skimage._shared import testing
  from skimage._shared._tempfile import temporary_file
  from skimage._shared._warnings import expected_warnings
  from skimage._shared.testing import assert_allclose, assert_array_almost_equal, assert_array_equal, assert_equal, color_check, fetch, mono_check
  from skimage.metrics import structural_similarity
  from ...None import img_as_float
  from ...color import rgb2lab
  from ..None import imread, imsave, reset_plugins, use_plugin, plugin_order
  from .._plugins.pil_plugin import _palette_is_grayscale, ndarray_to_pil, pil_to_ndarray
label_desc: Use image node_id 3 for calling a global function with example usage: test_png_round_trip() without return types