• 大小: 5KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-18
  • 语言: 其他
  • 标签: CNN;  评价  

资源简介

利用CNN评价立体图像质量,含立体图像数据,代码基于keras。

资源截图

代码片段和文件信息

# -*- coding: utf-8 -*-
‘‘‘
本程序用于live2 视频数据库的 train-test 实验,每次实验80%训练,20%测试
inputdata:360个图片,每个图片分成220个32*32的图像块
traindata=360*0.8=292
testdata=360*0.2=73
‘‘‘
from __future__ import print_function
import scipy.io as sc
import numpy as np
import matplotlib.pyplot as plt
import os
import h5py
#import sys
#reload(sys)
#sys.setdefaultencoding(‘utf-8‘)
np.random.seed(1337)  # for reproducibility


#from keras.datasets import mnist
from keras.models import Sequential
from keras.layers import Dense Dropout Activation Flatten
from keras.layers import Convolution2D MaxPooling2D
from keras.utils import np_utils
from keras import backend as K
from keras.layers import Merge
CurrentPath=os.getcwd()
path1=CurrentPath+‘/dataset/LIVE1/diff‘
path2=CurrentPath+‘/dataset/LIVE1/left‘
path3=CurrentPath+‘/dataset/LIVE1/right‘

files= os.listdir(path1)#读取文件夹文件列表
files.sort() 
#print(files)

files_l= os.listdir(path2)#读取文件夹文件列表
files_l.sort() 

files_r= os.listdir(path3)#读取文件夹文件列表
files_r.sort() 
#print(files)

X_train_diff=np.empty((292*22032321)dtype=‘float32‘)
y_train=np.empty((292*2201)dtype=‘float32‘)

X_test_diff=np.empty((73*22032321)dtype=‘float32‘)
y_test=np.empty((73*2201)dtype=‘float32‘) #astype(‘float32‘)

X_train_left=np.empty((292*22032321)dtype=‘float32‘)
X_test_left=np.empty((73*22032321)dtype=‘float32‘)


X_train_right=np.empty((292*22032321)dtype=‘float32‘)
X_test_right=np.empty((73*22032321)dtype=‘float32‘)


MosFile=‘DMOS_LIVE1.mat‘
MosDic=sc.loadmat(MosFile)
MosData=MosDic[‘LIVE1‘]
MosData.astype(‘float32‘)
MosData=((MosData-min(MosData))/(max(MosData)-min(MosData)))*2-1
ExpNum=100#实验(train-test)的次数
for NumExp in xrange(ExpNum):
    x=range(365)#qifeng库共450个视频
    np.random.shuffle(x)#打乱视频顺序
    for i in xrange(292):#取80%作为训练数据
        dataFile=path1+‘/‘+files[x[i]]
        tempLoad=sc.loadmat(dataFile)
        temp=tempLoad[‘diff‘]
        SingleData=np.rollaxis(temp20)
        X_train_diff[i*220:(i+1)*220::0]=SingleData#
        y_train[i*220:(i+1)*220:]=MosData[x[i]]#*np.ones(51001)
        print(files[x[i]])
        dataFile=path2+‘/‘+files_l[x[i]]
        tempLoad=sc.loadmat(dataFile)
        temp=tempLoad[‘left‘]
        SingleData=np.rollaxis(temp20)
        X_train_left[i*220:(i+1)*220::0]=SingleData#
print(files_l[x[i]])
            
        dataFile=path3+‘/‘+files_r[x[i]]
        tempLoad=sc.loadmat(dataFile)
        temp=tempLoad[‘right‘]
        SingleData=np.rollaxis(temp20)
        X_train_right[i*220:(i+1)*220::0]=SingleData#
print(files_r[x[i]])
        print(‘i:‘i)
        
    for i in xrange(73):
        dataFile=path1+‘/‘+files[x[i+292]]
        tempLoad=sc.loadmat(dataFile)
        temp=tempLoad[‘diff‘]
        SingleData=np.rollaxis(temp20)
        X_test_diff[i*220:(i+1)*220::0]=SingleData
        y_test[i*220:(i+1)*220:]=MosData[x[i+292]]
                    
        dataFile=path2+‘/‘+files_l[x[i+292]]
        tempLoad=sc.loadmat(dataFile)
        temp=tempLoad[‘left

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        2107  2017-08-17 00:34  DMOS_LIVE1.mat
     文件       11256  2017-08-16 18:45  LIVE1_train_test.py

评论

共有 条评论