Ejemplo n.º 1
0
def prepare_imgset():
    ## parameters
    cs_val_dir = '/mnt/phoenix_fastdir/dataset/cityscapes/leftImg8bit_sequence/val'
    imgset_dir = '/mnt/phoenix_fastdir/dataset/cityscapes/leftImg8bit_sequence/imgset'
    set_names = ['frankfurt', 'lindau', 'munster']

    imgset_val_dir = os.path.join(imgset_dir, 'val')
    create_dir(imgset_val_dir)

    name_suffix = 'leftImg8bit'
    im_ext = '.png'

    for set_name in set_names:
        imgset_val_path = os.path.join(imgset_val_dir, set_name + '.txt')
        arr = os.listdir(os.path.join(cs_val_dir, set_name))
        arr = np.sort(arr)
        print arr
        print imgset_val_path

        with open(imgset_val_path, 'w') as f1:
            for row_id in xrange(0, len(arr)):
                im_name = arr[row_id][:-4]
                f1.write('{:s}\n'.format(im_name))

        f1.close
Ejemplo n.º 2
0
def generate_ppmimgs(seq_data_dir, seq_names, dest_ppmimgs_dir):
    if not os.path.exists(dest_ppmimgs_dir):
        create_dir(dest_ppmimgs_dir)
    for seq_name in seq_names:
        seq_folder_dir = os.path.join(seq_data_dir, seq_name)
        seq_img1_dir = os.path.join(seq_folder_dir, 'img1')
        rename_create_ppmimgs(seq_img1_dir, dest_ppmimgs_dir, seq_name)
Ejemplo n.º 3
0
def prepare_imgset():
    ## parameters
    data_root_dir=cscfg.DATA.ROOT_DIR
    set_branch=cscfg.DATA.BRANCH      ## validation set 
    sub_set_dir=os.path.join(data_root_dir,set_branch)
    imgset_dir=cscfg.DATA.IMGSET_DIR
    im_ext=cscfg.DATA.IM_EXT
    
    if set_branch=='val':
        set_names=['frankfurt','lindau','munster']
    
    imgset_dir=os.path.join(imgset_dir,set_branch)
    create_dir(imgset_dir)

    for set_name in set_names:
        print set_name
        imgset_path=os.path.join(imgset_dir,set_name+'.txt')
        arr=os.listdir(os.path.join(sub_set_dir,set_name))
        arr=np.sort(arr)
        print arr
        print imgset_path

        with open(imgset_path, 'w') as f1:
            for row_id in xrange(0, len(arr)):
                im_name=arr[row_id][:-4]
                f1.write('{:s}\n'. format(im_name)) 
                 
        f1.close  
Ejemplo n.º 4
0
def get_vis_dir():
    res_dir = mcfg.PROPOSAL.RES_DIR
    res_dir = res_dir.replace('Continious', 'PerPerson')
    create_recur_dirs(res_dir)
    vis_gt_dir = os.path.join(res_dir, 'vis_gt_all')
    create_dir(vis_gt_dir)
    return vis_gt_dir
Ejemplo n.º 5
0
def motdevkit_16_to_17():
    src_dir='/mnt/phoenix_fastdir/dataset/MOTdevkit2016/MOT2016'
    dest_dir='/mnt/phoenix_fastdir/dataset/MOTdevkit2017/MOT2017'
    im_ext='.jpg'

    ##imgsets
    src_imgsets_dir=os.path.join(src_dir,'ImageSets/Main')
    dest_imgsets_dir=os.path.join(dest_dir,'ImageSets/Main')
    
    imgset_name='val.txt'
    src_imgsets_path=os.path.join(src_imgsets_dir,imgset_name)
    dest_imgsets_path=os.path.join(dest_imgsets_dir,imgset_name)

    ##jpg images
    src_jpg_dir=os.path.join(src_dir,'JPEGImages')
    dest_jpg_dir=os.path.join(dest_dir,'JPEGImages')
    create_dir(dest_jpg_dir)

    ##batch imgsets
    src_strs,dest_strs=batch_rename_strarr(src_imgsets_path,dest_imgsets_path)
     
    ##batch jpgimgs
    ##batch_rename_imgs(src_strs,dest_strs,src_jpg_dir,dest_jpg_dir,im_ext)

    ##'/Annotations'    
    ##cur_dir='/mnt/phoenix_fastdir/dataset/MOTdevkit2017/MOT2017/Annotations'
    bw_flow_dir='/mnt/phoenix_fastdir/experiments/opticalflow/MOT17/LDOF/MOT17-02/bw'
    fw_flow_dir='/mnt/phoenix_fastdir/experiments/opticalflow/MOT17/LDOF/MOT17-02/fw'
    batch_rename_func(fw_flow_dir)
