python - 从卫星图像中检测农作物边界
问题描述
我想从卫星图像中检测作物区域。
如果我们复制任何包含农田的谷歌地图图像,你可以很容易地看到分区,但使用 OpenCV 对我来说并不容易。
首先,我将图像从 RGB 转换为灰色并应用高斯滤波器。
当我对图像应用阈值时,会出现许多不规则性,难以区分不同区域。
我曾想过点击某处并使用一些洪水算法来检测至少点击地形的边缘。另一个(更高级的)选项是使用 CNN,但我在这方面仍然没有太多经验,我想从基础开始。
有什么建议么?
解决方案
考虑一下,
1)将图像分解成许多小图像
2)增加高斯滤波器的强度以去除噪声
3)使用霍夫线检测器从二进制图像(黑白)中获取边缘
您需要使图像尽可能干净。我所说的干净是指确保边缘非常干净,并且场内的噪音最小。
最后,我建议使用带有霍夫线检测器的边缘检测器。研究精明的边缘检测。
推荐阅读
- android - 将其 Uri 发送到另一个活动时,使位图透明 android 的背景
- html - Bootstrap - 如何将输入文本(类型=数字)控件的宽度减少到 N 个数字空格
- java - Hybris Java ant build 说 ***JAVA 版本错误 *****
- vue.js - 导出多个 Vue 组件
- javascript - Jquery textarea获取最后一个值
- android - Volley 本地请求仅在连接到 USB 调试时才有效
- java - 如何从 JBPM 中的 h2 数据库中检索 Combobox 中的数据?
- git - 如何找到刚刚删除的分支?
- python - 如何找到与多边形的垂直距离?
- javascript - html5画布用细条纹填充圆圈