As often in math, trap is too think something is obvious ! True formula to go from one image to the other is
K @ rot15 @ rot10.T @ inv(K)
as K is diagonal I assumed that it has no effect but when I made the entire computation I found
K @ rot15 @ rot10.T @ np.linalg.inv(K)
Out[197]:
array([[ 9.96199327e-01, -7.55452868e-02, 1.73427108e+01],
[ 7.54128878e-02, 9.97141394e-01, 1.87342755e+00],
[-1.08966647e-04, -3.49027100e-06, 9.99048675e-01]])
and that is H :))