openpose使用记录

环境时ubutnu 16.04
为了下载openpose快一些,安装ss

sudo apt install libsodium-dev
pip install git+https://github.com/shadowsocks/shadowsocks.git@master
sslocal -c config.json

在CPU_ONLY的状态下,测试

 ./build/examples/openpose/openpose.bin --image_dir /home/pikachu/Desktop/test --write_json /home/pikachu/Desktop/test --net_resolution 192x144 --display 0

批量提取文件夹中图片的pose信息

# -*- coding: utf-8 -*-
import os, sys
import datetime
# 所有数据放在DATASET_ROOT下,每一类放在一个文件夹
# 提取的帧放在OUTPUT_ROOT/pose下,每一类在一个文件夹,每一个视频提取的帧在以视频命令的文件夹下
DATASET_ROOT='/home/pikachu/Desktop/dataset/'
OUTPUT_ROOT='/home/pikachu/Desktop/'
OPENPOSE_ROOT='/'
# 提取帧的命令
def get_cmd(dir):
    #  ./build/examples/openpose/openpose.bin --image_dir /home/pikachu/Desktop/test --write_json /home/pikachu/Desktop/test --net_resolution 192x144 --display 0
    bin_path = OPENPOSE_ROOT+'/build/examples/openpose/openpose.bin'
    image_dir = DATASET_ROOT + file
    write_json_path = OUTPUT_ROOT+'json/'+file
    if not os.path.exists(write_json_path):
        os.makedirs(write_json_path)
    cmd=bin_path+' --image_dir '+image_dir+' --write_json '+write_json_path+' --net_resolution 192x144 --display 0  > /dev/null'
    return cmd
starttime = datetime.datetime.now()
# 遍历DATASET_ROOT
# 实际上,根据我的目录结构,其实只需要跟进两层
# 一层是大类,一层是具体的
dirs = os.listdir(DATASET_ROOT)
for dir1 in dirs:
    for dir2 in os.listdir(DATASET_ROOT+'/'+di1r):
        # 视频帧所在目录
        dir = dir1+'/'+dir2
        cmd = get_cmd(dir)
        print(cmd)
        # os.system(cmd)


endtime = datetime.datetime.now()
print('times: ',(endtime-starttime).seconds,' seconds')

猜你喜欢

转载自blog.csdn.net/qq_32768743/article/details/80210539