Skip to content

Commit

Permalink
fix axis order
Browse files Browse the repository at this point in the history
  • Loading branch information
jhkennedy committed Sep 19, 2023
1 parent 60666e5 commit 3ac03d4
Showing 1 changed file with 21 additions and 22 deletions.
43 changes: 21 additions & 22 deletions hyp3_autorift/vend/netcdf_output.py
Original file line number Diff line number Diff line change
Expand Up @@ -400,13 +400,13 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1
x = np.arange(tran[0], tran[0] + tran[1] * VX.shape[1], tran[1])

# determine valid subset
coords = np.argwhere(V)
x_min, y_min = coords.min(axis=0)
x_max, y_max = coords.max(axis=0)
coords = np.argwhere(~noDataMask)
row_min, col_min = coords.min(axis=0)
row_max, col_max = coords.max(axis=0)

# subset key variables
x = x[x_min:x_max + 1]
y = y[y_min:y_max + 1]
y = y[row_min:row_max + 1]
x = x[col_min:col_max + 1]
dimidY, dimidX = (len(y), len(x))
center_y = (y.min() + y.max()) / 2
center_x = (x.min() + x.max()) / 2
Expand All @@ -429,9 +429,8 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1
continue
var.setncattr(key, IMG_INFO_DICT[key])


nc_outfile.createDimension('x', dimidX)
nc_outfile.createDimension('y', dimidY)
nc_outfile.createDimension('x', dimidX)

chunk_lines = np.min([np.ceil(8192/dimidY)*128, dimidY])
ChunkSize = [chunk_lines, dimidX]
Expand Down Expand Up @@ -572,7 +571,7 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1
var.setncattr('stable_count_slow', stable_count1)

VX[noDataMask] = NoDataValue
var[:] = np.round(np.clip(VX[x_min:x_max + 1, y_min:y_max + 1], -32768, 32767)).astype(np.int16)
var[:] = np.round(np.clip(VX[row_min:row_max+1, col_min:col_max+1], -32768, 32767)).astype(np.int16)
# var.setncattr('_FillValue', np.int16(FillValue))

