圖像處理的幾種常見算法

256位圖轉(zhuǎn)灰度圖

算法介紹(百度百科):

什么叫灰度圖?任何顏色都有紅、綠、藍三原色組成,假如原來某點的顏色為RGB(R,G,B),那么,我們可以通過下面幾種方法,將其轉(zhuǎn)換為灰度:   
1.浮點算法:Gray=R0.3+G0.59+B0.11   
2.整數(shù)方法:Gray=(R
30+G59+B11)/100   
3.移位方法:Gray =(R28+G151+B*77)>>8;   
4.平均值法:Gray=(R+G+B)/3;   
5.僅取綠色:Gray=G;

灰度圖

通過上述任一種方法求得Gray后,將原來的RGB(R,G,B)中的R,G,B統(tǒng)一用Gray替換,形成新的顏色RGB(Gray,Gray,Gray),用它替換原來的RGB(R,G,B)就是灰度圖了。

opencv實現(xiàn)

mport cv2
import numpy as np

if __name__ == "__main__":
    img_path = "timg.jpg"
    img = cv2.imread(img_path)
    #獲取圖片的寬和高
    width,height = img.shape[:2][::-1]
    #將圖片縮小便于顯示觀看
    img_resize = cv2.resize(img,
    (int(width*0.5),int(height*0.5)),interpolation=cv2.INTER_CUBIC)
    cv2.imshow("img",img_resize)
    print("img_reisze shape:{}".format(np.shape(img_resize)))

    #將圖片轉(zhuǎn)為灰度圖
    img_gray = cv2.cvtColor(img_resize,cv2.COLOR_RGB2GRAY)
    cv2.imshow("img_gray",img_gray)
    print("img_gray shape:{}".format(np.shape(img_gray)))
    cv2.waitKey()

fwt算法(還不會)

二值化變化

定義

圖像的二值化,就是將圖像上的像素點的灰度值設置為0或255,也就是將整個圖像呈現(xiàn)出明顯的只有黑和白的視覺效果。 一幅圖像包括目標物體、背景還有噪聲,要想從多值的數(shù)字圖像中直接提取出目標物體,常用的方法就是設定一個閾值T,用T將圖像的數(shù)據(jù)分成兩部分:大于T的像素群和小于T的像素群。這是研究灰度變換的最特殊的方法,稱為圖像的二值化(Binarization)。

opencv實現(xiàn)

二值化opencv+python

傅立葉變換

傅立葉變化的解釋

https://blog.csdn.net/v_JULY_v/article/details/6196862

傅立葉變化在圖像處理中的作用

https://blog.csdn.net/masibuaa/article/details/6316319

opencv的實現(xiàn)

https://blog.csdn.net/keith_bb/article/details/53389819

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容