Opencv Python exibir imagem bruta

Eu não consigo descobrir como exibir uma imagem crua que contém 640x480 pixels de informação, cada pixel de 8 bits. (Imagem cinza)

Eu preciso ir de um array np para o formato Mat para poder exibir a imagem.

#!/usr/bin/python
import numpy as np
import cv2
import sys
# Load image as string from file/database    
fd = open('flight0000.raw')
img_str = fd.read()
fd.close()

img_array = np.asarray(bytearray(img_str), dtype=np.uint8)

img = ... Conversion to Mat graycolor

cv2.imshow('rawgrayimage', img)
cv2.waitKey(0)

É tão confuso com o cv, cv2. Eu tenho tentado por um tempo agora, mas não consigo encontrar a solução.

questionAnswers(3)

yourAnswerToTheQuestion