国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

python解析 MS-Celeb-1M 數(shù)據(jù)庫

2019-11-14 09:44:50
字體:
供稿:網(wǎng)友

我在微軟下載人臉識別數(shù)據(jù)庫 MS-Celeb-1M, 下載完的格式是 .tsv格式。看了數(shù)據(jù)庫官網(wǎng)的文件格式說明:


File format: text files, each line is an image record containing 7 columns, delimited by TAB. Column1: Freebase MID Column2: ImageSearchRank Column3: ImageURL Column4: PageURL Column5: FaceID Column6: FaceRectangle_Base64Encoded (four floats, relative coordinates of UpperLeft and BottomRight corner) Column7: FaceData_Base64Encoded


我決定用python件來解析這個.tsv文件,獲取圖片及相應(yīng)的人臉信息。以下是解析代碼:

import base64import structimport osdef readline(line): MID,ImageSearchRank,ImageURL,PageURL,FaceID,FaceRectangle,FaceData=line.split("/t") rect=struct.unpack("ffff",base64.b64decode(FaceRectangle)) return MID,ImageSearchRank,ImageURL,PageURL,FaceID,rect,base64.b64decode(FaceData)def writeImage(filename,data): with open(filename,"wb") as f: f.write(data)def unpack(filename,target="img"): i=0 with open(filename,"r",encoding="utf-8") as f: for line in f: MID,ImageSearchRank,ImageURL,PageURL,FaceID,FaceRectangle,FaceData=readline(line) img_dir=os.path.join(target,MID) if not os.path.exists(img_dir): os.mkdir(img_dir) img_name="%d-%s"%(len(os.listdir(img_dir)),FaceID)+".jpg" with open(os.path.join(target,MID+".info"), "a") as info: info.write("%s/t%f/t%f/t%f/t%f/n"%(img_name, FaceRectangle[0],FaceRectangle[1], FaceRectangle[2],FaceRectangle[3])) writeImage(os.path.join(img_dir,img_name),FaceData) i+=1 if i%1000==0: tsv文件和csv文件是類似的,tsv的數(shù)據(jù)用Tab鍵分隔,csv文件用逗號分隔。根據(jù)說明文件,把每一行的信息讀取出來

MID,ImageSearchRank,ImageURL,PageURL,FaceID,FaceRectangle,FaceData=line.split("/t")

人臉矩形框的位置信息是(左上點坐標(biāo),右下點坐標(biāo)),用Base64編碼的,格式為4個浮點數(shù)。

rect=struct.unpack("ffff",base64.b64decode(FaceRectangle))

人臉信息是用Base64編碼的,需要解碼,然后保存為圖像:

data=base64.b64decode(FaceData)with open(filename,"wb") as f: f.write(data)
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 乐平市| 罗江县| 哈巴河县| 南雄市| 屯昌县| 六枝特区| 柳江县| 左云县| 景泰县| 河源市| 贺兰县| 文安县| 宽城| 清涧县| 曲松县| 彭州市| 金坛市| 宣城市| 阜城县| 常德市| 木兰县| 百色市| 江安县| 磴口县| 贵定县| 西宁市| 宜兰市| 建水县| 商洛市| 武汉市| 苍山县| 诏安县| 库伦旗| 卓尼县| 荔浦县| 房山区| 颍上县| 龙山县| 兰考县| 东至县| 灵寿县|