亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

OpenCV-Python學習筆記(一):圖像讀入、顯示、保存,BGR模式轉

系統 1837 0

使用OpenCV-Python實現圖像讀入、顯示與保存:

            
              # -*- coding: utf-8 -*-

import cv2
from matplotlib import pyplot as plt

# # 第二個參數,0為灰度模式顯示,1為彩色圖像,默認值為1
# img0 = cv2.imread(r'D:\OpenCV_Python\chepai.jpg', 0)
# img1 = cv2.imread(r'D:\OpenCV_Python\chepai.jpg', 1)
# 或者如下:
img0 = cv2.imread(r'D:\OpenCV_Python\chepai.jpg', cv2.IMREAD_GRAYSCALE)
img1 = cv2.imread(r'D:\OpenCV_Python\chepai.jpg', cv2.IMREAD_COLOR)

# using opencv to show image
cv2.imshow('grayImage', img0)
cv2.imshow('bgrImage', img1)

k = cv2.waitKey(0)
if k == 27:         # wait for Esc key to exit
    cv2.destroyAllWindows()
elif k == ord('s'):
    cv2.imwrite('chepai_grayimage.jpg', img0)   # wait for 's' key to save and exit
    cv2.destroyAllWindows()

# using matplotlib to show image
# plt.imshow(img0, cmap='gray', interpolation='bicubic')
# plt.xticks([]), plt.yticks([])   # to hide tick values on X and Y axis
# plt.show()
            
          

注意: OpenCV 加載的彩色圖像是 BGR 模式,但?Matplotib 是 RGB模式。所以彩色圖像如果已經被 OpenCV 讀入,那它將不會被 Matplotib 正確顯示。如下圖所示,同一幅彩色圖像,由OpenCV讀入,左邊圖像由cv2.imshow()函數顯示,為正常顏色;右邊圖像調用Matplotib的函數顯示,顏色明顯不對。

OpenCV-Python學習筆記(一):圖像讀入、顯示、保存,BGR模式轉RGB模式_第1張圖片 OpenCV-Python學習筆記(一):圖像讀入、顯示、保存,BGR模式轉RGB模式_第2張圖片

由于很多時候要用到matplotlib操作圖像,因此就需要解決 彩色圖像由BGR模式轉RGB模式 的問題。在網上搜索了下,找到以下幾種解決方法:

# 方法一
b, g, r = cv2.split(img)
img1 = cv2.merge([r, g, b])

# 方法二
img2 = img[:, :, :: -1]? ?或者? ?img2 = img[..., :: -1]

# 方法三
img3 = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

下面的代碼應用以上方法,做出驗證:

            
              import cv2
from matplotlib import pyplot as plt

# 由OpenCV讀入彩色圖像
img = cv2.imread(r'D:\OpenCV_Python\chepai.jpg')

# 方法一
b, g, r = cv2.split(img)
img1 = cv2.merge([r, g, b])

# 方法二
img2 = img[:, :, :: -1]
# img2 = img[..., :: -1]

# 方法三
img3 = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

# 調用matplotlib顯示
plt.subplot(221); plt.imshow(img)
plt.subplot(222); plt.imshow(img1)
plt.subplot(223); plt.imshow(img2)
plt.subplot(224); plt.imshow(img3)
plt.show()

            
          

OpenCV-Python學習筆記(一):圖像讀入、顯示、保存,BGR模式轉RGB模式_第3張圖片

由上圖可知,三種方法都可以解決 彩色圖像由BGR模式轉RGB模式的問題。

參考文獻:https://stackoverflow.com/questions/15072736/extracting-a-region-from-an-image-using-slicing-in-python-opencv/15074748#15074748

(注:原圖像來源于網絡,侵刪)

?


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 青青青青爽视频在线播放 | 高清国产美女一级a毛片录 高清国产美女一级毛片 | 欧美性一区二区三区五区 | 欧美日韩精品一区二区在线线 | 99久久国产综合精品网成人影院 | 亚洲国产人成中文幕一级二级 | 国产99热在线观看 | 四虎影院永久在线 | www日韩在线 | 精品国产91在线网 | 免费国产一区二区在免费观看 | 精品久久久久亚洲 | 真实国产精品视频国产网 | 亚洲精品国产一区二区 | 九九影院韩国理伦片 | 6一10周岁毛片免费 6一10周岁毛片在线 | 狠狠色丁香婷婷久久综合考虑 | 日韩美一区二区三区 | 成人爽视频 | 欧美在线观看一区 | 天天舔天天射 | 久久久久综合中文字幕 | 日日碰日日摸日日澡视频播放 | 久久99精品久久久久子伦 | 亚洲资源站资源网在线 | 一级在线免费视频 | 北岛玲日韩精品一区二区三区 | 草草操| 欧美在线免费视频 | 男女啪啪网站 | 婷婷亚洲国产成人精品性色 | 一日本道加勒比高清一二三 | 中国女人精69xxxxxx视频 | 久久综合久久综合久久综合 | 国产亚洲精品资源一区 | 91热成人精品国产免费 | 欧美一级毛片在线看视频 | 四虎影院在线播放视频 | 青青久久久国产线免观 | 国产精品国产三级国产an | 玖玖在线资源 |