亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

解決python cv2.imread 讀取中文路徑的圖片返回為None的問題

 更新時(shí)間:2020年06月02日 10:12:30   作者:陶將  
這篇文章主要介紹了解決python cv2.imread 讀取中文路徑的圖片返回為None的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

使用cv2讀取圖片時(shí),輸出圖片形狀大小時(shí)出現(xiàn)報(bào)錯(cuò)“ 'NoneType' object has no attribute shape”,后來排查發(fā)現(xiàn)讀取圖片的返回值image為None, 這就說明圖片根本就沒有被讀取。

下面圖片是問題問題解決后,為了更好的展示,寫的代碼展示,這是正常的因果關(guān)系,找錯(cuò)誤排查時(shí)是從下往上推。

使用PIL讀取圖像,能夠成功讀取圖片,借此了解圖片的大小和格式,代碼如下圖所示:

cv.imread函數(shù)能夠成功讀取非中文路徑的圖片,所以就想到是不是中文路徑的問題,opencv中opencv不接受non-ascii的路徑,解決方法就是先用先用np.fromfile()讀取為np.uint8格式,再使用cv2.imdecode()解碼,如下:

np.fromfile(filename, dtype)是從以dtype形式讀取文件

cv2.imdecode()函數(shù)從指定的內(nèi)存緩存中讀取數(shù)據(jù),并把數(shù)據(jù)轉(zhuǎn)換(解碼)成圖像格式;主要用于從網(wǎng)絡(luò)傳輸數(shù)據(jù)中恢復(fù)出圖像

補(bǔ)充知識(shí):python3.x, cv2.imread()導(dǎo)入圖片失敗,none

首先在第一次運(yùn)行時(shí),命令行中錯(cuò)誤:

ValueError: embedded null character

發(fā)現(xiàn)是因?yàn)閷?dǎo)入的圖片路徑中存在\0

python3.x, cv2.imread()導(dǎo)入圖片失敗,none

1. 路徑中無中文名

2. pip list 發(fā)現(xiàn)也有opencv-python,(雖然我又重新下了一遍

而這些圖片用PS打開的時(shí)候,會(huì)報(bào)錯(cuò):無法完成請(qǐng)求,因?yàn)檎业讲恢幕驘o效的JPEG標(biāo)識(shí)符類型

圖片是我從網(wǎng)站上爬下來的,改過其后綴名為jpg, 源圖真正的后綴名是gif.

所以要重置一些文件的格式,比如用畫圖重新保存為jpg格式。

這里注意:

后綴是一個(gè)標(biāo)簽,表明文件的類型和格式,至于文件到底是不是該格式就另說了。有時(shí)候改了后綴名,文件仍能被打開(我遇到的情況),是因?yàn)槲募?nèi)容還有文件頭,有些應(yīng)用程序會(huì)根據(jù)文件頭中的信息來判斷文件的格式(比如windows自帶的照片查看器)而不是通過后綴名。所以切實(shí)有效的方式還是通過格式轉(zhuǎn)換軟件來轉(zhuǎn)換格式。

應(yīng)用python PIL包的Image模塊將圖片重新轉(zhuǎn)換格式為jpg(徹底轉(zhuǎn)換格式,而不是只改后綴)

(當(dāng)然如果只需要幾張圖的話,直接用畫圖打開另存jpg格式就好了)

img = Image.open(file_path+'/'+files[j]).convert('RGB')
img.save(file_path+'/'+files[j]

注意要有個(gè)convert('RGB'),不然報(bào)錯(cuò)OSError: cannot write mode P as JPEG

以上這篇解決python cv2.imread 讀取中文路徑的圖片返回為None的問題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 推薦10款最受Python開發(fā)者歡迎的Python IDE

    推薦10款最受Python開發(fā)者歡迎的Python IDE

    這篇文章收集了一些對(duì)開發(fā)者非常有幫助的,最好的10款Python IDE,包括Vim,Eclipse with PyDev,Sublime Text,PyCharm等知明Python開發(fā)工具
    2018-09-09
  • Python hashlib加密模塊常用方法解析

    Python hashlib加密模塊常用方法解析

    這篇文章主要介紹了Python hashlib加密模塊常用方法解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • Python使用unittest進(jìn)行有效測(cè)試的示例詳解

    Python使用unittest進(jìn)行有效測(cè)試的示例詳解

    這篇文章主要介紹了如何使用?unittest?來編寫和運(yùn)行單元測(cè)試,希望通過閱讀本文,大家能了解?unittest?的基本使用方法,以及如何使用?unittest?中的斷言方法和測(cè)試用例組織結(jié)構(gòu)
    2023-06-06
  • Python使用paddleOCR批量識(shí)別pdf的方法

    Python使用paddleOCR批量識(shí)別pdf的方法

    PaddleOCR可以在圖像、文本、表格等多種場(chǎng)景下進(jìn)行文字識(shí)別,本文主要介紹了Python使用paddleOCR批量識(shí)別pdf的方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-03-03
  • python手寫選擇排序方式(不用sort)

    python手寫選擇排序方式(不用sort)

    這篇文章主要介紹了python手寫選擇排序方式(不用sort),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • Python Allure庫(kù)的使用示例教程

    Python Allure庫(kù)的使用示例教程

    Python Allure庫(kù)是一個(gè)實(shí)用可靠的測(cè)試報(bào)告框架,它幾乎可以與Python的其他庫(kù)和框架無縫集成,利用Python Allure庫(kù),可以輕松生成易于閱讀的測(cè)試報(bào)告,讓測(cè)試變得更加簡(jiǎn)單便捷,本文主要介紹Python Allure庫(kù)的使用,感興趣的朋友一起看看吧
    2023-12-12
  • Python提取Word中圖片的實(shí)現(xiàn)步驟

    Python提取Word中圖片的實(shí)現(xiàn)步驟

    本文主要介紹了Python提取Word中圖片的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Python爬蟲工具requests-html使用解析

    Python爬蟲工具requests-html使用解析

    這篇文章主要介紹了Python爬蟲工具requests-html使用解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • 安裝PyInstaller失敗問題解決

    安裝PyInstaller失敗問題解決

    這篇文章主要介紹了安裝PyInstaller失敗問題解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • Python中的迭代器漫談

    Python中的迭代器漫談

    這篇文章主要介紹了Python中的迭代器漫談,本文主要講解range函數(shù)和xrange函數(shù)性能區(qū)別,需要的朋友可以參考下
    2015-02-02

最新評(píng)論