如何用PHP从截图中抓取字幕?
我从电影截图中抓取字幕。 一个例子 它会抓住你 嘿,我们为什么不放松一下呢 它与字幕无关。这是截图。由于它是一个字幕,我们知道字体类型大小等,如果这将使它更容易抓取如何用PHP从截图中抓取字幕?,php,screenshot,ocr,text-recognition,Php,Screenshot,Ocr,Text Recognition,我从电影截图中抓取字幕。 一个例子 它会抓住你 嘿,我们为什么不放松一下呢 它与字幕无关。这是截图。由于它是一个字幕,我们知道字体类型大小等,如果这将使它更容易抓取 我知道你们大多数人都会说PHP OCR库,但由于背景总是不同的,它看起来不起作用。背景不同应该不是问题,您可以使用图像库删除任何不是文本颜色的内容 这里有一个简单的例子,可以很好地理解我的意思,它用\000000替换任何低于\f5f5的颜色 <?php $im = imagecreatefromjpeg("img.jpg")
我知道你们大多数人都会说PHP OCR库,但由于背景总是不同的,它看起来不起作用。背景不同应该不是问题,您可以使用图像库删除任何不是文本颜色的内容 这里有一个简单的例子,可以很好地理解我的意思,它用
\000000
替换任何低于\f5f5
的颜色
<?php
$im = imagecreatefromjpeg("img.jpg");
for ($x = imagesx($im); $x--;)
{
for ($y = imagesy($im); $y--;)
{
$rgb = imagecolorat($im, $x, $y);
if ((($rgb >> 16) & 0xFF) <= 245
&& (($rgb >> 8) & 0xFF) <= 245
&& ($rgb & 0xFF) <= 245)
{
$black = imagecolorallocate($im, 0, 0, 0);
imagesetpixel($im, $x, $y, $black);
}
}
}
header("Content-Type: image/jpeg");
imagejpeg($im);
我真的不明白你的问题是什么。看来不行。
你试过了吗?我的意思是它可能不会,但至少尝试一下。它可能不起作用的原因是因为几乎没有什么能起作用。当然,没有任何东西具有预先构建的PHP支持。“看起来它不会工作”,但您尝试过它(OCR库)吗?字幕通常位于场景的底部,所以你可以从一开始就修剪很多图片。我的意思是我试过了,但没有成功。该课程自2006年以来从未更新过。除了那门课还有别的选择吗?我找不到。不管背景是否总是不同,只要使用GD(或其他图像库)将任何非白色(字体颜色)的颜色替换为黑色即可。然后背景将始终相同(或接近),您可以使用OCR。谢谢。这对于预处理很有用。之后,我认为我应该研究服务器端解决方案。PHP不足以做到这一点,即使有一些库。