実現したいこと
1.画像(JPEG)を読み込んで、各ピクセルの色情報を得たい。
前提
画像をスキャナーで読み込み、全ピクセルのカラーデータを取得する為の事前テストとして以下の投稿を参考にしています。https://labo-code.com/python/image-analysis/image-to-list/
記事に基づいてVScodeで試しましたが、エラーが出て結果を見る事が出来ていません。
発生している問題・エラーメッセージ
PS C:\Users\babam> & C:/Users/babam/AppData/Local/Programs/Python/Python313/python.exe "c:/Users/babam/Desktop/LabCode/python/data-analysis/input-image/import Image.py"
Traceback (most recent call last):
File "c:\Users\babam\Desktop\LabCode\python\data-analysis\input-image\import Image.py", line 4, in <module>
img = Image.open('cat_gray.jpg')
File "C:\Users\babam\AppData\Local\Programs\Python\Python313\Lib\site-packages\PIL\Image.py", line 3513, in open
fp = builtins.open(filename, "rb")
FileNotFoundError: [Errno 2] No such file or directory: 'cat_gray.jpg'
該当のソースコード
Python 3.13
コード
from PIL import Image import numpy as np # 画像データの読み込み img = Image.open('cat_gray.jpg') # 画像のサイズ(幅[px] x 高さ[px])を取得し、それぞれを変数に代入 width, height = img.size print(img.size) print() # 画像左上の原点(0,0)から横に99、下に99進んだ位置にあるピクセルの色を数値として取得できる print(img.getpixel((99, 99))) print() # 0が格納された配列を画像のサイズと同じサイズで用意 image_array = np.empty((height, width), dtype = int) print(image_array) print() for y in range(height): for x in range(width): # 順次、ピクセルの色の数値を代入している image_array[y][x] = img.getpixel((x, y)) # 画像データが数値の配列になっていることが確認できる print(image_array) ### 試したこと pip install pillow o.k pip install numpy o.k 画像(cat_gray.jpg)の位置 : デスクトップ>LabCode>python>data-analysis>input-image プログラム(import Image.py)の位置 : 同上 ### 補足情報(FW/ツールのバージョンなど) 参照URL: https://labo-code.com/python/image-analysis/image-to-list/ OS:windows11 tool:Visual Studio Code よろしくお願いします。
