Skip to content

[Feature] 多人协作畅想 #330

@JasonYu0822

Description

@JasonYu0822

🎯 功能背景 | Background

打标签是一个体力活,量大的时候往往会手动分工进行合作,比如百度智能云的多人协作打标签,亦或者是自己把数据集分成多份分给大家,最后再合并起来

✨ 解决方案 | Solution

软件添加一个多人协作的功能,支持多人一起打标签。不考虑服务器多人协作的方式,个人认为的解决方案的逻辑流程如下(纯建议,不专业,仅供参考):

简单而言,就是把图片数据集分成多份,然后分开打标签,最后打完之后把文件缝合在一起

  • 用户选择(或者通过输入数字的方式)以确定要让多少个人一起打标签,在这里我们假设有n个人要多人协作打标签
  • 创建一个表格文件(csv),索引分两行:image_fileuser_id,一个用于列出各个图片的文字,一个用来确定由哪个人打标签
  • 将images图像文件夹内的图片文件名列入image_file
  • 通过循环的方式,在user_id文件夹中循环写入1,2,……,n,1,2(也就是从1开始到n结束一次循环),以确定由哪个人来为这个图片打上标签
  • 根据表格文件的内容,创建多个文件夹,命名规则为<images_folder>_<user_id>,其中<images_folder>是原本用户选择的图像文件夹(也可以默认指定一个,比如说images这样,这样能少几行代码哈哈),然后<user_id>代表这个文件夹内的图片要交给哪个人来打标签
  • 标签文件夹同上。或许需要在进行分割数据集这一步骤的电脑里的数据集文件夹中留下一个配置文件用于记录这个数据集是啥,被分割成了几份这样的分割记录。
  • 大家打完标签后,把数据集文件夹按照原本<images_folder>_<user_id>命名方式全部聚在一起,软件读取后,把数据集缝合回去,最后的那个文件夹也就是原本的<images_folder>就是最开始分割前的数据集了。(标签文件夹同理,这样的话就是全部文件都打上标签的标签文件夹了)

💡 替代方案 | Alternatives

多人协作往往意味着需要一个服务器,这有一定的开销,而且配置起来相对麻烦,无论对于开发者还是使用者而言都不划算。

🌟 附加内容 | Additional Context

这个建议提得非常业余,有不足之处请指出,想骂的话骂轻一点。

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions