精华内容
下载资源
问答
  • 读入一幅图像,对其进行等比例、不等比例缩放
  • 目录一、插值与图像缩放二、最近邻插值1、原理2、代码实现三、双线性插值1、原理2、代码实现 一、插值与图像缩放   首先举个例子说明插值过程,先看看matlab的插值函数 interp() 吧: x = -2 : 1 : 2; y = -2 : 1 ...
  • 使用临近插值法和双线性插值法进行图像处理,将彩色图像缩放之后仍输出彩色图像
  • MATLAB图像缩放,matlab实现图像缩放,matlab源码
  • matlab图片缩放代码.zip

    2019-12-09 13:48:35
    包含最近邻插值、双线性插值和三次插值的matlab代码,自己已经测试过,使用的时候注意将图片转换为位图,否则会出现错误。
  • Write a function Reduce / Expand that has an image as an input and the output should be re-sampled copy of half / twice the width and height of the input image.
  • matlab实现图像缩放

    2021-04-18 06:04:13
    【实例简介】不调用方法,手动实现图像缩放【实例截图】【核心代码】% MATLAB script for Assessment Item-1% Task-1clear; close all; clc;%% Step-1: Load input image and conversion of input image to grey-...

    【实例简介】不调用方法,手动实现图像缩放

    【实例截图】

    d38ca3c8cf05c762d8ef355e2df02434.png

    【核心代码】

    % MATLAB script for Assessment Item-1

    % Task-1

    clear; close all; clc;

    %% Step-1: Load input image and conversion of input image to grey-scale image

    I = imread('Zebra.jpg');

    figure;

    imshow(I);

    title('Load input image', 'FontSize', 18);

    Igray = rgb2gray(I);

    figure;

    imshow(Igray);

    title('Conversion of input image to greyscale', 'FontSize', 18);

    %% Step-2: Nearest-neighbor interpolation

    n = 3; % multiple of expand

    [w,h] = size(Igray); % the size of greyscale

    Inearest = zeros(w*n,h*n); % build a matrix which size is triple times of original image

    for row1 = 1:w*n % build a circluation to traverse every pixel

    for col1 = 1:h*n

    row = round(row1/n); % copy the value of pixel based on index

    col = round(col1/n);

    if row<1

    row = 1;

    end

    if row > w

    row = w;

    end

    if col < 1

    col = 1;

    end

    if col > h

    col = h;

    end

    % ensure the index of pixel is positive integer

    Inearest(row1,col1) = Igray(row,col); % use pixels of original image to fill output image

    end

    end

    Inearest=uint8(Inearest); % Conversion of double to uint8

    figure;

    imshow(Inearest);

    colorbar;

    axis on;

    title('Figure 1: Nearest-neighbor interpolation', 'FontSize', 22);

    %% Step-3: Bilinear Interpolation

    Ibilinear = zeros(w*n,h*n); % build a matrix which size is triple times of original image

    for row2 = 1:w*n % build a circluation to traverse every pixel

    for col2 = 1:h*n

    row = row2/n; % copy the value of pixel based on index

    col = col2/n;

    dec1 = row-floor(row); % get fractional part for bilinear interpolation formula

    dec2 = col-floor(col);

    if row < 1

    row = 1;

    end

    if row > w

    row = w;

    end

    if col < 1

    col = 1;

    end

    if col > h

    col = h;

    end

    % ensure the index of pixel is positive integer

    Ibilinear(row2,col2) = (1-dec2)*(1-dec1)*Igray(floor(row),floor(col)) ...

    dec2*(1-dec1)*Igray(floor(row),ceil(col)) ...

    (1-dec2)*dec1*Igray(ceil(row),floor(col)) ...

    dec2*dec1*Igray(ceil(row),ceil(col));

    % use pixels of original image to fill output image based on bilinear interpolation formula

    end

    end

    Ibilinear = uint8(Ibilinear); % Conversion of double to uint8

    figure;

    imshow(Ibilinear);

    colorbar;

    axis on;

    title('Figure 2: Bilinear interpolation', 'FontSize', 22);

    展开全文
  • matlab图像缩放 包含实验程序和结果
  • %======用matlab图像进行缩放(双线性插值法)clear; %此题是用双线性插值法实现图像缩放I=imread('f.jpg');%读入原图像,只需将此处的文件换成要变换的图片即可%图像属性% Filename: 'f.jpg'%FileModDate: '24-Aug-...

    %======用matlab对图像进行缩放(双线性插值法)

    clear;   %此题是用双线性插值法实现图像缩放

    I=imread('f.jpg');

    %读入原图像,只需将此处的文件换成要变换的图片即可

    %图像属性

    %  Filename: 'f.jpg'

    %

    FileModDate: '24-Aug-2008 16:50:30'

    %           FileSize: 20372

    %

    Format: 'jpg'

    %      FormatVersion: ''

    %              Width: 480

    %

    Height: 640

    %           BitDepth: 8

    %          ColorType:

    'grayscale'

    %    FormatSignature: ''

    %    NumberOfSamples: 1

    %

    CodingMethod: 'Huffman'

    %      CodingProcess: 'Sequential'

    %

    Comment: {}

    [rows,cols]=size(I);

    K1 = str2double(inputdlg('请输入行缩放倍数', 'INPUT scale factor', 1,

    {'0.5'}));%行默认变为原来的0.5倍

    K2 = str2double(inputdlg('请输入列缩放倍数', 'INPUT

    scale factor', 1, {'0.4'}));%列默认变为原来的0.4倍

    width = K1 * rows;

    height = K2 * cols;

    Out = uint8(zeros(width,height));  %创建输出图像矩阵

    widthScale = rows/width;

    heightScale = cols/height;

    for x = 6:width - 6           % 6是为了防止矩阵超出边界溢出

    for y = 6:height - 6

    oldX = x * widthScale;     % oldX,oldY为原坐标,x,y为新坐标

    oldY = y * heightScale;

    if (oldX/double(uint16(oldX)) == 1.0) &

    (oldY/double(uint16(oldY)) == 1.0)

    Out(x,y) = I(int16(oldX),int16(oldY));%若oldX,oldY为整数,直接赋值

    else

    a = double(uint16(oldX));

    b = double(uint16(oldY));

    x11 = double(I(a,b));                % x11 赋值为 I(a,b)

    x12 = double(I(a,b+1));              % x12 赋值为 I(a,b+1)

    x21 = double(I(a+1,b));              % x21 赋值为 I(a+1,b)

    x22 = double(I(a+1,b+1));            % x22 赋值为

    I(a+1,b+1)

    Out(x,y) = uint8( (b+1-oldY) * ((oldX-a)*x21 +

    (a+1-oldX)*x11) + (oldY-b) * ((oldX-a)*x22 +(a+1-oldX) * x12) );    %

    用双线性插值计算公式计算

    end

    end

    end

    imshow(I);

    figure;

    imshow(Out);

    %===============使用matlab对图片进行缩放(最近邻域法)

    clear;  %此题是用最近邻域法实现图像缩放

    I=imread('f.jpg');%读入图像

    %图像属性

    %

    Filename: 'f.jpg'

    %       FileModDate: '24-Aug-2008 16:50:30'

    %

    FileSize: 20372

    %             Format: 'jpg'

    %      FormatVersion:

    ''

    %              Width: 480

    %             Height: 640

    %

    BitDepth: 8

    %          ColorType: 'grayscale'

    %

    FormatSignature: ''

    %    NumberOfSamples: 1

    %       CodingMethod:

    'Huffman'

    %      CodingProcess: 'Sequential'

    %            Comment:

    {}

    [rows,cols]=size(I);

    K1 = str2double(inputdlg('请输入行缩放倍数', 'INPUT scale factor', 1,

    {'0.6'}));%行默认变为原来的0.6倍

    K2 = str2double(inputdlg('请输入列缩放倍数', 'INPUT

    scale factor', 1, {'0.4'}));%列默认变为原来的0.4倍

    width = K1 * rows;

    height = K2 * cols;

    im2 = uint8(zeros(width,height)); %定义输出图像矩阵

    widthScale = rows/width;

    heightScale = cols/height;

    for x = 6:width - 6         %为防止矩阵溢出而选择的参数6

    for y = 6:height - 6

    oldX = x * widthScale; %oldX,oldY为原坐标,x,y为新坐标

    oldY = y * heightScale;

    if (oldX/double(uint16(oldX)) == 1.0) &

    (oldY/double(uint16(oldY)) == 1.0)

    im2(x,y) = I(int16(oldX),int16(oldY));

    else

    a = double(round(oldX));

    b = double(round(oldY)); %若不是整数四舍五入后把临近值赋过去

    im2(x,y) = I(a,b);

    end

    end

    end

    imshow(I); %输出原图像

    figure;

    imshow(im2); %输出缩放后图像

    %====================用matlab对图像进行旋转(双线性插值法)

    clear;%此题是用最近邻域法实现图像旋转

    im1=imread('b.jpg');

    [m,n,p]=size(im1);

    %

    将图像旋转30度

    a=0.5; %a=sin30=0.5

    b=0.866;  %b=cos30=0.866

    row=n*a+m*b;

    col=n*b+m*a;

    for

    i=1:row                                %先把图象填充成全黑

    for j=1:col

    im2(i,j,:)=uint8(0);

    end

    end

    for i=1:m                                          %把原图象像素点旋转后变为新图象点

    for j=1:n

    xx=round(abs((i-m/2)*b-(j-n/2)*a+row/2));

    yy=round(abs((i-m/2)*a+(j-n/2)*b+col/2));

    for k=1:3

    im2(xx,yy,k)=im1(i,j,k);

    end

    end

    end

    temp1=uint8(0);

    temp2=uint8(0);

    temp3=uint8(0);

    for i=1:row                                        %把画面上的空点按照最近邻插值法填充

    temp1=uint8(0);

    temp2=uint8(0);

    temp3=uint8(0);

    for j=1:col                                    %找到最右的图象边界点

    if

    (im2(i,j,:)==uint8(0))

    else

    kk=j;

    end

    end

    for j=1:kk

    if (im2(i,j,:)==uint8(0))

    im2(i,j,1)=temp1;

    im2(i,j,2)=temp2;

    im2(i,j,3)=temp3;

    else

    temp1=im2(i,j,1);

    temp2=im2(i,j,2);

    temp3=im2(i,j,3);

    end

    end

    end

    imshow(im1);

    figure;

    imwrite(im1,'5.jpg');

    %保存原图像

    imshow(im2);

    imwrite(im2,'6.jpg');%保存旋转后图像

    %======================用matlab对图片进行旋转(最近邻域法)

    clear;%此题是用最近邻域法实现图像旋转

    im1=imread('b.jpg');

    [m,n,p]=size(im1);

    %

    将图像旋转30度

    a=0.5; %a=sin30=0.5

    b=0.866;  %b=cos30=0.866

    row=n*a+m*b;

    col=n*b+m*a;

    for

    i=1:row                                %先把图象填充成全黑

    for j=1:col

    im2(i,j,:)=uint8(0);

    end

    end

    for i=1:m                                          %把原图象像素点旋转后变为新图象点

    for j=1:n

    xx=round(abs((i-m/2)*b-(j-n/2)*a+row/2));

    yy=round(abs((i-m/2)*a+(j-n/2)*b+col/2));

    for k=1:3

    im2(xx,yy,k)=im1(i,j,k);

    end

    end

    end

    temp1=uint8(0);

    temp2=uint8(0);

    temp3=uint8(0);

    for i=1:row                                        %把画面上的空点按照最近邻插值法填充

    temp1=uint8(0);

    temp2=uint8(0);

    temp3=uint8(0);

    for j=1:col                                    %找到最右的图象边界点

    if

    (im2(i,j,:)==uint8(0))

    else

    kk=j;

    end

    end

    for j=1:kk

    if (im2(i,j,:)==uint8(0))

    im2(i,j,1)=temp1;

    im2(i,j,2)=temp2;

    im2(i,j,3)=temp3;

    else

    temp1=im2(i,j,1);

    temp2=im2(i,j,2);

    temp3=im2(i,j,3);

    end

    end

    end

    imshow(im1);

    figure;

    imwrite(im1,'5.jpg');

    %保存原图像

    imshow(im2);

    imwrite(im2,'6.jpg');%保存旋转后图像

    展开全文
  • matlab图像缩放算法简单原理

    千次阅读 2016-01-24 20:32:29
    % matlab库函数,调用imresize可以重新生成不同尺寸的图片   cubic_factor函数 % 距离系数计算公式 % ┏ 1 - 2 *Abs(x)^ 2 +Abs(x)^ 3  , 0 (x)< 1 % S(x)={ 4 - 8 *Abs(x)+ 5 *...

    http://www.cnblogs.com/xy-kidult/p/3404035.html

    主要有两个代码,一个是主代码,包括注释,另一个是cubic_factor函数,用于计算距离系数的。

    复制代码
    clear;
    close all;  
    clc;
    
    
    CONST=50;
    A=imread('testImage\hyf1.bmp');
    bwimg=im2bw(A);
    resize_img=[];
    [srcWidth srcHeight]=size(bwimg);
    
    
    % %
    % 以下算法思路参考http://blog.csdn.net/ArtX/article/details/1540539和http://blog.csdn.net/qiqi5521/article/details/2207562这两篇博客,谢谢博主。
    % % 最近邻
    % % 思想是根据 srcWidth/dstWidth = srcX/dstY,最后再对srcX取整
    % % 缺点是精度不够,严重失真
    % 
    % dstWidth=srcWidth+CONST*2;
    % dstHeight=srcHeight+CONST*2;
    % resize_img=zeros(dstWidth,dstHeight);
    % 
    % % 像素变化公式计算公式
    % for i=1:dstWidth
    %     for j=1:dstHeight
    %     src_i=i*(srcWidth/dstWidth);
    %     src_j=j*(srcHeight/dstHeight);
    %     resize_img(i,j)=bwimg(round(src_i),round(src_j)); % round四舍五入
    %     end
    % end
    % 
    % figure,imshow(bwimg);
    % figure,imshow(resize_img)
    
    % % 双线性内插值算法
    % % 聪明的方法
    % % 最近邻法中根据 srcWidth/dstWidth = srcX/dstY,可以倒退出一个srcX的坐标值,但是这个值是浮点数,
    % % 这个浮点数提供了一些信息,它离它在原始图像四周的像素值的关系,根据这个关系,计算一个更接近的dstX,
    % % 然后再填充目标图像
    % % 公式:
    % % f(i+u,j+v)=(1-u)(1-v)f(i,j)+(1-u)vf(i,j+1)+u(1-v)f(i+1,j)+uvf(i+1,j+1)
    % % i,j 为浮点坐标的整数部分; u,v为浮点坐标的小数部分
    % % 优点:缩放后图像质量高
    % % 缺点: 计算量大,双线性插值具有低通滤波器的性质,使高频分量受损,图像轮廓在一定程度上变模糊
    % 
    % dstWidth=srcWidth+CONST*2;
    % dstHeight=srcHeight+CONST*2;
    % resize_img=zeros(dstWidth,dstHeight);
    % 
    % % 像素变化公式计算公式
    % for i=1:dstWidth-1
    %     for j=1:dstHeight-1
    %     src_i=i*(srcWidth/dstWidth);
    %     src_j=j*(srcHeight/dstHeight);
    %     src_ii=fix(src_i);
    %     src_iu=src_i - src_ii; % none fix part
    %     src_jj=fix(src_j);
    %     src_jv=src_j - src_jj;
    %     if src_ii == 0 
    %         src_ii=src_ii+1;
    %     end
    %     if src_jj ==0 
    %         src_jj=src_jj+1;
    %     end
    %     resize_img(i,j)=(1-src_iu)*(1-src_jv)*bwimg(src_ii,src_jj)+(1-src_iu)*src_jv*bwimg(src_ii,src_jj+1)+src_iu*(1-src_jv)*bwimg(src_ii+1,src_jj)...
    %         +src_iu*src_jv*bwimg(src_ii+1,src_jj+1);
    %     end
    % end
    % figure,imshow(bwimg);
    % figure,imshow(resize_img)
    
    
    % 三次卷积法
    % 三次卷积法计算精度高,但计算亮大,思路是根据一个浮点坐标(i+u,j+v)周围的16个邻点,由下列公式得出目的像素值f(i+u,j+v):
    % 
    %     f(i+u,j+v) = [A] * [B] * [C]
    % 
    % [A]=[ S(u + 1) S(u + 0) S(u - 1) S(u - 2) ]
    % 
    %   ┏ f(i-1, j-1) f(i-1, j+0) f(i-1, j+1) f(i-1, j+2) ┓
    % [B]=┃ f(i+0, j-1) f(i+0, j+0) f(i+0, j+1) f(i+0, j+2) ┃
    %   ┃ f(i+1, j-1) f(i+1, j+0) f(i+1, j+1) f(i+1, j+2) ┃
    %   ┗ f(i+2, j-1) f(i+2, j+0) f(i+2, j+1) f(i+2, j+2) ┛
    % 
    %   ┏ S(v + 1) ┓
    % [C]=┃ S(v + 0) ┃
    %   ┃ S(v - 1) ┃
    %   ┗ S(v - 2) ┛
    % 
    %    ┏ 1-2*Abs(x)^2+Abs(x)^3      , 0<=Abs(x)<1
    % S(x)={ 4-8*Abs(x)+5*Abs(x)^2-Abs(x)^3 , 1<=Abs(x)<2
    %    ┗ 0                , Abs(x)>=2
    % 有人说,S(x)是对 Sin(x*Pi)/x
    % 的逼近(Pi是圆周率——π),通过极限计算,可以知道Sin(x*Pi)/x的范围在0~pi之间,无法理解为什么要这样设置S(x)
    % 但上述求A、B、C的公式还是可以理解,根据双线性插值的思想,也就是根据浮点数在原始坐标中与邻近像素的距离远近来决定原始坐标在目的坐标中所占的比重
    
    
    dstWidth=srcWidth-CONST*2;
    dstHeight=srcHeight-CONST*2;
    resize_img=zeros(dstWidth,dstHeight);
    A=[];B=[];C=[];
    
    
    % 像素变化公式计算公式
    for i=3:dstWidth-2
        for j=3:dstHeight-2
        src_i=i*(srcWidth/dstWidth);
        src_j=j*(srcHeight/dstHeight);
        src_ii=fix(src_i); % 整数部分
        src_iu=src_i - src_ii; % 小数部分
        src_jj=fix(src_j);
        src_jv=src_j - src_jj;
        
        A=[ cubic_factor(src_iu+1) cubic_factor(src_iu) cubic_factor(src_iu-1) cubic_factor(src_iu-2) ];
        C=[ cubic_factor(src_jv+1); cubic_factor(src_jv); cubic_factor(src_jv-1); cubic_factor(src_jv-2) ];
        B=[ bwimg(src_ii -1,src_jj -1) bwimg(src_ii-1,src_jj) bwimg(src_ii-1,src_jj+1) bwimg(src_ii-1,src_jj+2);...
            bwimg(src_ii,src_jj-1) bwimg(src_ii,src_jj) bwimg(src_ii,src_jj+1) bwimg(src_ii,src_jj+2); ...
            bwimg(src_ii+1,src_jj-1) bwimg(src_ii+1,src_jj) bwimg(src_ii+1,src_jj+1) bwimg(src_ii+1,src_jj+2); ...
            bwimg(src_ii+2,src_jj-1) bwimg(src_ii+2,src_jj) bwimg(src_ii+2,src_jj+1) bwimg(src_ii+2,src_jj+2) ];
        
        resize_img(i,j)=A*B*C;
        
     
        end
    end
    
    figure,imshow(bwimg);
    figure,imshow(resize_img)
    
    
    % dstimg=imresize(srcimg,4,'bicubic'); % matlab库函数,调用imresize可以重新生成不同尺寸的图片
    复制代码

     

    cubic_factor函数

    复制代码
    % 距离系数计算公式
    %    ┏ 1-2*Abs(x)^2+Abs(x)^3      , 0<=Abs(x)<1
    % S(x)={ 4-8*Abs(x)+5*Abs(x)^2-Abs(x)^3 , 1<=Abs(x)<2
    %    ┗ 0                , Abs(x)>=2
    function S=cubic_factor(x)
    
    if 0<=abs(x)<1
        S=1-2.*abs(x).^2+abs(x).^3;
    elseif 1<=abs(x)<2
        S=4-8.*abs(x)+5.*abs(x).^2-abs(x).^3;
    else
        S=0;
    end
    复制代码

     

     

    上面代码有一个问题,”最右边和最下边的像素实际上并没有参与计算“,似乎是由于最初的中心点选择方法引起的,网上有一个人提出了解决方案(http://handspeaker.iteye.com/blog/1545126),看了一下,大概了解他的想法,试验之后,没有效果,可能我理解错了,下次再来解决这个问题并修改代码吧。


    展开全文
  • matlab实现图片缩放

    千次阅读 2019-07-07 15:38:37
    zoomNum为缩放系数 height和width的命名可能反了,不要在意这些细节… I=imread('tissue.png'); figure(1); imshow(I) zoomNum=0.5; [fWidth fHeight]=size(I); fHeight=fHeight/3; cWidth=floor(fWidth*...

    利用双线性插值实现
    zoomNum为缩放系数
    height和width的命名可能反了,不要在意这些细节…
    一开始用subplot输出两幅图片,明明已经得到一个更大的矩阵了但就是死活看不出效果,后来求助于助教才知道subplot会让它们输出大小一致(吐血)…

        I=imread('tissue.png');
        figure(1);
        imshow(I)
        zoomNum=0.5;
        [fWidth fHeight]=size(I);
        fHeight=fHeight/3;
        cWidth=floor(fWidth*zoomNum);
        cHeight=floor(fHeight*zoomNum);
        res=zeros(cWidth,cHeight,3);
        %四个顶点
        res(1,1,:)=I(1,1,:);
        res(1,cHeight,:)=I(1,fHeight,:);
        res(cWidth,1,:)=I(fWidth,1,:);
        res(cWidth,cHeight,:)=I(fWidth,fHeight,:);
        %四条边界
        for dstX=2:cWidth-1
            srcX=dstX/zoomNum;
            i=floor(srcX);u=srcX-i;
            res(dstX,1,:)=u*I(i,1,:)+(1-u)*I(i+1,1,:);
            res(dstX,cHeight,:)=u*I(i,fHeight,:)+(1-u)*I(i+1,fHeight,:);
        end
        for dstY=2:cHeight-1
            srcY=dstY/zoomNum;
            i=floor(srcY);u=srcY-i;
            res(cWidth,dstY,:)=u*I(fWidth,i,:)+(1-u)*I(fWidth,i+1,:);
            res(1,dstY,:)=u*I(1,i,:)+(1-u)*I(1,i+1,:);
        end
        %中间
        for dstX=2:cWidth-1
            for dstY=2:cHeight-1
                srcX=dstX/zoomNum;
                srcY=dstY/zoomNum;
                i=floor(srcX);u=srcX-i;
                j=floor(srcY);v=srcY-j;
                res(dstX,dstY,:)=(1-u)*(1-v)*I(i,j,:)+(1-u)*v*I(i,j+1,:)+u*(1-v)*I(i+1,j,:)+u*v*I(i+1,j+1,:);
            end
        end
        figure(2);
        imshow(uint8(res));
    
    展开全文
  • Matlab实现图像的比例缩放

    万次阅读 多人点赞 2018-05-10 22:35:49
    以灰度图像circuit.tif为例,利用Matlab图像处理工具箱中的imresize函数对图像进行比例缩放变换。要求:创建4个figure窗口(不可以用subplot,显示不出来放大效果),分别用于显示原始图像、等比例放大1.5倍后的图像...
  • matlab开发-使用交叉像素插值进行图像缩放。使用跨像素插值算法放大NxM图像
  • Matlab图像的几何变换之图像缩放

    万次阅读 2017-12-13 13:07:37
    Matlab图像缩放 Matlab实现函数代码如下: clc I=rgb2gray(imread('Campus-scenery2sk.JPG')); figure,imshow(I); title('原图'); reduceI=imresize(I,0.5); %原图像I缩小0.5倍 figure,imshow(reduceI); title('...
  • Matlab——图像缩放(插值法)

    万次阅读 多人点赞 2018-07-30 15:49:36
     用双线性内插法实现位深度为8的灰度图像缩放。   思路:  输入原图像以及缩放图像的像素要求(宽度*高度),处理后输出新图像。  我是用matlab来实现scale(input_img,scale_size)函数的,输入图像路径...
  • matlab实现图像缩放

    万次阅读 2019-07-03 19:07:09
    matlab实现图像缩放 缩放同样是仿射变换的一种特例,它接受水平和垂直两个方向的缩放值。 matlab 实现水平,垂直,水平垂直缩放: clear all close all clc img = imread('test.jpg'); %读取输入图片的...
  • 自编Matlab函数实现图像缩放 自编Matlab函数实现图像缩放 自编Matlab函数实现图像缩放 自编Matlab函数实现图像缩放 自编Matlab函数实现图像缩放
  • MATLAB:图片缩放

    千次阅读 2018-10-21 17:31:33
    将指定文件夹中的所有图片一次缩小后保存,名字与原来的名字相同。 核心语句: S=imresize(rgb,1/6,'nearest'); 整体代码: file_path = 'F:\2018\'; % 图像文件夹路径 img_path_list = dir(strcat(file_path,'*....
  • 利用matlab进行图像的一些操作处理 缩放和旋转功能的实现
  • 图像放大算法总结及MATLAB源程序1,插值算法(3种):(1)最邻近插值(近邻取样法): 最近插值的的思想很简单就是把这个非整数坐标作一个四舍五入,取最近的整数点坐标处的点的颜色。可见,最邻近插值简单且直观,但...
  • 图像缩放 matlab (0.8倍)不用函数

    千次阅读 2018-08-25 15:06:31
    matlab里面有自带的缩放函数,只要把图片读入后就可以用imresize(A, m)进行缩放,具体操作可以自行查阅。 要求是不用函数对图像进行缩放,代码如下: function [ img2 ] = myresize(m) img1=imread('E:/pics/2.bmp...
  • %把一个目录下的图片缩放到指定大小 dpath = 'D:\tst测试工作\测试文件\清晰照片库1300张'; lst = dir(dpath); cnt = 0; for i=1:length(lst) if isdir(lst(i).name) continue; end tpath = [lst(i).folder,'...
  • MATLAB 图像缩放 旋转

    2009-11-28 22:47:07
    图像信号处理 图像缩放 旋转 双线性插值
  • 可以通过给定的正因子缩放给定的图像。 复制nearest_neighbor_zoom.m 文件和应该放大到您的工作目录的图像文件。 如果图像文件的名称是 image.jpg 并且需要的缩放系数是 2.23, 在命令窗口上运行以下命令。 Nearest_...
  • 在做图像处理的时候,有时需要对图片的像素进行放大或则缩小。使用Matlab很容易实现对图像的放大和缩小。这里只讲缩放到固定像素的方法。clear;clc; %清除以前的数据folderName = dir(‘train‘); %显示train...
  • 基于matlab GUI灰度+缩放+存储 二、源代码 function varargout = GUI_TEST(varargin) % GUI_TEST MATLAB code for GUI_TEST.fig % GUI_TEST, by itself, creates a new GUI_TEST or raises the existing % singleton...
  • 本周的作业是自己通过公式编写图像旋转与缩放的代码。今天先通过调用函数的方法来实现。  图像的旋转: A=imread('2.jpg'); J=imrotate(A, 30); subplot(1,2,1);imshow(A);title('原图'); subplot(1,2,2);...
  • %缩放后的图像像素坐标coordinate在原像素中的坐标pix=[i/m j/n 1] u = coord(1)-floor(coord(1)); %x方向(纵轴)虚坐标与左上点实坐标相减的小数部分 v = coord(2)-floor(coord(2)); %y方向(横轴)虚坐标与左上...
  • matlab开发-图像处理使用双线性插值缩放动画。本文采用双线性插值法对图像进行正整数因子缩放

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 9,455
精华内容 3,782
关键字:

matlab图像缩放

matlab 订阅
友情链接: 3 独立按键.rar