尝试将模块导入 Jupyter 实验室时找不到模块"libiconv.dll" "pyzbar"



我的系统:

  • Windows 8.1专业版6.3(内部版本9600(
  • Anaconda版本:conda 4.9.2
  • Python 3.8.5(conda-env中的Python(
  • Jupyter实验室2.2.6

嘿,我希望你们今天过得愉快。当我尝试导入";pyzbar";模块进入Jupyter实验室。上面写着:

找不到模块'C:\Users\mypc\anaconda3\lib\site packages\pyzbar\libiconv.dll'(或其依赖项之一(。尝试将完整路径与构造函数一起使用语法。

我试着用pip和conda重新安装这个包,但似乎什么都不起作用。我还尝试安装";Visual Studio 2013的Visual C++可再发行包;(注意:我觉得我的问题有点类似,如何解决Python';s';Pyzbar';库上的导入错误?,我只下载并安装2013 x64版本,https://www.microsoft.com/en-us/download/details.aspx?id=40784)但它仍然不能解决我的问题。任何建议或一点点帮助都会很棒。谢谢大家。

尝试python3.6.2(没有anaconda(它正在工作,这是没有conda 的python 3.6.2的结果

~ProjectsOpencvpythonQR-Code-ProjectsQR-Code                                                      [  ] 11:46:50
➜ python .Test_pyZbar.py
-----------------------------
python Verion:  3.6.2 (v3.6.2:5fd33b5, Jul  8 2017, 04:57:36) [MSC v.1900 64 bit (AMD64)]
-----------------------------
Data: Some data
BBox: Rect(left=40, top=40, width=210, height=210)
 ~ProjectsOpencvpythonQR-Code-ProjectsQR-Code                                                      [  ] 11:48:49

不适用于conda

使用conda-env(二维码(python3.6进行终端输出。

File "C:mincondaenvsQR-codelibctypes__init__.py", line 348, in __init__
self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] The specified module could not be found
 ~ProjectsOpencvpythonQR-Code-ProjectsQR-Code                                               [ QR-code ] 11:49:08
➜

import cv2
import sys
from pyzbar.pyzbar import decode, ZBarSymbol
print("-----------------------------")
print('python Verion: ', sys.version)
print("----------------------------")
# Image.open('barcode1.png')  # if use PIL library
im = cv2.imread("Code.png")  # if use cv2
# codes = decode(im, symbols=[ZBarSymbol.QRCODE])  # specify code type
codes = decode(im)  # auto detect code type
# print('Decoded:', codes)
for code in codes:
data = code.data.decode('ascii')
print('Data:', code.data.decode('ascii'))
# print('Code Type:', code.type)
print('BBox:', code.rect)
x, y, w, h = code.rect.left, code.rect.top, 
code.rect.width, code.rect.height
cv2.rectangle(im, (x, y), (x+w, y+h), (255, 0, 0), 8)
# print('Polygon:', code.polygon)
cv2.rectangle(im, code.polygon[0], code.polygon[1],
(0, 255, 0), 4)
txt = '(' + code.type + ')  ' + data
cv2.putText(im, txt, (x - 10, y - 10),
cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 50, 255), 2)
text1 = 'No. Codes: %s' % len(codes)
cv2.putText(im, text1, (5, 15),
cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2)
cv2.imshow('bounding box', im)
cv2.waitKey(0)
cv2.destroyAllWindows()

为我(在anaconda上(修复它的原因是:我通过conda-forge安装了pyzbar。我卸载了它,并使用pypi重新安装,它起了作用:

pip install pyzbar

最新更新