PIL経由で画像を読み込むとpythonエラーが発生します。OSError: 画像ファイルを特定できない
2022-02-09 17:31:53
原因 オペレーティングシステムが指定されたタスク(ファイルを開くなど)を実行できない場合に発生します。
ここでは、大量の画像を扱っていますが、一部の画像が開けないため、OSErrorエラーが発生します。
回避策 try accept を使用して、この例外を解決します。また、この画像を削除することもできます。
import os
from PIL import Image
import shutil
'''train'''
path = '/Users/xuqiong/AgeGender/test_img_process/1_allface/valid/' # indicates the folder to name the process
pathnew = '/Users/xuqiong/AgeGender/test_img_process/2_allcrop/valid/'
filelist = os.listdir(path) #Get the file path
#cbox = [0,0,0,0]
i = 0
for item in filelist:
i = i + 1
if i%500 == 0:
print(i)
if item == '.DS_Store':
continue
imgpath = path+item
imgpathnew = pathnew + item
try:
img = Image.open(imgpath)
h = img.height
w = img.width
if (h > 5*w) or (w > 5*h):
os.remove(imgpath)
continue
else:
shutil.move(imgpath, imgpathnew)
except(OSError, NameError):
print('OSError, Path:',imgpath)
関連
-
Python 入出力と高次代入の基礎知識
-
[解決済み】TypeError: 'dict_keys' オブジェクトはインデックスをサポートしていません。
-
[解決済み】Floatは文字列か数字でなければならない?
-
[解決済み] python3 TypeError: 'function' object is not iterable.
-
[解決済み] ValueError: 未知のラベルタイプ:'unknown'
-
[解決済み] ImportError: NUMPY_MKLという名前をインポートできません。
-
[解決済み] テールリカーシオンフィボナッチ
-
[解決済み] Pythonのプロットでギリシャ文字などを入力する
-
[解決済み] spyder - メモリから変数と一緒に変数エクスプローラをクリアします。
-
[python][scrapy] 型 'bytes' のオブジェクトは JSON シリアライズ可能ではない
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
python のエラーです。TypeError:'dict' オブジェクトは呼び出し可能ではありません。
-
Python django 入門編
-
[解決済み] AttributeError: モジュール 'matplotlib' には属性 'plot' がありません。
-
[解決済み] Windows 10にKivyをインストールする際の問題点
-
[解決済み] AttributeError: 'unicode' オブジェクトには XXX という属性がありません。
-
[解決済み] jinja2 テンプレートが見つからず、内部サーバーエラーが発生する。
-
[解決済み] from utils import label_map_util Import Error: utils という名前のモジュールがない
-
[解決済み] EC.presence_of_element_located((By.ID, "myDynamicElement")) は、IDではなくクラスを指定する以外にどのように使用するのでしょうか?
-
csv.Error: イテレータはバイトではなく文字列を返すべき
-
TypeError: 'NoneType' オブジェクトが呼び出し可能でない場合の解決策を文書化する。