scu-zjz / IMDLBenCo

A comprehensive benchmark & codebase for Image manipulation detection/localization.
https://scu-zjz.github.io/IMDLBenCo-doc
Creative Commons Attribution 4.0 International
22 stars 3 forks source link

relative import and absolute import of train.py and demo_train_xx.sh are confused. #24

Closed miaoct closed 1 week ago

miaoct commented 2 weeks ago

train.py 代码中的包导入有点混乱, runs/demo_train_xx.sh的文件位置很奇怪,无法直接使用

此外,不同功能的文件夹包,有点混乱,建议参考https://github.com/SegmentationBLWX/sssegmentation项目

SunnyHaze commented 2 weeks ago

你好,非常感谢您对我们工作的试用与体验!

train.py 代码中的包导入有点混乱

这个比较好解决,目前我们在开发分支已经完成一个commit,测试无误后会合并到main:https://github.com/scu-zjz/IMDLBenCo/commit/464aa298b371a7fc7d1b5accefabefee12d2a8ae

runs/demo_train_xx.sh的文件位置很奇怪,无法直接使用

目前这部分的使用方法和Readme有出入,今晚会修改Readme,请参见最新的文档内容: https://scu-zjz.github.io/IMDLBenCo-doc/zh/guide/base/introduction.html#%E8%AE%BE%E8%AE%A1%E7%90%86%E5%BF%B5%E4%B8%8E%E4%BC%98%E5%8A%BF

Demo的文档正在写,model_zoo的试用大致上就是:先通过pip 安装最新的IMDL-BenCo,然后在一个新建的空文件夹,通过内置指令生成所有的model_zoo测试文件。

# 安装最新的
pip install imdlbenco
# 以类似git init或者conda init的方式自动生成代码,请参见上述文档的“简介”
benco init model_zoo

如果正常的话,会生成如下文件:

.
├── balanced_dataset.json
├── configs
│   ├── CAT_full.yaml
│   └── trufor.yaml
├── runs
│   ├── demo_catnet_protocol_iml_vit.sh
│   ├── demo_catnet_protocol_mvss.sh
│   ├── demo_test_cat_net.sh
│   ├── demo_test_iml_vit.sh
│   ├── demo_test_mantra_net.sh
│   ├── demo_test_mvss.sh
│   ├── demo_test_object_former.sh
│   ├── demo_test_robustness_cat_net.sh
│   ├── demo_test_robustness_iml_vit.sh
│   ├── demo_test_robustness_mantra_net.sh
│   ├── demo_test_robustness_mvss.sh
│   ├── demo_test_robustness_object_former.sh
│   ├── demo_test_robustness_span.sh
│   ├── demo_test_span.sh
│   ├── demo_train_backbone_segformer.sh
│   ├── demo_train_backbone.sh
│   ├── demo_train_cat_net.sh
│   ├── demo_train_iml_vit.sh
│   ├── demo_train_mantra_net.sh
│   ├── demo_train_mvss.sh
│   ├── demo_train_object_former.sh
│   ├── demo_train_pscc.sh
│   ├── demo_train_span.sh
│   └── demo_train_trufor.sh
├── test_datasets.json
├── test.py
├── test_robust.py
└── train.py

此时,在该目录下配置好数据集路径,并调用sh demo_XXX_XXX.sh即可完成使用。

此外,不同功能的文件夹包,有点混乱,建议参考https://github.com/SegmentationBLWX/sssegmentation项目

如果你阅读了上述文档,就会发现IMDL-BenCo最终期待的使用模式是类似前后端的cli的方式生成代码,我们也希望import的时候路径可以相对短一些并且明确一些,综合考虑应该后续是不会大动文件夹结构,而是通过文档明确“文件夹包”的具体功能。如果有更好的设计理念也欢迎讨论。

总之,确实是这两天在收拾文档和做测试,仓库还处于快速迭代中,基于CLI的方式应该是最后期待的使用方式,这一周我们会基于这个范式完善所有功能、指令和对应的文档,如果有更多好建议,也欢迎讨论!再次感谢您的建议!

SunnyHaze commented 2 weeks ago

目前最新的版本号应该是0.1.11

miaoct commented 1 week ago

感谢你的回复