2016-08-01 16 views
0

ディレクトリから入力画像を読み取ろうとしています&画像を複製して別の出力ディレクトリに保存します。入力画像、出力画像、スクリプトは同じですpath.Iは、これは私がshutil.copy2により、これまで入力画像を処理して画像を複製して別のディレクトリに保存する

import pandas as pd 
import os 
import shutil 


import re 

#reads csv 

df = pd.read_csv('rosary.csv') 
df['Image'] = df.ImageName + "_" + df.ImageWChain + ".jpg" 

#checking if column "ImageWChain" has "jpg" extension,then concat .jpg 
if ".jpg" not in df.ImageWChain: 
    df['ImageWChain'] = df.ImageWChain + ".jpg" 

if ".jpg" not in df.ImageName: 
    df['ImageName'] = df.ImageName + ".jpg" 


#writes to new csv 
df.to_csv('new.csv',index=False) 
old_image = df.ImageName 
new_image = df.Image 



#creates duplicate images with renamed imagename 

input_path='D:/New/Input_ImageFolder' 
output_path='D:/New/Output_ImageFolder' 

input_file=os.path.join(input_path,old_image) 
output_file=os.path.join(output_path,new_image) 



for old_image, new_image in zip(df.ImageName, df.Image): 
    shutil.copy2(input_file, output_file) 
+0

サンプルの入出力を追加して、正確な問題を表示してください。 –

+0

問題は入力画像ですが、出力画像とスクリプトは同じパスにあります。入力画像ディレクトリと出力画像ディレクトリが必要です。しかし、それは動作していません – sqllover999

答えて

1

代わりのコピー持っているものである入力画像のディレクトリと出力画像ディレクトリ

をしたい、あなたは、入力と出力ファイルのパスを指定する必要があります。

input_path='D:\\New\\Input_ImageFolder\\' 
output_path='D:\\New\\Output_ImageFolder\\' 

次に、あなたがコピーコマンド実行する前に、以下のコードを発行する必要があります:次に

input_file=os.path.join(input_path,old_image) 
output_file=os.path.join(output_path,new_image) 

を、あなたがコピーを実行することができる。例えば

あなたは、パスは以下のように定義していますあなたが言ったように操作:

shutil.copy2(input_file, output_file) 
+0

@サイモンMCに感謝。チェンはまだ期待どおりに働いていません.... https://postimg.org/image/jtgqo38ix/ – sqllover999

+0

1.コードの最初に[import os]でosパッケージをインポートしましたか? 2. forループ内にinput_fileとoutput_file行を入れて、もう一度試してみてください –

+0

@Simon MCに感謝しました。チェン – sqllover999

関連する問題