Pythonで画像をリサイズする方法を現役エンジニアが解説【初心者向け】
初心者向けにPythonで画像をリサイズする方法について現役エンジニアが解説しています。画像のリサイズとは、画像のサイズを元の大きさから変更することです。Pythonでは画像を扱うためのライブラリとしてPillowがあります。画像の変換、保存、回転、リサイズの処理を行うことが出来ます。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
Pythonで画像をリサイズする方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して、初心者向けに解説します。
Pythonについてそもそもよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。
なお本記事は、TechAcademyのオンラインブートキャンプ、Python講座の内容をもとに紹介しています。
今回は、Pythonに関する内容だね!
どういう内容でしょうか?
Pythonで画像をリサイズする方法について詳しく説明していくね!
お願いします!
目次
画像のリサイズとは
画像のリサイズとは、画像のサイズを元の大きさから変更することです。
例えばブログやSNSに写真をアップする際に画像サイズを大きくしたいときがあるでしょう。また、画像を他者にメールで送る際に画像サイズを小さくしたいときもあるかもしれません。
このように、テクノロジーが発達した社会ではプライベートや仕事の様々な場面で日常的に画像のリサイズが行われています。
画像ライブラリ、Pillowとは
PillowとはPythonで画像を扱うためのライブラリです。Pillowを使えば、
- 画像の読み込み
- カラー画像からモノクロ画像への変換
- 画像の保存
- 回転
- リサイズ
など実に様々な処理ができます。
画像の枚数が数枚であれば手作業で処理してしまっても問題ないかと思いますが、画像の枚数が多い時にはPillowを使って画像を処理していくと作業の効率化ができて良いでしょう。
Pillowを利用して画像をリサイズする方法
Pillowで画像をリサイズするのは非常に簡単です。
リサイズにはPillowのImageモジュールにあるresize()という関数を用います。引数には (画像の横サイズ, 画像の縦サイズ) という形でタプルを指定します。
実際に書いてみよう
まずコードの概要を概要を以下に示します。
- 必要なライブラリをインポート
- 画像を読み込む
- 画像を表示
- 画像のリサイズ
- リサイズした画像を表示
- リサイズした画像を保存
それでは実際にコードを書いてみましょう。今回の例では.jpgの画像を用いていますが、拡張子は.pngでも問題ありません。
from PIL import Image import matplotlib.pyplot as plt %matplotlib inline #画像の読み込み beautiful_view = Image.open("view.jpg") #画像を表示して確認 plt.imshow(beautiful_view) #画像のリサイズ small_beautiful_view = beautiful_view.resize((2000, 3000)) #リサイズした画像を表示して確認 plt.imshow(small_beautiful_view) #リサイズした画像を名前をつけて保存 small_beautiful_view.save("small_view.jpg")
リサイズした結果は以下のようになります。
また、フォルダ内を確認してみると確かにリサイズした結果が保存されていることがわかります。
まとめ
この記事ではPillowで画像をリサイズする方法についてご紹介しました。
画像の編集は多くの方にとって身近な作業であると思います。是非Pillowを使いこなし、業務の効率化を図ってください。
監修してくれたメンター
柴山真沙希(しばやままさき)
大手IT企業などでエンジニアとして2年ほど勤務した後、個人事業主としてプログラミングスクール「エンペサール」を経営。子供から大人まで幅広い層を対象にプログラミングを教えている。 得意言語はPython, HTML, CSSで、機械学習やデータ分析、スクレイピングなどが得意。サッカー観戦や読書が趣味である。 |
内容分かりやすくて良かったです!
ゆかりちゃんも分からないことがあったら質問してね!
分かりました。ありがとうございます!
TechAcademyでは、初心者でも、Pythonを使った人工知能(AI)や機械学習の基礎を習得できる、オンラインブートキャンプを開催しています。
また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。