作者:德怀特

链接:https://zhuanlan.zhihu.com/p/396874909

本文转载自知乎,作者已授权,未经许可请勿二次转载

Development of a Parcel-Level Land Boundary Extraction Algorithm for Aerial Imagery of Regularly Arranged Agricultural Areas

  1. 期刊:Remote Sensing

  2. 第一/通讯作者:Rokgi Hong/Inhong Song-首尔大学农村系统工程系

  3. 投稿-接收时间:2020.12.31—2021.3.16

  4. 引用量:1 (截止2021.8.6)

  5. 论文地址:https://link.zhihu.com/?target=https%3A//www.mdpi.com/2072-4292/13/6/1167

农田边界自动检测的重要性:帮助韩国数字农田地图的快速更新(The automation of farmland boundary extration is particularly in demand for rapid updates of the digital farm maps in Korea)

本文使用的方法:Suzuki85 algorithm, Canny edge detection, Hough transform

假设相邻地块之间的边界是直线,因此本文开发的算法仅适用规则的农田地块(The developed algorithm is currently applicable only to regularly arranged land parcels)

introduction

从遥感图像中提取目标边界的方法可以分为三类:(1) edge-based (2) region-based (3) artificial neural network(ANN)-based

edge-based methonds:利用滤波器(image filter)检测图像梯度变化,如Gaussian filtering、watershed algorithm,缺点是这些方法的效果受限于滤波器的类型,对滤波器的类型很敏感

region-based methods:利用纹理特征描述区域特性(Region-based methods were used to delineate a region with specific characteristics using textural properties),缺点是提取的边界高度依赖于所选参数(Region-based methods can be problematic when the extracted boundaries are highly dependent on the selected parameters)

ANN-based methods:利用已有的边界数据训练人工神经网络,如结合GAN

其它方法:主动轮廓模型(activate contours)、植被指数NDVI/NDWI,但是这些方法是将具有相似属性的像素组合在一起,而不是提取多边形轮廓(these studies extracted boundaries by grouping individual pixels with similar properties rather than extracting boundary polygons with connected segment elements),在土地制图和地块分类的应用中,和像素聚合相比,提取多边形边界是更好的选择(For the applications to cadastral map production and artificial intelligence-based land cover classification, it is advantageous to extract boundaries of polygon type over the pixel aggregation.)Object boundary-based classification可以提升pixel-based land cover classification的精度

单一算法很难完成精准的农田地块边界检测,因为不同类型植被的光学属性相近(the similarities in the optical properties among various land cover types),因此本文使用多种算法,结合不同算法的优势

Suzuki85:将一个二值图像转化成边界的表示形式,并且将提取各边界之间的拓扑结构。

数字图像处理—边界跟踪算法Suzuki85:https://zhuanlan.zhihu.com/p/397588540

Canny edge detection:因为使用高斯滤波器,易出现边界侵蚀问题edge erosion issues

数字图像处理—canny边缘检测算法:https://zhuanlan.zhihu.com/p/398147697

Hough transform:检测直线

数字图像处理—霍夫变换:https://zhuanlan.zhihu.com/p/398602640

算法

本文提出的算法包括图像分割,地块边界检测和图像融合(image splitting, parcel contour detection, image merging)三个部分

parcel-level boundary extration procedures

分割图像可以提升边界检测的效率,对每一个分割后的图像(1024*1024),使用Suzuki85提取block-level contours ;hough变化检测parcel-level edges(直线检测),然后拓展到 block-level contours;第二次使用Suzuki85

1.Block-Level Contour Extraction

本文的田块数据如下,parcel是最小的田块单位;block由多个parcel组成,如下图(a)中的非常明显的白色矩形边界,包围着多个parcel。本文的检测思路是使用Suzuki85先将block的边界检测出来(block-level contour extraction),检测的效果如(c)所示,引出Suzuki85会将所有可能的边界检测出来,所以可以看到效果并不好,block边界的内部有很多“噪声边界”和我们暂时不需要的parcel边界,因此需要去除这些干扰边界。使用一定的方法去除之后的结果如(d)所示

