亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Python中的imread()函數用法說明

瀏覽:33日期:2022-06-24 16:43:11
cv2方式:

# -*- coding: UTF-8 -*-import cv2'''cv2模塊--圖片的讀入和顯示''' image_path='D:/PycharmProjects/imageCut/cutted_images/0.jpg' img=cv2.imread(image_path)# np.ndarray BGR uint8cv2.imshow('test_imread',img)# 轉為RGB顯示cv2.waitKey()PIL方式:

# -*-coding: UTF-8 -*- from PIL import Imageimport numpy as npimport matplotlib.pyplot as plt image_path='D:/PycharmProjects/imageCut/cutted_images/0.jpg' #PIL#相關:scipy.misc.imread, scipy.ndimage.imread#misc.imread 提供可選參數mode,但本質上是調用PIL,具體的模式可以去看srccode或者document#https://github.com/scipy/scipy/blob/v0.17.1/scipy/misc/pilutil.pyimg=Image.open(image_path)img=np.array(img)# 獲得numpy對象, np.ndarray, RGB #統一使用plt進行顯示,不管是plt還是cv2.imshow,在python中只認numpy.array,但是由于cv2.imread 的圖片是BGR,cv2.imshow 時相應的換通道顯示 plt.imshow(img)plt.show()matplotlib.image:

# -*-coding: UTF-8 -*- from PIL import Imageimport numpy as npimport matplotlib.pyplot as pltimport matplotlib.image as mpimg image_path='D:/PycharmProjects/imageCut/cutted_images/0.jpg' img=mpimg.imread(image_path) #統一使用plt進行顯示,不管是plt還是cv2.imshow,在python中只認numpy.array,但是由于cv2.imread 的圖片是BGR,cv2.imshow 時相應的換通道顯示 plt.imshow(img)plt.show()skimage.io方式:

# -*-coding: UTF-8 -*- from PIL import Imageimport numpy as npimport matplotlib.pyplot as pltfrom skimage import io image_path='D:/PycharmProjects/imageCut/cutted_images/0.jpg' #4 skimge#caffe.io.load_iamge()也是調用的skimage實現的,返回的是0-1 float型數據img = io.imread(image_path) #統一使用plt進行顯示,不管是plt還是cv2.imshow,在python中只認numpy.array,但是由于cv2.imread 的圖片是BGR,cv2.imshow 時相應的換通道顯示 plt.imshow(img)plt.show()scipy.misc方式:

# -*-coding: UTF-8 -*- from scipy.misc import imread, imshow, imsaveimport matplotlib.pyplot as plt image_path='D:/PycharmProjects/imageCut/cutted_images/0.jpg' img = imread(image_path)# imshow(img) need to set the SCIPY_PIL_IMAGE_VIEWER environment variable to point to the program/executable that can be used to view images on your system plt.imshow(img)plt.show()imsave('D:/PycharmProjects/imageCut/cutted_images/1.jpg',img)

補充:cv2.imread()和matplotlib.image.imread()讀取圖片的一些區別,python,中文路徑

1.cv2.imread()和matplotlib.image.imread()

除了讀取出來的rgb的順序不一樣,對于讀取圖片的類型要求也不一樣,

example:

將.jpg改為.png,后者讀取就有問題,而前者就順利的讀取出來了

而且cv2.imread()不能有中文路徑,否則讀取不出來,一般opencv庫都不允許中文路徑

但是可以這樣修改,就可以得到可以識別中文路徑的讀?。?/p>

#cv2識別中文路徑def cv2_imread(img_path): cv_img=cv2.imdecode(np.fromfile(img_path, dtype=np.uint8), -1) return cv_imgimg_y = cv2_imread(’E:/哈哈/’ + str(number) + ’.jpg’)#這個是存儲到帶有中文路徑的文件里面,其中有圖像質量的模糊度cv2.imencode(’.jpg’, img,[int(cv2.IMWRITE_JPEG_QUALITY), random.uniform(30, 50)])[1].tofile('E:/哈哈/' + str(xuhao) + '.jpg')

對于cv2讀取的圖像的形式是數組,不同的讀取函數,讀取到的圖像的形式是不一樣的,所以可以多次進行不同的讀取方式,來進行不同的操作

2.scipy.misc.imread()

讀出來的為rgb,而且可以使用中文路徑(cv2.imread()讀出來的圖片是BGR)

scipy.misc.imsave(),直接進行保存就可以。但是有一點要注意,它只能保存uint8類型的數據,所以有時候就需要對他的類型進行聲明。還有一些別的函數,有時候也會這樣的。uint8的取值范圍是0-255,所以注意越界問題。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。如有錯誤或未考慮完全的地方,望不吝賜教。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 亚洲欧美成人中文日韩电影 | 成人免费无遮挡做性视频 | 91精品国产色综合久久不 | 国产高清第一页 | 国产一区二区三区欧美 | 一区精品麻豆入口 | 国产破处在线视频 | 久久九九热re6这里有精品 | 国产精品福利片 | 久久久噜噜噜www成人网 | 欧美黄色网页 | 欧美日韩视频在线观看高清免费网站 | 国产精品成人观看视频国产奇米 | www.av免费| 欧美高清激情毛片 | 金发美女与黑人巨大交 | 日韩大片免费观看视频播放 | 中文字幕无线码中文字幕网站 | 久久久精品久久久久久 | 99免费精品 | 亚洲国产美女 | 久久久久久久亚洲精品一区 | 午夜视频91 | 在线免费国产视频 | 日韩专区亚洲国产精品 | 麻豆传媒入口直接进入免费 | 日本一级大黄毛片免费基地 | 精选国产门事件福利在线观看 | 成人网在线视频 | 亚洲人成一区二区三区 | 被黑人操视频 | 国产成人高清一区二区私人 | 91好色视频| 一区二区在线观看高清 | 岛国片欧美一级毛片 | 国产夜趣福利免费视频 | 色噜噜狠狠一区二区三区 | 国产毛片不卡 | 黄色免费一级片 | 日本r级在线中文在线播放 日本tv欧美tv天堂 | 99pao成人国产永久免费视频 |