脉冲耦合神经网络(PCNN)的python实现

本文介绍了脉冲耦合神经网络(PCNN)的Python实现过程,包括数学模型的阐述、Python代码展示及结果的呈现。作者在总结中提到,虽然实现了PCNN,但存在参数手动设定和首次迭代显示问题,期待与读者共同探讨解决方案。
摘要由CSDN通过智能技术生成

前言

看了很多人用matlab写的网络,竟然没有python代码。作为正在研究PCNN模型的一名学生,必须安排。

数学模型

打公式太麻烦,直接从截图啦,全连接模型,如下图1。

数学模型

python代码

"""
Created on Sun Jun  6 16:48:38 2021

PCNN全连接
"""
import numpy as np
import matplotlib.pyplot as plt
import cv2

#将输入图片进行灰度化处理
def image_gray(f):
    if f.ndim ==3 :
        f_g = cv2.cvtColor(f,cv2.COLOR_BGR2GRAY)
    else:
        f_g = f
    return f_g
#对图片进行边缘扩充
def edge_expande(f_gray):
    f_S = cv2.copyMakeBorder(f_gray,1,1,1,1,cv2.BORDER_CONSTANT,value = 0)
    return f_S
#对图片进行边缘裁剪
def edge_cut(f_gray):
    f_c = f_gray[1:f_gray.shape[0]-1,1:f_gray.shape[1]-1]
    return f_c
#人工设置参数
def parameter1(f_Sij):
    f1 = np.exp(-0.05)
    v1 = 0.2
    v2 = 0.8
    u1 = 0.1
    f2 = 0.5
    e1 = np.exp(-0.2)
    e2 = np.max(f_Sij)+1
    W = np.array([[0.01,0.01
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值