这几天需要画出高光谱遥感影像,踩了不少坑,资料真的少得可怜。虽然没有完全搞懂,总归是尝试着画出来了。所以在这里把我遇到的问题罗列一下,仅供参考,如有不足,欢迎大家指正补充。

1.先来贴出我当时看到的第一篇参考资料:https://www.pythonheidong.com/blog/article/295553/

没什么大毛病,为了防止原网页失效,我再大概搬运一下:

需要的环境:spectral,ipython,matplotlib

命令行(cmd)依次输入如下代码:

ipython --pylab    #启动Ipython

import  os

import scipy.io as sio

from spectral import *

dataset_path = os.path.join('你的数据所存放的路径')

data = sio.loadmat(os.path.join(dataset_path, '你的数据.mat'))['y']

spectral.settings.WX_GL_DEPTH_SIZE = 100

view_cube(data, bands=[29, 19, 9])

--------------------------------------------------------------------------------------------------

2.现在来说一下以上代码在我运行的过程中出现的问题:

(1)***.mat数据的格式,我是用matlab将其改成了长×宽×光谱带数的格式

(2)这个100会报错,我改成了32还是会报错:SystemError: returned a result with an error set

这个错误我在百度谷歌都没有找到解决办法。最后改成16,该错误就不见了

(3)bands=[29,19,9]这个我也不知道是什么意思,我将其改成了我的数据的维度,发现会报错,查了一下资料,看到有人用的数据维度和这个也是不一致的,所以这个我就当做一个默认值,在运行的过程中,没有改动,也就不再报这个错误了

3.然后就是环境问题了:

正常情况下我想大家也和我一样没有安装spectral这个库

所以在运行以上代码之前一定要先装上这个库。参考:https://blog.csdn.net/sinat_41421587/article/details/102709136

因为要使用git命令,还需要装两个东西,所以我是直接复制网址,下载spectral的

然后按照步骤安装

大概步骤是:

(1)下载并解压

git://www.github.com/spectralpython/spectral.git

(2)cd到你的文件路径,是可以看到setup这个文件

然后

python setup.py install

(3)安装:

pip install spectral

(4)最后进行测试

python -m spectral.tests.run

不过只安装着一个后面还会出问题的,我们看到了他之前说的依赖关系。我是之前电脑上没有安装OpenGL和wxPython(一定确定是适合自己操作系统和python版本的版本)

所以后面有安装了这两个,也没遇到什么大问题,就是在装OpenGL的时候,明明安装成功了,但是import的时候还是会出错,查到的错误原因是我的numpy版本过高,所以卸载了numpy重新安装一遍,之后就没什么问题了。

numpy重装的过程中需要获得管理员权限,linux下是用的sudo,我是windows,所以参考该文获得管理员权限https://blog.csdn.net/weixin_40161254/article/details/83073910,很详细。

分享一个玄学,做好这一切之后,我还是画不出来。可是熬一个通宵了,实在太困了。我就去睡觉了。

第二天重启了一下电脑,又试了一次最开始画图的代码,本来没抱有太大希望,结果画出来了。很开心,和大家分享一下。也顺便提醒一下朋友们,如果还是不行,重启大法试一试。然后就是,如果在安装的过程中出现问题了,就多尝试几遍。这个已经是最详细的了,希望可以帮到你们

