i.mx53平台上ov5640拍照获取全像素图片
ov5640最大支持2592*1944,15fps的图像获取,利用v4l2驱动进行数据获取,Qt来显示图像。目的是获取2592*1944像素大小的图片。
应用程序参数设置,流程大致为:
ioctl(fd_v4l, VIDIOC_S_PARM, &parm) // 配置寄存器为2592*1944,15fps
ioctl(fd_v4l, VIDIOC_S_CROP, &crop) // 设置截取大小,参数通过-iw、-ih来配置
ioctl(fd_v4l, VIDIOC_S_FMT, &fmt) // 设置输出样式,参数通过-ow、-oh来配置
输出结果:
./capture -iw 2592 -ih 1944 -ow 640 -oh 480 -qws // 输出图像正常
./capture -iw 2592 -ih 1944 -ow 1280 -oh 960 -qws // 输出图像分为5*5块,如正常图像为"F",显示为横竖各5个“F”,图像大小正常
./capture -iw 2592 -ih 1944 -ow 2560 -oh 1920 -qws // 输出图像分成了很多很多块
无论输出结果以哪种方式YUYV、RGB565、RGB24都是这样。
被这个问题困扰了半个多月了,希望各位给点意见和建议。