簡體   English   中英

使用Matlab顯示實時處理的網絡攝像頭流

[英]Display live processed webcam stream using matlab

我正在嘗試在實況視頻上使用色度鍵算法。 我需要進行實時網絡攝像頭輸入,實時處理並顯示它。 我已經有用於圖像的色度鍵算法。

如何處理網絡攝像頭輸入並立即顯示。 我已經嘗試過使用snapshot()並將圖像傳遞給色度鍵算法,但是即使我提高了快照速度,它也太慢了。 我想要一個平穩的輸出。

[另外,如果有比Matlab更好的替代方法,請告訴我。 ]

代替使用getsnapshot()連接到相機並在每個單幀上斷開連接(因此幀速率很慢),嘗試使用videoinput然后preview連接: http : //www.mathworks.de/de/help/imaq/preview html的

此示例是為您量身打造的http : //www.mathworks.de/products/imaq/code-examples.html?file=/products/demos/shipping/imaq/demoimaq_LiveHistogram.html

如圖所示,您甚至可以定義在每個新接收到的幀上調用的回調處理函數。

您必須將TriggerType設置為manual ,否則每當需要框架時, getsnapshot()都會為相機創建(並銷毀)連接。 通過將其設置為手動,您可以啟動相機一次,獲取幀並在完成后停止相機。

這是一個例子:

vidobj = videoinput('winvideo', 1, 'RGB24_640x480');
triggerconfig(vidobj, 'manual');

start(vidobj);
while true % Or any stop condition
    img = getsnapshot(vidobj);

    % Process the frame.
    ...

    imshow(img);
    drawnow;
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM