圖像處理之仿畫筆效果一
仿畫筆效果最終完成自動完成從一張RGB圖像到手工油畫效果根據設定好的幾個基本參數,
本文章解釋算法的前半部分。完整的算法介紹參見這裡:
http://lvelho.impa.br/ip/papers/npar2000.pdf
StrokeAreas
本文的算法主要是通過輸入像素計算Color Difference與moment值得到輸出像素進而得到
圖像上的畫筆繪畫區域(StrokeArea),需要輸入的參數S決定中心像素p(x,y)的相鄰區域的大
小。整個處理流程本質是對輸入圖像的一個非線性高通濾波,結果是圖像中頻率越強的區域
輸出越黑,頻率越低的輸出越白。
顔色內插補點(Color Difference):
表示兩個像素點RGB顔色值之間的內插補點,計算內插補點采用歐幾裡德距離公式。
圖像力矩(Image Moments),計算公式如下:
其中I為單×××像,否則RGB圖像要分别代入RGB顔色分量
整個算法流程如下:
1. 根據輸入圖像生成一幅白色背景單×××像
2. 根據輸入參數S計算出卷積區域大小
3. 對每個輸入像素點完成卷積計算(注意是計算Color Difference)
4. 對輸入像素點P0完成moment00計算
5. 歸一化以後将輸出像素輸出到1中生成的圖像對應(x,y)
程式效果:
另外一幅圖效果參數s為30時候:
StrokeArea算法代碼:
轉載文章請務必注明出自本部落格