有没有一种简单的方法可以将街道与屋顶分开?

时间:2020-04-06 22:51:29

标签: python-3.x opencv image-processing

我正在努力从卫星图像中提取屋顶。我在图像中将内部街道与屋顶分开时遇到问题。仅使用AI(无神经网络)后,结果始终包括街道和建筑物,而我找不到将它们分开的方法。

这是原始图片

image

这是AI检测后的图像

image

2 个答案:

答案 0 :(得分:0)

具有经典形态过滤器的后处理结果图像怎么样? 之后,使用更大的内核进行膨胀和侵蚀在这里非常有效。

答案 1 :(得分:0)

尝试通过扩展并使用此结果打开结果图像(使用原始数据看起来会更好)

Result Image

我认为这是解决问题的“简单方法”,否则您应该使用更准确的AI方法。 这是代码。您可以在过程中显示图像以了解每个步骤。

2020-04-07T18:55:35.513+0200 E  QUERY    [js] WriteError({
        "index" : 0,
        "code" : 121,
        "errmsg" : "Document failed validation",
        "op" : {
                "_id" : ObjectId("5e8c72698d808f037e6adede"),
                "title" : {
                        "content_id" : ObjectId("5e8c72128d808f037e6aded6")
                },
                "url" : "/home",
                "elements" : [
                        {
                                "order" : 1,
                                "element_id" : ObjectId("5e8c724d8d808f037e6adeda")
                        },
                        {
                                "order" : 2,
                                "element_id" : ObjectId("5e8c724d8d808f037e6adedb")
                        },
                        {
                                "order" : 3,
                                "element_id" : ObjectId("5e8c724d8d808f037e6adedc")
                        },
                        {
                                "order" : 4,
                                "element_id" : ObjectId("5e8c724d8d808f037e6adedd")
                        }
                ]
        }
}) :
WriteError({
        "index" : 0,
        "code" : 121,
        "errmsg" : "Document failed validation",
        "op" : {
                "_id" : ObjectId("5e8c72698d808f037e6adede"),
                "title" : {
                        "content_id" : ObjectId("5e8c72128d808f037e6aded6")
                },
                "url" : "/home",
                "elements" : [
                        {
                                "order" : 1,
                                "element_id" : ObjectId("5e8c724d8d808f037e6adeda")
                        },
                        {
                                "order" : 2,
                                "element_id" : ObjectId("5e8c724d8d808f037e6adedb")
                        },
                        {
                                "order" : 3,
                                "element_id" : ObjectId("5e8c724d8d808f037e6adedc")
                        },
                        {
                                "order" : 4,
                                "element_id" : ObjectId("5e8c724d8d808f037e6adedd")
                        }
                ]
        }
})
WriteError@src/mongo/shell/bulk_api.js:458:48
mergeBatchResults@src/mongo/shell/bulk_api.js:855:49
executeBatch@src/mongo/shell/bulk_api.js:919:13
Bulk/this.execute@src/mongo/shell/bulk_api.js:1163:21
DBCollection.prototype.insertOne@src/mongo/shell/crud_api.js:264:9
@(shell):1:1