Suzuki85算法需要二值图像,所以首先根据YCbCr color space model,将图像转换为8-bit grayscale,再利用一个合适的阈值,将grayscale转换为1-bit 黑白图像(monochrome)

二值化的阈值选择方法:最小化intra-class variance,或者最大化inter-class variance

其中, 代表小于阈值的像素的个数,代表大于阈值的像素的个数, 是小于阈值的像素的均值和标准差,和 是大于阈值的像素的均值和标准差,

二值化之后,使用Suzuki85提取block-level contours,提取的效果如下图中(c)所示,再使用Ramer–Douglas–Peuker algorithm简化轮廓信息,如下图中(d)所示

Block-level contour extraction steps from (a) the original image, (b) binary image, (c) unprocessed contours, and (d) processed contours. Red lines represent the block-level contours.

2.Parcel-Level Edge Extraction from Block-Level Contours

将canny边缘检测算法应用到上面得到的grayscale图像,使用3*3的Sobel算子计算梯度,高阈值为240,低阈值为80。canny检测效果如下图(a)所示

canny边缘检测得到二值图像,再在此基础上,使用hough变换提取block内的地块边界(注意是在block中使用Hough变换,而不是在整张图像上——The Hough transform was used to extract the parcel edges within the block)

(疑问:如何在一个block中使用Hough变换?算法怎么知道block的位置?上一步虽然描绘出了block的轮廓,但是明显不准确,还有噪声。同时也不可能是输入block的位置标签,否则就不需要第一步检测block轮廓了,直接画出来就行了。难以理解如何在block内使用Hough变换。所以应该还是对整个图像使用Hough变换?)

这里使用probabilistic Hough transform提升计算效率(通过60个以上有效像素的边缘被判定为有效),同时少于于25像素或相互距离小于3像素的边缘被忽略。Hough变换的效果如下图(b)的蓝线,可以看到蓝线都是直线,在一定程度上消除了canny检测的一些“噪声”

(probabilistic Hough transform:随机选取一些前景点,而不是使用所有的前景点——a probabilistic Hough transform that performs a Hough transform on pixels randomly extracted from all target pixels was adopted in this study for computational efficiency)

(a) Canny edge detection, (b) initial internal edge detection

3.Parcel Contour Extraction

将hough变换得到的直线边界叠加到(拓展到)block contours里,得到block里具体的parcel boundary(A specific parcel boundary within a block was extracted by extending a line segment from the Hough transform process to the block contours.)。edges和contours的层级关系(hierarchical relationship)通过ray casting algorithm和a type of inside-polygon test确定(all pairs of block-level contours and edges within the segment)

(疑问:这里确定的是什么样的层级关系?确定了这样的层级关系又有什么用处?——层级关系是指一个block contour是否包含一个parcel boundary,只有两个端点都在同一个block内的直线边界才会被保留并拓展到block contours内)

ray casting algorithm(光线投射算法):用来判断点相对于多边形的位置。简单来说是从某个点引出一根“射线”,与多边形的任意若干条边相交,累计相交的边的数目,如果是奇数,那么点就在多边形内,否则点就在多边形外(奇内偶外)

A点引一条射线,与多边形3条边相交,奇数,所以A点在多边形内,而从B点引一条射线,与多边形的2条边相交,偶数,所以B点在多边形外

上面是百度找到的解释,ray casting algorithm详细内容如下(一些数学符号不太明白,云里雾里,时间有限之后再来研究),这篇论文里也给出了相关解释——An arbitrary ray was constructed to cast at a point and determined as the point lying within the contour when the ray meets the contour polygon an odd number of times. 基本和百度到的解释一样

ray casting algorithm

a type of inside-polygon test:同样是确定一个点是否在任意polygon内部的算法:

https://www.sciencedirect.com/science/article/pii/S0925772101000128

