• 【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);
  • 相关阅读:
    BZOJ3575 [Hnoi2014]道路堵塞
    BZOJ4456/UOJ184 [Zjoi2016]旅行者
    BZOJ4455/UOJ185 [Zjoi2016]小星星
    BZOJ1036 [ZJOI2008]树的统计Count
    BZOJ2594 [Wc2006]水管局长数据加强版
    BZOJ3669/UOJ3 魔法森林(LCT)
    BZOJ1012:[JSOI2008]最大数
    洛谷【P1175】表达式的转换
    HDU4699:Editor
    BZOJ3039:玉蟾宫
  • 原文地址:https://www.cnblogs.com/wxl845235800/p/11140472.html
Copyright © 2020-2023  润新知