資源簡介
用于指靜脈識別,Python語言,keras架構,CNN卷積神經網絡,識別率可以達到97%。禁止轉載。
代碼片段和文件信息
#-*-?coding:utf-8?-*-
import?keras
from?keras.preprocessing.image?import?ImageDataGenerator
from?keras.models?import?Sequential
from?keras.layers?import?Conv2D?MaxPooling2D
from?keras.layers?import?Dropout?Flatten?Dense
from?keras.utils?import?plot_model
import?matplotlib.pyplot?as?plt
from?keras.utils?import?multi_gpu_model
import?os
from?read_data?import?get_data
#from?get_tfr_data?import?get_data
from?sklearn.cross_validation?import?cross_val_score?#?K折交叉驗證模塊
‘消除警告‘
os.environ[‘TF_CPP_MIN_LOG_LEVEL‘]=‘2‘
size?=?128?????#圖片尺寸
def?Model():
????#?搭建卷積神經網絡
????model?=?Sequential()
????model.add(Conv2D(filters?=?8
?????????????????????kernel_size?=?(7?7)
?????????????????????strides?=?(22)
?????????????????????padding?=?‘same‘
?????????????????????input_shape?=?(sizesize1)
?????????????????????activation?=?‘relu‘?))
????model.add(MaxPooling2D(pool_size=(3?3)strides=(11)))
????model.add(Dropout(0.2))
????#?重復構造,搭建深度網絡
????model.add(Conv2D(16?kernel_size?=?(5?5)?strides?=?(11)?padding?=?‘same‘?activation?=?‘relu‘))
????model.add(MaxPooling2D(pool_size?=?(2?2)strides=(11)))
????model.add(Dropout(0.2))
????‘‘‘
????model.add(Conv2D(filters?=?16
?????????????????????kernel_size?=?(2?2)
?????????????????????strides?=?(11)
?????????????????????padding?=?‘same‘
?????????????????????input_shape?=?(sizesize1)
?????????????????????activation?=?‘relu‘?))
????model.add(MaxPooling2D(pool_size=(2?2)strides=(11)))
????#model.add(Dropout(0.5))
????#?重復構造,搭建深度網絡
????model.add(Conv2D(16?
?????????????????????kernel_size?=?(2?2)?
?????????????????????strides?=?(11)?
?????????????????????padding?=?‘same‘
?????????????????????activation?=?‘relu‘))
????model.add(MaxPooling2D(pool_size?=?(2?2)strides=(11)))
????#model.add(Dropout(0.5))
????model.add(Conv2D(8?
?????????????????????kernel_size?=?(2?2)?
?????????????????????strides?=?(11)?
?????????????????????padding?=?‘same‘
?????????????????????activation?=?‘relu‘))
????#model.add(Conv2D(64?kernel_size?=?(3?3)?strides?=?(11)?padding?=?‘same‘?activation?=?‘relu‘))
????#model.add(Conv2D(32?kernel_size?=?(3?3)?strides?=?(11)?padding?=?‘same‘?activation?=?‘relu‘))
????#model.add(MaxPooling2D(pool_size?=?(3?3)strides=(22)))
????model.add(Dropout(0.5))
????‘‘‘
????#?把當前節點展平
????model.add(Flatten())
????#?
評論
共有 條評論