首页  >  文章  >  后端开发  >  如何使用 AI 和 Transformers PHP 自动生成图像替代文本

如何使用 AI 和 Transformers PHP 自动生成图像替代文本

王林
王林原创
2024-08-29 15:03:03220浏览

How to auto-generate the image Alt-Text using AI and Transformers PHP

在本文中,我们将引导您使用 TransformersPHP 库从图像生成替代文本(替代文本)。

替代文本对于可访问性和 SEO 至关重要,它为屏幕阅读器和搜索引擎提供图像的文本描述。

什么是图像的替代文本?

Alt 文本(替代文本)简要描述 HTML 代码中出现的图像。如果加载失败,它会代替图像显示,并由屏幕阅读器用来向视障用户描述图像。

为什么 Alt 标签很重要?

Alt 标签对于可访问性至关重要,它允许屏幕阅读器向有视觉障碍的用户描述图像。它们还通过帮助搜索引擎理解图像内容来增强 SEO,从而提高您网站的排名。

如何向 HTML 图像中添加替代文本?

要将替代文本添加到 HTML 中的图像,请在 如何使用 AI 和 Transformers PHP 自动生成图像替代文本 中包含 alt 属性。标签:

<img src="image.jpg" alt="A description of the image">

如何使用 TransformersPHP 从图像生成替代文本

第 1 步:设置项目

在深入研究代码之前,请安装 TransformersPHP 库。
您可以通过运行以下命令通过 Composer 安装它:

composer require codewithkyrian/transformers

安装后,您可以通过创建新的空文件并需要自动加载文件来开始使用该库:

<?php
require './vendor/autoload.php';

require 指令至关重要,因为它加载 Composer 提供的所有必需的类和依赖项。

第2步:导入必要的类

接下来需要导入将要使用到的相关类和函数:

use Codewithkyrian\Transformers\Transformers;
use Codewithkyrian\Transformers\Utils\ImageDriver;
use function Codewithkyrian\Transformers\Pipelines\pipeline;
  • Transformers:主类处理模型设置和处理。
  • ImageDriver:该实用程序类管理图像处理。 IMAGICK 驱动程序是在 PHP 中处理图像的流行选择。
  • pipeline:此函数至关重要,因为它启动特定的处理管道,在本例中,该处理管道将图像转换为文本。

第 3 步:初始化 Transformers 类

在生成替代文本之前,必须初始化并配置 Transformers 类:

Transformers::setup()
    ->setImageDriver(ImageDriver::IMAGICK)
    ->setCacheDir('./models')
    ->apply();

  • setImageDriver():指定图像处理驱动程序。在这里,我们使用 IMAGICK 因为它的鲁棒性。
  • setCacheDir():定义缓存模型的目录,通过避免重复下载来提高性能。
  • apply():完成设置并激活配置。

第 4 步:设置管道

管道是将输入(图像)转换为输出(文本)的一系列过程。您需要按如下方式定义管道:

$pipeline = pipeline('image-to-text');

图像到文本管道分析图像并生成描述性文本。此步骤准备管道以进行处理。

第 5 步:生成替代文本

最后,您可以将图像文件传递到管道以生成替代文本:

$result = $pipeline('test-image.webp');

此命令处理 test-image.webp,返回包含生成文本的结果。
您还可以使用完整 URL 来使用远程图像。

要显示生成的文本,您可以使用:

echo $result[0]['generated_text'] . PHP_EOL;

$result 变量是一个包含一个元素 ([0]) 和名为 generated_text 的属性的数组
这会将替代文本输出到控制台或网页。

结论

使用 TransformersPHP,从图像生成替代文本非常简单。通过设置环境、初始化必要的类和定义管道,您可以轻松地将任何图像转换为描述性文本。使用生成的文本作为 img HTML 标记中的 alt 对于提高 Web 内容的可访问性并确保所有用户(无论其能力如何)都可以理解您网站上的内容特别有用。

参考

  • TransformersPHP 网站:https://codewithkyrian.github.io/transformers-php/
  • TransformersPHP 源代码:https://github.com/CodeWithKyrian/transformers-php
  • 关于 TransformersPHP 的介绍文章:https://dev.to/robertobutti/machine-learning-with-php-5gb
  • TransformersPHP 官方文档:https://codewithkyrian.github.io/transformers-php/introduction
  • 作者,令人惊叹的 Kyrian https://x.com/CodeWithKyrian,感谢您为构建这个开源 PHP 项目所做的一切努力 ✨

以上是如何使用 AI 和 Transformers PHP 自动生成图像替代文本的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn