カテゴリー
diary

画像の連結用スクリプト

こないだSOSH BDPの写真アップするときに、いくつかの画像を連結してアップしたんだけどその際に作ったバッチ処理用プログラムの公開。

簡単なターミナルの使い方、シェルスクリプトの使い方、及びMacPortsの使い方が分かる人なら使える情報かと。

画像の連結にはImageMagickに付属するmontageというとても便利なコマンドがあります。ここにmontageの詳しい使い方が説明されています。僕はMacPortsでImageMagickを入れているんだけど、もしかするとバイナリでの提供とかあるかもしれないので、その場合はMacPorts使わなくてもいいと思います。

ただ、montageだけで連結した画像のスペーシングを1pxにする方法がよく分からなかった。どうしても全体のスペーシングというより個々の画像のボーダーを指定してから、連結みたいな流れ。そのため、画像と画像の間のボーダーが2px(1px + 1px)になっちゃうんです。それだけならまだしも、連結がない上下、左右の部分は1pxに。それはちょっとナイ感じ。

なので、convertとmontageを使って強引に実装してみました。かなりヤッツケです。こんな感じで一発でデキルヨって情報もっている人いたら教えてください♪

[sourcecode language=’perl’]
#!/bin/bash
#
# 4枚の画像を縦2x横2のならびに連結
#
# 使い方
#
# ~$ ./2x2montage.sh 画像1 画像2 画像3 画像4 出力ファイル
#
# 出力ファイルの構成
#
# 画像1 画像2
# 画像3 画像4
#

# 画像を250×250におさまるサイズに変換
convert -quality 100 -resize 250×250 $1 temp1a.jpg
convert -quality 100 -resize 250×250 $2 temp2a.jpg
convert -quality 100 -resize 250×250 $3 temp3a.jpg
convert -quality 100 -resize 250×250 $4 temp4a.jpg

# 画像1の右辺に1pxの白線を付ける
height=`identify -format %h temp1a.jpg`
convert -quality 100 temp1a.jpg -size 1x${height} xc:white +append temp1b.jpg

# 一時ファイルの削除
rm -f temp1a.jpg

# 画像1と画像2を横に連結
montage temp1b.jpg temp2a.jpg -geometry +0+0 temp1_2.jpg

# 連結画像1の下辺に1pxの白線を付ける
width=`identify -format %w temp1_2.jpg`
convert -quality 100 temp1_2.jpg -size ${width}x1 xc:white -append montage1.jpg

# 一時ファイルの削除
rm -f temp1b.jpg
rm -f temp2a.jpg
rm -f temp1_2.jpg

# 画像3の右辺に1pxの白線を付ける
height=`identify -format %h temp3a.jpg`
convert -quality 100 temp3a.jpg -size 1x${height} xc:white +append temp3b.jpg

# 画像3と画像4を横に連結
montage temp3b.jpg temp4a.jpg -geometry +0+0 montage2.jpg

# 一時ファイルの削除
rm -f temp3a.jpg
rm -f temp3b.jpg
rm -f temp4a.jpg

# 連結画像1と連結画像2を縦に連結
montage montage1.jpg montage2.jpg -tile 1x -geometry +0+0 $5

# 一時ファイルの削除
rm -f montage1.jpg
rm -f montage2.jpg
[/sourcecode]

実行するとこんな感じに仕上がります。

*

  
※ちなみに先日アップしたSOSH BDPの連結写真はバッチスクリプトにバグがあったため、スペーシングの白線が細く汚くなってます。あしからず。

カテゴリー
diary

SOSH BDP & SANDNAOKI EXHIBIT

金曜はSOSHのバースディパ〜リ〜に行ってきました。SOSHは相変わらずのパ〜リ〜ボーイでした。P-BOY。

いつもSOSHのブログに出てくる、僕が勝手に親近感わかせてる人たちに実際会えたりして良かった。でもみんな酔っ払いなので次あったときはまたハジメマシテから始まりそう。笑

*
*
*
*
*

その後はナオキ君の展示会に!彼の作品はじめてみたけど、カワイイ感じで凄く良かった。ビアボング持ってる某氏がかなりepicな顔してる。めちゃハジけてたよ。みんな。

*
*

で、バーの前にたってたらネオナッポに2回ほどテキーラボムられました。ごちです!

※写真のスタイルはSOSHLOGへのオマージュね。あのクリックしても大きくならない歯痒さ!

カテゴリー
diary

How to increase the Canon 7D/5D dynamic range

How to increase the Canon 7D dynamic range (Tutorial) from Luka on Vimeo.

動画の話です。英語のチュートリアルです。分かる人はこの動画みればもう十分だと思いますが、そうでない人のために(超)簡単に説明します。

撮影後にカラーコレクション(カラコレ、ポストプロセス、グレーディングなどとも言われている)する前提での話です。

一眼カメラとRED ONEカメラでは何が違うかというと撮影されたデータのコーデックです。RED ONEは映像の1コマ1コマがRAWで保存されます。それに対して7D/5Dはピクチャスタイルであらかじめ処理されたデータで保存されます。これは静止画でいえばRAWとJPEGの違いに近い。つまり、撮影後の処理(静止画でいう現像)に最適なのは撮像素子のデータをそのまま保存したRAWデータです。

このチュートリアルではその状態にもっとも近い状態にするにはどうすれば良いかを説明しています。一番分かりやすいのは0:50〜1:30辺りのくだり。最初の映像は”スタンダード”のピクチャスタイルで撮影したもの。暗い部分と明る部分がはっきり分かれていて、黒潰れ、白飛びで多くの情報が失われているのが分かります。次は”スーパーフラット”というユーザー定義のピクチャスタイルで撮影したもの。明るい部分と暗い部分のディテールがはっきりと分かるようになっています。

HDR(High Dynamic Range)を得るために大切なのはカメラから直接いい映像を撮るのではなく、より多くの情報を残すという事です。

スーパーフラットピクチャスタイルはここからダウンロードできます。

※これは、いくつかの人気ニュートラル系ピクチャスタイルの比較動画。

Canon 7D Custom Picture Styles Test from Alexandros Maragos on Vimeo.