C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[3]: exif情報を読み込みたい


(過去ログ 89 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■53127 / inTopicNo.1)  exif情報を読み込みたい
  
□投稿者/ ろこ (1回)-(2010/09/03(Fri) 16:32:49)

分類:[VB.NET/VB2005 以降] 

早速質問なのですが

JPGファイルのEXIF情報を取得したいので調べています

http://dobon.net/vb/dotnet/graphics/getexifinfo.html

より
ImageオブジェクトのPropertyItemsプロパティにより、そのイメージが持っているメタデータを取得することができることがわかったのですが
この方法では、まずファイルのイメージを読み込むため、
大量のファイルを処理する場合は、重くなってしまうように思います

今回14万枚程度のjpgファイルにアクセスしたいのですが
EXIF情報を取得するヒントになるような情報をいただけませんでしょうか

PS
できればなのですがEXIFを設定できればなお良いです


よろしくお願いいたします

引用返信 編集キー/
■53139 / inTopicNo.2)  Re[1]: exif情報を読み込みたい
□投稿者/ 魔界の仮面弁士 (1793回)-(2010/09/03(Fri) 17:54:26)
No53127 (ろこ さん) に返信
> 大量のファイルを処理する場合は、重くなってしまうように思います
具体的には、どの程度重いのでしょうか?

たとえば、100ファイル処理するのにどの程度の時間がかかっていて、
それをどの程度まで短縮させたいのでしょうか?

PropertyItems を使うにしろ、自前でバイナリ操作するにしろ、
それだけのファイルを開かなければならない事には変わらないので、
実際に測定した上で、ある程度の目標タイムを定めておいた方が良いかも。


> 今回14万枚程度のjpgファイルにアクセスしたいのですが
複数の PC で分散処理させるとか。


> EXIF情報を取得するヒントになるような情報をいただけませんでしょうか
それぞれの仕様書については、下記のリンクをご覧ください。
http://msdn.microsoft.com/en-us/library/ms534415.aspx

なお、それぞれの識別値や型などは、MSDN にも記載があります。
http://msdn.microsoft.com/en-us/library/ms534413.aspx
引用返信 編集キー/
■53158 / inTopicNo.3)  Re[2]: exif情報を読み込みたい
□投稿者/ ろこ (2回)-(2010/09/04(Sat) 18:43:24)
> 具体的には、どの程度重いのでしょうか?

すみませんど素人扱いされるかもしれませんが
一度イメージファイルを読み込む場合は
例えば10MBの写真ファイルを全て読み込んでからでないと処理できないとした場合
例えば、ヘッダーだけ読めばよいような処理があると仮定したら
理論上確実に短縮されると考え、全てのファイルを実際に読み込んだ場合のベンチは確認しておりません
ただ、ソフトによってはEXIF情報を高速に処理するソフトがありますが
これらが、イメージを読み込んでいるとは到底思えない速度で処理をしています
例えば、ウインドウズのエクスプローラの場合は、ものすごい速さで撮影時間やサイズを表示します
実はというと、このような処理ができるかどうかを知りたいのです
百戦錬磨の皆様が一般的にこんな良い方法が というのがなければ
それは事実上ないのも同然なのであきらめようと思っていました

そういう観点から見ても魔界の仮面弁士さまが
おっしゃるのであれば、やはり、vb.netでは一般的に
ほかの方法はあまり考えられないのでしょうか



引用返信 編集キー/
■53164 / inTopicNo.4)  Re[3]: exif情報を読み込みたい
□投稿者/ やじゅ (1714回)-(2010/09/05(Sun) 01:07:32)
やじゅ さんの Web サイト
No53158 (ろこ さん) に返信
> 例えば、ヘッダーだけ読めばよいような処理があると仮定したら

下記サイトを参考にExif情報なら先頭から1024byteくらい読んで解析すればいいんじゃない。
ファイルを少しずつ読み込む 
http://dobon.net/vb/dotnet/file/filestream.html
Exifファイルフォーマット
http://www2.airnet.ne.jp/~kenshi/exif.html#EXIF

または、既存のツールやライブラリを使って情報だけもらう。
海外製のコマンドラインツールJhead.exeを使って、標準出力からEXIF情報を取得する
http://www.sentex.net/~mwandel/jhead/
VB6用のDLLクラスを使って見るとか
Exif reader class/dll for VB 6
http://sourceforge.net/projects/exifclass/files/
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -