QT编写磨砂玻璃效果函数
生活随笔
收集整理的這篇文章主要介紹了
QT编写磨砂玻璃效果函数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
QT圖像處理與人臉識別的學習小項目
1.1 QT編寫磨砂玻璃效果函數
文章目錄
- QT圖像處理與人臉識別的學習小項目
- 前言
- 一、磨砂玻璃原理
- 二、編寫步驟
- 1.編寫代碼
- 2.結果展示
- 總結
前言
本文描述了如何編寫圖片的磨砂處理效果
一、磨砂玻璃原理
從物理角度出發:磨砂工藝的原理就是將原本表面光滑的物體變得表面不光滑,這樣光照射在表面就會形成漫反射狀,也就是讓物體不再有著明亮如鏡的效果。這樣的工藝用在物體上,使得物體的質感增強了許多。
實現到代碼:即把該點的像素點改為附近隨機的像素點,來達到磨砂化的效果。
二、編寫步驟
1.編寫代碼
代碼如下:
void modifypic_glass(Mat &img) //變成磨砂玻璃效果,用隨機值選擇附近的像素值 {RNG rng;//opencv提供的隨機值函數int randomNum;//存放隨機值變量for(int i=0;i<img.rows-15;i++)//i減去15是為了防止越界{for(int j=0;j<img.cols-15;j++) //兩個for循環獲得每個圖片中的像素{randomNum = rng.uniform(0,15);//產生0到15的隨機值img.at<Vec3b>(i,j)[0]=img.at<Vec3b>(i+randomNum,j+randomNum)[0];//將改像素點進行隨機的替換img.at<Vec3b>(i,j)[1]=img.at<Vec3b>(i+randomNum,j+randomNum)[1];//將改像素點進行隨機的替換img.at<Vec3b>(i,j)[2]=img.at<Vec3b>(i+randomNum,j+randomNum)[2];//將改像素點進行隨機的替換}} }2.結果展示
原圖:
磨砂化后:
總結
由于代碼的思路原因,缺點是不能對邊框的15格進行磨砂化。
總結
以上是生活随笔為你收集整理的QT编写磨砂玻璃效果函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: css磨砂玻璃效果
- 下一篇: android 磨砂玻璃效果