在 Python 中获取图像数据2024 年 8 月 29 日 | 阅读 6 分钟 Python 是一门广受欢迎的编程语言。Guido Van Rossum 于 1991 年在荷兰 CWI (Centrum Wiskunde& Informatica) 创建并发布了它。Python 是一种高级、通用且动态的编程语言。 Python 平台独立、简单易学。它也是免费开源的。除了具有广泛的自由支持外,它还可以嵌入和扩展。 在提取发票、收据和其他区域信息等业务部门中,从图像中提取文本是常见做法。 光学字符识别是一种基于电子计算机的方法,用于将图像转换为机器编码的文本,这些文本可以提取并用于文本格式。 我们需要熟悉三个术语才能了解更多关于它的信息。
Tesseract 是一个开源的 OCR(光学字符识别)引擎,可用于从图像中提取文本。 要使用 Python 中的 tesseract,我们还需要 py-tesseract 库,它是 tesseract 引擎的一个包装器。 既然我们现在要处理图像,我们还需要 pillow 库,它将为 Python 提供图像处理功能。 我们首先查找适用于我们操作系统的 Tesseract 安装程序。Tesseract 安装程序的最新版本可以在 Windows 下找到;我们必须下载 ".exe" 文件并将其安装在我们的计算机上。 在 Windows 操作系统上打开 cmd 或命令提示符,如果尚未安装 Python 库,请使用以下命令进行安装。 Python PILPython 解释器现在可以访问 Python 图像库,简称 PIL。名为 "picture" 的模块将提供一个同名类来处理 PIL 图像。此外,该模块还将提供许多用于创建新图像和从文件加载图像的函数。 通过调用 get data(),我们可以获取图像的像素值,这将返回一个序列对象。由于序列对象已被展平,第一行的值将紧随零行的值之后,序列将继续。 注意:此方法是一个内部 PIL 数据类型,仅支持某些序列操作,它将返回序列对象。我们使用 list (im. getdata()) 将其转换为典型的序列,例如打印。让我们谈谈参数。 Band:它将显示它将返回的通道。这是返回所有通道的标准方法。要返回单个通道,请在列表中传递值 0 以从 "RGB" 图像中获取 "R" 通道。 返回类型:它是一个类似文章的集合。 在 Python 中读取图像Python 编程语言将支持最强大的图像处理工具。现在我们知道如何使用 ImageIO、OpenCV、Matplotlib 和 PIL 等库,我们可以看到如何处理图像。
如何在 Python 中查找图像中的简单对象并提取其像素值?当我们想查找图像像素中的每个值时,我们使用像素来查找对象。我们知道图像由像素组成,当这些值通过 Python 提取时,我们得到以下值:R、G、B 和 A。这些是 RGBA 颜色,包括红色、绿色和蓝色;同样,还有一个 alpha 值。 我们将使用 Python 图像库 PIL,在 Python 编程语言中。该库的模块可以处理图像,并兼容 png、jpg、gif 等各种文件类型。它还具有打开、提取数据、修改属性、创建新图像等附加功能。 在 Ubuntu 中,PIL 与 Python 2.7 一起安装;对于 Windows,必须手动安装。您可以使用 Python 2.7 或更高版本从该位置下载剩余的操作系统的 PIL。 创建一个包含像素值列表并提取。我们也可以使用 IDLE shell,但提取值需要更长的时间,因此使用命令行界面被认为是完整的。有一种获取值的方法,如下所示 上面,我的文件是需要读取的图像的名称,并给出文件的正确格式。如果是 jpeg,则以 myfile.jpeg 的形式给出。 ->我们使用一个名为 getdata() 的图像功能模块来提取像素值。它将从左上角开始,从左到右水平扫描图像。然后将从每个像素获得的值添加到列表中。最后,我们有一个列表,其中包含每个像素的四个值:根据 alpha 值,红色、绿色和蓝色。 从上面可以看出,包含打印像素值的列表是 pix_val。然而,我们得到的列表是集合的列表,所以有时需要展平列表。例如,如果列表是 [(1, 2, 3, 4), (3, 4, 5, 6)...] 并且需要的列表是 [1, 2, 3, 4, 3, 4, 5, 6...],那么展平列表的命令如下: 上面的命令行将分离 pix_val 中每个集合的每个组件,所有组件都存储在 pix_val_flat 中。因此,它可以编译成脚本或开发成可在后续图像处理项目中使用的函数。 PIL 是图像处理技术之一。pygame 或 numpy 也被用于处理图像的相应模块。 在 OpenCV 中处理图像像素在计算机视觉中,像素是图像的全部属性。图像中的最小数据单元是代表特定空间中光强度色彩的数学值。 图像的总像素数是图像的高度、宽度和通道数的总和。 OpenCV 中的图像被读取为像素值的 Numpy 数组;使用切片操作,可以获取和处理由其像素表示的图像区域。 切片操作用于恢复记录、元组和数组等集合的子集。它们用于获取图像区域的像素值,用于编辑、格式化和裁剪。 使用切片操作获取列表子集的程序输出 First three numbers: [ '1', '2', '3' ] First three numbers: [ '1', '2', '3' ] Last three numbers: [ '3', '4', '5' ] Second to fourth numbers: [ '2', '3', '4' ] 下一主题IPython Display |
语言 什么是回文?回文是指即使数字和字母颠倒也保持不变的数字或字母。例如:121、11、414、1221、74747 是回文数。MOM、DAD、MADAM、REFER 是回文词。JAVATPOINT、PROGRAM、JAVA 不是回文词。回文...
阅读 2 分钟
Wolfram Alpha Web 服务 API 提供了一个基于 Web 的应用程序编程接口(API),允许将 Wolfram Alpha 的计算和表示能力集成到企业、桌面、移动和 Web 应用程序中。Wolfram Alpha 是一个可以借助...计算出专家级答案的 API。
阅读 28 分钟
极其用户友好的 Python 语言唯一的缺点是它的速度慢。它比 C、C++ 和 Java 慢得多。在线编程平台,如果 C/C++ 的限制是 X。通常,Python 提供的时间是 Java 的 5 倍。语言提供各种输入和...
阅读 6 分钟
二叉搜索树是更通用的二叉树的后代,带有一些约束。在二叉搜索树中,节点的排列应遵循某些属性。这些属性是:树的所有父节点的值应大于子节点...
阅读 13 分钟
本教程将学习RSME(均方根误差)及其在Python中的实现。让我们从它的简要介绍开始。简介 RSME(均方根误差)计算模型预测值与实际值之间的变换。换句话说,它是这样一种...
阅读 3 分钟
基础/必备知识简介:字典是 Python 中可用的数据类型之一。如果您熟悉集合和列表,那么字典就是另一种数据存储方式。从正式定义来看,字典是存储在...中的无序数据集合。
阅读 3 分钟
引言 在 Python 中,私有方法是不打算在定义它的类之外使用的方方法。这些方法的名称前缀为双下划线 (__),它们只能在类内部访问...
阅读 3 分钟
上下文管理器是 Python 中管理资源和确保资源使用后正确清理的重要工具。Python 中的语句提供了使用上下文管理器的便捷语法。但是,有时我们需要使用带有附加参数的上下文管理器;为此,...
阅读9分钟
在过去的几年里,我们看到几乎每个领域和我们生活的方方面面都发生了巨大的数字化转型。我们可以很容易地观察到,我们现在对技术的依赖程度比以往任何时候都高。我们可以在每个部分都看到这一点……
阅读 6 分钟
在本教程中,我们将学习如何在 Python 函数中创建全局变量。全局变量是一种可以在程序的任何部分(包括函数内部)访问的变量。为了确保代码的正常运行,...
11 分钟阅读
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India