利用python和shell腳本生成train.txt的標籤文件

1. 用shell腳本生成帶絕對路徑的train.txt

例如我要生成以下形式的帶標籤的文件,如圖:(若有兩個標籤:0 和 1)python

shell腳本以下:shell

這樣標籤0寫入了train.txtspa

 1 # /usr/bin/env sh
 2 DATA=/home/ttwang/Desktop/Texture/0
 3 DATASAVE=/home/ttwang/Desktop  4 
 5 echo "Create train.txt..."
 6 
 7 # /usr/bin/env sh
 8 find $DATA -name Grass*.jpg | sed "s/$/ 1/" >>$DATASAVE/train.txt  9 
10 echo "Done.."

再寫一個腳本,這樣就把指定文件下的想要作成標籤1的圖片寫入了train.txt,(這樣比較麻煩,確定有比這更好的)
.net

 

# /usr/bin/env sh
DATA=/home/ttwang/Desktop/Texture/1 DATASAVE=/home/ttwang/Desktop echo "Create train.txt..."

# /usr/bin/env sh
find $DATA -name Road*.jpg | sed "s/$/ 1/" >>$DATASAVE/train.txt echo "Done.."

 

 

而後,運行腳本: sh 1.sh / sh 2.sh (假設腳本文件名爲這個),就好了!code

(1)若是不想顯示那麼多路徑,就相應該DATA路徑的表示,或者使用cut 具體參考(用到時再細看)blog

用python腳本生成的train.txt圖片

2.用python腳本生成train.txt

例如我要生成以下形式的帶標籤的文件,如圖:get

python腳本以下:input

 1 import os
 2 def generate(dir,label):
 3     files = os.listdir(dir)
 4     files.sort()
 5     print '****************'
 6     print 'input :',dir
 7     print 'start...'
 8     listText = open(dir+'/'+'list.txt','w')
 9     for file in files:
10         fileType = os.path.split(file)
11         if fileType[1] == '.txt':
12             continue
13         name = file + ' ' + str(int(label)) +'\n'
14         listText.write(name)
15     listText.close()
16     print 'down!'
17     print '****************'
18 
19 if __name__ == '__main__':
20     generate('/home/ttwang/Desktop/Texture/Test/1',1)
相關文章
相關標籤/搜索