m0_48882340 2022-11-29 17:21 采纳率: 100%
浏览 36
已结题

ModuleNotFoundError

问题遇到的现象和发生背景

在github上clone了fsgan的代码,按照提示创建conda虚拟环境并且配置环境变量。
fsgan的仓库被clone在了D:\Desktop,所以环境变量我设置为D:\Desktop
我先是运行swap.py,按照提示,运行以下command:(一点没动,不用修改的示例)


python fsgan/inference/swap.py docs/examples/shinzo_abe.mp4 -t docs/examples/conan_obrien.mp4 -o . --finetune --finetune_save --seg_remove_mouth

结果缺抛出这样的错误:ModuleNotFoundError: No module named 'fsgan.preprocess'

img


之后,我又运行了reenact.py,运行如下command:

python fsgan\inference\reenact.py D:\Desktop\000012.jpg -t D:\Desktop\fsgan\docs\examples\conan_obrien.mp4 -o D:\Desktop

然而,还是同样的错误,ModuleNotFoundError: No module named 'fsgan.preprocess'

img

我的解答思路和尝试过的方法

fsgan.preprocess 是存在的。因为,我在reenact.py 和swap.py 的同一目录下创建了一个mytest.py的测试文件,将出错的导入复制进去,并且在导入的模块的同一路径下创建了 myimport.py文件。直接run,mytest.py是可以运行的,并打印出来模块所在的路径。

img


但是,如果使用命令行来运行,mytest.py会报出同样的错误。

img

我想要达到的结果

可以正常运行swap.py和reenact.py

  • 写回答

7条回答 默认 最新

  • 爱音斯坦牛 全栈领域优质创作者 2022-11-29 21:29
    关注

    我来告诉你,这个迷一样的问题,你这目录下面有两个fsgan,一个根目录,一个下级目录,这种导入方式很容易出问题,因为这种大型项目的导包就是一个迷,别人的原作者电脑上肯定是能跑通的,你拿下来不一定就能跑通
    就将下级目录的fsgan添加到sys.path试试,即在一个文件from fsgan...这行导包语句前加上

    import os,sys
    sys.path.append(os.path.dirname(os.getcwd()))
    

    以我的经验来看,如果这两行代码都解决不了,你做好最糟糕的打算吧,估计不行了…

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(6条)

报告相同问题?

问题事件

  • 提问应符合社区要求 4月24日
  • 系统已结题 12月7日
  • 已采纳回答 11月29日
  • 创建了问题 11月29日

悬赏问题

  • ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 软件测试决策法疑问求解答
  • ¥15 win11 23H2删除推荐的项目,支持注册表等
  • ¥15 matlab 用yalmip搭建模型,cplex求解,线性化处理的方法
  • ¥15 qt6.6.3 基于百度云的语音识别 不会改
  • ¥15 关于#目标检测#的问题:大概就是类似后台自动检测某下架商品的库存,在他监测到该商品上架并且可以购买的瞬间点击立即购买下单
  • ¥15 神经网络怎么把隐含层变量融合到损失函数中?
  • ¥15 lingo18勾选global solver求解使用的算法
  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行