Yep, this is how OpenCV manages data when you use the operator () to create an ROI no matrix data is copied, this is for optimization. But when you try to access amplitudePatch.data, the data ptr is not what you want because this is still the image (amplitude). When you use show or save, OpenCV correctly manages the data index.
https://docs.opencv.org/2.4/modules/core/doc/basic_structures.html#id6