Python实现CNN的多通道输入实例

yipeiwu_com6年前Python基础

CNN可以同时进行多通道的输入,例如一张彩色图片可以分解成RGB三个通道输入给CNN,当使用自己的数据集时,可以通过numpy来实现数据的多通道输入。

假设我们有两个组数据a和b:

a = np.linspace(1,100,100)
b = np.linsapce(-1,-100,100)

然后将a和b转变成四维数组,TensorFlow接收的数据时四维数组

a = a.reshape(4,1,5,5)
b = b.reshape(4,1,5,5)

这样我们就得到了两个batch_size = 4, channel = 1, width = 5, high = 5的四维数组,然后

a = a.transpose(1,0,2,3)
b = b.transpose(1,0,2,3)

将a和b的维度参数变成[1,4,5,5],然后使用np.vstack()函数将两个数组在通道数上叠加

c = np.vstack((a,b))

最后再次使用.transpose()函数将叠加后的四维数组转换为TensorFlow接受的四维数组

c = c.transpose(1,2,3,0)

这时c就变成了[4,5,5,2],即batch_size = 4, width = 5, high = 5, channel = 2的四维数组。

以上这篇Python实现CNN的多通道输入实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python字典的常用操作方法小结

Python字典是另一种可变容器模型(无序),且可存储任意类型对象,如字符串、数字、元组等其他容器模型。本文章主要介绍Python中字典(Dict)的详解操作方法,包含创建、访问、删除、...

Python opencv实现人眼/人脸识别以及实时打码处理

Python opencv实现人眼/人脸识别以及实时打码处理

利用Python+opencv实现从摄像头捕获图像,识别其中的人眼/人脸,并打上马赛克。 系统环境:Windows 7 + Python 3.6.3 + opencv 3.4.2 一、系...

对pandas的行列名更改与数据选择详解

对pandas的行列名更改与数据选择详解

记录一些pandas选择数据的内容,此前首先说行列名的获取和更改,以方便获取数据。此文作为学习巩固。 这篇博的内容顺序大概就是: 行列名的获取 —> 行列名的更改 —> 数据...

详解Django的CSRF认证实现

详解Django的CSRF认证实现

什么是 CSRF CSRF, Cross Site Request Forgery, 跨站点伪造请求。举例来讲,某个恶意的网站上有一个指向你的网站的链接,如果某个用户已经登录到你的网站...

Python多线程编程(六):可重入锁RLock

考虑这种情况:如果一个线程遇到锁嵌套的情况该怎么办,这个嵌套是指当我一个线程在获取临界资源时,又需要再次获取。 根据这种情况,代码如下: 复制代码 代码如下: ''' Created...