第八次作业整理(字幕/20211112)

目录

安装包的准备

把中文字体包放到对应目录文件夹下

代码片段的实现


安装包的准备

注意,tesseract的级别越高,识别的准确性越高

!pip install tesseract

把中文字体包放到对应目录文件夹下

在mac环境中,除!pip install方法,或在pycharm中直接下载package的方法外,最好使用在终端brew install的方法,直接将包安装到大环境中。这样不论是pycharm或者anaconda,都可以使用。

在本案例中,下载好tesseract后,搜索找到对应文件夹,把中文字体包chi_sim拖入

代码片段的实现

import pytesseract
import cv2
import numpy as np
from scipy import stats
import os
import matplotlib.pyplot as plt
 
os.chdir(r'/Users/mac/Desktop/courses/ad/python/20211112')
 
if __name__ == '__main__':
    path = "./20210701.mp4"
    print(path)
    cap = cv2.VideoCapture(path)
    frame_count = int(cap.get(cv2.CAP_PROP_FRAME_COUNT))
    print(frame_count)
    i=0
    while i<frame_count:
        cap.set(cv2.CAP_PROP_POS_FRAMES, i)
        _, frame = cap.read(i)
        if i==48:
            cv2.imwrite('20210701.jpg',frame)
        shape = frame.shape
        print(shape)
        #cv2.imshow("Frame-1", frame[580:630, 10:1270])
#         plt.imshow(frame)
#         plt.axis("off")
#         plt.show()
        img=frame[630:680, 50:1270]
        plt.imshow(img)
        plt.axis("off")
        plt.show()
        img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)  # 灰度图
        #cv2.imshow("Frame-2:Gray", img)            #显示灰度图
        _, img= cv2.threshold(img, 220, 255, cv2.THRESH_BINARY)  # 图像,阈值,映射的最大值,使用什么算法一般为cv2.thresh_binary
        #cv2.imshow("Frame-3:Binary", img)            #显示灰度图
        tessdata_dir_config = '--tessdata-dir "/Users/mac/opt/anaconda3/lib/python3.8/site-packages/tesseract"  --psm 7 -c preserve_interword_spaces=1'
        word = pytesseract.image_to_string(img,
                                           lang='chi_sim',
                                           #config=' --psm 7 -c preserve_interword_spaces=1')
                                           config=tessdata_dir_config)
        print(word)
        i=i+24*2
 
        if cv2.waitKey(10) & 0xff == ord("q"):
            break
 
    cap.release()
    cv2.destroyAllWindows()


字幕提取成功

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值