想成为博客专家的渣渣 2020-03-03 11:30 采纳率: 50%
浏览 625

关于CNN处理彩色图片卷积核的设置问题。小白入门求指教

比如这个三维彩色图片格式如下:
(582, 1024, 3)

如果这样操作:是无法得到一个彩色复原图片的。

filter_ = np.full(shape = [3,3,3],fill_value=1/27).reshape(3,3,3,1)

conv = tf.nn.conv2d(input = image.reshape(1,582, 1024, 3).astype(np.float32),filter = filter_,strides=[1,1,1,1,],padding='SAME')

with tf.Session() as sess:
    ret = sess.run(conv)
    print(ret.shape)

    plt.figure(figsize=(12,9))
    plt.imshow(ret.reshape(582,1024),cmap = 'gray')

课程中老师给的方法是:

#改变图片的维度顺序
image = np.transpose(image,axes = [2,0,1])
image.shape

#改变卷积核
filter_ = np.full(shape = [3,3],fill_value=1/9).reshape(3,3,1,1)

conv = tf.nn.conv2d(input = image.reshape(3,582,1024,1).astype(np.float32),filter=filter_,strides=[1,1,1,1],padding="SAME")


with tf.Session() as sess:
    ret = sess.run(conv)
    print(ret.shape)

    plt.figure(figsize=(12,9))
    plt.imshow(ret.reshape(3,582,1024).transpose([1,2,0]).astype(np.uint8))

就到这一步可以输出彩色图片,我对卷积核的这个操作,和为什么改变维度顺序不是和理解,希望有大佬指点迷津!

  • 写回答

1条回答

  • qq573391819 2020-03-03 11:49
    关注

    明白函数中各个参数的含义
    另外这里ret.reshape(582,1024)?

    评论

报告相同问题?

悬赏问题

  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题
  • ¥15 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体
  • ¥88 实在没有想法,需要个思路
  • ¥15 MATLAB报错输入参数太多
  • ¥15 python中合并修改日期相同的CSV文件并按照修改日期的名字命名文件