Pythonコード実装pngフォーマットピクチャをjpg個フォーマットに一括変換
Pythonコード実装pngフォーマットピクチャをjpg個フォーマットに一括変換
質問の由来:
最近歩行者検出関連の項目ではopencvでデータセットを処理する必要があり、INNRIAデータセットを選択しているが、opencvがpngフォーマットを開いた画像は常にエラーを報告するため、画像をjpgフォーマットに変換する必要がある.
コード実装:
発生する可能性のある問題:
一部のpngフォーマットのピクチャは4チャネル(aphlaチャネルが多い)であり、jpgフォーマットは3チャネルであるため、pngピクチャのrgbチャネルを抽出して変換する必要がある.必要でない場合があります.この2行のコードを注釈すればいい.
コード:
質問の由来:
最近歩行者検出関連の項目ではopencvでデータセットを処理する必要があり、INNRIAデータセットを選択しているが、opencvがpngフォーマットを開いた画像は常にエラーを報告するため、画像をjpgフォーマットに変換する必要がある.
コード実装:
import os
from PIL import Image
dirname_read="png /" //
dirname_write="jpg /"
names=os.listdir(dirname_read)
count=0
for name in names:
img=Image.open(dirname_read+name)
name=name.split(".")
if name[-1] == "png":
name[-1] = "jpg"
name = str.join(".", name)
r,g,b,a=img.split()
img=Image.merge("RGB",(r,g,b))
to_save_path = dirname_write + name
img.save(to_save_path)
count+=1
print(to_save_path, "------conut:",count)
else:
continue
発生する可能性のある問題:
一部のpngフォーマットのピクチャは4チャネル(aphlaチャネルが多い)であり、jpgフォーマットは3チャネルであるため、pngピクチャのrgbチャネルを抽出して変換する必要がある.必要でない場合があります.この2行のコードを注釈すればいい.
コード:
r,g,b,a=img.split()
img=Image.merge("RGB",(r,g,b))