Ejemplo n.º 6
0
def vis_link_imgs(im_names, src_dir1, src_dir2, dest_dir):
    create_dir(dest_dir)
    for im_name in im_names:
        im_path1 = os.path.join(src_dir1, im_name + im_ext)
        im_path2 = os.path.join(src_dir2, im_name + im_ext)
        link_im_path = os.path.join(dest_dir, im_name + im_ext)

        im1 = cv2.imread(im_path1)
        im2 = cv2.imread(im_path2)
        im_height = im1.shape[0]
        im_width = im1.shape[1]

        link_im = np.zeros((im_height * 2, im_width, 3), dtype=np.uint8)

        link_im[0:im_height, :, :] = im1
        link_im[im_height:im_height * 2, :, :] = im2
        cv2.imwrite(link_im_path, link_im)
Ejemplo n.º 7
0
def vis_gt_per_person(gt_frm_ids,
                      gt_obj_ids,
                      gt_boxes,
                      gt_masks,
                      tight_gt_boxes=[]):
    uniq_obj_ids = np.sort(np.unique(gt_obj_ids))
    for obj_id in uniq_obj_ids:
        row_indexes = np.where(gt_obj_ids == obj_id)[0]
        label_frm_ids = gt_frm_ids[row_indexes]
        label_boxes = tight_gt_boxes[row_indexes]  ## tight box
        label_boxes1 = gt_boxes[row_indexes]  ## loose box

        label_masks = gt_masks[row_indexes]
        id_indexes = label_frm_ids - 1
        label_ims = rgb_ims[id_indexes]
        label_im_names = im_names[id_indexes]
        label_dir = os.path.join(vis_gt_dir, str(obj_id))
        create_dir(label_dir)
        vis_box_per_person(label_dir, label_ims, label_im_names, label_boxes,
                           obj_id, label_masks, label_boxes1)
Ejemplo n.º 8
0
def save_vis_masks(ims,im_names,gt_masks_dir,gt_masks,corrup_masks_dir,corrup_masks):
    # 5.2> save vis_gt_masks and corrup_masks 
    alpha_folder='alpha_masks'
    color_folder='color_masks'

    ## alpha masks(gt)
    alpha_gt_dir=os.path.join(gt_masks_dir,alpha_folder)
    create_dir(alpha_gt_dir)
    alpha_gt_masks=gt_masks*255.0
    save_images(alpha_gt_masks,alpha_gt_dir,im_names,im_ext)
   
    ## alpha masks(corrup)
    alpha_corrup_dir=os.path.join(corrup_masks_dir,alpha_folder) 
    create_dir(alpha_corrup_dir)
    alpha_corrup_masks=corrup_masks*255.0
    save_images(alpha_corrup_masks,alpha_corrup_dir,im_names,im_ext)
     
    ## color masks(gt)
    color_gt_masks=np.zeros((ims.shape),dtype=np.uint8)     
    color=[0,0,255]
    for m_id in xrange(len(gt_masks)):
        im=ims[m_id]
        mask=gt_masks[m_id]
        color_mask=vis_im_mask(im,mask,color,True)
        color_gt_masks[m_id]=color_mask
    
    color_gt_dir=os.path.join(gt_masks_dir,color_folder)
    create_dir(color_gt_dir)
    save_images(color_gt_masks,color_gt_dir,im_names,im_ext)
    
    ## here is small bug(need to debug)
    ## color masks(corrup)
    color_corrup_masks=np.zeros((ims.shape),dtype=np.uint8)     
    color=[0,0,255]
    for m_id in xrange(len(corrup_masks)):
        im=ims[m_id]
        mask=corrup_masks[m_id]
        color_mask=vis_im_mask(im,mask,color,True)
        color_corrup_masks[m_id]=color_mask
    
    color_corrup_dir=os.path.join(corrup_masks_dir,color_folder)
    create_dir(color_corrup_dir)
    save_images(color_corrup_masks,color_corrup_dir,im_names,im_ext)
