Python implementation of the Pulse Coupled Neural Network (PCNN)
Project description
PCNN
Python implementation of the Pulse Coupled Neural Network (PCNN) alongside multiple variations:
- Classical PCNN
- Feature Linking Model (FLM)
- Intersecting Cortical Model (ICM)
- Multi Linking Model (MLM)
- Spiking Cortical Model (SCM)
- Sigmoidal Linking Model (SLM)
Install:
pip install pulse_coupled_nn
Usage example:
import numpy as np
import matplotlib.pyplot as plt
from pulse_coupled_nn import FLM
from pulse_coupled_nn import ICM
from pulse_coupled_nn import ClassicalPCNN
from pulse_coupled_nn import SCM
from pulse_coupled_nn import SLM
def run_image_segm(gamma=1, beta=2, v_theta=400, kernel_size=3, kernel='gaussian'):
image = np.array(
[[230, 230, 230, 230, 115, 115, 115, 115],
[230, 230, 230, 230, 115, 115, 115, 115],
[230, 230, 205, 205, 103, 103, 115, 115],
[230, 230, 205, 205, 103, 103, 115, 115],
[230, 230, 205, 205, 103, 103, 115, 115],
[230, 230, 230, 230, 115, 115, 115, 115],
[230, 230, 230, 230, 115, 115, 115, 115]]
)
model = ClassicalPCNN(image.shape, kernel, kernel_size=kernel_size)
segm_image = model.segment_image(image, gamma=gamma, beta=beta, v_theta=v_theta, kernel_type='gaussian')
plt.imshow(image)
plt.colorbar()
plt.show()
plt.imshow(segm_image)
plt.colorbar()
plt.show()
run_image_segm()
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pulse_coupled_nn-0.0.6.tar.gz
(6.4 kB
view hashes)
Built Distribution
Close
Hashes for pulse_coupled_nn-0.0.6-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 397bb0d458b5a56c385fe4ff8430dbf5723541f5db6d4a1121b7a052ac063d99 |
|
MD5 | 823ddaa8f0c86995b89c87ea44b1a344 |
|
BLAKE2b-256 | 215a26a1c0f9a0883e07ba463504b9d9adab03c5ef8822670ef92a532bbe5dac |