%读入6幅图像(每一幅图像的大小是564*564)
f1 = imread('WashingtonDC_Band1_564.tif');
subplot(3,2,1),imshow(f1);
f2 = imread('WashingtonDC_Band2_564.tif');
subplot(3,2,2),imshow(f2);
f3 = imread('WashingtonDC_Band3_564.tif');
subplot(3,2,3),imshow(f3);
f4 = imread('WashingtonDC_Band4_564.tif');
subplot(3,2,4),imshow(f4);
f5 = imread('WashingtonDC_Band5_564.tif');
subplot(3,2,5),imshow(f5);
f6 = imread('WashingtonDC_Band6_564.tif');
subplot(3,2,6),imshow(f6);
% 对图像进行堆叠
S = cat(3,f1,f2,f3,f4,f5,f6);
[X,R] = imstack2vectors(S);
P = princomp(X,6);
% 显示主分量图像
g1 = P.Y(:,1);
g1 = reshape(g1,512,512);
subplot(3,2,1),imshow(g1,[]);
g2 = P.Y(:,2);
g2 = reshape(g2,512,512);
subplot(3,2,2),imshow(g2,[]);
g3 = P.Y(:,3);
g3 = reshape(g3,512,512);
subplot(3,2,3),imshow(g3,[]);
g4 = P.Y(:,4);
g4 = reshape(g4,512,512);
subplot(3,2,4),imshow(g4,[]);
g5 = P.Y(:,5);
g5 = reshape(g5,512,512);
subplot(3,2,5),imshow(g5,[]);
g6 = P.Y(:,6);
g6 = reshape(g6,512,512);
subplot(3,2,6),imshow(g6,[]);

上述代码运行后出现错误:

错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

将代码修改为:

%读入6幅图像(每一幅图像的大小是564*564)
f1 = imread('WashingtonDC_Band1_564.tif');
subplot(3,2,1),imshow(f1);
f2 = imread('WashingtonDC_Band2_564.tif');
subplot(3,2,2),imshow(f2);
f3 = imread('WashingtonDC_Band3_564.tif');
subplot(3,2,3),imshow(f3);
f4 = imread('WashingtonDC_Band4_564.tif');
subplot(3,2,4),imshow(f4);
f5 = imread('WashingtonDC_Band5_564.tif');
subplot(3,2,5),imshow(f5);
f6 = imread('WashingtonDC_Band6_564.tif');
subplot(3,2,6),imshow(f6);
% 对图像进行堆叠
S = cat(3,f1,f2,f3,f4,f5,f6);
[X,R] = imstack2vectors(S);
P = princomp(X,6);
% 显示主分量图像
g1 = P.Y(:,1);
g1 = reshape(g1,564,564);
subplot(3,2,1),imshow(g1,[]);
g2 = P.Y(:,2);
g2 = reshape(g2,564,564);
subplot(3,2,2),imshow(g2,[]);
g3 = P.Y(:,3);
g3 = reshape(g3,564,564);
subplot(3,2,3),imshow(g3,[]);
g4 = P.Y(:,4);
g4 = reshape(g4,564,564);
subplot(3,2,4),imshow(g4,[]);
g5 = P.Y(:,5);
g5 = reshape(g5,564,564);
subplot(3,2,5),imshow(g5,[]);
g6 = P.Y(:,6);
g6 = reshape(g6,564,564);
subplot(3,2,6),imshow(g6,[]);

运行上述修改后的代码之后,就不会出现reshape错误。

待处理的原图

处理后的主分量图像

本人错误原因:重建的图像与原图大小不一致导致出错,因此,在重建的reshape语句进行运行时,要确保图像的像素一致。(这是本人学习中的出错与纠错,仅仅是希望能够帮助到有相似错误的朋友,谢谢大家,希望与大家一起进步。)

