計算資料集均值方差
參考:
https://blog.csdn.net/weixin_41765699/article/details/100118660
對於資料集獲取簡單進行修改
import os
import cv2
import numpy as np
def searchDirFile(rootDir, list_, path_, endswith_):
for dir_or_file in os.listdir(rootDir):
filePath = os.path.join(rootDir, dir_or_file)
if os.path.isfile(filePath):
if os.path.basename(filePath).endswith(endswith_):
temp = filePath.split('/')[-2]
list_.append(temp)
path_.append(filePath)
else:
continue
elif os.path.isdir(filePath):
searchDirFile(filePath, list_, path_, endswith_)
else:
print('not file and dir '+os.path.basename(filePath))
path = "/home/mydata"
namelist = []
pathlist = []
endswith = 'Texture_8Bit.png'
searchDirFile(path, namelist, pathlist, endswith)
R_channel = 0
G_channel = 0
B_channel = 0
for idx in range(len(pathlist)):
filename = pathlist[idx]
img = cv2.imread(filename) / 255.0
R_channel = R_channel + np.sum(img[:, :, 0])
G_channel = G_channel + np.sum(img[:, :, 1])
B_channel = B_channel + np.sum(img[:, :, 2])
# 這裡(512,512)是每幅圖片的大小,所有圖片尺寸都一樣
num = len(pathlist) * 2064 * 1544
R_mean = R_channel / num
G_mean = G_channel / num
B_mean = B_channel / num
print("R_mean is %f, G_mean is %f, B_mean is %f" % (R_mean, G_mean, B_mean))
R_channel = 0
G_channel = 0
B_channel = 0
for idx in range(len(pathlist)):
filename = pathlist[idx]
img = cv2.imread(filename) / 255.0
R_channel = R_channel + np.sum((img[:, :, 0] - R_mean) ** 2)
G_channel = G_channel + np.sum((img[:, :, 1] - G_mean) ** 2)
B_channel = B_channel + np.sum((img[:, :, 2] - B_mean) ** 2)
R_var = np.sqrt(R_channel / num)
G_var = np.sqrt(G_channel / num)
B_var = np.sqrt(B_channel / num)
print("R_var is %f, G_var is %f, B_var is %f" % (R_var, G_var, B_var))
上面必須圖片大小一樣,速度很慢
如果影像大小不一樣,且要求速度較快:
https://blog.csdn.net/PanYHHH/article/details/107896526
https://zhuanlan.zhihu.com/p/275742390
通過pytorch 每次計算每張圖的均值方差,直接計入總和,然後除以資料集數目
相關文章
- 均值、方差、協方差、協方差矩陣、特徵值、特徵向量矩陣特徵
- PyTorch基礎——均值、(無偏估計)方差PyTorch
- 機率統計-常見分佈的均值及方差
- Python求均值,方差,標準差Python
- SPSS計算極值、平均值、中位數、方差、偏度、峰度、變異係數SPSS
- 博圖SCL均值計算
- python 計算list的方差Python
- 協方差矩陣概念及計算矩陣
- scipy.stats 庫的使用,np求均值和方差
- 雲端計算大資料面試題,雲端計算大資料面試題集錦大資料面試題
- 計算機視覺 OpenCV Android | Mat畫素操作(影象畫素的讀寫、均值方差、算術、邏輯等運算、權重疊加、歸一化等操作)...計算機視覺OpenCVAndroid
- 樣本協方差矩陣的定義與計算矩陣
- 大資料計算生態之資料計算(二)大資料
- 大資料計算生態之資料計算(一)大資料
- 馬科維茨的均值一方差組合模型(轉載)模型
- #Java集合的組內平均值的計算方法Java
- 【Excel系列】Excel資料分析:方差分析Excel
- OPPO大資料計算叢集資源排程架構演進大資料架構
- 雲端計算資料
- 【測繪程式設計試題集】 試題01 計程車軌跡資料計算程式設計
- RxJava2 實戰知識梳理(2) 計算一段時間內資料的平均值RxJava
- Python——timeit(執行時間平均值計算)Python
- (大資料分析學習)14、廣義方差大資料
- 計算機叢集計算機
- 大資料計算:結構化大資料計算的理想模式大資料模式
- 計算機叢集與網格計算計算機
- 嵌入式計算機學習資料第435篇:工業現場綜合資料採集嵌入式計算機計算機
- 雲端計算和資料
- 鑲嵌資料集工具小結(九)計算像元大小範圍
- 雲端計算,網格計算,分散式計算,叢集計算的區別?分散式
- 神經網路學習筆記(4)——期望與算術平均值的區別、方差與均方誤差的區別神經網路筆記
- 施耐德UNITY下使用ST程式設計計算最近一小時的均值Unity程式設計
- MATLAB計算變異函式並繪製經驗半方差圖Matlab函式
- 找不到合適的資料?這裡有281個計算機視覺資料集任你選計算機視覺
- 報表資料外接計算
- 計算機資料的表示計算機
- 雲端計算和大資料大資料
- 按行資料累加計算