var = nc_outfile.createVariable('vy', np.dtype('int16'), ('y', 'x'), fill_value=NoDataValue,
Expand Down Expand Up @@ -657,7 +656,7 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1
var.setncattr('stable_count_slow', stable_count1)

VY[noDataMask] = NoDataValue
var[:] = np.round(np.clip(VY[x_min:x_max + 1, y_min:y_max + 1], -32768, 32767)).astype(np.int16)
var[:] = np.round(np.clip(VY[row_min:row_max+1, col_min:col_max+1], -32768, 32767)).astype(np.int16)
# var.setncattr('missing_value', np.int16(NoDataValue))


Expand All @@ -669,7 +668,7 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1
var.setncattr('grid_mapping', mapping_var_name)

V[noDataMask] = NoDataValue
var[:] = np.round(np.clip(V[x_min:x_max + 1, y_min:y_max + 1], -32768, 32767)).astype(np.int16)
var[:] = np.round(np.clip(V[row_min:row_max+1, col_min:col_max+1], -32768, 32767)).astype(np.int16)
# var.setncattr('missing_value',np.int16(NoDataValue))


Expand All @@ -687,7 +686,7 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1
V_error = np.sqrt((vx_error * VX / V)**2 + (vy_error * VY / V)**2)
V_error[V == 0] = v_error
V_error[noDataMask] = NoDataValue
var[:] = np.round(np.clip(V_error[x_min:x_max + 1, y_min:y_max + 1], -32768, 32767)).astype(np.int16)
var[:] = np.round(np.clip(V_error[row_min:row_max+1, col_min:col_max+1], -32768, 32767)).astype(np.int16)
# var.setncattr('missing_value',np.int16(NoDataValue))


Expand Down Expand Up @@ -769,7 +768,7 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1
var.setncattr('stable_count_slow', stable_count1)

VR[noDataMask] = NoDataValue
var[:] = np.round(np.clip(VR[x_min:x_max + 1, y_min:y_max + 1], -32768, 32767)).astype(np.int16)
var[:] = np.round(np.clip(VR[row_min:row_max+1, col_min:col_max+1], -32768, 32767)).astype(np.int16)
# var.setncattr('missing_value', np.int16(NoDataValue))


Expand Down Expand Up @@ -848,7 +847,7 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1
var.setncattr('stable_count_slow', stable_count1)

VA[noDataMask] = NoDataValue
var[:] = np.round(np.clip(VA[x_min:x_max + 1, y_min:y_max + 1], -32768, 32767)).astype(np.int16)
var[:] = np.round(np.clip(VA[row_min:row_max+1, col_min:col_max+1], -32768, 32767)).astype(np.int16)
# var.setncattr('missing_value', np.int16(NoDataValue))

# fuse the (slope parallel & reference) flow-based range-projected result with the raw observed range/azimuth-based result
Expand Down Expand Up @@ -1012,7 +1011,7 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1
# var.setncattr('stable_count_slow',stable_count1_p)
#
# VXP[noDataMask] = NoDataValue
# var[:] = np.round(np.clip(VXP[x_min:x_max + 1, y_min:y_max + 1], -32768, 32767)).astype(np.int16)
# var[:] = np.round(np.clip(VXP[row_min:row_max+1, col_min:col_max+1], -32768, 32767)).astype(np.int16)
# # var.setncattr('missing_value', np.int16(NoDataValue))
#
#
Expand Down Expand Up @@ -1092,7 +1091,7 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1
# var.setncattr('stable_count_slow', stable_count1_p)
#
# VYP[noDataMask] = NoDataValue
# var[:] = np.round(np.clip(VYP[x_min:x_max + 1, y_min:y_max + 1], -32768, 32767)).astype(np.int16)
# var[:] = np.round(np.clip(VYP[row_min:row_max+1, col_min:col_max+1], -32768, 32767)).astype(np.int16)
# # var.setncattr('missing_value', np.int16(NoDataValue))
#
#
Expand All @@ -1106,7 +1105,7 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1
# var.setncattr('grid_mapping', mapping_var_name)
#
# VP[noDataMask] = NoDataValue
# var[:] = np.round(np.clip(VP[x_min:x_max + 1, y_min:y_max + 1], -32768, 32767)).astype(np.int16)
# var[:] = np.round(np.clip(VP[row_min:row_max+1, col_min:col_max+1], -32768, 32767)).astype(np.int16)
# # var.setncattr('missing_value',np.int16(NoDataValue))
#
#
Expand All @@ -1123,7 +1122,7 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1
# VP_error = np.sqrt((vxp_error * VXP / VP)**2 + (vyp_error * VYP / VP)**2)
# VP_error[VP==0] = vp_error
# VP_error[noDataMask] = NoDataValue
# var[:] = np.round(np.clip(VP_error[x_min:x_max + 1, y_min:y_max + 1], -32768, 32767)).astype(np.int16)
# var[:] = np.round(np.clip(VP_error[row_min:row_max+1, col_min:col_max+1], -32768, 32767)).astype(np.int16)
# # var.setncattr('missing_value', np.int16(NoDataValue))


Expand Down Expand Up @@ -1152,7 +1151,7 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1

M11[noDataMask] = NoDataValue * np.float32(1/C[0]) + np.float32(-C[1]/C[0])
# M11[noDataMask] = NoDataValue
var[:] = M11[x_min:x_max + 1, y_min:y_max + 1]
var[:] = M11[row_min:row_max+1, col_min:col_max+1]
# var[:] = np.round(np.clip(M11, -32768, 32767)).astype(np.int16)
# var[:] = np.clip(M11, -3.4028235e+38, 3.4028235e+38).astype(np.float32)
# var.setncattr('missing_value',np.int16(NoDataValue))
Expand Down Expand Up @@ -1184,7 +1183,7 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1

M12[noDataMask] = NoDataValue * np.float32(1/C[0]) + np.float32(-C[1]/C[0])
# M12[noDataMask] = NoDataValue
var[:] = M12[x_min:x_max + 1, y_min:y_max + 1]
var[:] = M12[row_min:row_max+1, col_min:col_max+1]
# var[:] = np.round(np.clip(M12, -32768, 32767)).astype(np.int16)
# var[:] = np.clip(M12, -3.4028235e+38, 3.4028235e+38).astype(np.float32)
# var.setncattr('missing_value',np.int16(NoDataValue))
Expand All @@ -1205,7 +1204,7 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1
var.setncattr('chip_size_coordinates', 'image projection geometry: width = x, height = y')

# var[:] = np.flipud(vx_nomask).astype('float32')
var[:] = np.round(np.clip(CHIPSIZEX[x_min:x_max + 1, y_min:y_max + 1], 0, 65535)).astype('uint16')
var[:] = np.round(np.clip(CHIPSIZEX[row_min:row_max+1, col_min:col_max+1], 0, 65535)).astype('uint16')
# var.setncattr('missing_value', np.uint16(0))


Expand All @@ -1224,7 +1223,7 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1
var.setncattr('chip_size_coordinates', 'image projection geometry: width = x, height = y')

# var[:] = np.flipud(vx_nomask).astype('float32')
var[:] = np.round(np.clip(CHIPSIZEY[x_min:x_max + 1, y_min:y_max + 1], 0, 65535)).astype('uint16')
var[:] = np.round(np.clip(CHIPSIZEY[row_min:row_max+1, col_min:col_max+1], 0, 65535)).astype('uint16')
# var.setncattr('missing_value', np.uint16(0))


Expand All @@ -1237,7 +1236,7 @@ def netCDF_packaging(VX, VY, DX, DY, INTERPMASK, CHIPSIZEX, CHIPSIZEY, SSM, SSM1
var.setncattr('grid_mapping', mapping_var_name)

# var[:] = np.flipud(vx_nomask).astype('float32')
var[:] = np.round(np.clip(INTERPMASK[x_min:x_max + 1, y_min:y_max + 1], 0, 255)).astype('uint8')
var[:] = np.round(np.clip(INTERPMASK[row_min:row_max+1, col_min:col_max+1], 0, 255)).astype('uint8')
# var.setncattr('missing_value', np.uint8(0))


Expand Down

0 comments on commit 3ac03d4

Please sign in to comment.