基于PyQt的图像算法开发软件——步骤列表[低代码实现图像算法开发]
这是我本科时候的一个练手项目,代码写的并不是很优雅,还请见谅
项目已经整理部分放到github上可以运行,链接 https://github.com/yejiongkai/IIP.git,有问题欢迎交流。
一、引言
在[一] 基于PyQt的图像算法开发软件——如何让你开发效率翻倍中,展示了该软件基于截图功能获取输入源进行图像处理的使用流程。在本篇章,我将对软件的步骤列表进行更加详细的介绍,步骤列表的目的是 让开发者摆脱代码调参的不便,通过交互的方式让开发者按照自己的想法组合各个算法,同时将 算法接口完全暴露,用户可以导出后 二次开发。(注意:该软件的受众需要有一定的图像处理基础和编程能力(懂一点python就行))
二、步骤列表
1. 树状容器
之所以叫” 步骤列表“,是因为这个软件执行算法组合时是一步一步往后走的,同时一开始存储这些算法组合的容器是一个列表(QListWidget),就起了一个” 步骤列表“的名字。但是后面发现列表容器的局限性太大,就改用树状容器(QTreeWidget),实现二级目录。在一级目录里,用户可以添加任意多个算法,然后展开后就能在二级目录里看到每个算法的排列。
2. 相关操作
在树状容器基础上,该软件在 支持批量操作上实现了 插入,删除,复制,粘贴,拖拽,导出以及修改功能。
2.1 插入
用于在当前是选中步骤下方添加空的步骤
2.2 删除
用于删除当前选中步骤
2.3 复制、粘贴
可以将多个选中项进行复制,组合成新的算法组合,然后粘贴到多个步骤中
2.4 导出
提供一个简单的算法导出功能(python语言), 配合软件自带的算法库,可以通过运行代码实现相同效果,方便用户二次开发。
2.5 拖拽
当用户希望交换算法组合中的算法顺序,或者移动步骤的位置,软件提供了拖拽功能,除了以上功能,还支持从一级目录到二级目录的覆盖,二级目录到一级目录的粘贴功能。不是很好截图,用户可以自行在软件中体验,非常容易上手。
2.6 修改
以上操作可以满足用户搭建想要的算法组合,但是想要达到理想效果,还需要调整参数。软件提供非常便捷的方式为用户提供修改参数操作,只需要” 双击“选中的步骤。