padding strategy conv tensorflow code example

Example: padding strategy conv tensorflow

# SAME Scheme
if (input_height % strides[1] == 0):
    pad_along_height = max(filter_height - strides[1], 0)
else:
    pad_along_height = max(filter_height - (input_height % strides[1]), 0)
if (input_width % strides[2] == 0):
    pad_along_width = max(filter_width - strides[2], 0)
else:
    pad_along_width = max(filter_width - (input_width % strides[2]), 0)
    
print("pad along height and width...")
print("pad along height: {}".format(pad_along_height))
print("pad along width: {}".format(pad_along_width))
pad_top = pad_along_height // 2 # divied by 2
pad_bottom = pad_along_height - pad_top
pad_left = pad_along_width // 2
pad_right = pad_along_width - pad_left    

print("Padding size on top, bottom, left and right")
print("top: {}".format(pad_top))
print("bottom: {}".format(pad_bottom))
print("left: {}".format(pad_left))
print("right: {}".format(pad_right))