YUY2格式摄像头图像失真解决方案

用matlab来采集图像,遇到一些问题,首先我用的摄像头的格式是YUY2格式,并不支持RGB格式,在网上也找了很多资料,发现都是炒来炒去的,都没有用,最后找到解决的办法了,要加这条语句

set(vidobj,'ReturnedColorSpace','rgb');

当加了这句话后,发现正常了,但是很快又有现问题了,我发现我当把分辨率调高后图像仍会变色,在低分辨率时图像正常,经过几次实验终于发现,由于我的摄像头在高分辨率状态下,比如1600x1200下,有一个延迟的过程来让画面变为最佳,如果当视频的画面一出来就截图,保存的图像肯定会变色,唯一的办法只有等视频窗口调整完毕,变为最佳状态时,再截图,这次图像颜色就不会失真了

vidobj = videoinput('winvideo',1,'YUY2_1600x1200');
set(vidobj,'ReturnedColorSpace','rgb');
preview(vidobj);
pause(3);
start(vidobj)
snapshot = getsnapshot(vidobj);

然后保存一下就好了


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值