xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

資源簡介

TensorFlow實現人臉識別(3)--------對人臉樣本進行訓練,保存人臉識別模型 具體解釋參考http://blog.csdn.net/yunge812/article/details/79447179

資源截圖

代碼片段和文件信息

#-*-?coding:UTF-8?-*-
import?random
import?os
import?numpy?as?np
from?sklearn.cross_validation??import?train_test_split
from?keras.preprocessing.image?import?ImageDataGenerator
from?keras.models?import?Sequential
from?keras.layers?import?Dense?Dropout?Activation?Flatten
from?keras.layers?import?Convolution2D?MaxPooling2D
from?keras.optimizers?import?SGD
from?keras.utils?import?np_utils
from?keras.models?import?load_model
from?keras?import?backend?as?K
import?cv2


from?imgProcess?import?load_dataset?resize_imageIMAGE_SIZE?#調用兩個函數和一個宏定義

class?Dataset:
????def?__init__(selfpath_name):
????????self.train_img????=?None
????????self.train_labels?=?None
????????self.valid_img????=?None
????????self.valid_labels?=?None
????????self.test_img?????=?None
????????self.test_labels??=?None
????????self.path_name????=?path_name
????????self.input_shape??=?None
????
????def?loadAllData(selfpath_name):
????????positive_data_imagespositive_data_labels=load_dataset(path_name‘traindata‘)
????????negative_data_imagesnegative_data_labels=load_dataset(path_name‘testdata‘)
????????images?=np.concatenate((positive_data_images?negative_data_images)?axis=0)?#數組拼接
????????labels=np.concatenate((positive_data_labels?negative_data_labels)?axis=0)
????????return?imageslabels

????
?????#?加載數據集并按照交叉驗證的原則劃分數據集并進行相關預處理工作
????def?load(selfimg_rows=IMAGE_SIZEimg_cols=IMAGE_SIZEimg_channels=3nb_classes=2):
????????imageslabels?=?self.loadAllData(self.path_name)?#images為四維數組,尺寸為(圖片數量總(包括test+train)*IMAGE_SIZE*IMAGE_SIZE*3)
????????#隨機劃分訓練集和驗證集
????????train_imagesvalid_imagestrain_labelsvalid_labels?=?train_test_split(images?labels?test_size?=?0.3random_state?=?random.randint(0100))
????????_????????????test_images_????????????test_labels?=?train_test_split(images?labels?test_size?=?0.3random_state?=?random.randint(0100))
????????
????????#?當前的維度順序如果為‘th‘,則輸入圖片數據時的順序為:channelsrowscols,否則:rowscolschannels
????????#?這部分代碼就是根據keras庫要求的維度順序重組訓練數據集
????????if?K.image_dim_ordering()?==?‘th‘:??#theano的格式
????????????train_images?????=?train_images.reshape(train_images.shape[0]?img_channels?img_rows?img_cols)
????????????valid_images?????=?valid_images.reshape(valid_images.shape[0]?img_channels?img_rows?img_cols)
????????????test_images??????=?test_images.reshape(?test_images.shape[0]??img_channels?img_rows?img_cols)
????????????self.input_shape?=?(img_channels?img_rows?img_cols)
????????else:??#?tensorflow格式
????????????train_images?????=?train_images.reshape(train_images.shape[0]?img_rows?img_cols?img_channels)
????????????valid_images?????=?valid_images.reshape(valid_images.shape[0]?img_rows?img_cols?img_channels)
????????????test_images??????=?test_images.reshape(?test_images.shape[0]??img_rows?img_cols?img_channels)
????????????self.input_shape?=?(img_rows?img_cols?img_channels)
????????
?????????#?輸出訓練集、驗證集、測試集的數量
????????print(train_images.shape[0]?‘train?samples‘

評論

共有 條評論