PaddleCV-SIG / GeoView

GeoView是一款开源、轻量、功能丰富的交互式遥感影像智能解译工具,致力于实现遥感领域深度学习模型在Web平台的快速部署。
Apache License 2.0
131 stars 35 forks source link

backend/app.py 启动时报 ImportError: cannot import name 'MSRA' from 'paddle.fluid.initializer' #80

Open 287852793 opened 1 year ago

287852793 commented 1 year ago

版本信息: paddlepaddle-gpu 2.5.1.post112 paddlers 0.0.0.dev0 (develop分支,拉取于2023年10月9日) PP-GeoView v0.1.1

解释: 如果 PaddleRS v1.0.0 进行部署使用,则会报另一个 ImportError,应该是 paddlepaddle 2.5.1 不兼容,改用 develop 分支构建后部署过程正常

求助~

企业微信截图_16969084812320

Bobholamovic commented 1 year ago

你好,目前GeoView暂不支持PaddleRS的develop版本,请使用PaddleRS 1.0版本~

287852793 commented 1 year ago

了解,该问题是由于PaddlePaddle版本>=2.5导致,PaddleRS v1.0.0 版本本身也不支持 PaddlePaddle >= 2.5 的版本

建议:

1、主页 README.md 中,“PaddlePaddle >= 2.2.0” 改为 “PaddlePaddle >= 2.2.0 & PaddlePaddle < 2.5.0”

2、早日完成对 PaddlePaddle >= 2.5.0 的支持

Bobholamovic commented 1 year ago

该问题是由于PaddlePaddle版本>=2.5导致,PaddleRS v1.0.0 版本本身也不支持 PaddlePaddle >= 2.5 的版本

是的,这确实是问题所在~

感谢你的建议,我已经提了PR在文档中对PaddlePaddle版本追加上限。我们后续将适配PaddleRS新的稳定版本以完成对PaddlePaddle 2.5的支持。

287852793 commented 1 year ago

感谢开源建设人员的付出和分享

经历了3天的测试把PaddlerRS和GeoView了解了一下,在将PaddlePaddle的版本替换成了2.4.2之后,部署的过程中还是踩了不少坑,包括但不限于以下:

  1. numpy版本不能是1.24,根据PaddleRS的依赖安装之后的numpy默认1.24,但此版本安装后续的GeoView会报错,需在装完PaddleRS之后手动调整numpy版本到1.21
  2. PaddleRS安装的时候setuptools版本应该低于68(65.5.0可成功)
  3. GeoView backend 的 requirements 中所有定义的 flask 相关的版本号,>=统统改成==,最新的flask无法启动GeoView的后端
  4. GeoView如果是服务器部署客户端访问的话,需要额外修改配置文件 frontend/.env 为服务器的ip
  5. PaddleRS的项目构建的时候文档描述为 pip install . ,而GeoView 描述为 pip install -e . ,这两种方法本质没什么区别,但是采用前者报错,最终使用 GeoView 的关联 PaddleRS 版本安装成功
  6. GeoView中关联的PaddleRS安装成功后,python环境无法检测到paddlers的依赖,我这边的处理方式为将PaddleRS目录中的paddlers在python的dist-packages目录下建立了软链接,后续验证可正常工作(我的python版本为3.8.10)

在部署成功之后体验了一下GeoView,感觉后续工作还是任重道远,作为一个遥感影像解译软件,解析TIF格式的数据是必要的,而且这也是PaddleRS v1.0.0版本的新特性,无法直接处理TIF数据对于遥感解译平台的局限还是太大了

另外在模型方面,GeoView提供的预训练模型也有一些问题: 1、变化检测模型未推理成功 image 2、地物分类模型未推理成功,报错为:Cannot handle this data type: (1, 1, 3), <i8 image

我这边会持续关注 PaddleRS 和 GeoView 的更新情况,希望这两个项目越做越好

jscslld commented 1 year ago

变化检测和地物分类报错的问题您可以尝试使用v0.1.1版本,在这个版本里面这两个问题应该都已经修复了。

287852793 commented 1 year ago

通过拉取 GeoView v.0.1.1 版本构建部署,已解决模型使用问题。