python怎样画立体图形-用python来画出高光谱遥感影像的3D立体图相关推荐

  1. 用python来画出高光谱遥感影像的3D立体图

    这几天需要画出高光谱遥感影像,踩了不少坑,资料真的少得可怜.虽然没有完全搞懂,总归是尝试着画出来了.所以在这里把我遇到的问题罗列一下,仅供参考,如有不足,欢迎大家指正补充. 1.先来贴出我当时看到的第 ...

  2. cad怎么画立体图形教学_CAD怎么画立体图,手把手教你画三维图形

    AutoCAD是一款非常好用的软件,大部分的小伙伴都是用CAD来画二维图,实际上,这个软件还可以用来画立体图形,也就是三维图形,今天小编通过实例教大家如何画一个三维图形. 今天的实例是教大家画一个牟合 ...

  3. python三维立体画_用Python绘制高光谱遥感图像的三维立体图,python,来画,出高,影像,3D...

    这几天需要画出高光谱遥感影像,踩了不少坑,资料真的少得可怜.虽然没有完全搞懂,总归是尝试着画出来了.所以在这里把我遇到的问题罗列一下,仅供参考,如有不足,欢迎大家指正补充. 没什么大毛病,为了防止原网 ...

  4. opencv入手小训——画立体图形

    opencv入手小训--画立体图形 项目要求 用opencv程在空图上(背景为0)上画出立方体并把一张图片分别紧贴. 项目代码 #include "opencv2/core.hpp" ...

  5. python画立体图形代码_python中如何画三维的图形?

    之前教了大家不少简单的画图方法,有的小伙伴已经想尝试更漂亮的高难度图形.小编找到了一个简单容易上手的分享给大家. 如果需要绘制三维的图形,matlab可以,python同样可以,代码风格也是极其的与m ...

  6. java 图形_java 画立体图形

    参数: xPoints - x 坐标数组. yPoints - y 坐标数组. nPoints - 点的总数. 下面是我的demo程序: import java.awt.Color; import j ...

  7. cad怎么画立体图形教学_怎么在CAD中绘制三维立体图

    三维立体图形在CAD中是很方便绘制的,并且方法也有很多,我们掌握一种就够了.那么大家知道怎么在CAD中绘制三维立体图吗?下面是学习啦小编整理的怎么在CAD中绘制三维立体图的方法,希望能给大家解答. 在 ...

  8. cad怎么画立体图形教学_cad怎么绘立体图?

    cad怎么绘立体图?cad是行家必备基础绘图软件,但是有很多初学者往往不太会用cad绘制不规则立体图,下面让我以来为大家讲解一下其中最常用的一种:布尔运算差集 ,下面分享cad布尔运算差集绘圆柱体的教 ...

  9. java 画立体图形

    java的几何图像支持并不是很好,java后面提供的2D.3D我试试了下,感觉效果不好,立体感不强,我没有仔细研究了,不知道到底能不能画出这样的几何图形来,于是我就自己查了下API,查到这个方法dra ...

最新文章

  1. 拷贝构造函数的参数类型必须是引用
  2. AJAX-nodemon自动重启工具安装
  3. 临时配置网络(ip,网关,dns)+永久配置
  4. Realtek 8192cu 支持 Android Hotspot
  5. 职场交流:一位软件工程师的7年总结
  6. ggplot2绘图入门系列之四:再说散点图
  7. 设计模式笔记十三:代理模式
  8. php output详解,PHP输出缓冲控制Output Control系列函数详解,output函数详解
  9. 实训|第十一天学习一下linux中的进程,文件查找,文件压缩与IO重定向
  10. KVM详解(八)——KVM虚拟机自启动
  11. 区块链软件公司:什么时候区块链技术?
  12. Windows 95, 98, Me 的界面对比(图集)(原文于2016-03-26发布于贴吧)
  13. 《淘宝技术这十年》读书笔记 (一).淘宝网技术简介及来源
  14. 分子动力学模拟计算新冠病毒S蛋白和抗体结合自由能
  15. The following packages are not available
  16. 从此甩掉光驱 U盘安装系统最详攻略(转自腾讯数码)
  17. 成为一个好的PHP工程师需要掌握什么技能
  18. Spring AOP 术语
  19. Linux input 子系统详解
  20. 物联网充电桩(电动自行车)管理方案

热门文章

  1. 【LaTeX】E喵的LaTeX新手入门教程(4)图表
  2. Query Specific Fusion for Image Retrival 学习日常
  3. 春节到,献诗一首,祝大家新春愉快
  4. 【oracle】复合数据类型
  5. python学习心得--编码格式篇
  6. php单元测试断言方法
  7. eclipse 和 myeclipse 字符编码设置
  8. 分布式架构高可用架构篇_04_Keepalived+Nginx实现高可用Web负载均衡
  9. python 多进程使用总结
  10. C# Attribute