如何检查图像是否有任何文字?

How to check if a image has any text or not?

我正在寻找一个简单的解决方案,如果图像文件中存在任何类型的英文文本,该解决方案将 return 一个布尔值。我想用它来检测模因。例如,应将以下文件检测为带有文本的图像。

我遇到过使用 OpenCV 的精细机器学习技术,但我无法完全实现它。有没有更快、更简单、同样有效的解决方案?

期待您的宝贵意见!

安装后使用 opencv 和 pytessaract 确实有简单的方法,您只需要使用几行即可获取文本

pip install opencv-python

pip 安装 pytesseract

import cv2
import pytessaract

img = cv2.imread('yourimage.jpeg')   

text = pytessaract.image_to_string(img)

Read Text from Image with One Line of Python Code

此外,如果您不喜欢第一种方式,您可以使用 Google 视觉,请记住它会 return Json,您将提取您需要的内容。

https://cloud.google.com/vision/docs/ocr

Python Client for Google Cloud Vision

我们可以使用 pytesseract python 包从图像中获取文本。您可以像 pip install pytesseract

一样轻松安装

示例代码如下:

import cv2
import pytesseract
image = cv2.imread('test.jpeg')
text = pytesseract.image_to_string(image)
print(text)

这是我的示例图片

所以,输出应该像

IS BITCOIN
GOING TO
.000
BY CHRISTMAS?

您可以使用 OpenCVpytesseract 来执行您的任务。

import cv2
import pytesseract
img = cv2.imread('YOUR_IMAGE_PATH')
text = pytesseract.image_to_string(img)
print(text)