多线程处理脚本

在处理数据集的时候,往往是一张一张循环处理,如果数据集太大,处理时间就会很长。我们可以使用多线程处理。

多线程的模板直接用mmcv库里面的一个函数就行了

参考如下:

https://github.com/open-mmlab/mmcv/blob/master/docs_zh_CN/understand_mmcv/utils.md

 

比如我要写一个cp操作,把数据集按照一定格式复制一遍。

import os
import mmcv

def func_cp(item):
    img_path, cp_path = item
    cmd = "cp " + img_path + " " + cp_path
    os.system(cmd)


items_cp = []

for ... :
    items_cp.append((img_path, cp_path))


mmcv.track_parallel_progress(func_cp, items_cp, 32)

 

posted @ 2021-09-08 19:15  立冬以东  阅读(154)  评论(0编辑  收藏  举报