自己做了一个图像增强工具包
前言
由于各种各样的需要,就自己做了一个通用的图像增强工具包,方便以后使用。正因为是通用工具包,所以就直接开源分享了。目前这个版本还在测试过程中,地址:开源地址
省流版使用方法
直接面向GitHub
编程,因为这样能够避免Python
工作空间的问题。
1 | git clone https://github.com/sakebow/enhance-image.git |
没有什么多余的烦恼。主打一个执行就完事儿。
使用方法详细介绍
为了方便部分赶时间的人,这里直接写说明文档,原理什么的放后面再说。
首先,这个工具包虽然封装为了一个pip
包,但是并没有彻底地在所有的系统中测试,所以,使用过程中非常推荐直接使用源码的方式。
pip安装
暂不推荐,等待后续版本迭代
源码安装
在使用源码的过程中,我们首先需要保证我们的代码与文件夹是以如下的结构存放的:
1 | your_dataset_dir/ |
依赖安装
在使用这段代码的之前,需要安装依赖。你可以像这样安装依赖:
1 | pip install -r requirements.txt |
当然,我自己构建的pip
包还有一个额外的用途:直接安装依赖。想不到吧?(叉腰)
1 | pip install sakebow-enhancer |
这样就会直接安装掉所有的依赖。当然,多了一个没什么大用的sakebow-enhancer
。
配置文件编辑
依赖解决了,我们就来解决初始化问题。初始化最主要的就是配置文件的读取与加载了。在本项目中,就是读取default.yaml
文件获取处理配置。
需要注意的是,相对于default.yaml
文件也有一点小小的修改:
1 | config: |
在使用过程中,对图像与标签的处理目前只有固定角度的旋转,并且能够保证旋转后的图像与标签的相对位置不变。所以在其他配置不动的情况下,可以只编辑这么几个配置:
1 | config: |
如果可以的话,下一个版本或许也会增加补充配置的功能,使得my.yaml
文件的读取能够动态覆盖default.yaml
,而不是整个替代。
代码执行
依赖解决了,配置搞定了,接下来就是执行代码了。
执行其实非常简单,找到我们所需要的sakebow-enhancer.py
文件,然后执行即可:
1 | python sakebow-enhancer.py |
正是由于我们已经修改了default.yaml
配置文件,我们直接运行sakebow-enhancer.py
文件是没什么问题的。
让别人云里雾里的命令行执行
当然,我也明白有些人并不喜欢这么做,而是希望用命令行让一切都简单一点。
所以也预留了另一种命令行方法,那就是找到我们的sakebow-enhancer-cli.py
文件,然后执行:
1 | python sakebow-enhancer-cli.py --yaml=my.yaml |
其中,my.yaml
就是我们自己定义的配置文件,这个文件需要放在sakebow-enhancer-cli.py
的同级目录下。
看起来很简单对吧?