hanchaoleng / ShapeConv

ShapeConv: Shape-aware Convolutional Layer for Indoor RGB-D Semantic Segmentation (ICCV 2021)
Apache License 2.0
106 stars 15 forks source link

Suggest to loosen the dependency on albumentations #11

Open Agnes-U opened 1 year ago

Agnes-U commented 1 year ago

Hi, your project ShapeConv(commit id: 25bee65af4952c10ed4e24f6556765654e56575f) requires "albumentations==0.4.1" in its dependency. After analyzing the source code, we found that the following versions of albumentations can also be suitable, i.e., albumentations 0.4.0, since all functions that you directly (6 APIs: albumentations.augmentations.functional.scale, albumentations.core.transforms_interface.to_tuple, albumentations.augmentations.functional.pad_with_params, albumentations.core.transforms_interface.DualTransform.init, albumentations.core.composition.Compose.init, albumentations.augmentations.transforms.PadIfNeeded.init) or indirectly (propagate to 14 albumentations's internal APIs and 2 outsider APIs) used from the package have not been changed in these versions, thus not affecting your usage.

Therefore, we believe that it is quite safe to loose your dependency on albumentations from "albumentations==0.4.1" to "albumentations>=0.4.0,<=0.4.1". This will improve the applicability of ShapeConv and reduce the possibility of any further dependency conflict with other projects.

May I pull a request to further loosen the dependency on albumentations?

By the way, could you please tell us whether such an automatic tool for dependency analysis may be potentially helpful for maintaining dependencies easier during your development?

CyberPegasus commented 11 months ago

By adaptively addjusting the relative reference of "albumentations.xxxx.functional", actually, any version of albumentations will be valid for ShapeConv. ( Specific to the implementation in this repo and also in 'https://github.com/Media-Smart/vedaseg')