処理時間を計測するには
- 2020.03.21
- デバッグ
実際にプログラムを作っていると、いやに処理時間がかかっているな…と感じることがあります。
そういう時は、処理に実際にかかっている時間を計測してみましょう。
import time #計測開始時間 starttime = time.perf_counter() # 計測したい処理をここに書く #計測終了時間 endtime = time.perf_counter() #かかった時間を出力する print(endtime-starttime)
time.perf_counter()を使うと、実行された時刻が取得できます。これを処理開始前、開始後にそれぞれ取得し、開始後 – 開始前 を計算することで、かかった時間を算出しています。
取得できる値は浮動小数点値で、秒を取得できます。
画像変換の処理時間を計算するサンプルコード
from PIL import Image import numpy as np import time # 画像を開く img = Image.open('input.jpg') # 画像を書き換え可能な配列に変換 a = np.copy(np.asarray(img)) #計測開始時間 starttime = time.perf_counter() # ピクセルをモノクロに変換 for col in a: for p in col: ave = np.average(p) #全色の平均値を求める p[:] = ave # 計測終了時間 endtime = time.perf_counter() # 所要時間 print(endtime-starttime) # 配列を画像に変換 img = Image.fromarray(a) # 反転した画像を保存 img.save('output.jpg') # 37.352361800000004
画像をモノクロに変換する計算時間を計算してみました。
結果は約37秒でした。
-
前の記事
Pythonで画像を扱うには 2020.03.21
-
次の記事
処理時間を記録するクラスを作る 2020.03.21