python艺术分形数_Python分形框计数 – 分形维数

本文探讨了如何使用Python计算Minkowski/Box Count Dimension以确定图像的分形特性。通过示例代码展示了从RGB图像转换为灰度图像并计算分形维数的过程,针对不同阈值对结果的影响进行了分析,指出选择合适的阈值对于获取准确的分形维数至关重要。最后,建议参考Michael F. Barnsley的《Fractals Everywhere》以深入了解分形理论。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我有一些图像,我想要计算Minkowski/box count dimension以确定图像中的分形特征.这是2个示例图像:

10.JPG:

24.jpg:

我正在使用以下代码来计算分形维数:

import numpy as np

import scipy

def rgb2gray(rgb):

r, g, b = rgb[:,:,0], rgb[:,:,1], rgb[:,:,2]

gray = 0.2989 * r + 0.5870 * g + 0.1140 * b

return gray

def fractal_dimension(Z, threshold=0.9):

# Only for 2d image

assert(len(Z.shape) == 2)

# From https://github.com/rougier/numpy-100 (#87)

def boxcount(Z, k):

S = np.add.reduceat(

np.add.reduceat(Z, np.arange(0, Z.shape[0], k), axis=0),

np.arange(0, Z.shape[1], k), axis=1)

# We count non-empty (0) and non-full boxes (k*k)

return len(np.where((S > 0) & (S < k*k))[0])

# Transform Z into a binary array

Z = (Z < threshold)

# Minimal dimension o

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值