解決numpy的cannot set WRITABLE flag to True of this array的問題

最近使用pdf2image將PDF轉(zhuǎn)換為圖片時(shí),使用如下代碼:

pil_images = pdf2image.convert_from_path(pdf_path, dpi)

images = []
for pil_img in pil_images:
    img = np.asarray(pil_img)
    try:
        img.setflags(write=1)
    except Exception as e:
        logger.warn(e)
    images.append(img)

這里加入異常處理,是因?yàn)?,每次?zhí)行img.setflags(write=1),都會(huì)報(bào)如下錯(cuò)誤:
cannot set WRITABLE flag to True of this array
雖然保存圖片是可以的,但是沒有辦法基于圖像相關(guān)的ndarray做后續(xù)的畫框等操作。
查了一下資料,做如下處理即可:
img = np.require(img, dtype='f4', requirements=['O', 'W'])
完整代碼如下:

pil_images = pdf2image.convert_from_path(pdf_path, dpi)

images = []
for pil_img in pil_images:
    img = np.asarray(pil_img)
    img = np.require(img, dtype='f4', requirements=['O', 'W'])
    try:
        img.setflags(write=1)
    except Exception as e:
        logger.warn(e)
    images.append(img)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容