首页 > 代码库 > 关于影像颜色替换

关于影像颜色替换

超图软件日前正式公布SuperMap iObjectsJava/.NET 8C SP1版本号。新版本号依据用户的特殊须要。对影像颜色值替换功能进行优化和扩展。支持很多其它的影像颜色值替换形式。

一、影像颜色透明处理

如图 1所看到的,地图中加入了几幅影像,每幅影像都有黑色的边,因为影像未进行拼接,所以在显示时相互叠合的部分被黑色边所影响,此时要比較好地显示影像叠合的部分就须要将黑色边缘去掉,因为这里仅是浏览一下影像效果,而不想花时间做影像拼接,所以我们能够通过影像图层提供的“透明色”功能以及容限设置。如图 2所看到的。选中影像图层,在“图层属性”对话框中。在“影像參数”区域,勾选“透明色”复选框,设置须要透明显示的颜色为黑色,并设置合适的“透明色容限”就能够得到如图 2所看到的的显示效果。

 技术分享

图 1 影像数据(24位真彩色)

 技术分享

图 2 设置透明色为黑色后的效果

 

二、设置无值像元显示颜色

影像数据获取中存在一些无值情况。影像中的无值数据将以一个特殊数值记录,通过查看影像数据的属性信息能够查看无值像元的值,如图 3所看到的。该影像通过“-32768”记录无值情况。

 

 技术分享

技术分享

图 3 查看影像数据属性信息

无值表示该区域没有数据信息。在不同的应用中对于影像无值像元的显示要求不同,有的须要将无值像元透明显示,有的则须要以特定的颜色进行显示,这里,这两种处理方式我们都支持。

如图 5所看到的,给定无值像元的值(这里为:-32768),通过“显示为”能够又一次指定无值像元的显示颜色,并能够通过Alpha值(A值)为0。使无值像元透明显示。

 技术分享

图 4 原始影像数据(单波段16位影像)

 技术分享技术分享

图 5 影像无值像元显示颜色设置

 技术分享技术分享

图 6 又一次指定无值像元显示颜色(左图为红色;右图为透明显示)

三、设置背景值像元显示颜色

在实践应用中,对于影像中某些特殊像元在不同的应用场景下须要显示不同的颜色,比如,高山积雪地区,有些场景下须要显示为白色,而有些应用要显示为黑色,还有些情况须要显示为蓝色。

能够通过栅格分析工具中的“栅格查询”。获取特殊值的详细数值。如图 7所看到的,也能够通过背景值右側的“拾取像元值”button获得像元值,如图 8所看到的。获得像元值后就能够为其指定一个新的显示颜色,例如以下图所看到的,获取如图 7特殊像元值为0,然后将其设置为红色显示,如图 9所看到的。

 技术分享

 技术分享

 图7 使用栅格查询获得特殊像元值

 技术分享

图 8 拾取像元值并替换其显示颜色

技术分享 

图 9 将特殊像元值的显示颜色设置为蓝色

补充说明:

支持以上操作的影像数据的像素格式包含:8位无符号、8位多波段、24位真彩色、32位真彩色。

关于影像颜色替换