Ajax+EXIFで画像をメタデータ検索

EXIFで画像をメタデータ検索

つくってみました。実用性はありませんが、EXIFを使うと今までにない切り口で画像検索できそうだな、という実験。

撮影された時間帯をDateTimeOriginalというEXIFのデータから、露出時間をExposureTimeから取ってそれを検索のオプションにしています。露出時間が長いほど暗い場所で撮影されていることになるらしい。

サーバ内にあるJPEGに対して

$data = exif_read_data("sample.jpg");

とやるだけで$dataにEXIFのデータが配列として格納されます。検索結果をXMLで吐き出してJavaScriptでAjax風のインターフェイスにしてみました。

EXIFを抽出してみたい方は以下のURLからテストできます。自分でJPEGファイルをアップロードしてexif_read_dataの返り値を見てみてください。
http://www.zuzara.com/pub/exif/test.php

最初は画像をFlickrのAPIから取ってflickr.photos.getExifでEXIFのデータを拾おうと思ったのですが、Flickrにかなり同時アクセスしないと検索にならないのと、EXIFはデジカメによってだいぶデータに差があったのでやめにしました。

Google Imageなど、ユーザはどんな風に使っているのか、こういったテキスト以外のオプションもあると嬉しいのか、等々気になるところ。

EXIFのデータをクラスタリングに使った例を友人がつくったのでそちらもご覧ください。さすがに被写体別、撮影した場所別、とはいきませんが撮影時刻と色情報だけで割といい精度で画像を分類してくれます。

EXIFは利用価値のあるメタデータなのでもう一ひねり、いいアイディアがあれば面白いアプリケーションになりそうな気がします。

  1. No comments yet.
(will not be published)
Subscribe to comments feed
  1. No trackbacks yet.

SetPageWidth