zoukankan      html  css  js  c++  java
  • envi利用矢量数据对影像做多边形裁剪 (转)

    2011-05-25 17:31:10|  分类: ENVI|举报|字号 订阅

     

     利用矢量数据对影像做多边形裁剪

    ENVI中是可以利用矢量来对影像作多边形裁减的,但是要求矢量文件是面矢量文件,而且它要和需要裁剪的影像必须是配准的,裁减的方法是先将矢量转化成为感兴趣区域(ROI),再利用ROI裁减出感兴趣区域。

    操作方法如下:

    1.打开影像文件和矢量文件

    分别在ENVI主菜单中选择FileàOpen Image File和FileàOpen Vector File打开所要裁减的影像和矢量文件,它们会分别出现在可用波段列表和可用矢量列表中,如图所示:

    clip_image001

    并在左上图中选择load selected将矢量叠加到影像上,确保矢量能够和影像叠加起来,叠加后如下图所示。

    clip_image001[5]

    2、在可用矢量列表菜单中选择FileàExport Layers To ROI:

    clip_image001[7]

    3、在弹出的窗口中选择所要裁剪的影像文件,单击ok

    clip_image001[9]

    4、在接下来的Exprot EVF Layers to ROI窗口中根据自己的需要,选择第一个选项将所有的矢量导出成一个ROI或者选择第二个选项将每一个矢量分别到出成一个ROI,单击OK。

    clip_image001[11]

    5、显示待裁剪影像,在待裁剪影像上选择ROI,上面转换ROI会自动加载到影像上,如下图所示,这样就可以根据ROI来对影像进行裁剪了。

    clip_image001[13]

    6、裁剪方法:在ENVI主菜单中选择Basic ToolsàSubset Data via ROIs

    clip_image001[15]

    在弹出的对话框里选择待裁剪影像,如下图所示

    clip_image001[17]

    接下来,在弹出的Spatial Subset via ROI Param…窗口中选中所要裁减的ROI,并在Mask pixels outside of ROI处选成YES,这样才能裁减出矢量文件形状的区域,如果选择no的话,那么裁剪出的图像是左上角和右下角之间的范围。在Mask Background Value处添加区域以外的背景值,这里我们选择0作为背景值,(通常会选择-9999或是-999来作为背景值,但是也要针对不同的图像灵活运用,比如有的图像的数据类型是BYTE,那么它将只支持0-255,所以应该选择0-255之间的值作为背景值。)

    clip_image001[19]

    选择文件输出路径或者输出到内存,单击ok,即得到裁减后的图像,如下图所示:

    clip_image001[21]

  • 相关阅读:
    不走弯路,就是捷径
    小白逆袭之路
    java期末设计(十三周)
    java第6次作业
    java第五次作业
    java第四次作业
    第三次作业
    第二次作业
    对异常的看法
    java学习笔记(一)
  • 原文地址:https://www.cnblogs.com/gisoracle/p/3562023.html
Copyright © 2011-2022 走看看