OpenCV - Reading a 16 bit grayscale image
To improve readability use the flag cv2.IMREAD_ANYDEPTH
image = cv2.imread( path, cv2.IMREAD_ANYDEPTH )
Figured it out. In case anyone else runs into this problem:
im = cv2.imread(path,-1)
Setting the flag to 0, to load as grayscale, seems to default to 8 bit. Setting the flag to -1 loads the image as is.