我试图从它的绝对路径加载图像,但不是cv2。我也不知道。
当我使用相对路径时,它工作得很好。
我已经试过不同的方法了:
import cv2
#works perfectly
print(cv2.imread('larvae.png'))
#don't work
print(cv2.imread('C:/Users/moniq/Documentos/Automação - Contagem de Larvas/larvae.png'))
#output: None
#don't work
print(cv2.imread('C:UsersmoniqDocumentosAutomação - Contagem de Larvaslarvae.png'))
#output: SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated UXXXXXXXX escape
#don't work
print(cv2.imread('C:\Users\moniq\Documentos\Automação - Contagem de Larvas\larvae.png'))
#output: None
我终于找到了答案:https://stackoverflow.com/a/60749818/12119896]
cv2.imread()在路径太长时可能会无声地失败,这就是为什么当我使用相对路径时它可以工作的原因。
解决方案是改变read函数。我现在使用matplotlib中的那个:
import matplotlib.pyplot as plt
image = plt.imread('C:/Users/moniq/Documentos/Automação - Contagem de Larvas/larvae.png')