ENVI深度学习1.2版本发布
ENVI深度学习1.2版本正式发布,适配ENVI 5.6.1。ENVI深度学习1.2增加了一项重大改进,一种全新的深度学习类型:对象检测。
系统要求
平台 |
硬件 |
操作系统 |
支持版本 |
Windows |
Intel/AMD 64-bit |
Windows |
10,2016 Server |
UNIX |
Intel/AMD 64-bit |
Linux |
Kernel 3.10 or higher, glibc 2.17 or higher |
ENVI深度学习1.2使用TensorFlow 2.4 和 CUDA 11,这两者均已包含在安装包中。ENVI深度学习对软硬件有一定的要求,具体如下:
- NVIDIA 显卡驱动版本要求460.x或更高。下载地址:https://www.nvidia.com/Download/index.aspx?lang=en-us
- NVIDIA显卡CUDA计算能力(Compute Capability)要求 3.5 到 8.6。查询网址:https://developer.nvidia.com/cuda-gpus
- 具有高级向量扩展AVX (Advanced Vector Extensions)指令集的CPU。一般来说,2011年以后的任何CPU都会包含这个指令集。
可通过下面方法测试系统是否满足ENVI深度学习的环境要求。在ENVI工具箱中,启动/Deep Learning/Deep Learning Guide Map,在弹出面板中选择菜单
为了获得最佳性能,建议显存最少8GB,尤其是训练模型时。
新功能
ENVI深度学习1.2提供了训练和分类对象检测模型的能力。对象检测可用于定位具有相似空间、光谱和纹理特征的目标。之前版本的ENVI深度学习仅在逐个像素的基础上定位特征(称为像素分割)。对象检测是ENVI深度学习1.2版本的新增功能。与像素分割不同,对象检测可用于提取接触或重叠的对象。ENVI深度学习使用RetinaNet卷积神经网络 (CNN) 进行对象检测。
下图显示了使用对象检测来定位船舶的示例。红色边界框标记了船只的位置。
对象检测涉及以下步骤:
1. 通过在它们周围绘制边界框来标记一幅或多幅图像中的特征。边界框可以采用矩形标注或多边形感兴趣区域(ROIs)的形式。
2. 将标记的图像(称为对象检测栅格)传递给训练器。结果是一个HDF5格式的训练模型。
3. 使用经过训练的模型对相同或其他栅格进行分类。结果是围绕已识别特征绘制的一组边界框。每个边界框属于一个特定的类。
ENVI深度学习1.2包含了许多改进以支持对象检测:
- Deep Learning Guide Map提供了标记、训练和分类对象检测模型的向导。
-
Deep Learning Labeling Tool有一个新的 Project Type下拉列表,可让您设置对象检测或像素分割项目。如果您选择对象检测,标签工具允许您在感兴趣的特征周围绘制矩形框标注。您还可以导入现有的标注文件进行标注。完成标注后,标注工具会自动创建对象检测栅格。然后,您可以继续在标签工具中进行训练。 -
基于掩码的像素分割模型(ENVINet5和ENVINetMulti)必须在进行训练之前显式地进行模型初始化(使用标签工具训练模型除外)。对于对象检测,模型初始化会自动发生,无需任何用户输入。
新的独立工具也可用于对象检测。从ENVI工具箱或Deep Learning Guide Map的菜单栏使用它们:
-
Build Object Detection Raster From Annotation(从标注构建对象检测栅格) -
Build Object Detection Raster From ROI(从ROI构建对象检测栅格) -
Postprocess Classification Vector(分类矢量处理) -
Train TensorFlow Object Model(训练TensorFlow对象模型) -
TensorFlow Object Classification(TensorFlow对象分类) -
View Object Detection Raster Labels(查看对象检测栅格标签)
编程
名称 |
描述 |
ENVIBoundingBoxSet |
在对象检测栅格中添加和管理边界框信息,而不是在训练栅格上绘制矩形标注。 |
ENVIDeepLearningGeoJSONT |
将带有边界框信息的 GeoJSON转换为感兴趣的多边形区域 (ROIs)。 |
ENVIDeepLearningROIToGeo |
将带有边界框信息的多边形 ROI转换为GeoJSON。 |
ENVIDeepLearningObjectDe |
将一个栅格文件构造为一个轻量级的ENVI深度学习栅格,该文件可与ENVI 深度学习中的 ENVITasks一起使用。它包含存储在元数据中的有关边界框的附加 GeoJSON信息。边界框用于对象检测。 |
ENVITensorFlowObjectMode |
创建 TensorFlow 对象检测模型。 |
新增如下过程/Task:
名称 |
描述 |
BuildObjectDetectionRast |
从输入栅格和感兴趣特征的标注文件构建对象检测栅格。 |
BuildObjectDetectionRast |
从输入栅格和感兴趣特征的ROI文件构建对象检测栅格。 |
PostProcessObjectClassif |
优化由 TensorFlowObjectClassifi |
TensorFlowObjectClassifi |
使用经过训练的对象检测模型对栅格进行分类。 |
TrainTensorFlowObjectMod |
训练用于对象检测的 TensorFlow 模型。 |
试用方法
访问:www.enviidl.com/eval_license
或微信公众号菜单:申请试用 > ENVI-IDL
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?