栅格图像矢量化之二值化实战步骤

关于矢量化,在网上找到的文章,10篇有8篇基本上是雷同的,并且讲的也基本上是关于图像配准和ArcScan的一些步骤,而对于图像数据本身如何处理却鲜见介绍。比如以下这幅地图,上面高速公路、一级路、河流纵横交错,就算你正确配准了又如何?光靠ArcScan我看很难把它们区分出来并还原成原始的矢量数据。因此,借助其它专业的处理软件先把它们分开到不同的图象中,再使用ArcScan进行处理更加合适。

一、工具软件

   WiseImage+Photoshop

二、分离高速公路/一级公路

   1、打开WiseImage。
   2、执行“图象/二值化”,使用RGB/Green或者HSV/Value进行测试,使用不同组合多测试几次,挑选出最符合原图像里边的公路的路径图像。
   3、执行“滤境/去掉斑点”或者“滤境/平滑”。

      平滑的作用主要是消掉挑选出来的公路上的文字标注,但是也可能把其它非路上的同颜色的东西(称为斑点)一起平滑放大了。如果斑点很多的话,建议先执行去掉斑点操作,然后再平滑。

      平滑的次数,一般为2次,根据效果而定。

   4、执行“滤境/Line Breaks Filling”,目的是把被断开的公路重新连成一段,比如一级路被高速路断,河流被所有路断开。需要重新连接起来。

      这也是WiseImage最值得称赞的一个功能,免除了很多手工操作。
      
   5、这个时候挑选出来的公路虽然已经成型,但是仍然凹凸不平,需要继续处理。

      执行“滤境/细化”,这个时候只有一条线在选择的公路中间。
      执行“滤境/加厚”,这个时候线重新加粗,但是已经更平滑了。加厚次数一般为2次,根据需要而定。

   6、这个时候挑选出来的公路和原图上的路重合度已经有90%左右。如果不追求完美的话,可以直接放到ArcScan中处理了。

   7、如果想要跟原图达到96%以上的重合度,需要Photoshop继续进行处理。

      在WiseImage中,打开“对象属性工具栏”的“图像管理”按钮,在出来的窗口中保存挑选出来的公路图层为tif文件。

      打开photoshop,打开原图及tif文件。在tif文件中,选择所有目标,保存选区,加载选区到原图中,建立工作路径。使用刚笔工具照原图对路径进行描绘。完成之后,再转换成选区,复制选区里边的图像到新的图片中,使用颜色填充选区,这样就可以得到只有两种颜色并且和原图拟合程度最高的图片了。ArcScan矢量化这种图片效果很好了。


      TIPS: 使用钢笔工具断开和连接两段路径。选路径上的某点,按Del键(注意:不能选右键菜单的“删除猫点”。这种方法使断开后的路径仍然是闭合的,而不是断开的),这个时候路径就断开了。连接时,使用刚笔在一段路径的端点上单击。然后再在另一段路径的端点上单击,这样两段路径就可以连接在一起了。


三、分离河流

   河流和公路有些不同,河流的直度没有公路那么直,弯弯曲曲很厉害。如果软件一次性不能选择完河流,需要使用photoshop进行后期处理时会明显增加工作量。因为从tif得到选区转换成路径时,处理过后再重新转换成选区时,会发现两者不一样了,通过路径转换得到的选区比原来的选区简化了,会导致河流弯弯曲曲的那些细节没有了。

   这里可以采用另外两种方法处理:

   1、在WiseImage中进行二值化后,不能实施平滑、去掉斑点这些操作,因为这样同样导致河流的细节没有了。只能手工删除斑点。
对于河流被公路断开的情况,要自己在WiseImage中把它们连接上。

      要打开“开关绘制光栅实体”开关(主要工具拦的最后一个按钮),这样你绘制得到的是光栅数据,否则就得到矢量数据。

   2、使用Photoshop选择河流,河流颜色一般不和其它颜色混淆,使用photoshop的Color Range工具可以方便的选择河流对象。选择完之后,斑点同样需要手工删除。

      对于断开部分的连接,可以这样做:


      (1)、把选择的河流复制到新图层,设置透明度为50%。
      (2)、把河流颜色填充成其它颜色,在新图层上对照原图把断开的部分连接上即可。
 
           记得把背景层“锁上”,这样描绘操作就不会影响到原图。


下面是使用上面方法处理过后的图像,分别分离成告诉公路,一级公路,河流,都是两种颜色的图像,ArcScan处理起来效果良好。

 


 

后记: WiseImage可以把挑选出来的图象保存成.shp格式,但是我使用ArcCatalog无法浏览,原因不明:(,还是自己矢量算了:)

posted @ 2009-10-24 22:24  鹰王  阅读(6199)  评论(1编辑  收藏  举报