当前位置:   article > 正文

卷积神经网络的特征图可视化_卷积神经网络特征图可视化

卷积神经网络特征图可视化

原图:

Keras代码:

  1. from keras.models import Sequential
  2. from keras.layers.convolutional import Convolution2D,MaxPooling2D,AveragePooling2D
  3. from keras.layers import Activation
  4. import cv2
  5. import os
  6. import shutil
  7. import numpy as np
  8. import matplotlib.pyplot as plt
  9. #网络模型
  10. def create_model():
  11. model = Sequential()
  12. #输入 img.shape = (28,28,3)
  13. #第一层卷积
  14. model.add(Convolution2D(9,(5,5),padding='same',strides=(1,1),input_shape=img.shape)) #(1, 24, 24, 9)
  15. model.add(Activation('relu'))
  16. model.add(MaxPooling2D(pool_size=(2,2)))
  17. # # 第二层卷积
  18. # model.add(Convolution2D(9,(5,5),padding='same',strides=(2,2)))
  19. # model.add(Activation('relu'))
  20. # model.add(MaxPooling2D(pool_size=(2,2)))
  21. return model
  22. #保存特征图
  23. def save_conv_img(conv_img):
  24. feature_maps = np.squeeze(conv_img,axis=0)
  25. img_num = feature_maps.shape[2]
  26. all_feature_maps = []
  27. for i in range(0,img_num):
  28. single_feature_map = feature_maps[:,:,i]
  29. all_feature_maps.append(single_feature_map)
  30. plt.imshow(single_feature_map)
  31. plt.savefig('./feature_map/'+'feature_{}'.format(i))
  32. sum_feature_map = sum(feature_map for feature_map in all_feature_maps)
  33. plt.imshow(sum_feature_map)
  34. plt.savefig("./feature_map/feature_map_sum.png")
  35. def create_dir():
  36. if not os.path.exists('./feature_map'):
  37. os.mkdir('./feature_map')
  38. else:
  39. shutil.rmtree('./feature_map')
  40. os.mkdir('./feature_map')
  41. if __name__ =='__main__':
  42. img = cv2.imread('b0.jpg')
  43. print(img.shape)
  44. create_dir()
  45. model = create_model()
  46. img_batch = np.expand_dims(img,axis=0)
  47. conv_img = model.predict(img_batch) #predict()的参数是需要四维的
  48. save_conv_img(conv_img)

经过第一层卷积后,得到的特征图为:

因为第一层卷积设置了一共有9个卷积核,所以对应就会有9张特征图

而网络的输出则是9张特征图合在一起,形成总的特征图:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/340883
推荐阅读
相关标签
  

闽ICP备14008679号