OpenCV入門 | 使用Python實現(xiàn)計算機視覺的第一步
太酷了,我們必須使用OpenCV讀取和顯示圖像,并了解如何將GBR顏色轉(zhuǎn)換為RGB以使用Matplolib內(nèi)聯(lián)顯示它們。其他顏色格式可以使用OpenCV處理,例如HSV,CMYK等。色彩由于我們將重復(fù)很多次,因此我們創(chuàng)建一個使用Matplotlib進行繪圖的方法。我們可以設(shè)置圖的大小并刪除軸以使其更好。def show(img): fig, ax = plt.subplots(1, figsize=(12,8)) ax.a(chǎn)xis('off') plt.imshow(img, cmap='Greys')請注意,我還將.imshow中的顏色圖定義為“灰色”。當(dāng)我們繪制RGB圖像時,該參數(shù)將被忽略,但是稍后在繪制數(shù)組的各個維度時將很有用。現(xiàn)在,讓我們嘗試一下我們的方法。image = cv2.imread('img2.jpeg')image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
show(image)
現(xiàn)在讓我們嘗試將其轉(zhuǎn)換為灰度然后再轉(zhuǎn)換為RGB。image = cv2.imread('img2.jpeg')
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)image = cv2.cvtColor(gray, cv2.COLOR_GRAY2RGB)
show(image)
我們可以使用.split獲取顏色的單個數(shù)組,然后將圖片與.merge組合在一起。這對于修改,檢查和過濾數(shù)組的單個維度非常實用。例如,我們可以將數(shù)組乘以零以將其刪除;img = cv2.imread('img2.jpeg')
B, G, R = cv2.split(img) img = cv2.merge([B*0, G, R*0])
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)show(img)
我們可以增加或減少顏色的強度,或者構(gòu)建具有相同形狀的新的Numpy數(shù)組來替換它,或者你可以考慮使用任何其他方法。img = cv2.merge([np.ones_like(B)*255, G, R])
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)show(img)
同樣的分割和合并概念也適用于其他格式,如HSV和HSL。img = cv2.imread('img2.jpeg')img = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
H, S, V = cv2.split(img)
img = cv2.merge([np.ones_like(H)*30, S+10, V-20])
img = cv2.cvtColor(img, cv2.COLOR_HSV2RGB)show(img)

請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個字
最新活動更多
-
7月8日立即報名>> 【在線會議】英飛凌新一代智能照明方案賦能綠色建筑與工業(yè)互聯(lián)
-
7月22-29日立即報名>> 【線下論壇】第三屆安富利汽車生態(tài)圈峰會
-
7月31日免費預(yù)約>> OFweek 2025具身機器人動力電池技術(shù)應(yīng)用大會
-
7.30-8.1火熱報名中>> 全數(shù)會2025(第六屆)機器人及智能工廠展
-
免費參會立即報名>> 7月30日- 8月1日 2025全數(shù)會工業(yè)芯片與傳感儀表展
-
即日-2025.8.1立即下載>> 《2024智能制造產(chǎn)業(yè)高端化、智能化、綠色化發(fā)展藍皮書》
推薦專題