Noise Cancelling:将角度范围 按间隔  分割成18个范围,计算每一条inner edge的角度,如果某个范围内inner edge的数量最多,则保留该范围内的inner edge,其它范围的都舍弃,效果如下图(c)所示

(c) noise cancelling, and (d) density regulation. Red lines represent the block-level contours, while blue lines represent the parcel edges.To

Density Regulation:

如果两个Parcel-level edge端点距离 和 的长度差小于5像素,则只保留一个。Density Regulation的结果如上图(d)所示

第二次使用Suzuki85算法

第二次使用Suzuki85算法最终确定有效的block-level contours和parcel-level edges

(Suzuki85需要输入二值图像,这里输入的应该是blok-level contour和parcel-level boundary叠加在一起后的二值图像)

(a) the original image, (b) detected edges, and (c) extracted boundaries. Colors in (c) indicate parcel separation by different block borders.

(突然就从图(b)到(c)了?(b)是混杂在一起的直线边界,(c)是清晰的小地块边界)

算法验证

从两个方面进行匹配验证,提取的边界本身和边界组成的地块(Boundary Level Accuracy Assessments / Section Level Accuracy Assessments)

小结

Hong等人将传统图像处理方法Suzuki85、Canny边缘检测算法和霍夫变换结合使用,在假设所有相邻田块边界都是直线的基础上,实现了规则农田边界的精准检测

Hong et al. combined three traditional image processing methods, the Suzuki85 algorithm, Canny edge detection and Hough transform, to detect the boundaries of regularly arranged framlands. Performances of the developed algorithm was evaluated over six different study sites. But this algorithm only applies to regularly arranged framlands.(Since the developed algorithm is based on the assumption that land parcel boundaries are straight lines, a cautious approach should be taken in applications with non-regular shaped land parcels.)

感想

整篇论文读下来的观感不是很好,算法流程图虽然一开始就给出来了,但是文章对一些细节并没有讲清楚,更多的是“我用来什么什么算法,然后结果如下图所示”,比如说将inner edges拓展到block-level contours,具体如何拓展叠加?如果有重叠部分怎么处理。还有如何在block内使用Hough变换,block具体是怎么提取出来?(选择四个坐标点?)作者应该给出霍夫变换算法的输入和输出图像,这样就一目了然了。

同时也没有解释为什么要这么做(只是在一开始说用单一的算法效果不好,所以将几个算法结合起来使用,几行文字并并没有很强的说服力,应该用实验结果去验证)

个人决定该论文只是使用了一些传统的算法,叠加使用算是一点创新点,但是作者并没有充分的说明,证明这种做法很好。同时在解释算法流程的过程中,细节不够清晰,说明的图示太少,只给了每一步的最后结果

可能是我水平还太低,没有百分百理解,这篇论文就先放在这,以后有时间回过头再看看,应该会有其它论文使用类似的方法

☆ END ☆

如果看到这里,说明你喜欢这篇文章,请转发、点赞。微信搜索「uncle_pn」,欢迎添加小编微信「 woshicver」,每日朋友圈更新一篇高质量博文。

扫描二维码添加小编↓

