• 利用python和shell脚本生成train.txt的标签文件


    1. 用shell脚本生成带绝对路径的train.txt

    例如我要生成如下形式的带标签的文件,如图:(如有两个标签:0 和 1)

    shell脚本如下:

    这样标签0写入了train.txt

     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,(这样比较麻烦,肯定有比这更好的)

    # /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 (假设脚本文件名为这个),就行了!

    (1)如果不想显示那么多路径,就相应该DATA路径的表示,或者使用cut 具体参考(用到时再细看)

    用python脚本生成的train.txt

    2.用python脚本生成train.txt

    例如我要生成如下形式的带标签的文件,如图:

    python脚本如下:

     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)) +'
    '
    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)
  • 相关阅读:
    【leetcode】1230.Toss Strange Coins
    2018.12.25 SOW
    L203 词汇题
    L202
    L201
    L200
    2018
    2018.12.21 Cmos- RF
    L198
    L196 Hospital educations
  • 原文地址:https://www.cnblogs.com/ilym/p/8666148.html
Copyright © 2020-2023  润新知