解決python圖像處理圖像賦值后變?yōu)榘咨膯栴}
用Python進行圖像賦值,在1RGB基礎上,加入光流兩個通道,代碼如下所示:
import numpy as npimport cv2import matplotlib.pyplot as plt path = ’frame_00003_rgb.png’img = cv2.imread(path)img1 = np.zeros([480, 640, 5])img1[:, :, 0:3] = np.array(img) cv2.imshow(’test1’, np.array(img)[:,:,2])cv2.imshow(’test2’, img1[:, :, 0])cv2.waitKey(10000)
打印出來的時候,圖像顯示空白:
后來找到了問題,是numpy數組11聲明的問題,改成uint8就行了:如下所示:
import numpy as npimport cv2import matplotlib.pyplot as plt path = ’frame_00003_rgb.png’img = cv2.imread(path)img1 = np.zeros([480, 640, 5], dtype=np.uint8)img1[:, :, 0:3] = np.array(img) cv2.imshow(’test1’, np.array(img)[:,:,2])cv2.imshow(’test2’, img1[:, :, 0])cv2.waitKey(10000)
補充知識:python3改圖片白色該為透明
我就廢話不多說了,大家還是直接看代碼吧!
# pip install Pillowimport PIL.Image as Image# 以第一個像素為準,相同色改為透明def transparent_back(img): img = img.convert(’RGBA’) L, H = img.size color_0 = (255,255,255,255)#要替換的顏色 for h in range(H): for l in range(L): dot = (l,h) color_1 = img.getpixel(dot) if color_1 == color_0:color_1 = color_1[:-1] + (0,)img.putpixel(dot,color_1) return imgif __name__ == ’__main__’: img=Image.open(’img.png’) img=transparent_back(img) img.save(’img2.png’)
以上這篇解決python圖像處理圖像賦值后變?yōu)榘咨膯栴}就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。
相關文章:
1. Ajax對xml信息的接收和處理操作實例分析2. Jsp中request的3個基礎實踐3. Ajax返回值類型與用法實例分析4. XML入門精解之結構與語法5. 如何使用CSS3畫出一個叮當貓6. 《Java程序員修煉之道》作者Ben Evans:保守的設計思想是Java的最大優(yōu)勢7. Java 如何解析key為動態(tài)的json操作8. 在python下實現word2vec詞向量訓練與加載實例9. ASP如何檢測某文件夾是否存在,不存在則自動創(chuàng)建10. ASP.NET Core 5.0中的Host.CreateDefaultBuilder執(zhí)行過程解析
