作者zel (柚植)
看板C_Sharp
標題[問題] 關於使用C#編寫影像處理程序的效能
時間Sat Aug 9 00:48:38 2014
因為在學校時只碰過MATLAB,在工作時也只接觸過C#沒碰過其他語言,所
以最近工作上碰到影像處理問題時也嘗試著用C#編寫.dll檔供設備測試
使用.
因為公司同事之前都是用LabVIEW撰寫設備控制介面,手邊資源找不到一
個標準可以參考, 網路上也找不到相關資訊. 所以想請教有相關經驗的
前輩, 如果對一張接近5M大小的8bit灰階圖片(2560*1800),做自動二值
化(我是使用Otsu法)所花費的時間大概是多少呢?
我把stopwatch擺在進入程序前後進行統計, 電腦CPU是Celeron G540雙
核 2.5GHz. 結果運算時間居然要耗費約10ms......... Orz
這個還是在release mode build成exe檔的執行速度...
不知道是不是因為使用C#編寫所以執行效率低落..?
還是說其實正常速度不是這樣, 是我要重新檢查我的撰寫邏輯?(如果是
這樣就太棒了!! 代表我不用換語言編寫...囧>)
還忘有經驗的前輩能給予指點, 感恩m(_ _)m
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.173.101.139
※ 文章網址: http://www.ptt.cc/bbs/C_Sharp/M.1407516523.A.574.html
※ 編輯: zel (218.173.101.139), 08/09/2014 01:00:30
→ Abbee:你用指標寫嗎? 08/09 20:46
→ zel:是的,用byte* 去讀影像陣列 08/09 20:51
→ Abbee:用Otsu法抓閾值, 應該花了不少時間吧~不能換別種法算閾值嗎? 08/09 23:40
→ zel:目前是有備案的,不過是需要設參數的方法。 08/10 00:26
→ Abbee: 你可以先把圖縮到十分之一大小再找閾值,這樣應該會快很多 08/10 08:47
→ zel: 對吼!降階對灰階分佈比例影響應該不大 08/10 11:55
→ Litfal: 但resize還不是需要開銷 = = 如果只用一次好像沒什麼必要 08/11 13:31
→ zel: 我是沒先resize,在指標尋值時固定跳個range取值。 08/11 20:06
→ zel: 雖然這樣也會增加運算量,但是實測的結果感覺還好。另外閥值 08/11 20:06
→ zel: 搜結果有時會差很多,我的case是後續還有其他步驟所以影響小 08/11 20:09
→ zel: 但如果要直接用這張圖的資訊做分析的話可能就要考慮一下 08/11 20:10
→ zel: 實測的一點小心得 08/11 20:11
→ zel: 還有整個運算最花時間的部分是紀錄灰階直方圖 08/11 20:12
推 yaolling: 個人覺得你的pc跑這個時間差不多耶 09/09 07:31