code: def test_disambiguate_empty_image(null_images):
      """When the image is empty, disambiguation becomes degenerate."""
      image = camera()
      with pytest.warns(UserWarning) as records:
          shift, error, phasediff = phase_cross_correlation(
              image * null_images[0],
              image * null_images[1],
              disambiguate=True,
          )
          expected_lineno = inspect.currentframe().f_lineno - 3
      np.testing.assert_array_equal(shift, np.array([0.0, 0.0]))
      assert np.isnan(error)
      assert phasediff == 0.0
  
      # Check warnings
      assert len(records) == 2
      assert (
          "Could not determine real-space shift"
          in records[0].message.args[0]
      )
      assert (
          "Could not determine RMS error between images"
          in records[1].message.args[0]
      )
      # Assert correct stacklevel
      for record in records:
          assert record.filename == __file__
          assert record.lineno == expected_lineno
  
imports: import itertools
  import inspect
  import warnings
  import numpy
  import pytest
  from numpy.testing import assert_allclose
  from scipy.ndimage import fourier_shift
  import scipy.fft
  from skimage import img_as_float
  from skimage._shared._warnings import expected_warnings
  from skimage._shared.utils import _supported_float_type
  from skimage.data import camera, binary_blobs, eagle
  from skimage.registration._phase_cross_correlation import phase_cross_correlation, _upsampled_dft
label_desc: Use image node_id 16 for calling a global function with example usage: test_disambiguate_empty_image(null_images) without return types