Ejemplo n.º 9
0
def get_match_res_dir(obj_id):
    ### create gt_masks_dir, corrup_masks_dir and pick_masks_dir for later use
    print '=========================get match res dir====================='
    # seg_dir
    seg_dir=mcfg.EXPR.SEG_DIR 
    dataset=mcfg.DATA.DATASET
    seg_algr=mcfg.EXPR.SEG_ALGR
    seg_dir=os.path.join(seg_dir,dataset,seg_algr)

    # random_corrup_dir
    rand_corrup_dir=os.path.join(seg_dir,'random_corrup')
    create_dir(rand_corrup_dir)
    
    ##match_boxes_dir
    match_boxes_dir=os.path.join(rand_corrup_dir,'match_boxes')
    create_dir(match_boxes_dir)

    match_boxes_dir=os.path.join(match_boxes_dir,str(obj_id))
    create_dir(match_boxes_dir)

    return match_boxes_dir
Ejemplo n.º 10
0
def get_annotations_dir(data_dir):
    annots_dir = os.path.join(data_dir, annots_folder)
    create_dir(annots_dir)
    return annots_dir
Ejemplo n.º 11
0
def create_masks_dirs(obj_id):
    ##print '=========================get maks dir====================='
    # seg_dir
    seg_dir=mcfg.EXPR.SEG_DIR 
    dataset=mcfg.DATA.DATASET
    seg_algr=mcfg.EXPR.SEG_ALGR
    seg_dir=os.path.join(seg_dir,dataset,seg_algr)

    # random_corrup_dir
    rand_corrup_dir=os.path.join(seg_dir,'random_corrup')
    create_dir(rand_corrup_dir)

    # sub masks dirs
    gt_masks_dir=os.path.join(rand_corrup_dir,'gt_masks')
    corrup_masks_dir=os.path.join(rand_corrup_dir,'corrup_masks')
    pick_masks_dir=os.path.join(rand_corrup_dir,'pick_masks')
    create_dir(gt_masks_dir)
    create_dir(corrup_masks_dir)
    create_dir(pick_masks_dir)
    
    ## sub masks dirs with obj_ids
    gt_masks_dir=os.path.join(gt_masks_dir,str(obj_id))
    create_dir(gt_masks_dir)

    corrup_masks_dir=os.path.join(corrup_masks_dir,str(obj_id))
    create_dir(corrup_masks_dir)

    # pick_masks_dir=os.path.join(pick_masks_dir,str(obj_id))
    # create_dir(pick_masks_dir)
    return gt_masks_dir,corrup_masks_dir,pick_masks_dir
Ejemplo n.º 12
0
def get_ref_dir():
    track_mask_dir = io.get_track_mask_info(seq_name)
    refine_res_dir = os.path.join(track_mask_dir, 'res')
    create_dir(refine_res_dir)
    return refine_res_dir
