phpで、Nikonのカメラで撮ったjpeg画像から、レンズ情報を抜き出す方法
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
[[PHP]]
*phpで、Nikonのカメラで撮ったjpeg画像から、レンズ情報を抜...
-引数は2つ。
-- 12-14mm のレンズを探す場合
--- php (filename.php) 12 24
-- 35mm 単焦点のレンズを探す場合
--- php (filename.php) 35
- 実行後、レンズのディレクトリが作成され、~
そこにファイルが移動される。
- 「PHP_JPEG_Metadata_Toolkit_1.12」 の場所~
[[The PHP JPEG Metadata Toolkit:http://www.ozhiker.com/el...
- 参考サイト : [[EXIF からレンズ名を取得する(Panasonic編...
<?php
try{
include "./PHP_JPEG_Metadata_Toolkit_1.12/EXIF.php";
//ディレクトリ
$dirName = "./";
if(isset($argv[1])){
mkdir($argv[1]);
//ディレクトリハンドル取得
if ($dir = opendir($dirName)) {
//ファイル読み込み、表示
while (($file = readdir($dir)) !== false) {
if (substr($file,0,1) <> "."
and (substr($file,-3,3)=="jpg" or substr($file,-3...
and is_file($file)
)
{
$exif = get_EXIF_JPEG( $file );
$exif_lens_min_Numerator=-1;
$exif_lens_max_Numerator=-1;
if(isset($exif["0"]["34665"]["Data"]["0"]["37500"][...
$exif_lens_min_Numerator = $exif["0"]["34665"]["Da...
$exif_lens_min_Denominator = $exif["0"]["34665"]["...
$exif_lens_max_Numerator = $exif["0"]["34665"]["Da...
$exif_lens_max_Denominator = $exif["0"]["34665"]["...
$exif_lens_min = $exif_lens_min_Numerator / $exif_...
$exif_lens_max = $exif_lens_max_Numerator / $exif_...
}
if(isset($exif["0"]["34665"]["Data"]["0"]["37386"][...
$exif_focal_length_Numerator = $exif["0"]["34665"]...
$exif_focal_length_Denominator = $exif["0"]["34665...
$exif_focal_length = $exif_focal_length_Numerator ...
}
// print "Lens : ".$exif_lens_min."-".$exif_len...
// print "focal length : ".$exif_focal_length."...
if($argc>2 and isset($exif["0"]["34665"]["Data"]["0...
if ($argv[1]==$exif_lens_min and $argv[2]==$exif_l...
print $file."\n";
system('mv '.$file.' ./'.$argv[1].'/'.$file);
// $line = trim(fgets(STDIN));
}
}elseif($argc>1 and isset($exif["0"]["34665"]["Dat...
if($argv[1]==$exif_focal_length){
print $file."\n";
system('mv '.$file.' ./'.$argv[1].'/'.$file);
// $line = trim(fgets(STDIN));
}
}
}
}
}
}else{
print "引数をセットして下さい。";
}
}catch(Exception $e){
print $file;
print $e->getMessage();
}
?>
* 日付データの付加 [#r02a91e5]
<?php
try{
require_once "./EXIF.php";
//ディレクトリ
$dirName = "./";
$aftDirName = "aftAddDate";
//ディレクトリハンドル取得
if ($dir = opendir($dirName)) {
mkdir("aftAddDate");
//ファイル読み込み、表示
while (($file = readdir($dir)) !== false) {
if (substr($file,0,1) <> "."
and (substr($file,-3,3)=="jpg" or substr($file,-3,...
and is_file($file)
){
print $file."\n";
$exif = get_EXIF_JPEG( $file );
$readExifData="";
$aftReplaceSpace="";
$aftReplaceCoron="";
if(isset($exif["0"]["306"]["Data"]["0"])){
$readExifData=$exif["0"]["306"]["Data"]["0"];
$aftReplaceSpace=str_replace(" ","_",$readExifData);
print $aftReplaceSpace."\n";
$aftReplaceCoron=str_replace(":","-",$aftReplaceSp...
print $aftReplaceCoron."\n";
system("cp ".$file." ./".$aftDirName."/".$aftRepla...
}
}
}
}
}catch(Exception $e){
print $file;
print $e->getMessage();
}
?>
終了行:
[[PHP]]
*phpで、Nikonのカメラで撮ったjpeg画像から、レンズ情報を抜...
-引数は2つ。
-- 12-14mm のレンズを探す場合
--- php (filename.php) 12 24
-- 35mm 単焦点のレンズを探す場合
--- php (filename.php) 35
- 実行後、レンズのディレクトリが作成され、~
そこにファイルが移動される。
- 「PHP_JPEG_Metadata_Toolkit_1.12」 の場所~
[[The PHP JPEG Metadata Toolkit:http://www.ozhiker.com/el...
- 参考サイト : [[EXIF からレンズ名を取得する(Panasonic編...
<?php
try{
include "./PHP_JPEG_Metadata_Toolkit_1.12/EXIF.php";
//ディレクトリ
$dirName = "./";
if(isset($argv[1])){
mkdir($argv[1]);
//ディレクトリハンドル取得
if ($dir = opendir($dirName)) {
//ファイル読み込み、表示
while (($file = readdir($dir)) !== false) {
if (substr($file,0,1) <> "."
and (substr($file,-3,3)=="jpg" or substr($file,-3...
and is_file($file)
)
{
$exif = get_EXIF_JPEG( $file );
$exif_lens_min_Numerator=-1;
$exif_lens_max_Numerator=-1;
if(isset($exif["0"]["34665"]["Data"]["0"]["37500"][...
$exif_lens_min_Numerator = $exif["0"]["34665"]["Da...
$exif_lens_min_Denominator = $exif["0"]["34665"]["...
$exif_lens_max_Numerator = $exif["0"]["34665"]["Da...
$exif_lens_max_Denominator = $exif["0"]["34665"]["...
$exif_lens_min = $exif_lens_min_Numerator / $exif_...
$exif_lens_max = $exif_lens_max_Numerator / $exif_...
}
if(isset($exif["0"]["34665"]["Data"]["0"]["37386"][...
$exif_focal_length_Numerator = $exif["0"]["34665"]...
$exif_focal_length_Denominator = $exif["0"]["34665...
$exif_focal_length = $exif_focal_length_Numerator ...
}
// print "Lens : ".$exif_lens_min."-".$exif_len...
// print "focal length : ".$exif_focal_length."...
if($argc>2 and isset($exif["0"]["34665"]["Data"]["0...
if ($argv[1]==$exif_lens_min and $argv[2]==$exif_l...
print $file."\n";
system('mv '.$file.' ./'.$argv[1].'/'.$file);
// $line = trim(fgets(STDIN));
}
}elseif($argc>1 and isset($exif["0"]["34665"]["Dat...
if($argv[1]==$exif_focal_length){
print $file."\n";
system('mv '.$file.' ./'.$argv[1].'/'.$file);
// $line = trim(fgets(STDIN));
}
}
}
}
}
}else{
print "引数をセットして下さい。";
}
}catch(Exception $e){
print $file;
print $e->getMessage();
}
?>
* 日付データの付加 [#r02a91e5]
<?php
try{
require_once "./EXIF.php";
//ディレクトリ
$dirName = "./";
$aftDirName = "aftAddDate";
//ディレクトリハンドル取得
if ($dir = opendir($dirName)) {
mkdir("aftAddDate");
//ファイル読み込み、表示
while (($file = readdir($dir)) !== false) {
if (substr($file,0,1) <> "."
and (substr($file,-3,3)=="jpg" or substr($file,-3,...
and is_file($file)
){
print $file."\n";
$exif = get_EXIF_JPEG( $file );
$readExifData="";
$aftReplaceSpace="";
$aftReplaceCoron="";
if(isset($exif["0"]["306"]["Data"]["0"])){
$readExifData=$exif["0"]["306"]["Data"]["0"];
$aftReplaceSpace=str_replace(" ","_",$readExifData);
print $aftReplaceSpace."\n";
$aftReplaceCoron=str_replace(":","-",$aftReplaceSp...
print $aftReplaceCoron."\n";
system("cp ".$file." ./".$aftDirName."/".$aftRepla...
}
}
}
}
}catch(Exception $e){
print $file;
print $e->getMessage();
}
?>
ページ名: