[英]Attribute Error 'module' object has no attribute 'DateField'
[英]Error 'module' object has no attribute 'freetype'
我正在使用此代码链接,但它显示模块对象没有属性的错误我尝试 pip install freetype 但什么也没发生。 任何人都可以请指导我。
import cv2
import numpy as np
img = np.zeros((100, 300, 3), dtype=np.uint8)
ft = cv2.freetype.createFreeType2()
ft.loadFontData(fontFileName='Ubuntu-R.ttf',
id=0)
ft.putText(img=img,
text='Quick Fox',
org=(15, 70),
fontHeight=60,
color=(255, 255, 255),
thickness=-1,
line_type=cv2.LINE_AA,
bottomLeftOrigin=True)
cv2.imwrite('image.png', img)
如果 cv2.freetype 不在 python 中运行,你仍然可以使用 freetype-py 模块。
我在 opencv 中为 python2/3 编写了一个围绕 PIL 库 api 调用的包装器,可以通过以下方式使用:(从https://github.com/bunkahle/PILasOPENCV下载)
from __future__ import print_function
import PILasOPENCV as Image
import PILasOPENCV as ImageDraw
import PILasOPENCV as ImageFont
import cv2
font = ImageFont.truetype("arial.ttf", 30)
print(font)
im = Image.new("RGB", (512, 512), "grey")
draw = ImageDraw.Draw(im)
text = "Some text in arial"
draw.text((100, 250), text, font=font, fill=(0, 0, 0))
print(ImageFont.getsize(text, font))
mask = ImageFont.getmask(text, font)
print(type(mask))
cv2.imshow("mask", mask)
im.show()
im_numpy = im.getim()
print(type(im_numpy), im_numpy.shape, im_numpy.dtype)
它在后台使用 freetype-py 模块。 PILasOPENCV其实是一个将旧的PIL项目迁移到OPENCV的项目。 安装
setup.py install
要么
pip install PILasOPENCV
更多细节和测试可以在github中找到。
您只是缺少opencv-contrib
,您可以使用pip install opencv-contrib-python
安装它。
[这是一个 WINDOWS 特定指南]
我对这个问题已经很晚了,但我希望这对某人有所帮助。
我在底部添加了一个易于遵循的指南的链接。
以下是您需要遵循的基本步骤:
bootstrap-vcpkg.bat
vcpkg install freetype:x64-windows
vcpkg install harfbuzz:x64-windows
cmake -G "Visual Studio 16 2019" -BD:\\code\\downloads\\opencv-4.3.0\\build -D BUILD_NEW_PYTHON_SUPPORT=ON -D BUILD_PYTHON_SUPPORT=ON -D BUILD_opencv_python3=yes -D PYTHON_DEFAULT_EXECUTABLE=D:\\anaconda3\\python.exe -D OPENCV_SKIP_PYTHON_LOADER=ON -D PYTHON_LIBRARY=D:\\anaconda3\\libs\\python36.lib -D OPENCV_EXTRA_MODULES_PATH=D:\\code\\downloads\\opencv_contrib-4.3.0\\modules -D OPEN_CV_FORCE_PYTHON_LIBS=yes -D CMAKE_TOOLCHAIN_FILE=D:\\code\\downloads\\vcpkg\\scripts\\buildsystems\\vcpkg.cmake
这里有一份全面的书面指南:
另外,我制作了一个受同一教程启发的视频,可以在这里找到:
我建议您观看视频并将本指南放在一边。
干杯!
我发现opencv-contrib-python-4.5.3.56
没有freetype
。 我将它降级到版本4.4.0.46
,然后它就可以工作了。
pip3 install opencv-contrib-python==4.4.0.46
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.