بايثون

استخراج النص من فيديو بأستخدام لغة بايثون

في التعلم الآلي ، يعد التعرف على الكلام مهمة مثيرة للاهتمام تتيح لك التعرف على النص الموجود خلف الصوت. باستخدام التعرف على الصوت ، يمكننا أيضًا استخراج نص من مقطع فيديو. في هذه المقالة ، سوف أطلعك على كيفية استخراج نص من مقاطع الفيديو باستخدام Python.

استخراج نص من مقاطع الفيديو باستخدام Python

في هذا القسم ، سأطلعك على كيفية استخراج نص من مقطع فيديو باستخدام Python.

الخطوة الأولى هي تنزيل مقطع فيديو. بعد تنزيل مقاطع الفيديو ، تحتاج إلى تثبيت مكتبتين من مكتبات Python:

1- SpeechRecognition: pip install SpeechRecognition 
2- moviepy: pip install moviepy

بعد تثبيت مكتبتي Python أعلاه ، يمكنك البدء في البرمجة. إليك برنامج Python الكامل لتحويل الفيديو إلى نص:

import speech_recognition as sr 
import moviepy.editor as mp
from moviepy.video.io.ffmpeg_tools import ffmpeg_extract_subclip

num_seconds_video= 52*60
print("The video is {} seconds".format(num_seconds_video))
l=list(range(0,num_seconds_video+1,60))

diz={}
for i in range(len(l)-1):
    ffmpeg_extract_subclip("videorl.mp4", l[i]-2*(l[i]!=0), l[i+1], targetname="chunks/cut{}.mp4".format(i+1))
    clip = mp.VideoFileClip(r"chunks/cut{}.mp4".format(i+1)) 
    clip.audio.write_audiofile(r"converted/converted{}.wav".format(i+1))
    r = sr.Recognizer()
    audio = sr.AudioFile("converted/converted{}.wav".format(i+1))
    with audio as source:
      r.adjust_for_ambient_noise(source)  
      audio_file = r.record(source)
    result = r.recognize_google(audio_file)
    diz['chunk{}'.format(i+1)]=result

بعد تنفيذ كود Python أعلاه ، تحتاج إلى إنشاء مستند نصي لتخزين كل النص الذي تم استخراجه من الفيديو:

l_chunks=[diz['chunk{}'.format(i+1)] for i in range(len(diz))]
text='\n'.join(l_chunks)

with open('recognized.txt',mode ='w') as file: 
   file.write("Recognized Speech:") 
   file.write("\n") 
   file.write(text) 
   print("Finally ready!")

مقالات ذات صلة

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني.

زر الذهاب إلى الأعلى