使用Python,Matplotlib显示RGB图像
生活随笔
收集整理的這篇文章主要介紹了
使用Python,Matplotlib显示RGB图像
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
使用Python,Matplotlib顯示RGB格式的 圖像
- 1. 效果圖
- 2. 源碼
- 參考
這篇博客將介紹如何使用matplotlib顯示RGB圖像。具體是使用matplotlib,pyplot和mpimg來加載和顯示圖像。
調用plt.axis(“ off”)可以刪除圖形的軸。另外在OpenCV,圖像讀出來是多維數據,且是以BGR而不是RGB的順序存儲!
1. 效果圖
原始圖 VS 去掉軸圖 VS cv2-BGR圖 VS cv2-BGR2RGB圖
可以得出
- matplotlib讀出來圖像是RGB格式;
- cv2讀出來圖像是BGR的,所以圖像是錯誤的,經過BGR2RGB后可以正常顯示。
2. 源碼
import osimport cv2
import matplotlib.image as mpimg
import matplotlib.pyplot as pltfolder_path = os.getcwd().replace('\\', '/')
imgpath = folder_path + "/images/004_001.jpg"
image = mpimg.imread(imgpath)
plt.imshow(image)
plt.show()# 通過調用plt.axis(“ off”),可以刪除編號的軸
plt.axis("off")
plt.imshow(image)
plt.show()cv2image = cv2.imread(imgpath)
plt.axis("off")
plt.imshow(cv2image)
plt.show()# OpenCV將RGB圖像表示為多維NumPy數組…但是順序相反!圖像是以BGR順序而不是RGB表示的!
plt.axis("off")
# 將圖像從BGR轉為RGB
rgbimage = cv2.cvtColor(cv2image, cv2.COLOR_BGR2RGB)
plt.imshow(rgbimage)
plt.show()# 以1*4列顯示
dict = {'origin': image, 'remove axe': image, 'cv2 BGR img': cv2image, 'cv2 BGR2RGB img': rgbimage}
for i, (key, values) in enumerate(dict.items()):subplot = plt.subplot(1, 4, i + 1)plt.imshow(values) # 通過for循環逐個顯示圖像subplot.set_title(str(key)) # 設置titleif(i == 0): continueplt.xticks([]) # 去掉x軸的刻度plt.yticks([]) # 去掉y軸的刻度
plt.show()
參考
- https://www.pyimagesearch.com/2014/11/03/display-matplotlib-rgb-image/
總結
以上是生活随笔為你收集整理的使用Python,Matplotlib显示RGB图像的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 鼋头渚特惠票多少钱
- 下一篇: 港珠澳大桥珠海口岸到哪里坐巴士,如何去港