The workaround would be to call .as_c_contiguous_array() (I think that’s the method name – maybe you need .clone() instead though) in numpy immediately before giving it to .from_numpy()
I also discovered that the negative strides are caused by an upside-down flipping of the array (in the code used to read the pfm image), so deleting that line and flipping the pytorch tensor with an index_select() works too.