错误使用 reshape要执行 RESHAPE,请勿更改元素数目。相关推荐

  1. reshape [] matlab,matlab reshape函数

    语法 (1)B = reshape(A,m,n) 使用方法: B=reshape(A,m,n) 返回m*n矩阵B,它的元素是获得A的行宽度.假设A没有m*n元素,得到一个错误结果. 样例: >& ...

  2. matlab reshape 用法,函数 reshape 的用法

    函数 reshape 的用法别问小编过得好不好不好你也帮助不了好也不是你的功劳. 请小编在MATLAB编程中遇到了一个问题,函数reshape的用法小编就是没有弄B = reshape(A,m,n) ...

  3. matlab reshape意义,matlab reshape使用

    reshape把指定的矩阵改变形状,但是元素个数不变, 例如,行向量: a = [1 2 3 4 5 6] 执行下面语句把它变成3行2列: b = reshape(a,3,2) 执行结果: b = 1 ...

  4. 修改windows功能要开启哪个服务器,win7更改windows功能提示出现错误并非所有的功能被成功更改怎么办...

    相信大家都知道在win7系统中,很多系统自带的一些功能是可以在windows功能里进行关闭的.可最近有win7 64位旗舰版用户在window功能中关闭ie浏览器的时候,系统弹出了"出现错误 ...

  5. reshape()用法 【reshape(-1)、reshape(-1,1)、reshape(1,-1)、reshape(m,-1)、reshape(-1,m)、reshape(-1,m,n)】

    1 reshape(m, -1)即行数固定,列数需要计算 2 reshape(-1, m) 即列数固定,行数需要计算 3 一维和二维数组,reshape(-1),reshape(-1,1),resha ...

  6. 如何使用JavaScript更改元素的类?

    如何使用JavaScript更改HTML元素的类以响应onclick事件? #1楼 对以前的正则表达式的一些小注释和调整: 如果班级列表中的班级名称不止一次,您将希望在全局范围内执行此操作. 而且,您 ...

  7. matlab 错误使用 connector.internal.autostart.run输入参数的数目不足。

    matlab打开后提示: 错误使用 connector.internal.autostart.run输入参数的数目不足 原因:自己写的一个函数和matlab自带的函数重名了 参考:警告: 在 matl ...

  8. numpy.ndarray.reshape()torch.Tensor.reshape()与numpy.ndarray.view()torch.Tensor.view()的区别(view_as())

    参考文章:[Python] 更改矩阵形状:reshape(m,n).view(m,n)和view_as(tensor)

  9. 【Android 逆向】Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )

    文章目录 一.Linux 权限简介 二.系统权限 / 用户权限 / 匿名用户权限 1.系统权限 2.用户权限 3.匿名用户权限 一.Linux 权限简介 Linux 是基于文件的系统 , 内存 , 设 ...

最新文章

  1. UE4_Lighting Scenarios
  2. 【正一专栏】儿时的夏天——似水流年
  3. 线性回归数据_数据科学笔记(三)——线性回归
  4. AQS(CountdownLatch、CyclicBarrier、Semaphore)、FutureTask、BlockingQueue、ForkJoin
  5. OpenCASCADE:Android交叉编译 OCCT库
  6. SSD(Single Shot MultiBox Detector):因为数据集中图像通道数不对导致的训练异常
  7. 《MySQL——锁》
  8. 一维装箱问题 java_c语言来实现贪心算法之装箱问题
  9. 奇怪的拍立得,按下快门,你就被AI变成一张简笔涂鸦 | 补童年·有代码
  10. H3C路由器映射端口到外网
  11. linux系统进去dev sdb6,linux书上划的题的答案
  12. ENVI入门系列教程---一、数据预处理---3.1 基于自带定位信息的几何校正
  13. 100款机器学习数据集
  14. 魅族 android版本升级,魅族系统更新APP
  15. 樱(桜) - 堀江由衣 (日语-中文-罗马)
  16. 个人用 Qt + ffmpeg + D3D9/D3D11 开发的播放器
  17. Everyone Do this at the Beginning!!--kaggle数据预处理-超详细的解说
  18. 欧冠 欧洲杯免费直播平台
  19. shell的转义字符
  20. 解决键盘模式(布局)的错误导致的部分键位失灵或异常(姑且这样描述问题吧)

热门文章

  1. 微信小程序开发(第一篇 开发环境的准备+demo获取微信用户信息)
  2. 阿里云直播服务开通配置流程
  3. 【沧小海笔记】之基于FPGA的以太网设计相关知识——第二章 物理层介绍(基于88E1111)
  4. sendcloud php 群发,laravel5.5 使用sendcloud发送邮件
  5. 利用windows网络诊断功能修复网络能连接但无Internet
  6. Crash自动修复系统
  7. PHPstudy V8 安装PHPAdmin
  8. android 生成bks_android双向认证(自签名证书) bks的生成方法
  9. 中职计算机应用专业核心素养的,基于职业发展的中职学生核心素养的研究与培养...
  10. php解压有密码的压缩包,linux下解压有密码的rar压缩包