このサイトについて

画像の生データから種類を判別する方法

画像の生データから種類を判別する方法

画像のデータしかない状態で,画像のタイプ(JPEGとかGIFとかPNGとか)を判別する方法のメモ。

画像のヘッダを調べるといい。画像のタイプごとに,ヘッダにタイプが埋め込まれているので,判別に利用する。

  • JPEG : 7バイト目からが'JFIF'
  • GIF : 先頭が'GIF'
  • PNG : 2バイト目からが'PNG'

Pythonの関数で書くとこんな感じ。

 def detect_imagetype(image):
     if image[6:10]=='JFIF': return 'image/jpeg'
     if image[0:3]=='GIF': return 'image/gif'
     if image[1:4]=='PNG': return 'image/png'

フォームからPOSTされた画像のタイプを判別したいときに使ったりできるはず。お試しあれ:-)。

2010-08-27 04:53