鱼C论坛

 找回密码
 立即注册
查看: 1995|回复: 0

MATLAB简单问题求救

[复制链接]
发表于 2020-5-12 22:55:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
clear all;close all;clc  
I1=imread('C:\Users\10739\Desktop\DSC09140.jpg');%打开图像
I1=rgb2gray(I1); %将RGB图像转换为灰度图像
figure(1);imshow(I1);title('原始图像');
I=im2double(I1); %归一化----[0,1]
imwrite(I,'原始图像2.JPG');
I2=zeros(240,135);I3=I2;
T=dctmtx(8);


quantization_table=[16 11 10 16 24 40 51 61 ;
    12 12 14 19 26 58 60 55 ;
    14 13 16 24 40 57 69 56 ;
    14 17 22 29 51 87 80 62 ;
    18 22 37 56 68 109 103 77;
    24 35 55 64 81 104 113 92;
    49 64 78 87 103 121 120 101;
    72 92 95 98 112 100 103 99];
%分块做DCT变换(8×8)
for i=1:8:1920
    for j=1:8:1080
       P=I(i:i+7,j:j+7);
        K=T*P*T';
        I2(i:i+7,j:j+7)=K;
        K=K./quantization_table;%量化
        K(abs(K)<0.03)=0;
        I3(i:i+7,j:j+7)=K;
    end
end
figure;imshow(I2);title('DCT变换后的频域图像');%显示DCT变换后的频域图像


%分块做DCT反变换(8×8)
for i=1:8:1920
    for j=1:8:1080
        P=I3(i:i+7,j:j+7).*quantization_table;%反量化
        K=T'*P*T;
        I4(i:i+7,j:j+7)=K;
    end
end
I4=uint8(I4);
figure;imshow(I4);title('复原图像');
imwrite(I4,'复原图像6.jpg');
sigma(I4);figure;imshow(I4);


报错:
索引超出矩阵维度。

出错 TEST4 (line 22)
        P=I(i:i+7,j:j+7);
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-16 13:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表