python视频ocr字幕识别浅尝经历

这里写自定义目录标题


想做一个视频 ocr 字幕识别,看到论坛里有,结果没成功
这里借鉴的是该文章的代码

Python - 利用 OCR 技术提取视频台词、字幕


```python
from moviepy.editor import *

# 对视频进行裁剪与缩放
clip = VideoFileClip('G:/无量寿经/无量寿经第三回/1.MP4')
print("Ori FPS:{} Duration:{} Height:{} Width:{}".format(clip.fps, clip.duration, clip.w, clip.h))

cut_clip = clip.crop(y2=clip.h - 11, height=70)
cut_clip = cut_clip.set_fps(3)
print("Cut FPS:{} Duration:{} Height:{} Width:{}".format(cut_clip.fps, cut_clip.duration, cut_clip.w, cut_clip.h))
epoch = 10
step = cut_clip.duration / epoch

epoch = 10
step = cut_clip.duration / epoch
cut_clip.write_videofile("G:/无量寿经/无量寿经第三回/裁剪/1cropped.MP4")


# 截取多个片段
clips = []
index = 0
while index < epoch:
    # 获取分段的起止时间
    start = index * step
    end = min(start + step, clip.duration)

    if start < clip.duration:
        sub_clip = cut_clip.subclip(start, end)
        print("index: {} start: {} end: {}".format(index, start, end))
        clips.append([start, sub_clip])
        # 指定保存的子片段视频文件的名字
        output_file = "G:/无量寿经/无量寿经第三回/裁剪/sub_clip_{}.mp4".format(index)

        # 将子片段保存为视频文件
        sub_clip.write_videofile(output_file, codec='libx264', audio_codec='aac')
    else:
        break
    index += 1


裁剪视频,获得字幕处的位置,切片保存也是成功的。

在这里插入图片描述

但是识别代码运行后无任何反应

def process_frame_by_ocr(st, tmp_clip):
        ocr = PaddleOCR(use_angle_cls=True, lang="ch", use_gpu=True)
        frame_rate = 1 / 3

        for cnt, cur_frame in enumerate(tmp_clip.iter_frames()):
            cur_start = frame_rate * (cnt + 1) + st

            try:
                # det=True 表示在进行光学字符识别(OCR)之前,先对图像进行检测。
                result = ocr.ocr(cur_frame, det=True)
                if result is not None:
                    see = result[0][0][1]
                    cur_time = int(cur_start)
                    doc_json = {
   'st': cur_time, "text": see}
                    ocr_text = json.dumps(doc_json, ensure_ascii=False
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值