我一直在尋找整夜尋找解決方案或至少明白問題來自哪裏,所以我在這裏。閱讀樹莓派上的臨時文件內的圖像2
我運行一個Flask服務器鏈接到我的Apache與wsgi。 我正在從用戶網絡攝像頭恢復一張圖片作爲base 64字符串(從URI恢復)並將其寫入臨時文件。 我正在爲另一個臨時文件上的用戶的個人資料圖片(如Facebook)做同樣的事情。
# Decode base64 to image data
imgdataCam = stringBase64Cam.decode('base64')
imgdataPro = stringBase64Pro.decode('base64')
# Create temporary files
tempFile1 = tempfile.NamedTemporaryFile()
tempFile2 = tempfile.NamedTemporaryFile()
# Write images data in files
tmpImg1=open(tempFile1.name,'wb')
tmpImg1.write(imgdataCam)
tmpImg1.close()
tmpImg2=open(tempFile2.name,'wb')
tmpImg2.write(imgdataPro)
tmpImg2.close()
後來,我試圖讀取這些文件(臨時文件仍然沒有關閉,所以他們仍然存在)作爲
img1 = cv2.imread(tempFile1.name)
但它看起來像什麼appens,我到處都取得了一定的打印和它看起來像「cv2.imread()」正在停止我的程序沒有任何錯誤消息。 我也試圖與PIL一樣,讀那些圖片:
pilImg1 = Image.open(tempFile1.name).convert('RGB')
ocvImg1 = np.array(pilImg1)
img1 = ocvImg1[:, :, ::-1].copy()
隨着PIL我能夠讀取該文件,但我得到了同樣的問題imread與
greyImg = cv2.cvtColor(img1, cv2.COLOR_BGR2GRAY)
在我的節目稍後。
一切都在我的筆記本電腦上運行得很好,但是一旦我將它上傳到我的覆盆子pi上,我就會遇到問題。 有人能幫我理解它來自哪裏嗎?
當我在這個樹莓上運行「python init .py」時,它也運行良好。