• 大小: 5KB
    文件类型: .py
    金币: 1
    下载: 0 次
    发布日期: 2021-06-14
  • 语言: Python
  • 标签: keras  CNN  

资源简介

用于指静脉识别,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())

    # 

评论

共有 条评论