code: def test_revise_both(self):
      img = nib.Nifti1Image(np.zeros((10, 10, 10)), np.eye(4))
      img.header.set_sform(np.diag([5, 3, 4, 1]))
      img.header.set_qform(np.diag([2, 3, 4, 1]))
      img.header.set_zooms((0.1, 0.2, 0.3))
      output = rectify_header_sform_qform(img)
      expected = np.diag([0.1, 0.2, 0.3, 1.0])
      np.testing.assert_allclose(output.affine, expected)
  
file_path: MONAI/tests/test_nifti_header_revise.py
imports: from __future__ import annotations
  import unittest
  import nibabel
  import numpy
  from monai.data import rectify_header_sform_qform
label_desc: Use image node_id 2 for calling the TestRectifyHeaderSformQform obj's underlying member method code with example usage: obj.test_revise_both() without return types