videocaptureライブラリはPythonで動画高速転送プログラムを作成します
1. まず、ビデオデータ (カメラ画像) の収集は、通常、vc または vb の vfw を使用して実現できます。私はこのライブラリを使用するのが苦手なので、今は Python videocapture を使用します。このライブラリは次のように非常に簡単に使用できます:
from VideoCapture import Device
cam = Device()
cam.setResolution (320,240) #ディスプレイ解像度を設定します
cam.saveSnapshot('demo.jpg') #画像をキャプチャして保存
このようにして、画像を取得します。
もちろん、比較的高速に画像を収集するには、毎回画像を保存することは不可能です。この方法では、画像を収集するのに 1 秒近くかかります。
より良い解決策は次のようになります: im = cam.getImage() はメモリ ブロックである Image オブジェクトを返し、その処理ははるかに高速です。 🎜>2. 写真を転送する方法は? pplive のようなビデオがどのように転送されるのかわかりません。私の考えは非常に単純で、一度に 1 枚の画像を転送します。
このプログラムでは、毎回 RGB 画像のサイズが転送されます。このように、必要なデータ量は次のとおりです: d = 160*120*3 = 56.25 kB
私は 80000B を選択します。
送信者コードは次のとおりです:
インポート画像
from VideoCapture import Device
cam = Device()
cam.setResolution(320,240)
clisocket =ソケット.socket(socket.AF_INET,ソケット.SOCK_DGRAM)
while 1:
im = cam.getImage()
im = im.resize((160,120))
da = im.tostring()
clisocket.sendto(da, ("127.0.0.1", 1234))
s.close()
3. リアルタイムで画像を表示するにはどうすればよいですか?
pygame は最適化された高速グラフィックス ライブラリなので、directshow を使用したかどうかはわかりません。これを使うべきだったと思います。
pygame については、www.pygame.org を参照してください。
次は受信コードです。
インポート イメージ
インポート os,sys, pygame
from pygame.locals import *
pygame.init()
screen = pygame.display.set_mode((160,120))
pygame.display.set_caption("ウェブカメラ")
svrsocket =ソケット.socket(socket.AF_INET,ソケット.SOCK_DGRAM)
svrsocket.bind(("127.0.0.1", 1234))
クロック = pygame .time.Clock() #フレーム レートを計算します
while 1:
data, address = svrsocket.recvfrom(80000)
camshot = pygame.image.frombuffer(data, (160,120), "RGB")
pygame.event.get() のイベントの場合:
ifevent.type == pygame.QUIT: sys.exit()
screen.blit(camshot, (0,0))
pygame.display.update()
print Clock.get_fps() #端末内のフレームレートを出力
Clock.tick()
プログラムを実行すると、すごいですね。 230fps!(右側の端末)

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









LinuxターミナルでPythonバージョンを表示する際の許可の問題の解決策PythonターミナルでPythonバージョンを表示しようとするとき、Pythonを入力してください...

PythonのPandasライブラリを使用する場合、異なる構造を持つ2つのデータフレーム間で列全体をコピーする方法は一般的な問題です。 2つのデータがあるとします...

Pythonでは、文字列を介してオブジェクトを動的に作成し、そのメソッドを呼び出す方法は?これは一般的なプログラミング要件です。特に構成または実行する必要がある場合は...

UvicornはどのようにしてHTTPリクエストを継続的に聞きますか? Uvicornは、ASGIに基づく軽量のWebサーバーです。そのコア機能の1つは、HTTPリクエストを聞いて続行することです...

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

この記事では、numpy、pandas、matplotlib、scikit-learn、tensorflow、django、flask、and requestsなどの人気のあるPythonライブラリについて説明し、科学的コンピューティング、データ分析、視覚化、機械学習、Web開発、Hの使用について説明します。

fiddlereveryversings for the-middleの測定値を使用するときに検出されないようにする方法
