256位圖轉(zhuǎn)灰度圖
算法介紹(百度百科):
什么叫灰度圖?任何顏色都有紅、綠、藍三原色組成,假如原來某點的顏色為RGB(R,G,B),那么,我們可以通過下面幾種方法,將其轉(zhuǎn)換為灰度:
1.浮點算法:Gray=R0.3+G0.59+B0.11
2.整數(shù)方法:Gray=(R30+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)
傅立葉變換
傅立葉變化的解釋
https://blog.csdn.net/v_JULY_v/article/details/6196862
傅立葉變化在圖像處理中的作用
https://blog.csdn.net/masibuaa/article/details/6316319