Hi, I’m trying to bring up a one lane MIPI camera that support 8- and 10-bit RAW format. I have patched the OV08a10 driver to successfully communicate with my camera and got it to output frame data.
The tools: guvcview -d /dev/video0 -x 400x400
and gst-launch-1.0 v4l2src name=vsrc device=/dev/video0 num-buffers=1 ! video/x-raw,width=400,height=400,framerate=5/1,format=GRAY8 ! filesink location=/tmp/test.rgb
both gives me frame data in correct size but I get only blurish noisy pictures. I suspect that the isp is actually doing some Bayer decoding and destroys my picture. But I’m not sure.
I’m running the camera in 10-bit format which is coding 4 pixels in 5 bytes. I believe this is called Y10B coding in v4l2.
I realize the format=GRAY8 is probably wrong but I can’t find any closer.
import numpy as np
import matplotlib.pyplot as plt
i = np.fromfile('test.rgb', dtype='uint8')
plt.imshow(np.reshape(i[0:400*400*3],(400,400,3)))
plt.show()
I get the picture:
I notice that there are some image processing going on. Is it possible to turn off all processing to get a as raw image as possible?
Thanks!