Convolution and Max Pooling of CNN (卷积和池化的实现)

本文详细介绍了卷积神经网络(CNN)中的卷积和最大池化概念,提供了清晰直观的解释,并给出了C++实现的步骤,包括卷积模板、输入输出数据格式、卷积操作以及最大池化的原理和具体实现。还提供了示例结果和github源代码链接。
摘要由CSDN通过智能技术生成

Convolution and Max Pooling of CNN (卷积和池化的实现)

  1. 卷积和池化的具体解释(比较清晰直观):
    http://www.hackcv.com/index.php/archives/104/?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io

  2. 图像卷积的实现

    • 图像卷积的原理图解
      这里写图片描述
    • 具体实现——卷积模板(Filter)
    double filter0[3][3]={
        {0,0,0},{0,1,0},{0,0,0}};
    double filter1[3][3]={
        {1/16.0,1/16.0,1/16.0},{1/16.0,8/16.0,1/16.0},{1/16.0,1/16.0,1/16.0}};
    
    double filter2[3][3]={
        {-1,0,0},{0,1,0},{0,0,0}};
    double filter3[3][3]={
        {0,-1,0},{0,1,0},{0,0,0}};
    double filter4[3][3]={
        {0,0,0},{-1,0,1},{0,0,0}};
    double filter5[3][3]={
        {1.0/9,1.0/9,1.0/9},{1.0/9,1.0/9,1.0/9},{1.0/9,1.0/9,1.0/9}};
    double filter6[3][3]={
        {0,0,0},{-1,2,-1},{0,0,0}};
    double filter7[3][3]={
        {0,1,0},{1,-4,1},{0,1,0}};
    
    double filter8[3][3]={
        {0,0,-1},{0,1,0},{0,0,0}};
    double filter9[3][3]={
        {0,0,0},{-1,1,0},{0,0,0}};
    double filter10[3][3]={
        {0,-1,0},{0,0,0},{0,1,0}};
    double filter11[3][3]={
        {1/16.0,2/16.0,1/16.0},{2/16.0,4/16.0,2/16.0},{1/16.0,2/16.0,1/16.0}};
    double filter12[3][3]={
        {0,-1,0},{0,2,0},{0,-1,0}};
    double filter13[3][3]={
        {1,1,1},{1,-7,1},{1,1,1}};
    
    double filter14[3][3]={
        {0,0,0},{0,1,-1},{0,0,0}};
    double filter15[3][3]={
        {0,0,0},{0,1,0},{-1,0,0}};
    double filter16[3][3]={
        {-1,0,0},{0,0,0},{0,0,1}};
    double filter17[3][3]={
        {1/16.0,1/16.0,1/16.0},{2/16.0,6/16.0,2/16.0},{1/16.0,1/16.0,1/16.0}};
    double filter18[3][3]={
        {-1,0,0},{0,2,0},{0,0,-1}};
    double filter19[3][3]={
        {-1,-1,-1},{-1,8,-1},{-1,-1,-1}};
    
    double filter20[3][3]={
        {0,0,0},{0,1,0},{0,-1,0}};
    double filter21[3][3]={
        {0,0,0},{0,1,0},{0,0,-1}};
    double filter22[3][3]={
        {0,0,-1},{0,0,0},{1,0,0}};
    double filter23[3][3]={
        {1/16.0,2/16.0,1/16.0},{1/16.0,6/16.0,1/16.0},{1/16.0,2/16.0,1/16.0}};
    double filter24[3][3]={
        {0,0,-1},{0,2,0},{-1,0,0}};
    double filter25[3][3]={
        {0,-1,0},{-
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值