import pyzbar.pyzbar - 无法找到 zbar 共享库

Paw*_*ski 6 python qr-code computer-vision google-colaboratory

我想制作一个脚本来检测和读取照片中的二维码。我想使用 PyZbar 来实现这一点,但我遇到了一些错误的问题。

我在谷歌合作实验室工作

!sudo apt install tesseract-ocr
!pip install pytesseract
!pip install pyzbar[scripts]

import shutil
import os
import random
import re
import cv2 
import numpy as np
import pytesseract
from pytesseract import Output
%matplotlib inline
import matplotlib as mpl
import matplotlib.pyplot as plt
import matplotlib.pylab as pylab
import glob
import pyzbar.pyzbar
from PIL import Image
Run Code Online (Sandbox Code Playgroud)

这是我正在努力解决的一个错误:

ImportError                               Traceback (most recent call last)
<ipython-input-25-d8758fa4db37> in <module>()
     24 import glob
     25 # ZBAR - Bar Code Reader is an open source software suite for reading bar codes from various sources, such as video streams, image files and raw intensity sensors
---> 26 import pyzbar.pyzbar
     27 # PIL - Python Imaging Library
     28 from PIL import Image

4 frames
/usr/local/lib/python3.6/dist-packages/pyzbar/zbar_library.py in load()
     63         path = find_library('zbar')
     64         if not path:
---> 65             raise ImportError('Unable to find zbar shared library')
     66         libzbar = cdll.LoadLibrary(path)
     67         dependencies = []

ImportError: Unable to find zbar shared library
Run Code Online (Sandbox Code Playgroud)

提前感谢您的回答

Kor*_*ich 7

在此之前!pip install pyzbar,您需要使用此命令安装 libzbar。

!apt install libzbar0
Run Code Online (Sandbox Code Playgroud)

然后,pyzbar 应该可以工作。


Pun*_*rud 6

这在 Mac 上为我解决了这个问题:

mkdir ~/lib
ln -s $(brew --prefix zbar)/lib/libzbar.dylib ~/lib/libzbar.dylib
Run Code Online (Sandbox Code Playgroud)

来自https://github.com/npinchot/zbar/issues/3#issuecomment-1038005495