要求圖像去噪。用OpenCV試試吧,每張圖片的性能都很差〜30s!OpenCV去噪非常慢
嘗試使用:
cv::fastNlMeansDenoising
cv::fastNlMeansDenoisingColored
cv::xphoto::dctDenoising
圖片:最大範圍(1024×1024)colred 3通道調用的
樣本:
Mat src;
cv::imread("myfileName.jpg", src); //assume it's 1024x768 photo
Mat trg(src.size(),src.type());
cv::xphoto::dctDenoising(src,trg,15); // sygma 15 got from algorithm's site as balanced value
一切運作良好,但速度很慢。
我的配置:
聯想T510,酷睿i7
的Windows 10
OpenCV的3.0.0(來源 - 最新 - 穩定)
TBB(從官方網站最新斌)
OpenCV使用默認的CMAKE設置與VS2015一起構建,沒有「world」模塊和WITH_TBB,所有TBB目錄都設置爲(.../ia32/vc12)
(對於第一次看我認爲問題是,我的OpenCV沒有TBB建的,但TBB不與降噪幫助)
資源:
在執行過程中CPU負載達到100%所有的內核(在工作,所以多處理)
使用多達14個線程(所以mutithreading是工作)
在哪裏可以解決這個性能問題,或者它是用OpenCV去噪的真正速度?
可能是C++設置中的一些問題我的控制檯應用程序構建(我來自.net世界和C++對我來說並不是那麼熟悉)?
您是否嘗試過使用NLMeans使用較小的搜索窗口? – Rotem
已經嘗試了你的建議\t cv :: fastNlMeansDenoising(_out,tmp,3,3,3) - (默認爲3,7,21)它當然很快,但噪音並沒有減少。任何時候,當我放大圖像頁面大小時,它至少可以獲得30秒的時間。 –