如何提高使用OpenCV的的圖像?有許多平滑或模糊的方法,但沒有我能看到的銳化。如何在OpenCV中銳化圖像?
80
A
回答
132
the wikipedia article on unsharp masking: 您使用高斯平滑濾波器並從原始圖像中減去平滑後的版本(以加權的方式使恆定區域的值保持不變)。
要得到frame
銳化形式進入image
:(兩者cv::Mat
)
cv::GaussianBlur(frame, image, cv::Size(0, 0), 3);
cv::addWeighted(frame, 1.5, image, -0.5, 0, image);
的參數有需要調整自己的東西。
還有拉普拉斯銳化,你應該找到的東西,當你谷歌。
-4
12
你可以找到一個示例代碼爲OpenCV Documentation
變化值約銳化使用「USM銳化」算法圖像的sigma
,threshold
,amount
會得出不同的結果
// sharpen image using "unsharp mask" algorithm
Mat blurred; double sigma = 1, threshold = 5, amount = 1;
GaussianBlur(img, blurred, Size(), sigma, sigma);
Mat lowContrastMask = abs(img - blurred) < threshold;
Mat sharpened = img*(1+amount) + blurred*(-amount);
img.copyTo(sharpened, lowContrastMask);
18
你可以嘗試一個簡單的內核和filter2D
,例如在Python:
kernel = np.array([[-1,-1,-1], [-1,9,-1], [-1,-1,-1]])
im = cv2.filter2D(im, -1, kernel)
維基百科有內核的一個很好的(短)概述:
相關問題
- 1. 如何在MATLAB中銳化/軟化圖像
- 2. 如何在Android Studio中銳化圖像/位圖
- 3. 銳化圖像濾鏡
- 4. 圖像銳化方法
- 5. F#中的圖像銳化變異#
- 6. 銳化java applet中的圖像
- 7. 銳化圖像 - 訪問相鄰像素
- 8. 如何銳化/完成/更正圖像中的文字
- 9. OpenCV的USM銳化Java實現
- 10. 如何在我的Android應用程序中銳化位圖的圖像質量?
- 11. 如何在WordPress 3中銳化發佈縮略圖
- 12. 在Eclipse中銳化入門
- 13. wkhtmltoimage使銳化截圖
- 14. 如何在OpenCv C++中將圖像添加到圖像中
- 15. 計算圖像的銳度
- 16. Qt-OpenCV:如何在Qt中顯示灰度圖像(opencv)
- 17. 銳化圖像質量與PHP gd圖書館
- 18. 在OpenCV中旋轉圖像
- 19. 銳化邊緣
- 20. 如何扭曲OpenCV中的圖像?
- 21. OpenCV銳化邊緣(沒有孔的邊緣)
- 22. OpenCV:在圖像上繪圖
- 23. 批量使用ImageMagick銳化圖像目錄
- 24. 如何從ip攝像頭獲取圖像並將圖像存儲在openCV中
- 25. OpenCV Python:Normalize圖像
- 26. 在python/opencv中找到規範化的圖像熊貓
- 27. 如何在Matlab中柵格化圖像?
- 28. 如何connection.Getschema在C尖銳
- 29. 如何在循環中顯示opencv中的圖像?
- 30. 在openCV中,如何替換圖像中的RGB ROI
有沒有辦法複製銳化Photoshop的結果面膜? – Royi 2014-04-27 11:11:20
@Drazick你是問,因爲它不能被複制?上面給出了維基百科的鏈接。 [digital_unsharp_masking(https://en.wikipedia.org/wiki/Unsharp_masking#Digital_unsharp_masking)是特定 – tilaprimera 2014-05-02 05:35:12
@tilaprimera,我這麼問是因爲Photoshop的USM是「經典」 USM不同。 – Royi 2014-05-02 05:37:06