Re: [問題] 想請問openGL 與openCV 整合的問題
※ 引述《hoson (林老師賣的冰淇淋)》之銘言:
: 推 VictorTom:Nehe - http://0rz.tw/86tGE 加 http://0rz.tw/b38Gu 04/24 10:06
: → VictorTom:上面是不用GLUT在Windows上的作法, Lesson 1還有其他平 04/24 10:06
: → VictorTom:台的; 不過, 基本上它一樣有個while win msg loop.... 04/24 10:07
: → VictorTom:glReadPixel的效率不好, 因為去system mem <-> graphic 04/24 10:09
: → VictorTom:ram的動作非常沒有效率, 你要不要說一下為什麼非要 04/24 10:10
: → VictorTom:glReadPixel不可?? 通常是用GL來呈現結果不是嗎?_? 04/24 10:11
: ^^^
: hello! 首先感謝回覆!!
: 所以您的意思是
: 不管有沒有GLUT 都還是會有個無限迴圈囉?
: 如果能夠控制迴圈的順序 基本上我的彈性會比較高一點
: EX: 每次進行WHILE LOOP前 先執行另外一個FUNCTION
這個感覺應該是Windows Programing方式的問題了, 小弟我不是很確定....
但是Windows下印象中都會有那個while message loop來監聽各種event....
使用GLUT的話, 你可以在傳給MainLoop的callback裡先call你要的func....
使用Nehe那套, 你一樣可以在while loop裡先call你要的func再作繪圖....
用一些簡單的計時或開關程式技巧也可以自由控制GL要不要花時間draw....
Nehe那套就是自己找地方插控制, GLUT可以試試glutIdleFunc合不合用....
: 另外
: 基本上我知道可以在oepnCV或是openGL上顯示
: 不過我找到的範例都是讀取GL的資料然後在CV上顯示, 所以才看到glReadPixel
: 也知道效率會比較差!
: 所以VictorTom您的意思是 如果在GL上顯示
: 效率就會好很多囉?
: 可以請教一下有什麼關鍵字(or function)可以查到這樣的方法呢?
效率差多少要看你的應用, 我要說的是你用glReadPixel這個API的時候....
可能會產生system mem <=> graphic mem這樣相當沒有效率的資料傳遞....
到底用GL繪圖比較好還是用CV繪圖比較好還是要視你的應用與需求而定....
用GL繪圖的方法, 像那個Nehe的網頁就是一系列的OpenGL繪圖Lesson了....
考慮你說到WebCam, 看起來好像用CV就好, 我不清楚GL在這邊要做什麼....
: 推 clanguage:webcam 一秒應該沒20張 你的處理有超過500ms? 04/24 10:47
: → clanguage:算錯 50ms 04/24 10:47
: 推 joefaq:推樓上 效能應該是卡在 webcam 現在電腦的速度很快的 04/24 10:56
: 推 VictorTom:應該一兩年前的WebCam就可以做到640x480x30fps了吧?_? 04/24 23:08
: → VictorTom:印象中羅技的QuickCam系列很早就有到這種規格的了.... 04/24 23:12
:
: ^^ 假如沒有做任何處理 只有讀取的話是30fps 我用的是羅技Pro9000
除非它讀取的時候就把所有CPU usage都佔滿(現在雙核以上CPU不至於吧??)
不然你每個frame有1/30s可以處理, 你可以先對你的處理部份測時看看....
看看瓶頸是WebCam, 你的處理, GL<=>CV的I/O等; 然後才知道怎麼改進....
別只看有什麼範例就套, 先釐清你的用途再找合適的工具, 也許會好一點:)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.66.243.96
→
04/27 10:43, , 1F
04/27 10:43, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):