「20歳過ぎてからの誕生日は、JPEG上書き保存」 実際に試して10万41歳にしてみた
高橋ホイコです。41歳です。
ネットで見かけました。「20歳過ぎてからの誕生日はJPEGの上書き保存」って。
膝ポン、ポポン、ポンポン!ですよね!なんて、うまいこと言うんだと感動しました。JPEGは保存のたびに劣化しますから。
さて、私のうら若き頃の写真を、JPEG保存したら、どのくらい劣化してしまうのでしょう。悪魔になった10万年後の私にも会えちゃうかも―!!!キャー、コワイ!
ということで、10万回、JPEGで上書き保存してみました。
JPEGは劣化するのだ!
ご存知の方は、ご存知でしょうが、JPEGという画像ファイル形式は圧縮時に劣化します。この例は極端に圧縮率を上げていますが、トマトマンは1年(1回のJPEG保存)でこんなに劣化します。
さて、うら若きホイコさんではいかがでしょう。若く美しいころの写真を探してきました。
どや。
化粧の濃さから判断するに、おそらく30歳前後のときに撮影された写真でしょう。
さあ、JPEG保存をしまくって、41歳のホイコさんにしてみましょう。
予想では、こんな感じです。
ちなみに、現実の41歳のホイコさんはこんな感じです(イメージ)
まあ、いい。話を先に進めよう。
タイムマシーンを作るのだあ!
JPEG上書き保存をしていくにあたって、楽をしようと思います。
Photoshopには「アクション」という機能があって、操作を保存できます。同じ操作を何回もするときは、保存したアクションを実行するだけで良いのです。
そしてですね、ドロップレットというのを作ると、デスクトップにドロップレットをアイコンができて、そこに処理したい画像をドラッグ&ドロップするだけでアクションが実行できちゃうのです。
便利ー♪
このドロップレットは、コマンドラインからも実行できたので、BATファイルを作って繰り返し処理させます。
@echo off
set i=1
:loop
ドロップレットのフルパス 画像ファイルのフルパス
set /a i+=1
if %i% leq 20 goto loop
こんな感じ。
で、
20年後のあたし。
相も変くゎらず、お美しい!!!
さすがです。ホイコさん。全然、劣化しないじゃないですか。Photoshopが偉いのか、なにがなんだかわからないのですが、思ったより劣化しません。
100年後の私に会いに行く
たいして劣化しないんだなー。と思ったので、100年経過させてみましょう。
パラメーターを変更し、BATファイルを起動します。
さすがの美しいホイコさんも、きっと100年後には、ドロドロのゲロゲロになってしまう。エントロピーが増大するから。
ああ、劣化作業を繰り返す私のパソコン。ウィンドウが開いたり閉じたりしている。この間、きっと私の人生には数々の人とめぐりりあい、別れ、いろいろな経験をしているのです(ウィンドウパタパタ)。
実時間で4分が経過しました。100年が経過したことになります。
ああ、私の100年後。
ファイルを開く。ポチッ。
100年経ってもだいじょーぶ!
思ったより、劣化しないらしい。っていうか、20回と100回でたいしてファイルサイズが変わってない。
10万年後に、ホイコさんはどうなっているのか
めっちゃ劣化している覚悟してたんですよ。10万年後ですからね、悪魔しかいないです。なんならゾンビになって、生き返って、またゾンビになってを50回繰り返したあとくらいな時間です。
予想画像を作りました。こんくらいグジョグジョになるでしょ。エントロピー振り切れてます。
ちなみに、10万回というと先ほどのPhotoshopでは時間がかかりすぎるので、ImageMagickを使いました。
このツールならコマンドラインから指示できるので、BATファイルで繰り返し処理させるだけです。それでも、12時間かかりました。
さて、さて、
さて、
さて、
10万年後のホイコさん
どーなったでしょうか!?
@echo off
set i=1
:loop
magick 元のJpegファイルのパス -quality 90 保存先フォルダ\%i%.jpg
rem 作成後のファイルを元ファイルに上書き
copy /Y 保存先フォルダ\%i%.jpg 元のJpegファイルのパス
set /a i+=1
if %i% leq 100000 goto loop
10万年経ってもだいじょーぶ!
ワッホイ、ワッホイ。
※年齢の計算が合わない箇所だらけですが、誤差ということでご了承ください。