Ejemplo n.º 13
0
def online_pick_iteration(track_mask_dir, label, frm_ids, init_masks,
                          init_boxes, cur_ims, cur_fw_flows, cur_bw_flows,
                          shift_vec):
    print 'online pick iteration...'
    ## para0: max_bbox
    iter_num = mcfg.FTRACK.ITER_NUM
    seq_name = mcfg.DATA.SEQNAME
    im_ext = mcfg.DATA.IMGEXT
    mask_im_ext = mcfg.MASK.BIN_IM_EXT

    track_lab_mask_dir = os.path.join(track_mask_dir, str(label))
    create_dir(track_lab_mask_dir)

    if debug_flag:
        print 'track_mask_dir:', track_mask_dir
        print 'track_lab_mask_dir:', track_lab_mask_dir
        print 'iter_num:', iter_num

    iou_arr = np.zeros(iter_num)
    cur_masks = init_masks
    cur_boxes = init_boxes

    conv_flag = False
    iter_id = 0  ## counter
    ave_iou = 0.0
    old_ave_iou = 0.0

    while iter_id < iter_num and conv_flag == False:
        #for iter_id in xrange(iter_num):
        old_ave_iou = ave_iou

        picked_masks = []
        picked_boxes = []

        ## ---------------------------------------create dirs----------------------------------------------------------------------
        ## iter dir
        iter_name = 'iter' + str(iter_id)
        iter_label_prop_path = os.path.join(
            track_lab_mask_dir,
            iter_name + '.txt')  ##picked dets(boxes) file path

        ## picked masks dir
        iter_label_dir = os.path.join(track_lab_mask_dir, iter_name)
        create_dir(iter_label_dir)

        ## vis for debuging
        vis_iter_name = 'vis_iter' + str(iter_id)
        vis_iter_label_dir = os.path.join(track_lab_mask_dir, vis_iter_name)
        create_dir(vis_iter_label_dir)

        ## new added, for converage
        ## converage .txt
        iter_conv_name = 'iter_conv'
        iter_conv_label_prop_path = os.path.join(
            track_lab_mask_dir,
            iter_conv_name + '.txt')  ##picked dets(boxes) file path

        # # converage masks dir
        iter_conv_label_dir = os.path.join(track_lab_mask_dir, iter_conv_name)
        create_dir(iter_conv_label_dir)

        ## pick masks in different cases
        if len(cur_ims) > 2:
            prev_boxes, next_boxes, fw_masks, bw_masks = cal_per_label(
                cur_ims, cur_fw_flows, cur_bw_flows, frm_ids, cur_boxes,
                cur_masks)

            picked_bboxes, picked_masks, y_labels, ave_iou = lpsolve_pick_mask(
                cur_ims, frm_ids, prev_boxes, cur_boxes, next_boxes, fw_masks,
                cur_masks, bw_masks, shift_vec)

            if vis_picked_flag:
                vis_picked_masks(vis_iter_label_dir, cur_ims, frm_ids,
                                 y_labels, picked_masks, picked_bboxes,
                                 fw_masks, prev_boxes, cur_masks, cur_boxes,
                                 bw_masks, next_boxes)
        else:  ## just one image
            picked_masks = cur_masks
            picked_bboxes = cur_boxes

        iou_arr[iter_id] = ave_iou

        ## judge if it's converaged
        if ave_iou == old_ave_iou:
            conv_flag = True
        else:
            cur_masks = picked_masks
            cur_boxes = picked_bboxes

        if save_masks_flag:
            save_picked_masks(iter_label_dir, seq_name, picked_masks,
                              frm_ids)  ## save binary masks(for later using)

        if save_dets_flag:
            save_picked_proposals(iter_label_prop_path, frm_ids, label,
                                  picked_bboxes)  ## save det proposals

        print 'iou_arr:', iou_arr

        ## save conv results
        if conv_flag == True or iter_id == iter_num - 1:
            if save_masks_flag:
                save_picked_masks(
                    iter_conv_label_dir, seq_name, cur_masks,
                    frm_ids)  ## save binary masks(for later using)
            if save_dets_flag:
                save_picked_proposals(iter_conv_label_prop_path, frm_ids,
                                      label, cur_boxes)  ## save det proposals

        iter_id += 1  ## loop
Ejemplo n.º 14
0
if __name__ == '__main__':
    get_video_demo()

    ## MOT
    dataset = 'MOT17'

    det_res_dir = mcfg.DETCTION.RES_DIR
    det_res_dir = os.path.join(det_res_dir, dataset)
    det_algr = mcfg.DETCTION.ALG
    det_im_dir = os.path.join(det_res_dir, det_algr)
    video_fps = mcfg.DEMO.VIDEO_FPS

    ##in local disk(transfer to phoenix later)
    data_dir = mcfg.DATA.DATA_DIR
    imgset_path = mcfg.DATA.IMGSET = 'MOTdevkit2016/MOT2016/ImageSets/Main/val.txt'
    imgset_path = os.path.join(data_dir, imgset_path)
    im_ext = mcfg.DATA.IMGEXT = '.jpg'

    video_demo_dir = os.path.join(det_res_dir, 'video_demo')
    if not os.path.exists(video_demo_dir):
        create_dir(video_demo_dir)

    with open(imgset_path) as f:
        im_names = [x.strip() for x in f.readlines()]
    f.close
    im_names = im_names

    ##video_demo_dir=os.path.join('/mnt/phoenix_fastdir/experiments/detection/MOT','video_demo')
    im_seq_to_video(det_algr, det_im_dir, im_names, im_ext, video_demo_dir,
                    video_fps)
