2016-11-10 13 views
0

ディレクトリ 'A'に1000個の.jpgがあり、10個のサブディレクトリに移動する必要があります。 'A/1'から 'A/10'までです。Bash:ファイルを新しいディレクトリに移動するホットキーを作成しますか?

サブディレクトリに配置する前に各画像を開いてみることにしましたが、この処理には非常に時間がかかります。私は現在Mac上でファインダーを使用していますが、おそらくターミナルを使用してこれを行う簡単な方法を見つけようとしています。

おそらく、Macのプレビューでホットキー0-9を作成してbash mvコマンドを実行できますか?

+0

がどのように正確にあなたが先ディレクトリを選ぶのですか? –

+0

私は群衆の中に人を数える機械学習アルゴリズムのための画像に注釈を付けるのです。私は手動です各画像内の人を数え、その画像をサブフィールドに配置する画像内のカウントされた人の数に対応するディレクトリ。 – citrusvanilla

答えて

0

ええ、これは大好きです。

あなたがここで見つけることができたiTerm2をインストールする必要がありますけれども、オフファースト:

https://www.iterm2.com/

を(私は途中で彼らと提携しておりません)

iTerm2がimgcatと呼ばれるものを持っていることができます端末に画像を表示する。

SO ...端末を開いて、すべての画像を含むディレクトリに移動します。 (私はここに1つのフォルダの画像の1000を期待しています。)

THEN ....コピー貼り付け、以下のコマンドを貼ってください。あなたの画像の1つが表示されます、あなたはそれらを数え、顔の数を入力し、入力をヒットします。入力した番号のディレクトリが作成され、そこでイメージが移動されます。画像がなくなるか、Ctrl + Cキーを押して終了するまでこのサイクルが繰り返されます。

あなたが同じスクリプトを起動して、中断したところ...続き以降の複数の画像を追加します:)

while read <&5 file; do echo -$file; imgcat $file; echo enter number of faces and the hit return.; read dir; mkdir $dir; mv $file $dir/; echo file $file copied to $dir/$file; done 5< <(find . -name '*.jp*g' -d 1 -print) 

同じことが、より読みやすい複数行形式でをすることができます終了しない場合:(中あなたはbashのファイルでそれを強打したい場合(tedium.sh)

#!/bin/bash 
while read <&5 file; do 
    echo -$file; 
    imgcat $file; 
    echo enter number of faces and the hit return.; 
    read dir; 
    mkdir $dir; 
    mv $file $dir/; 
    echo file $file copied to $dir/$file; 
done 5< <(find . -name '*.jp*g' -d 1 -print) 
+0

あなたはあなたの人です!あなたは文字通り数十時間、数十時間を節約しました。これは、自分自身の大規模な機械学習用データセットを構築する人にとっては便利だということを知っています。 – citrusvanilla

+0

@ user7139513、お元気ですか。私は少し時間があり、挑戦のためにアップしていたので、私は痛みを知る前にこのタイプのもののデータセットを準備しました。私は多くの作家ではありませんが、https://shabangweb.wordpress.com/2016/11/11/manually-processing-large-image-datasets-for-computer-vision-osx/に掲載しています。サポートありがとう;) – Goran

+0

@ user7139513、ちょっとちょっと。それがあなたを助けたなら、私に恩恵を受けて、答えを受け入れたものとしてマークしてください。乾杯。 – Goran

関連する問題