基于VSRS视点合成

该博客详细介绍了如何基于VSRS进行视点合成,包括前期的VS2013、OpenCV、VSRS和YUV player的安装配置,以及视点合成的步骤:单独图像生成、图像转视频和生成一张图像。特别强调了在不同阶段需要注意的代码修改和配置文件设置。
摘要由CSDN通过智能技术生成

        这一节主要是讲解基于VSRS视点合成,包括左右、前后以及全方位视点合成效果!

一、前期工作

        VS2013安装、OpenCV、VSRS安装配置以及YUV player,具体详见:VS2013+OpenCV2.4.9+VSRS3.5

二、视点合成准备工作

         这部分仍然需要用到VS2013,因为可能需要用VS2013跑一个根据左右视点得到虚拟视点的示例,当然VSRS3.5也是必不可少的,这里需要一个ViewSynVC8.exe,我的在D:\VSRS3.5\trunk\bin安装目录下。除此之外,还需要MATLAB,因为要用MATLAB编写任意视点的代码,最后将任意视点的图片转换为视屏或者动态图就可以了。

三、视点合成

     1.单独图像生成

        正式进入视点合成阶段,最最最重要的就是编写视点合成代码以及一个个独立视点转化为视屏或动态图的代码,我这里是将其转化为视屏了。

image_height=768;image_width=1024;%这里是图像高和宽
dir_path = 'balloons';%气球那个文件夹
txt_path='\camera_parameter_balloons';%.txt文件,即相机参数文件
cfg_path='\recover_para';%.cfg文件,即配置文件
local_path='C:\Users\yyong\Desktop\3D\balloons';%气球文件在电脑上的位置,但要放在C:\Users\yyong\Desktop\3D里面
r=30;%这里会生成60张独立合成视点 
for k=0:1:2*r
    fidin1=fopen([dir_path, txt_path, '.txt'], 'r+');% 打开需要读取的文件
    fidin2=fopen([dir_path, txt_path, '1.txt'], 'wt');% 创建读取的文件
    fidin3=fopen([dir_path, cfg_path, '.cfg'], 'r+');% 打开读取的文件
    fidin4=fopen([dir_path, cfg_path, '1.cfg'], 'wt');% 创建读取的文件
    i=0;
    while ~feof(fidin1)%判断是否为文件末尾
        tline=fgetl(fidin1);%从文件读行,tline是一个字符串,可以当做数组用
        i=i+1;
        if i==37
            ljx = ['1.0 0.0 0.0 ',num2str(cos(1/30*pi*k)*r+r)];
            fprintf(fidin2,'%s\n',ljx); %改变x轴,即左右
        elseif i==39
            ljx = ['0.0 0.0 1.0 ',num2str(sin(1/30*pi*k)*r+r)];
            fprintf(fidin2,'%s\n',ljx);  %改变z轴,即前后
        else
            fprintf(fidin2,'%s\n',tline); %相机参数其他部分直接复制
        end
    end
    fclose(fidin1);
    fclose(fidin2);
    i=0;
    while ~feof(fidin3)
        tline=fgetl(fidin3);%读取一行
        i=i+1;
        if i==11
            ljx = ['CameraParameterFile            ', local_path, txt_path, '1.txt'];
            fprintf(fidin4,'%s\n',ljx); %在配置文件中更改引用相机参数那行
        else
            fprintf(fidin4,'%s\n',tline); %除引用相机参数那行以外,其他部分直接复制
        end
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值