私はPythonに画像をロードしています例:
image = cv2.imread("new_image.jpg")
のRGB値にアクセスするにはどうすればよいimage
ですか?
私はPythonに画像をロードしています例:
image = cv2.imread("new_image.jpg")
のRGB値にアクセスするにはどうすればよいimage
ですか?
できるよ
image[y, x, c]
または同等にimage[y][x][c]
。
x,y,c
座標内のピクセルの値を返します。インデックス作成はで始まることに注意してください0
。したがって、3番目のBGR(注:RGBではない)コンポーネントにアクセスする場合は、目的の行と列image[y, x, 2]
である場所y
を実行する必要があります。x
また、。と入力すると、特定のオブジェクトに対してPythonで使用可能なメソッドを取得できますdir(<variable>)
。たとえば、ロード後image
に実行するdir(image)
と、いくつかの便利なコマンドが表示されます。
'cumprod'、'cumsum'、'data'、'diagonal'、'dot'、'dtype'、'dump'、'dumps'、'fill'、 'flags'、'flat'、'flatten'、'getfield'、'imag'、'item'、'itemset'、'itemsize'、 'max'、'mean'、'min'、..。
使用法:image.mean()
opencvを使用してPythonでピクセルのBGRカラー値を取得します
import cv2
image = cv2.imread("sample.jpg")
color = int(image[300, 300])
# if image type is b g r, then b g r value will be displayed.
# if image is gray then color intensity will be displayed.
print color
出力: [73 89 102]
このコードは、ピクセル300、300の赤、緑、青の値を出力します。
img1 = cv2.imread('Image.png', cv2.IMREAD_UNCHANGED)
b,g,r = (img1[300, 300])
print (r)
print (g)
print (b)
それは私のためにうまくいきました:
import cv2
import numpy as np
cap = cv2.imread('/home/PATH/TO/IMAGE/IMG_0835.jpg')
#You're free to do a resize or not, just for the example
cap = cv2.resize(cap, (340,480))
for x in range (0,340,1):
for y in range(0,480,1):
color = cap[y,x]
print color`
画像のRGBを取得する最も簡単な方法はを使用することだと思いますcv2.imshow("windowName",image)
。画像はウィンドウで表示され、小さな情報バーには画像の下の座標(x、y)とRGBも表示されます。この写真のように。マウスを使用して、任意のピクセルのRGBを表示できます。
コード例:
import cv2
image = cv2.imread("new_image.jpg")
try:
cv2.imshow("windowName",image)
cv2.waitKey(0)
except:
print("No this image")
numpyを使用すると、画像をnumpy配列に変換し、行列を転置することができます[RGB]は[BGR]になり、その逆も同様です。