AI仮想読書機、ジェスチャー認識+OCR+音声TTS

AI仮想読書機、ジェスチャー認識+OCR+音声TTS

こんにちは、みんな。

最近はAIGCのコンテンツを研究しており、公式アカウントのコンテンツを長い間更新していませんでした。

本日、皆さんにご紹介したいのは、コンピューター ビジョン テクノロジーを使用して仮想読書機を作成する方法です。

写真

技術的には非常にシンプルですが、エンジニアリングの実装では注意が必要な詳細がいくつかあります。

1. アイデア

  1. OpenCVはビデオストリームを読み取り、人差し指の座標を識別します
  2. 人差し指の座標を頂点として長方形のボックスを描きます
  3. 四角形をキャプチャし、OCRモデルに入力してテキストを認識します。
  4. 音声合成エンジンTTSを使用してテキストを音声に合成します
  5. 音声再生モジュールを呼び出してサウンドを再生します

2. 詳細

OpenCV でビデオストリームを読み取り、mediapipe で人差し指の座標を特定します。以前の共有記事にコードがあるので、ここでは掲載しません。処理が必要な詳細に焦点を当てます。

詳細1. 2本の人差し指が検出されると、時間間隔を設定する必要があります。これにより、長方形を調整するための時間を確保できます。

 if self.point_start_time is None: # 首次同时检测到左右食指self.point_start_time = time.time() else: time_del = time.time() - self.point_start_time if time_del > 3:

写真

詳細2. 重複認識を防ぐためのマークを設定する

長方形が決定されたら、マークがない場合、各フレームが認識のために OCR モデルに送信され、その後サウンドが再生され、プログラムがフリーズします。

一度に 1 つの四角形だけが処理されるようにするには、フラグを設定する必要があります。

 if not self.is_processing: # 开始识别self.is_processing = True # ocr识别选定的图片t, b = min(p0_y, p1_y), max(p0_y, p1_y) l, r = min(p0_x, p1_x), max(p0_x, p1_x) selected_frame = frame[t:b, l:r] # ocr识别文字text = self.ocr_rec(selected_frame) # 文本转语音voice = self.tts.get_speech(text) # 播放语音self.player.play(voice, False, notallow=lambda: self.stop_play()) self.pc_time = time.time()

詳細3. マルチスレッド

オーディオを再生するときは、マルチスレッド再生を使用する必要があります。そうしないと、メイン プログラムが停止し、オーディオの再生が完了するまで実行が継続されなくなります。

認識するコンテンツが多く、再生時間が長い場合、プログラムは長時間停止し、応答しなくなります。

3. その他の技術

OCR および TTS テクノロジについては、以前の記事で紹介しました。

OCR の場合、Paddle フレームワークと事前トレーニング済みモデルを直接使用できます。

Mac を使用している場合は、他のプログラムをインストールせずに、システムに組み込まれている TTS を使用できます。 Windowsであれば、Microsoftのedge-ttsが使えます。エッジ TTS 効果は、ほとんどの TTS よりもはるかに強力です。

また、d-id、wav2lip、sadtalker を使用してリップ合成を実現し、静止画像にテキスト コンテンツを読み取らせることもできます。

<<:  AI言語モデルのオープンソース化による10のプラスとマイナスの影響

>>:  バンク・オブ・アメリカ証券:ChatGPT iOSクライアントのダウンロード数は6月に38%減少

ブログ    
ブログ    
ブログ    

推薦する

インターネット技術起業家は、2 つのセッションで提案を行う際にどのような点に重点を置いていますか?

[[258735]] 3月3日、毎年恒例の全国「両会」が正式に始まりました。「両会」シーズンが始ま...

...

...

アリババ初のAIチップ「Pingtou Ge」が発売! NVIDIA P4 より 46 倍高速で、推論パフォーマンスの世界新記録を樹立

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

AIは小売業界をどう変えるのか

コロナウイルスの発生前から、消費者の期待はすでに変化しており、小売業界に課題をもたらしていました。そ...

DeepMind の巨額損失の背後で、今日の AI は正しい方向を選んだのでしょうか?

DeepMind は研究に重点を置く世界最大の AI 企業かもしれないが、過去 3 年間の損失は ...

2021 年に最も人気のある協働ロボット アプリケーションは何でしょうか?

ロボットが人間の仕事を奪うかどうかという進行中の議論は、世界中のメディアの注目を集めている。勤勉な従...

...

...

パナソニック、カナダ事業所への標的型サイバー攻撃を確認

「当社はサイバーセキュリティの専門家とサービスプロバイダーの協力を得て、問題解決に向けて直ちに行動を...

ArcSoft Open Platformの新しいアルゴリズムは、顔認識セグメンテーションのシナリオの拡張に役立ちます

ArcSoft ビジュアルオープンプラットフォームであるArcFace 3.0の発売以来、アルゴリ...

...

プログラマーの間でデータ構造やアルゴリズムに関する知識が一般的に不足していることについてどう思いますか?

多くのプログラマーの目には、データ構造やアルゴリズムなどは役に立たず、実際に使用されることもあまりな...

XiaoIceが11人のAI歌手を一気にリリース:プロの歌手に匹敵するにはたった45日間のトレーニングが必要

11月25日、 XiaoIceフレームワークは11人のAI歌手をリリースし、アシスタント、同僚、親戚...

AIエージェントを実装するには? 6 枚の写真 4090 Magic Llama2: タスクを分割して 1 つのコマンドで関数を呼び出す

AIエージェントは今話題になっています。OpenAIの応用研究ディレクターであるLilian Wen...