如何提高使用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. 使用openCV來銳化視頻圖像
- 2. 如何在MATLAB中銳化/軟化圖像
- 3. 如何在Android Studio中銳化圖像/位圖
- 4. 如何在Java中銳化圖像縮略圖?
- 5. 銳化圖像濾鏡
- 6. 圖像銳化方法
- 7. 使用OpenCV OCR對圖像進行銳化
- 8. F#中的圖像銳化變異#
- 9. 銳化java applet中的圖像
- 10. 銳化圖像 - 訪問相鄰像素
- 11. 如何銳化/完成/更正圖像中的文字
- 12. 拉普拉斯圖像濾波和銳化MATLAB中的圖像
- 13. 用於RGB圖像的銳化掩模?
- 14. OpenCV的USM銳化Java實現
- 15. 如何在我的Android應用程序中銳化位圖的圖像質量?
- 16. 裁剪圖像,轉換爲黑白圖像並加以銳化
- 17. 如何在WordPress 3中銳化發佈縮略圖
- 18. 在Eclipse中銳化入門
- 19. OpenCV:初始化圖像
- 20. wkhtmltoimage使銳化截圖
- 21. 計算圖像的銳度
- 22. 如何在OpenCv C++中將圖像添加到圖像中
- 23. 正常化OpenCV中的圖像
- 24. OpenCV Ip攝像機圖像惡化
- 25. OpenCV:正常化圖像的像素值
- 26. 銳化圖像質量與PHP gd圖書館
- 27. 如何在opencv中將RGB圖像與灰色圖像組合?
- 28. Qt-OpenCV:如何在Qt中顯示灰度圖像(opencv)
- 29. 如何檢測opencv中兩個圖像之間的變化?
- 30. 銳化邊緣
有沒有辦法複製銳化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