Ejemplo n.º 15
0
def vis_proposals_multi_instances(proposal_algr_dir, det_proposals_folder, im,
                                  im_name, bboxes, masks, labels):
    print '==============================vis_proposals==========================================='

    vis_im = im.copy()
    im_width = im.shape[1]
    im_height = im.shape[0]
    cmap = color_map()  ## color map
    base_im_name = im_name

    vis_det_dir = os.path.join(proposal_algr_dir, det_proposals_folder)
    vis_seg_dir = vis_det_dir  ## det & seg in the same folder
    create_dir(vis_det_dir)
    print '==========================vis proposals================================='
    print 'im_name:', im_name
    print 'im_width:', im_width
    print 'im_height:', im_height
    print 'len(masks):', len(masks)
    print 'bboxes.shape:', bboxes.shape
    print 'seg_im_ext:', seg_im_ext
    print 'vis_det_dir:', vis_det_dir

    vis_im_seg = vis_im
    for b_id in xrange(
            0,
            len(bboxes)):  ## here obj_id is actually the index(of the array)
        bbox = bboxes[b_id]
        x1 = int(round(bbox[0]))
        y1 = int(round(bbox[1]))
        x2 = int(round(bbox[2]))
        y2 = int(round(bbox[3]))
        x1 = np.min((im_width - 1, np.max((0, x1))))
        y1 = np.min((im_height - 1, np.max((0, y1))))
        x2 = np.min((im_width - 1, np.max((0, x2))))
        y2 = np.min((im_height - 1, np.max((0, y2))))
        w = x2 - x1 + 1
        h = y2 - y1 + 1

        ##object id and assign color
        label = labels[b_id]
        color = cmap[label]
        colo = np.array((int(color[0]), int(color[1]), int(color[2])))

        # ##'----------------------------------Mask part------------------------------------------------'
        # # mask = masks[b_id, :, :]    #mask.shape=(28,28)
        # # mask = cv2.resize(mask, (int(w), int(h)), interpolation=cv2.INTER_LINEAR) #bilinear interpolation
        # mask[mask >= thresh_mask] = 1
        # mask[mask < thresh_mask] = 0
        mask = masks[b_id]

        ###===============================per-person visualization=======================================
        if vis_mask_flag:
            label_id_fg = (mask >= thresh_mask)
            label_mask_t = np.zeros((h, w, 3), dtype=np.uint8)

            label_im_box = im[y1:y2 + 1, x1:x2 + 1, :]
            label_mask_t[:, :, :] = vis_im_seg[
                y1:y2 + 1,
                x1:x2 + 1, :]  # copy the proposal region from the color image

            label_mask_t[label_id_fg, 0] = colo[0]
            label_mask_t[label_id_fg, 1] = colo[1]
            label_mask_t[label_id_fg, 2] = colo[2]

            cv2.addWeighted(label_mask_t, alpha, label_im_box, 1 - alpha, 0,
                            label_mask_t)

            vis_im_seg[y1:y2 + 1, x1:x2 + 1, :] = label_mask_t
            ##cv2.imwrite(vis_label_mask_path,label_mask_t)
            ##cv2.imwrite(vis_label_mask_path,vis_im_seg)
            ##cv2.imshow('label_mask',label_mask_t)
            ##cv2.waitKey(-1)

        cv2.rectangle(vis_im, (x1, y1), (x2, y2), (colo), mid_line_width)
        font = cv2.FONT_HERSHEY_SIMPLEX
    vis_im_path = os.path.join(vis_det_dir, im_name + im_ext)
    print 'vis_im_path:', vis_im_path
    ##cv2.imshow('det_proposal', vis_im)
    cv2.imwrite(vis_im_path, vis_im)  #complete annotation
Ejemplo n.º 16
0
def get_mot_gt_path(mot_data_dir):
    dets_gt_dir = os.path.join(mot_data_dir, 'gt')
    create_dir(dets_gt_dir)
    dets_gt_path = os.path.join(dets_gt_dir, 'gt.txt')
    return dets_gt_path
Ejemplo n.º 17
0
def get_bmfsets_path(imgsets_dir, set_name):
    imgsets_main_dir = os.path.join(imgsets_dir, 'Bmf')
    create_dir(imgsets_main_dir)
    bmfsets_path = os.path.join(imgsets_main_dir, set_name + bmfsets_file_ext)
    return bmfsets_path
Ejemplo n.º 18
0
def get_ppmimgs_dir(data_dir):
    ppmimgs_dir = os.path.join(data_dir, ppmimgs_folder)
    create_dir(ppmimgs_dir)
    return ppmimgs_dir
