python opencv的一些基礎操作

2021-08-20 02:48:55 字數 3453 閱讀 1163

列印的維度,(高度,寬度,通道數)

print(img.size) #

畫素總數目

print(img.dtype) #unit8

print(img) #

顯示乙個

numpy

矩陣cv2.waitkey() #

顯示著,直到按下任意乙個鍵才被關掉

#也可以先讀入彩色圖,在轉換為灰色圖

#讀到不存在時,加入判斷語句,如果為空,做異常處理

#的矩陣變換

#做卷積的時候,需要對不同通道應用卷積,這時:(

轉換之後不能再顯示,執行會出錯

print(img_1.shape)

#cv2.waitkey()

#擴充套件維度,例如

--->(batch_size, channels, height, width)

#**單張,加一列作為的個數

img_2 = np.expand_dims(img, axis=0)

print(img_2.shape) #(1, 480, 854, 3)

#訓練階段構建

patch---> (batch_size, channels, height, width)

data_list =

images = glob.glob('d:/pycharmprojects/image2video/blackswan/*.png')

for imagename in images:

im = cv2.imread(imagename)

data_arr = np.array(data_list)

print(data_arr.shape) #(50, 480, 854, 3)

''''''

#歸一化

#opencv

讀入的矩陣數值是

0-255

,有時我們需要對其進行歸一化處理

為unit8

,需要先轉換為

float

型print(img_1.dtype) #float64

print(img_1)

# 儲存

要得到視覺化的,需要乘以

255還原

讀入的通道排列是

bgr,而不是

#訪問畫素

gray = cv2.cvtcolor(img_4, cv2.color_bgr2gray)

print(img_4[10,10]) #3channels

print(gray[10, 10]) #1channel

img_4[10, 10] = [255, 255, 255] #

修改畫素值

gray[10,10] = 255

print(img_4[10,10]) #----->[255,255,255]

print(gray[10,10]) #----->255

#roi操作(

提取感興趣的區域

)roi = img_4[200:550,100:450,:]

cv2.imshow('roi',roi)

cv2.waitkey()

'''#

通道操作

#分離通道

#合併通道

img_6 = cv2.merge((b, g, r))

print(img_6)

img_5[:, :, 2] =

0print(img_5)

cv2.imshow('img5', img_5)

cv2.waitkey()

一些人,一些事,一些

我覺得這是國內it企業浮躁和傳統的官本位性質決定的,導致國內企業都本末倒置。要想改變命運,我覺得有以下出路 1.不做技術了,改做混混 混混的概念很廣泛的,比如銷售 經理 幹部 皮包公司之類其實都屬於這類。中國就是這樣,越浮越掙錢,只有混混才能發財。要不更進一步,做流氓,廣義的流氓,也很不錯。2.專心...

python opencv的開篇 一

最近學習opencv,將學習中的一些問題,有些可能無關緊要,有些可能比較重要,純屬個人的積累與沉澱記錄。積累 沉澱 應用 成長。問題一 為什麼在某些系統下,通過 cv2.waitkey 0 0xff 獲取ascii碼來獲取輸入呢?比如 cv2.waitkey 0 0xff ord q 來獲取輸入是否...

關於RemoteView 的一些字型的一些問題

最近在做乙個 在notification 新增 天氣通知的小部分 發現困擾在 如何給 remoteview 中的字型 作修改 大家都知道 textview 設定字型 在xml 中 可以 設定 3種 而其他字型的設定 需要通過 typeface 去設定 具體 將字型放置在asset 資料夾中 type...