シャムネットワークベースのトラッカーのためのJSONファイルにLaSOTとGOT-10Kのような追跡ベンチマークの情報をパッケージ化するPythonスクリプト

################################################# ########################################## ### FOT LaSOTデータセット################################################## ######################################### 
インポートのOS
 インポートのNPとしてnumpyの 
 輸入JSONの
 インポートPDB 

LaSOT_path = " /ホーム/ wangxiao /ダウンロード/ pysot / testing_dataset / LaSOT / " 
video_files = os.listdir(LaSOT_path)
video_files = np.sort(video_files) 

#は、JSONでのいくつかの配列またはその他の形式の問題を避けるために、このクラスを使用します。
クラスNumpyEncoder(json.JSONEncoder):
     "" " numpyのタイプのための特別なJSONエンコーダ""" 
    デフデフォルト(自己、OBJ):
         もしでisinstance(OBJ、(np.int_、np.intc、np.intp、np.int8、 np.int16、np.int32、np.int64、np.uint8、np.uint16、np.uint32、np.uint64)):
             返すint型(OBJ)
         のelif でisinstance(OBJ、(np.float_、np.float16、NP .float32、np.float64)):
             リターン・フロート(OBJ)
         のelifでisinstance(OBJ、(np.ndarray、)): ###これは修正され
            、戻りobj.tolist()
         を返すjson.JSONEncoder.default(自己を、 OBJ)


のdict ={} 

範囲内IDX用(LEN(video_files))
のための IDX における範囲(5): テストのために#このコード仕事やありません。
    VIDEO_NAME = video_files [IDX] 
    img_path = LaSOT_path + VIDEO_NAME + ' / IMG / ' 
    gt_path   = LaSOT_path + VIDEO_NAME + ' /groundtruth.txt ' 

    プリント" == >>ビデオ名称:"、VIDEO_NAME、現在のインデックス/全"idxが、" / "LEN(video_files)は、" しばらくお待ちください... "
    
    img_files =([Pソートするための P  os.listdir(img_path)場合 os.path.splitext(P)[1] == ' .JPG ' )] 

    #1 pdb.set_trace()

    gt_files   = np.loadtxt(gt_path、デリミタ= ' ' 
    init_rect = gt_files [0] 
    init_rect_first = init_rect.tolist()#1 pdb.set_trace() 
    img_names_list = [] 
    gt_files_list = [] 各画像と接地真実のための### のための img_idx 
    
    

    
    範囲(LEN(img_files)):
        img_names = VIDEO_NAME + ' / IMG / ' + img_files [img_idx] 
        img_names_list.append(img_names)
        gt_files_list.append(gt_files [img_idx]) 
    
    pdb.set_trace() 
    
    ###を収集して保存1つの辞書に。
    dict_collect = { ' video_dir ':VIDEO_NAME、' init_rect ':init_rect_first、' img_names ':img_names_list、' gt_rect ' :gt_files_list} 
    辞書は[VIDEO_NAME] = dict_collectが


ダンプ= json.dumps(dictの、CLS = NumpyEncoder)
オープン(と' LaSOT_test.json '' W + ' :Fなど)
    json.dump(ダンプ、f)を

印刷" == >>完了!" 

ファイルを開い=(' LaSOT_test.json '' R '、エンコード= ' UTF-8 ' 
benchmark_info = json.load(ファイル)
 プリント benchmark_info()

 

おすすめ

転載: www.cnblogs.com/wangxiaocvpr/p/11343653.html