プログラミング入門として、Pythonで任意の画像サイズを変更するプログラムを作成します。
今回はPythonの画像処理ライブラリのPIL(Python Imaging Library)を使用します。
作業時間は5分程度です。
環境について
今回の解説は、PCにPython3、PILをインストールした環境で行います。
こちらの記事で環境のインストールから実際に画像を表示するまでを解説しているので参考にしてください。
\未経験でも”AI”を基礎から学べる Python特化型プログラミングスクール/
表示する画像の準備
表示する画像を用意しましょう。
PILで使用できる画像のファイル形式はJPEG、PNG、BMP、GIF、PPM、TIFF、WebP等です。
よくわからない場合は、次のサンプル画像を使ってください。
以下のボタンからダウンロードしてください。
ダウンロードされない場合は[右クリック]⇒[名前を付けてリンク先を保存]等をお試しください。
プログラミング
プログラムを作成します。
今回のプログラムのファイル名は『PIL_resize.py』としました。
プログラムファイルと同じ階層に用意した画像を保存してください。
VS Codeを使う場合は、画面左側のエクスプローラに画像ファイルをドラッグアンドドロップして追加することもできます。
続いてプログラムを次のように入力してください。
from PIL import Image
img = Image.open("gohan.png")
new_img_size = (100, 100)
new_img = img.resize(new_img_size)
img.show()
new_img.show()
“gohan.png”の箇所は用意した画像ファイルの名前を入力してください。
これでプログラムは完成なので実行してみましょう。
VS Codeを使っている場合は画面右上の実行ボタン▷から実行できます。
次のように元画像と、サイズ変更後の画像2つが表示されたら成功です。
上手くいかない場合は、プログラムをよく見直してみましょう。
importの行に次のような警告が表示された場合は、実行できません。
次の記事を参考に設定を変更してください。
\未経験でも”AI”を基礎から学べる Python特化型プログラミングスクール/
解説
プログラムの解説をします。
画像の読み込みと表示に関しては前の記事で紹介しているので詳細は省略します。
忘れた方はこちらから確認してください。
今回も変数[img]に画像ファイル[gohan.png]を読み込んでいます。
画像サイズの変更を行っている次の2行について解説します。
new_img_size = (100, 100)
new_img = img.resize(new_img_size)
まずは変数[new_img_size]に変更する画像サイズを指定しました。
PILの画像サイズは(幅 , 高さ)のように指定します。単位はピクセルです。
続いてImageモジュールの[resize]という機能を使います。
画像を読み込んだ変数[img]に対して[img.resize()]のように記述します。
( )の中には前の行で作成した変数new_img_sizeを入力します。
これで新たに作成した変数[new_img]にサイズを変更した画像が格納されます。
最後に[.show()]で元の画像と、変更後の画像を表示して終了です。
ご自身で画像サイズの値を変更して試してみましょう。
\わからないことは現役のエンジニアに無料相談してみよう/
用語
[open]、[resize]、[show]のような機能のことを『メソッド』と呼びます。
[img]、[new_img]、[new_img_size]のようなデータの入れ物を『変数』と呼びます。
(100, 100)のような複数のデータを格納する方法を『タプル』と呼びます。
なにか作ってみる
次の記事ではPythonを使って初心者向けに画像認識AIを作成・解説しています。
「AIを学びたいけど、どの解説も理論ばかりでよくわからん」
という方に向けて、理論は最小限にまずはご自身のPCにプログラミング環境を用意し、実際にAIプログラミングを体験することで最初のステップ踏んでみようという記事です。
Tensorflowの学習済みのモデルであるInceptionV3を活用することで、初心者でも簡単にAI画像認識を体験することができます。
AI技術に興味がある方はぜひ参考にしてください。
Pythonの魅力
Pythonは世界的にも人気の高いプログラミング言語のひとつです。
汎用性が高く、データ分析やWebアプリの開発等、幅広い分野で使用されているほか、日本の市場で今後も拡大することが予想されるAI(機械学習、ディープラーニング)技術との親和性も高く、Pythonを扱えるエンジニアの需要は伸びていくことが予想されます。
そのため開発言語として採用する企業も増えています。
市場動向調査では、Pythonエンジニアの求人倍率は約53倍と非常に高く、慢性的に人材が不足している状況です。
参考: レバテック『2021年12月のITエンジニア・クリエイター正社員転職/フリーランス市場動向』
また、プログラミング言語別の年収調査ではPythonは3位と高い水準にあり、中央値で575万円、最大提示年収で1,499万円と、日本人の年収の中央値397万円を大きく上回りました。
参考: BIZREACH『プログラミング言語別年収中央値を発表、求人検索エンジン「スタンバイ」調べ』
参考: 時事ドットコム『【2022年最新】日本の「平均年収」「年収中央値」を調査』
このように、Pythonは将来性の高いプログラミング言語と言えるでしょう。
就職、転職、副業を目指す上で、身につけておきたいスキルです。
Pythonの学習難易度は他のプログラミング言語と比べると比較的低いとされています。
独学で習得することも可能ですが、近年はオンラインスクールを利用して短期間で集中して実務レベルまで習熟させるという方も増えています。
プログラミングのオンラインスクールを活用する場合は、現役のエンジニアが講師となるスクールが優位でしょう。開発現場で通用する質の高い実務ノウハウを学ぶことができます。
また、オンラインスクールであれば全国どこからでも受講できるため、わざわざ都会へ出たり交通費をかけることなく、ライフスタイルに合わせて効率的にスキルを身につけることができることが魅力です。
ITエンジニアとして働き高い収入を得るための先行投資として、オンラインスクールは一つの選択肢となり得るでしょう。
無料体験できるオンラインスクールもあるため、独学でも習得できそうか、短期集中で学んだ方がいいのか、ご自身の力量を見極めてみるのもいいのではないでしょうか。
こちらの記事ではオンラインスクールを受講する価値はあるのかについて解説しています。あわせてどうぞ
コメント