Ejemplo n.º 19
0
def get_imgsets_path(imgsets_dir, set_prop):
    imgsets_main_dir = os.path.join(imgsets_dir, 'Main')
    create_dir(imgsets_main_dir)
    imgsets_path = os.path.join(imgsets_main_dir, set_prop + imgsets_file_ext)
    return imgsets_path
Ejemplo n.º 20
0
def get_vis_dir_info(vis_folder):
    track_mask_dir=os.path.join(seg_res_dir,track_mask_folder) 
    vis_mask_dir=os.path.join(track_mask_dir,vis_folder) 
    create_dir(vis_mask_dir) 
    return vis_mask_dir
Ejemplo n.º 21
0
def get_jpgimgs_dir(data_dir):
    jpgimgs_dir = os.path.join(data_dir, jpgimgs_folder)
    create_dir(jpgimgs_dir)
    return jpgimgs_dir
Ejemplo n.º 22
0
def get_data_dir(devkit_dir, dataset_name):
    data_dir = os.path.join(devkit_dir, dataset_name)
    create_dir(data_dir)
    return data_dir
Ejemplo n.º 23
0
def get_imgnet_devkit_dir(f_year):
    imgnet_devkit_dir = os.path.join(data_dir, upper_mot + 'devkit' + f_year)
    create_dir(imgnet_devkit_dir)
    return imgnet_devkit_dir
Ejemplo n.º 24
0
    jpgdir_path = os.path.join(data_dir, jpgdir)

    ##(2) point tracking
    track_res_dir = mcfg.PTRACK.RES_DIR
    frame_interval = mcfg.PTRACK.FRAME_INTER
    sample_rate = mcfg.PTRACK.SAMPLE_RATE
    sub_dir_name = str(frame_interval) + 'frm_' + str(sample_rate) + 'pt'
    point_mat_path = os.path.join(track_res_dir, sub_dir_name, 'pt_mat.mat')
    label_mat_path = os.path.join(track_res_dir, sub_dir_name, 'lab_mat.mat')

    ##(3) proposals
    prop_res_dir = mcfg.PROPOSAL.RES_DIR

    ## result directory
    vis_dir = os.path.join(track_res_dir, sub_dir_name, 'per_person')
    create_dir(vis_dir)

    ##at present, mainly focus on large objects
    large_obj_dir = os.path.join(vis_dir, 'large_person')
    small_obj_dir = os.path.join(vis_dir, 'small_person')
    create_dir(large_obj_dir)
    create_dir(small_obj_dir)
    size_thre = mcfg.PTRACK.OBJECT_SIZE_THRESHOLD

    set_name, shift_num, end_frame, im_names = load_seq_info(imgset_path)

    rgb_ims = load_color_images(jpgdir_path, im_names, im_ext)

    prop_arr = load_proposals(prop_res_dir, set_name)

    im_width = rgb_ims[0].shape[1]
Ejemplo n.º 25
0
def get_imgsets_dir(data_dir):
    imgsets_dir = os.path.join(data_dir, imgsets_folder)
    create_dir(imgsets_dir)
    return imgsets_dir
Ejemplo n.º 26
0
        im=cv2.imread(im_path1)
        cv2.imwrite(im_path2,im)
    print 'convert jpg to ppm...'


if __name__ == '__main__':
    data_dir=mcfg.DATA.DATA_DIR
    imgset=mcfg.DATA.IMGSET_TRAIN
    jpg_dir=mcfg.DATA.JPGDIR
    ppm_dir='MOTdevkit2017/MOT2017/PPMImages'
    im_ext=mcfg.DATA.IMGEXT

    imgset=os.path.join(data_dir,imgset)
    jpg_dir=os.path.join(data_dir,jpg_dir)
    ppm_dir=os.path.join(data_dir,ppm_dir)
    create_dir(ppm_dir)
        
    im_names=load_txt_to_strarr(imgset)
    
    im_names=im_names[:600]   ##MOT17-02
    ##print im_names
    
    print 'im_names:', im_names
    '''
    set_name='MOT17-02'
    bmf_dir='/home/uni/Lab/projects/C++/trackingCPU'
    bmf_path=os.path.join(bmf_dir,set_name+'.bmf')
    tmp_arr=[]

    for im_name in im_names:
        im_name=im_name+'.ppm'