如何使用Python如何獲取某畫素點處顏色

2021-03-19 18:28:25 字數 2139 閱讀 2739

1樓:霸屏木

方法來一:

# -*- coding: cp936 -*-from ctypes import *

#引入winapi

gdi32 = windll.gdi32

user32 = windll.user32#獲取源控制代碼

hdc = user32.getdc(none)#獲取指定畫素bai的顏色du

c = gdi32.getpixel(hdc,100,50)#列印十進位制zhi轉化為十六dao進位制的顏色print hex(c)

如何用python分別提取出某個畫素的rgb值並寫入一個一行三列的陣列中。

2樓:匿名使用者

numpy我用得少。

你上面的程式第一個是縮排有問題,這一句for i in range(2*radius):

第二個問題是cx,cy沒有定義?

第三個問題,i,j的迴圈中沒有使用step,這樣一個浮點數,可能會按1的step來走,結果應該會與想象的有差距。

第四個問題。img後面有些是有些又是()。這個顯然有問題第五個問題,r,g,b應該是被引號括起來的。你直接寫個字元在這裡,顯然也應該不對。

3樓:匿名使用者

可以使用 python image library 做,load() 函式會返回一個物件,這個物件我們可以把它當作一個二維陣列對待,而陣列中存放的就是點的 rgb 值,可以很容易地訪問到任何畫素點的 rgb 值:

from pil import image# 可以支援很多種**格式.

# 獲得**的尺度,可以用於迭代

print im.size

# 獲得某個畫素點的 rgb 值,畫素點座標由 [x, y] 指定print pix[x,y]

# 設定 [x, y] 點的 rgb 的值為 valuepix[x,y] = value

4樓:馬紅權

我用的**片段你參考一下。

def pj(region):

(w,h)=region.size

t=[0,0,0,0]

for i in range(2,w-2):

for j in range(2,h-2):

(r,g,b,a)=region.getpixel((i,j))t[0]+=r

t[1]+=g

t[2]+=b

t[3]+=b

t[0]=t[0]/float(w-4)/(h-4)t[1]=t[1]/float(w-4)/(h-4)t[2]=t[2]/float(w-4)/(h-4)t[3]=t[3]/float(w-4)/(h-4)# #print dir(region)

# for i in range(w):

# for j in range(h):

# region.putpixel((i,j),(t[0],t[1],t[2],t[3]))

return t

python怎麼對畫素點進行操作

5樓:匿名使用者

我是用pil這個庫,用opencv的庫也可以

load()然後就可以通過img_array[x,y]來讀取畫素內

值了另外img.size檢視圖容片大小,也可以通過img_array[x,y]=(11,22,33)來設定rgb畫素值

如何用python分別提取出某個畫素的rgb值並寫入一個一行三列的陣列中?

6樓:匿名使用者

numpy我用得少。

你上面的程式第一個是縮排有問題,這一句for i in range(2*radius):

第二個問題是cx,cy沒有定義?

第三個問題,i,j的迴圈中沒有使用step,這樣一個浮點數,可能會按1的step來走,結果應該會與想象的有差距。

第四個問題。img後面有些是有些又是()。這個顯然有問題第五個問題,r,g,b應該是被引號括起來的。你直接寫個字元在這裡,顯然也應該不對。

如何獲取gridview裡某行某列的值

建議你最好將要讀取的資訊放入lable或者literal,之後在後臺用this.gridview1.rows index findcontrol control id 的方式來找到該控制元件,然後再獲取值。像你開始的形式當列順序等發生改變時就不得不改 了。如何獲取gridview中某行某列的值 st...

如何獲取gridview裡某行某列的值

遍歷gridview的行,查詢你的選擇按鈕控制元件,通過被選中的那個控制元件獲取所在行的索引,然後gridview.rows 索引 cells 0 value 就是你要的值了 怎麼獲得gridview某一行某一列的值 以gridview控制元件名稱為gv來說,this.gv.rows 0 cells...

如何使用python執行遠端shell指令碼

pexpect複雜,但通用靈活。另外一種辦法就是ssh keygen ssh copy id,實現自動金鑰驗證取代手動密碼驗證,然後就可以直接呼叫遠端 ssh remote user remote host remote script.sh 麻煩之處在於要手動建立與維護兩臺機器間的公鑰。至於捕獲輸出...