【图像处理】——Python实现灰度特征提取
生活随笔
收集整理的這篇文章主要介紹了
【图像处理】——Python实现灰度特征提取
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
目錄
1、灰度特征
2、Python代碼
1、灰度特征
2、Python代碼
import cv2 import numpy as npdef gray_features(img):hist = cv2.calcHist([img],[0],None,[256],[0,255])#得到全局直方圖統(tǒng)計(jì)數(shù)據(jù)h,w = img.shapehist = hist/(h*w)#將直方圖歸一化為0-1,概率的形式grayFeature = []#灰度平均值mean_gray = 0for i in range(len(hist)):mean_gray += i*hist[i]grayFeature.append(mean_gray[0])#灰度方差var_gray = 0for i in range(len(hist)):var_gray += hist[i]*((i - mean_gray)**2)grayFeature.append(var_gray[0])#能量sum(hist[i])**2##歸一化max_ = np.max(hist)min_ = np.min(hist)histOne = (hist - min_)/(max_ - min_)##求解能量energy = 0for i in range(len(histOne)):energy += histOne[i]**2grayFeature.append(energy[0])#熵he = 0for i in range(len(hist)):if hist[i] != 0:#當(dāng)?shù)扔?時(shí),log無法進(jìn)行計(jì)算,因此只需要計(jì)算非0部分的熵即可he += hist[i]*(np.log(hist[i])/(np.log(2)))he = -hegrayFeature.append(he[0])#因?yàn)榉祷氐氖呛幸粋€(gè)元素的數(shù)組,所以通過取值操作將其取出來再加入到列表中去#灰度對比度con = np.max(img)-np.min(img)grayFeature.append(con)return grayFeaturefor i in range(1,101):img = cv2.imread(r'E:\...\PYTHON\vvision_detection\bpPackage\PositiveImg\ObjImg{}.jpg'.format(i),0)img1 = cv2.imread(r'E:\...\PYTHON\vvision_detection\bpPackage\NegativeImg\NoObjImg{}.jpg'.format(i),0)grayFeas = gray_features(img)grayFeas1 = gray_features(img1)print(grayFeas)print(grayFeas1)print("-------------------------------------------------------------------------------------") [123.02223, 453.31955, 5.6887765, 5.8102093, 104] [158.65776, 68.21622, 1.9234947, 4.2867975, 38] ------------------------------------------------------------------------------------- [88.60001, 383.58215, 8.520837, 5.6435423, 112] [125.9511, 257.34433, 7.8125014, 5.697836, 65] ------------------------------------------------------------------------------------- [82.062225, 61.045017, 6.4783964, 4.797582, 33] [132.2356, 195.62007, 8.618055, 5.559328, 57] -------------------------------------------------------------------------------------?
總結(jié)
以上是生活随笔為你收集整理的【图像处理】——Python实现灰度特征提取的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 必须理解的分布式系统中雷同的集群技术及原
- 下一篇: 【机器学习】——纯Python建立BP模