• 【matlab】模拟变焦拼接代码备份


    1、初版,边缘未处理。

    %
    %   In----near
    %   If----far
    %
    In=imread('D:文件及下载相关桌面模拟变焦拼接Matlab_code
    earframeframe1.bmp');%近图
    If=imread('D:文件及下载相关桌面模拟变焦拼接Matlab_codefarframeframe1.bmp');%远图
    If=rgb2gray(If);
    In=rgb2gray(In);
    
    I_temp=If;
    I_need=zeros(346,258);
    I_middle=imresize(In,[258 346],'bicubic');%matlab中列向在前,行向在后。先行数后列数。
    I_temp(154:411,217:562)=I_middle;
    imshow(I_temp);

    2、去掉黑边

    %
    %   In----near
    %   If----far
    %
    In=imread('D:文件及下载相关桌面模拟变焦拼接Matlab_code
    earframeframe1.bmp');%近图
    If=imread('D:文件及下载相关桌面模拟变焦拼接Matlab_codefarframeframe1.bmp');%远图
    If=rgb2gray(If);
    In=rgb2gray(In);
    
    I_temp=If;
    I_need=zeros(346,258);
    I_middle=imresize(In(34:542,41:729),[261 346],'bicubic');%matlab中列向在前,行向在后。先行数后列数。
    I_temp(157:417,219:564)=I_middle;
    imshow(I_temp);

    3、修改边缘位置信息,这个还可以。

    %
    %   In----near
    %   If----far
    %
    In=imread('D:文件及下载相关桌面模拟变焦拼接Matlab_code
    earframeframe1.bmp');%近图
    If=imread('D:文件及下载相关桌面模拟变焦拼接Matlab_codefarframeframe1.bmp');%远图
    If=rgb2gray(If);
    In=rgb2gray(In);
    
    I_temp=If;
    I_need=zeros(346,258);
    I_middle=imresize(In(34:541,41:728),[254 341],'bicubic');%matlab中列向在前,行向在后。先行数后列数。
    I_temp(160:413,220:560)=I_middle;
    imshow(I_temp);

     4、继续改改试试

    %
    %   In----near
    %   If----far
    %
    In=imread('D:文件及下载相关桌面模拟变焦拼接Matlab_code
    earframeframe1.bmp');%近图
    If=imread('D:文件及下载相关桌面模拟变焦拼接Matlab_codefarframeframe1.bmp');%远图
    If=rgb2gray(If);
    In=rgb2gray(In);
    
    I_temp=If;
    I_need=zeros(346,258);
    I_middle=imresize(In(34:541,41:728),[254 344],'bicubic');%matlab中列向在前,行向在后。先行数后列数。
    I_temp(160:413,219:562)=I_middle;
    imshow(I_temp);

    虽然凑到了344,但是有点右偏。

    5、之后再放大到1280×1024。

    %
    %   In----near
    %   If----far
    %
    In=imread('D:文件及下载相关桌面模拟变焦拼接Matlab_code
    earframeframe1.bmp');%近图
    If=imread('D:文件及下载相关桌面模拟变焦拼接Matlab_codefarframeframe1.bmp');%远图
    If=rgb2gray(If);
    In=rgb2gray(In);
    
    I_temp=If;
    I_need=zeros(346,258);
    I_middle=imresize(In(34:541,41:728),[254 344],'bicubic');%matlab中列向在前,行向在后。先行数后列数。
    I_temp(160:413,219:562)=I_middle;
    
    
    %放大到1280*1024
    I_temp_big=imresize(I_temp,[1024 1280],'bicubic');
    
    imwrite(I_temp_big,'I_temp_big.bmp')
    imshow(I_temp);
  • 相关阅读:
    mysql 登录远程数据库
    git rebase
    Maven -DskipTests和-Dmaven.test.skip=true的区别
    Code Labels
    AUC计算
    nohup 同时实现记录日志和屏幕输出
    [转]
    sshpass 配置密码登录ssh
    MyEclipse里面如何把偏好设置导出
    (转)一位资深程序员大牛给予Java初学者的学习路线建议
  • 原文地址:https://www.cnblogs.com/wxl845235800/p/11140472.html
Copyright © 2020-2023  润新知