コンピューター

写真や画像を一括でリサイズできるrubyプログラミング

プログラミングを使って出来る事

プログラム、プログラミングという言葉を聞いた人は多いと思うのですが、具体的にどういう事をしているかという事を知っている人は意外に少ないんじゃないでしょうか。

テレビや映画の影響で、かっこ良くアニメーションする画面に向かって、ワインを飲みながらおしゃれダンディーな男がパスワードを解析する。みたいな事をイメージする人もいるかも知れませんね。

まあそういう世界も実際にあるのかも知れませんが、僕のプログラミングの世界はもっとシンプルというか地味です。

実際の画面

実際の画面

写真をそれぞれ適当なサイズに縮小するプログラムを書きました。

最近、写真の縮小リサイズをするケースが多くなってしまいました。

というのもこのブログでは横1024ピクセルの写真を、もうひとつの写真ブログでは横写真は横1440ピクセル、縦画像は横1280ピクセルの写真を用意しているからです。

いくら1コマンドで縮小作業が出来るとはいえ、写真の内容と名前を見比べながらそれぞれのサイズに変更するとなると結構しんどい事になってきました。

という事でこれらの作業を自動化したいと考えました。

以下が作成したプログラム全文です。

カメラの傾きを記録しているExifデータがなかった

通常デジタルカメラから出力される写真データには、撮影した時のカメラの傾きの情報が記録されています。

これが使えれば今回みたいな長いプログラムを書く必要はなかったんですが、デジタルカメラの写真データを現像する際にどうやら失われてしまうらしく。

仕方がないので、画像の縦横の画素数で判断しようと思いました。

プログラムがやっている事をざっと解説

2行目から37行目までで、写真の名前と画像の縦横比を対で保管してPictureというデータを作っています。

39行目から74行目で、上記のPictureというデータを作るための前準備を行っています。

具体的にいうと、元々のプログラムから得られる画像の情報は

IMG_4717.jpg 5616x3744

というような形なので、名前とサイズをそれぞれ必要な部分のみ抜き取ってPictureデータに格納する準備をしているという事です。

名前:IMG_4717.jpg
サイズX:5616
サイズY:3744

といった具合にですね。

76行目から最後までは、上記に作ったプログラムを目次的に実行する場面になります。

具体的には、1024 、1280 、1440というディレクトリ(フォルダ)を作って、縦画像は1280ピクセルに、横画像は1440ピクセルに、これらを含めた全ての画像を1024ピクセルに変換してそれぞれのディレクトリに格納しています。

これにて、完成です。

1時間半くらいかかりました

傾き情報のあるなしの確認に少々時間を費やして、書き上がるまでにだいたい1時間半くらいかかりました。

しかしこれまで、全ての画像を目でみて、それぞれ縮小して、正しいディレクトリに保存する。とやっていた作業がこれからは1コマンドで出来るようになりました。

おそらく、このプログラムを書くのに要した1時間半はすぐに回収する事ができると思います。

プログラム化する事の本当の威力

このプログラムがあれば、たとえ100個のディレクトリにそれぞれ1000枚の画像が縦横混合で入っていたとしても、ちょっとだけ手を加えて実行してやればパソコンが勝手にそれぞれのサイズに正しく間違いなく変換してくれます。

写真の数が1万になっても2万になっても同様です。たった1つのコマンドを実行して待つだけ。

これが決められた作業をコンピューターによってプログラム化してしまう事の一番大きな利点です。

加えて、パソコンで出来る作業って基本的には全てプログラム化する事が可能なんですね。

普段パソコンを使ってやる事が多い!特に繰り返しの作業がとっても多い!!

という人は是非今からでもプログラミングの技術を学ばれる事をおすすめしますよ!

本日もG線上のきりんを訪れてくださってありがとうございます。

それではまた。

 

この記事が気に入ったらいいね!しよう
🍀

更新情報をお届けします

関連記事

  1. コンピューター

    PCを持ち歩いたり、整理整頓が好きな人にぴったりのバックパック

    突然ですが、僕はバックパックが大好きなんです。理由は十…

  2. コンピューター

    プログラミングの勉強、上達を目指す人におすすめの方法

    今回の記事は、現在プログラミングに興味があって、これから始めようかなと…

  3. Mac

    Alfredを使って特定のアプリ(プロセス)の再起動をするスクリプト

    MacというかAppleが作ったプラットフォームには、ユーザーがお金を…

  4. コンピューター

    プログラミング技術が必修になる。2020年からの小中学教育

    先日、会社に18歳のハーフの子が短期のバイトとして入ってきました。…

  5. mvno格安SIM

    これヤバすぎ(笑)MVNO格安SIMに変更する前に”絶対に”確認しておくべきこと

    以前もMVNO、いわゆる格安SIMに変更するにあたっての記事をいろいろ…

  6. コンピューター

    アナログとデジタルの違いをわかりやすく説明

    2017年10月31日 追記皆さんアナログとデジタルの…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

最近の記事

スポンサーリンク

  1. 健康

    究極のアンチエイジング!美しさと健康のもとはタンパク質にある。
  2. 健康

    早起きの習慣がほしくて、早起きについて調べたこと、そして感じたこと。
  3. お店紹介

    恐るべしスポーツハンティング。祈る暇があれば自分の頭と手足をつかおう
  4. ウェブサービス

    Amazonヤバすぎ。Amazonプライムミュージックが始まったので、早速使って…
  5. レビュー

    替刃が安くて嬉しいひげ剃り「サムライエッジ」を使った感想
PAGE TOP