卫星遥感—地块/边界提取相关论文相关推荐

  1. 基于遥感影像的耕地地块提取相关论文、代码以及相关开源数据集

    文章目录 前言 2000 (传统方法) Agricultural Field Extraction from Aerial Images Using a Region Competition Algo ...

  2. 2020年粮食收成如何,卫星遥感交答卷

    秋日正浓,秋收的场景在大江南北徐徐铺开.从东北黑土地到中原大地,再到江南鱼米之乡,目前全国秋粮收获进度进入尾声.通过卫星遥感技术,记录下这个特殊之年的丰收答卷. 近年来,高空间.时间和光谱分辨率遥感技 ...

  3. 【论文笔记】RS--基于卫星遥感的中国县级尺度小麦估产研究

    RS//A Satellite-Based Method for National Winter Wheat Yield Estimating in China 基于卫星遥感的中国县级尺度小麦估产研究 ...

  4. 哨兵系列卫星_智利Panguipulli湖的卫星遥感水特征时空变化图

    " 智利中南部的特点是有一系列起源于安第斯山脉的大湖.这个地区正面临着越来越多的人为影响,这造成了这些湖泊的贫营养状态.虽然监测方案通常基于有限的空间和时间覆盖范围,但遥感为大规模观测提供了 ...

  5. AI+云原生,把卫星遥感虐的死去活来

    摘要:遥感影像,作为地球自拍照,能够从更广阔的视角,为人们提供更多维度的辅助信息,来帮助人类感知自然资源.农林水利.交通灾害等多领域信息. 本文分享自华为云社区<AI+云原生,把卫星遥感虐的死去 ...

  6. 缺陷检测相关论文阅读总结(记录自己读过的论文主要内容/Ideas)

    缺陷检测相关论文阅读总结(记录自己读过的论文主要内容) Attention!!! 点击论文题目即可访问原文or下载原文PDF文件: 每篇文章的内容包含:内容总结.文章Ideas: 更多关于缺陷检测以及 ...

  7. 在云服务的助力下,卫星遥感技术可以怎样造福人类?

    谈起卫星遥感技术,估计不少人都会觉得玄之又玄.但其实这项技术在地理上的应用,和人类社会的生产生活,以及未来的可持续发展都息息相关. 今天,趣味科技就来给大家说说卫星遥感技术的那些事儿,以及这项技术背后 ...

  8. 卫星遥感在农业干旱方面最新研究

    近年来,随着物联网.大数据.智能装备等领域的快速发展,在农业种植领域中的应用,正在逐渐形成推动农业走向智能化.数字化.精准化,扭转传统依靠人力为主的农业生长方式,目前已经取得了一定的成果与进步. 得益 ...

  9. 利用sentinel hub Python开发包查询和下载Sentinel-2等卫星遥感数据

    利用sentinel hub Python开发包查询和下载Sentinel-2等卫星遥感数据 1. 描述   sentinelhub Python包支持用户利用两种方式进行卫星遥感数据的下载和处理.第 ...

最新文章

  1. spring与mybatis三种整合方法
  2. C++默认参数注意事项
  3. 关于Ping的TTL的含义
  4. 摘抄 web 经 关于 自适应网页设计(Responsive Web Design)
  5. 深度学习进行目标识别的资源列表
  6. php服务器 下载,php实现从服务器下载文件
  7. C++中STL的一些用法的补充
  8. 数据库调优都涉及哪些方面
  9. 【剑指 offer】面试题13:机器人的运动范围(Java)
  10. 很特别的一个动态规划入门教程
  11. pandas 股票分析图
  12. 360推出国内首个工业互联网安全态势感知系统
  13. iframe调用父页面方法_5.1 vue中子组件调用父组件的方法,务必理解自定义事件的重要性...
  14. 什么是网络,网络类型,网络结构
  15. 计算机应用基础实践试题,计算机应用基础实践环节考试试题(一)
  16. 第十八篇_Class文件
  17. 能源管理系统—能源在线监测平台搭建
  18. 华为锁屏后微信无法连接服务器,华为手机锁屏时无法接收微信消息怎么办?
  19. 从iOS切换到Android(flyme)
  20. 弘辽科技:如何写出自带流量的标题

热门文章

  1. P3373(线段树)
  2. openFOAM的基础类型汇总
  3. Linux内核之进程6: 深度睡眠
  4. vue-cli中出现这个错误[WDS] Disconnected!解决!!!
  5. cpu平均负载高的几种情况
  6. 用大约 10 万字的内容对 Java 的核心知识点和常见的 1000 多道面试题,做了详细的介绍
  7. FPGA学习-rom只读存储器(嵌入式块应用)
  8. jupyter修改工作路径提示找不到指定模块
  9. 22.1.11京东大数据实习面试
  10. 2018NOIp爆零记