数字图像处理7-不同噪声的特点,随机数与样本的关系
图像处理中的图像去噪方法对比与分析

图像处理中的图像去噪方法对比与分析图像处理是一门涉及数字图像处理和计算机视觉的跨学科领域。
去噪是图像处理中一个重要的任务,它的目的是减少或消除图像中的噪声,提高图像的质量和清晰度。
在图像处理中,有许多不同的去噪方法可供选择。
本文将对其中几种常见的图像去噪方法进行对比与分析。
首先是均值滤波器,它是最简单的去噪方法之一。
均值滤波器通过计算像素周围邻域的像素值的平均值来降低图像中的噪声。
它的优点是简单易懂,计算速度快,但它的效果可能不够理想,因为它会导致图像模糊。
接下来是中值滤波器,它是一种非线性滤波器。
中值滤波器通过对像素周围邻域的像素值进行排序,并选取中间值来替代当前像素的值。
它的优点是可以有效地去除椒盐噪声和激光点噪声等噪声类型,而且不会对图像的边缘和细节造成太大的损失。
然而,中值滤波器也有一些缺点,例如无法去除高斯噪声和处理大面积的噪声。
另一种常见的去噪方法是小波去噪。
小波去噪利用小波变换的多尺度分解特性,将图像分解为不同尺度的频带,然后根据频带的能量分布进行噪声和信号的分离,再对分离后的频带进行阈值处理和重构。
小波去噪的优点是可以提供较好的去噪效果,并且能够保留边缘和细节。
然而,小波去噪的计算复杂度较高,处理大尺寸的图像会耗费较多的时间。
另外,还有一种常见的图像去噪方法是非局部均值去噪(Non-local Means Denoising,NLM)。
NLM方法基于图像的纹理特征,通过计算像素周围的相似度来降噪。
它的优点是可以保持图像的纹理和细节,并且可以处理各种类型的噪声。
然而,NLM方法的计算复杂度较高,对于大尺寸的图像来说可能会耗费较多的时间。
最后,自适应滤波器也是一种常见的图像去噪方法。
自适应滤波器根据图像的局部特性来调整滤波器的参数,以达到更好的去噪效果。
它的优点是可以根据图像的特点进行自适应调整,并且可以有效地去除噪声和保留细节。
然而,自适应滤波器也存在一些缺点,例如可能会对图像的边缘造成一定的模糊。
数字图像处理中的图像去噪技术研究

数字图像处理中的图像去噪技术研究随着数字图像的广泛应用,人们对图像质量的要求也越来越高,而噪声的存在对图像的清晰度和细节信息都有很大影响。
因此,图像去噪技术的研究已经成为数字图像处理中的热点问题之一。
一、噪声的分类及其在图像中的表现噪声可分为多种类型,如加性噪声、乘性噪声、impulse噪声等。
不同的噪声类型对图像的影响不同。
加性噪声会引起图像灰度值的整体变化,使图像变得模糊,而乘性噪声则会把图像的灰度值缩放到一个更小的范围内,使图像变得更加黑暗或亮度,impulse噪声则会在图像中产生噪点。
二、常见的图像去噪技术1、中值滤波中值滤波是一种非常简单的图像去噪技术,其原理是将每个像素周围的像素值进行排序,然后选取中间的值作为该像素的灰度值。
由于中值滤波只考虑了周围像素的大小,并不关心周围像素的位置,因此对于去除impulse噪声非常有效。
但对于连续性的噪声效果就并不理想。
2、高斯滤波高斯滤波是一种基于统计学原理的图像去噪技术。
其原理是利用高斯分布函数对图像进行滤波,然后根据概率分布计算出每个像素的灰度值。
这种方法对于去除高斯噪声非常有效,但对于其他类型的噪声,它的效果并不理想。
3、小波变换去噪小波变换在图像处理中非常常见。
利用小波变换对图像进行去噪时,我们可以将图像分解成低频和高频部分,然后根据信噪比的不同来决定哪些部分需要保留。
小波变换去噪技术对于去除噪声的效果非常好,特别是在其它技术难以去除高频噪声的情况下。
三、综合比较不同的图像处理技术各有特点,因此我们在实际应用中应该根据特定的噪声类型和图像特点来选择适合的技术。
对于加性噪声,中值滤波和高斯滤波都可以起到很好的效果,而对于impulse噪声,中值滤波的效果比其他方法更好。
小波变换去噪技术最适合处理高频噪声。
四、结论图像去噪技术在数字图像处理中有着非常广泛的应用。
随着数字图像技术的发展,我们需要不断探索提高图像去噪效果的新方法,并且在实际应用中根据不同的噪声类型和图像特点进行适当的选择。
数字图像处理-python随机噪声、高斯噪声和椒盐噪声实现

数字图像处理-python随机噪声、⾼斯噪声和椒盐噪声实现⼀、随机噪声、⾼斯噪声和椒盐噪声1、效果展⽰2、代码部分import cv2import numpy as npfrom PyQt5.QtCore import QThreadimport randomclass Noise(QThread):def__init__(self):super(Noise, self).__init__()passdef random_noise(self, image, noise_num):'''添加随机噪点(实际上就是随机在图像上将像素点的灰度值变为255即⽩⾊):param image: 需要加噪的图⽚:param noise_num: 添加的噪⾳点数⽬,⼀般是上千级别的:return: img_noise'''## 参数image:,noise_num:img = cv2.imread(image)img_noise = img# cv2.imshow("src", img)rows, cols, chn = img_noise.shape# 加噪声for i in range(noise_num):x = np.random.randint(0, rows) # 随机⽣成指定范围的整数y = np.random.randint(0, cols)img_noise[x, y, :] = 255return img_noisedef sp_noise(self, image, prob):'''添加椒盐噪声image:原始图⽚prob:噪声⽐例'''image = cv2.imread(image)output = np.zeros(image.shape, np.uint8)noise_out = np.zeros(image.shape, np.uint8)thres = 1 - probfor i in range(image.shape[0]):for j in range(image.shape[1]):rdn = random.random() # 随机⽣成0-1之间的数字if rdn < prob: # 如果⽣成的随机数⼩于噪声⽐例则将该像素点添加⿊点,即椒噪声output[i][j] = 0noise_out[i][j] = 0elif rdn > thres: # 如果⽣成的随机数⼤于(1-噪声⽐例)则将该像素点添加⽩点,即盐噪声output[i][j] = 255noise_out[i][j] = 255else:output[i][j] = image[i][j] # 其他情况像素点不变noise_out[i][j] = 100result = [noise_out, output] # 返回椒盐噪声和加噪图像return resultdef gasuss_noise(self, image, mean=0, var=0.001):'''添加⾼斯噪声image:原始图像mean : 均值var : ⽅差,越⼤,噪声越⼤'''image = cv2.imread(image)image = np.array(image/255, dtype=float)#将原始图像的像素值进⾏归⼀化,除以255使得像素值在0-1之间noise = np.random.normal(mean, var ** 0.5, image.shape)#创建⼀个均值为mean,⽅差为var呈⾼斯分布的图像矩阵out = image + noise#将噪声和原始图像进⾏相加得到加噪后的图像if out.min() < 0:low_clip = -1.else:low_clip = 0.out = np.clip(out, low_clip, 1.0)#clip函数将元素的⼤⼩限制在了low_clip和1之间了,⼩于的⽤low_clip代替,⼤于1的⽤1代替 out = np.uint8(out*255)#解除归⼀化,乘以255将加噪后的图像的像素值恢复#cv.imshow("gasuss", out)noise = noise*255return [noise,out]。
数字图像处理整理经典

名词解释数字图像:是将一幅画面在空间上分割成离散的点(或像元),各点(或像元)的灰度值经量化用离散的整数来表示,形成计算机能处理的形式。
1.数字图像:一幅图像f(x,y),当x,y 和幅值f 为有限的离散数值时,称该图像为数字图像。
图像:是自然生物或人造物理的观测系统对世界的记录,是以物理能量为载体,以物质为记录介质的信息的一种形式。
数字图像处理:采用特定的算法对数字图像进行处理,以获取视觉、接口输入的软硬件所需要数字图像的过程。
图像增强:通过某种技术有选择地突出对某一具体应用有用的信息,削弱或抑制一些无用的信息。
无损压缩:可精确无误的从压缩数据中恢复出原始数据。
灰度直方图:灰度直方图是灰度级的函数,描述的是图像中具有该灰度级的像素的个数。
或:灰度直方图是指反映一幅图像各灰度级像元出现的频率。
细化:提取线宽为一个像元大小的中心线的操作。
8、8-连通的定义:对于具有值V的像素p和q ,如果q在集合N8(p)中,则称这两个像素是8-连通的。
9、中值滤波:中值滤波是指将当前像元的窗口(或领域)中所有像元灰度由小到大进行排序,中间值作为当前像元的输出值。
10、像素的邻域:邻域是指一个像元(x,y)的邻近(周围)形成的像元集合。
即{(x=p,y=q)}p、q为任意整数。
像素的四邻域:像素p(x,y)的4-邻域是:(x+1,y),(x-1,y) ,(x,y+1), (x,y-1) 11、灰度直方图:以灰度值为自变量,灰度值概率函数得到的曲线就是灰度直方图。
12.无失真编码:无失真编码是指压缩图象经解压可以恢复原图象,没有任何信息损失的编码技术。
13.直方图均衡化:直方图均衡化就是通过变换函数将原图像的直方图修正为平坦的直方图,以此来修正原图像之灰度值。
14.采样:对图像f(x,y)的空间位置坐标(x,y)的离散化以获取离散点的函数值的过程称为图像的采样。
15.量化:把采样点上对应的亮度连续变化区间转换为单个特定数码的过程,称之为量化,即采样点亮度的离散化。
数字图像噪声的研究

摘要图像,是人类获取信息和交换信息的主要来源。
人类凭借眼睛这个心灵的窗户来感知世界,图像也就成为一个重要的感知途径。
在当今信息时代,数字图像处理也成为了一门重要的技术研究。
也正因为如此,数字图像处理技术也变的尤为重要。
数字图像通过不同的处理,可以应用于不同的领域,而且这种针对性是相当的强。
但是数字图像在获取或者在传播过程中往往会受到一些噪声干扰,这些噪声都是无用的信息,他们的出现,对后续进行的一些图像处理操作,例如图像的分割、图像的复原、图像的特称提取和图像的识别等造成不同层次的影响。
对我们的工作和生活带来诸多不便。
因此,必须采用必要的方法去抑制或者消除这些噪声,减少数字图像信息的干扰。
数字图像的去噪也就成为了非常重要的一个预处理步骤。
在此基础上,本文围绕数字图像噪声进行简单系统的分析。
首先分析了图像噪声的产生,进而基于图像噪声的产生和特点,分析了几种去除噪声的滤波器,并进行MATLAB简单的仿真处理分析,最后进行一些对比分析。
关键词:数字图像,噪声,去噪,滤波注:本论文题目来源于自选AbstractImage, is the main source that people gain information and exchange of information. Relying on the windows to the soul of human eyes to perceive the world, the image has become an important pathway. In today's information age, digital image processing has become an important technology research. Also because of this, the digital image processing technology has become more and more important. Digital image by different processing, can be applied to different fields, and it is quite strong in. But digital image acquisition or in the dissemination process often will be affected by some noise, the noise is useless information, they appear, on the follow-up to some image processing operations, such as image segmentation, image restoration, image feature extraction and image recognition that caused by different levels of influence, to bring a lot of inconvenience to our life and work. Therefore, must be to suppress or eliminate the noise with the necessary methods, reduce the interference of digital image information. Digital image denoising has become a very important preprocessing step. On this basis, this paper analysis a simple system around the noise in digital images. Based on the analysis of image noise, and then the formation and characteristics of image noise based on the analysis, several noise elimination filter, and simulation analysis of MATLAB simple, finally make some comparative analysis.Key words: digital image, noise, denoising, filtering目录1 绪论 (1)1.1 数字图像噪声的研究意义 (1)1.2 数字图像噪声在国内外的研究状况 (1)1.3 论文构成及研究内容 (2)2 数字图像噪声及去噪基础理论 (3)2.1 数字图像 (3)2.2 图像噪声 (5)2.2.1 图像噪声特点 (5)2.2.2 几种常见的图像噪声 (6)2.2.3 噪声模型 (7)3 几种相关去噪方法 (9)3.1 均值滤波 (9)3.2 中值滤波 (11)3.3 频域低通滤波法 (11)3.3.1 理想低通滤波器 (12)3.3.2 巴特沃思低通滤波器 (13)3.3.3 指数低通滤波器 (13)3.3.4 梯形低通滤波 (14)4 MATLAB上的噪声生成和去除 (14)4.1 MATLAB中模拟噪声生成 (14)4.2 均值滤波法在MATLAB的实现 (16)4.3中值滤波法在MATLAB的实现 (19)4.4 理想低通滤波器在MATLAB的实现 (21)4.5 巴特沃斯低通滤波器在MATLAB的实现 (24)4.6 指数低通滤波器在MATLAB的实现 (26)4.7 梯形低通滤波器在MATLAB的实现 (28)结论 (31)参考文献 (32)致谢 (33)1 绪论1.1 数字图像噪声的研究意义众所周知,人类和很多种动物,都是通过听觉、嗅觉、触觉和视觉等一系列感觉器官来获取信息,进而可以认知事物的。
图像数据噪声处理算法效果评估

图像数据噪声处理算法效果评估摘要:图像数据噪声处理算法是数字图像处理中的重要研究领域,其目的是通过降低或消除图像中的噪声,提高图像质量。
本文通过对几种常见的图像数据噪声处理算法进行评估,分析其优缺点,并提出了一种基于深度学习的新型算法。
通过对多组实验数据进行对比分析,验证了该算法在降噪效果和保留细节方面具有优势。
1. 引言数字图像在采集、传输和存储过程中常常受到各种因素的干扰,导致产生不同程度的噪声。
这些噪声会影响到图像质量和后续处理任务的准确性。
因此,研究如何有效地降低或消除这些噪声成为了数字图像处理领域中一个重要而具有挑战性的问题。
2. 常见的图像数据噪声处理算法2.1 均值滤波均值滤波是一种基本而常用的降低高斯白噪声影响的方法。
该方法通过计算邻域内各个点灰度值的平均值来替代当前像素点的灰度值。
均值滤波简单易实现,但在处理椒盐噪声等噪声类型时效果较差。
2.2 中值滤波中值滤波是一种非线性滤波方法,通过计算邻域内各个点灰度值的中位数来替代当前像素点的灰度值。
中值滤波在处理椒盐噪声等噪声类型时效果较好,但在处理高斯白噪声时效果较差。
2.3 小波变换降噪小波变换降噪是一种基于小波分析理论的降低图像噪声的方法。
该方法通过对图像进行小波变换,将图像分解为低频和高频部分,然后对高频部分进行阈值处理来消除噪声。
小波变换降噪方法能够有效地消除高斯白噪声和椒盐噪声,但在保留图像细节方面存在一定困难。
3. 基于深度学习的图像数据降噪算法基于深度学习的图像数据降噪算法近年来受到了广泛关注。
该算法通过构建深度卷积神经网络模型,学习图像噪声与清晰图像之间的映射关系,从而实现对图像噪声的准确降低。
与传统算法相比,基于深度学习的图像数据降噪算法在降噪效果和保留细节方面具有明显优势。
4. 实验设计与结果分析本文设计了一组实验,对比了均值滤波、中值滤波、小波变换降噪和基于深度学习的图像数据降噪算法在不同场景下的效果。
实验结果表明,基于深度学习的算法在降低高斯白噪声和椒盐噪声方面具有较好效果,并且能够更好地保留图像细节。
图像数据噪声处理方法比较

图像数据噪声处理方法比较图像数据噪声处理是数字图像处理领域的一个重要研究方向。
随着数字摄影技术的快速发展,数字图像在各个领域中得到了广泛的应用,如医学影像、安全监控、计算机视觉等。
然而,由于各种噪声源的存在,如传感器噪声、传输噪声和环境噪声等,导致了图像中出现了各种类型的噪点和伪影。
因此,如何有效地进行图像数据噪声处理成为一个重要问题。
本文将对比和分析几种常见的图像数据噪声处理方法,并对其优缺点进行评估。
这些方法包括空域滤波方法、频域滤波方法和深度学习方法。
一、空域滤波方法空域滤波是一种基于直接操作原始图像空间进行处理的技术。
常见的空域滤波方法包括均值滤波、中值滤波和高斯滤波。
1. 均值滤波均值滤波是一种简单而常用的平均操作,通过计算邻近像素点灰度平均值来对图像进行滤波。
这种方法对高斯噪声有一定的抑制作用,但对于图像细节的保护较差,容易导致图像模糊。
2. 中值滤波中值滤波是一种非线性滤波方法,通过计算邻近像素点的中值来对图像进行滤波。
这种方法在去除椒盐噪声和激光点噪声方面表现出色,但在去除高斯噪声方面效果较差。
3. 高斯滤波高斯滤波是一种线性平滑技术,通过计算邻近像素点的加权平均值来对图像进行平滑处理。
这种方法在去除高斯噪声方面效果较好,但容易导致图像细节丧失。
二、频域滤波方法频域滤波是一种基于频谱分析的处理技术。
常见的频域滤波方法包括快速傅里叶变换(FFT)和小波变换(Wavelet Transform)。
1. 快速傅里叶变换快速傅里叶变换是一种将信号从时域转换到频域的技术。
通过将图像转换到频谱域进行滤波处理,可以有效地去除高频噪声。
然而,该方法对于低频噪声的去除效果较差。
2. 小波变换小波变换是一种多尺度分析技术,可以对图像进行多分辨率处理。
通过分析图像的低频和高频部分,可以有效地去除各种类型的噪声。
然而,小波变换方法的计算复杂度较高,对于大尺寸图像处理效率低下。
三、深度学习方法深度学习是一种基于神经网络的机器学习技术。
图像数据噪声处理方法比较

图像数据噪声处理方法比较摘要:图像数据噪声处理是数字图像处理领域的重要研究方向之一。
随着数字摄影技术的发展,图像噪声问题日益凸显。
本文将对几种常见的图像数据噪声处理方法进行比较,包括滤波器方法、统计方法和深度学习方法。
通过对比它们的优缺点和适用场景,为读者提供选择合适的噪声处理方法提供参考。
1. 引言随着数字摄影技术的普及,人们越来越依赖于数字图像来记录生活中的点滴。
然而,由于种种原因,数字图像中常常存在着各种各样的噪声。
这些噪声会降低图像质量、影响视觉效果和后续分析任务等。
因此,如何准确地去除这些噪声成为了研究者们关注和探索的问题。
2. 滤波器方法滤波器是最早也是最常见的一种去除图像中噪声的方法之一。
它通过对输入信号进行加权平均或者加权求和来实现去除高频成分或者低频成分的效果。
常见的滤波器方法包括均值滤波、中值滤波、高斯滤波等。
均值滤波器通过计算像素周围邻域像素的平均值来平滑图像,中值滤波器通过计算邻域像素的中位数来去除噪声,高斯滤波器通过计算邻域像素的加权平均来实现图像平滑。
这些方法简单易实现,但是对于复杂噪声和边缘信息保留效果较差。
3. 统计方法统计方法是一种基于概率统计理论的图像噪声处理方法。
它假设图像中的噪声符合一定的概率分布,并通过对图像进行数学建模和参数估计来去除噪声。
常见的统计方法包括最大似然估计、贝叶斯估计等。
最大似然估计通过最大化样本概率分布函数来选择合适参数,贝叶斯估计则在最大化样本概率分布函数基础上引入先验知识进行参数选择。
这些方法在理论上较为成熟,但对于复杂噪声和大规模数据处理效果较差。
4. 深度学习方法深度学习方法是近年来兴起的一种图像噪声处理方法。
它通过构建深度神经网络模型来学习图像噪声的特征表示和去噪模型。
深度学习方法通过大规模数据和强大的计算能力来实现对复杂噪声的建模和去除。
常见的深度学习方法包括自编码器、卷积神经网络等。
自编码器通过训练一个编码器和解码器来实现对图像特征表示和去噪,卷积神经网络则通过卷积层、池化层等操作来提取图像特征并进行去噪处理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
这次作业的内容是理解噪声的生成,同时了解各种随机噪声的特性。
第一项作业主要是监测按照不同的模型生成的随机数与原本模型的契合度,这里举了两个例子,我就来根据代码以及程序运行的结果来一一进行解释。
代码如下:
x = -5:0.1:5; %直方图的范围
y = randn(10000,1);%产生一组随机序列,10000个。
z=rand(1,10000)*10-5;
t = -5:0.01:5;
hist(y,x);%画出直方图
hold on;
xm=mean(y);
xv=var(y);
disp(xm);
disp(xv);
pdf = length(y)*0.1*exp(-t.^2/2)/sqrt(2*pi);%产生高斯概率分布pdf
plot(t,pdf,'r')%画出高斯概率分布函数
a=xcorr(y);
figure;
plot(a);
figure;
hist(z,x);
hold on;
xm=mean(z);
xv=var(z);
disp(xm);
disp(xv);
pdf = t*0+length(y)/(10/0.1);%产生均匀概率分布pdf
plot(t,pdf,'r')%画出均匀概率分布函数
im1 im2 im3
首先来看程序,程序先中定义了直方图的范围,从-5到5,其中分度值为0.1,也就是一共10/0.1=100个量化等级。
随后产生了两组随机数,y是基于高斯分布模型产生的随机数,z是均匀分布的随机数,二者都产生了10000个数据。
随后先对y这组数据进行处理,用hist函数,根据之前定义的范围,画出了这
组随机数的概率分布函数。
可以看出其基本的轮廓和正态分布还是非常接近的,但是在某些值上参差不齐,会有突然突出或者凹陷的情况。
在画完之后,程序调
用mean和var函数对这一组数据分别进行了求方差和求均值的操作。
这里的输出分别为方差0.9909,而均值为-8.9737e-04,也就是0.00089737.randn函数默认的模型是方差为1而均值为0的正态分布函数,因此生成的随机数虽然有些误差,但是在大体方向上还是遵循了这个模型的方差与均值。
随后程序中pdf = length(y)*0.1*exp(-t.^2/2)/sqrt(2*pi);这个语句,就是生成对应的高斯分布的概率密度函数。
exp(-t.^2/2)/sqrt(2*pi)这一部分很明显就是均值为0,方差为1的高斯分布的密度函数。
随后length(y)*0.1这个系数,是数据个数*分度值,来让
这个概率密度函数和画出来的条形图相吻合,也就是类似归一化的过程。
和之前的那组条形图,也就是实际随机数据的条形图画在一起,可以看出基本上是符合的。
但是由于量化等级太少而且样本数不够多,还是有在此基础上很明显的波动
的。
由于作业中要求求随机数的自相关,这里使用了xcorr函数。
自相关就是求自己和自己在不同时刻的相关性,这里的算法具体是由卷积体现的,即E(t)=f(t)*f(-t),如果在相差Δt时刻的卷积值越大,说明自身在这个时间差
上越有可能存在关系,也就是说f(t)对f(t+Δt)的影响越大。
而在im2中可以看出,只有中间有一个峰值,类似Δn的一个函数波形。
这说明这个噪声其取值是完全随机的,只有自身与自身同一时刻的相关值很大,其中某一时刻的值对其他时刻的值都没有影响。
后面程序的内容基本与前面一致,只不过生成随机数的过程换为了用rand函数,这里也是产生了-5到5范围内的随机数,从最后呈现的图中可以看出整个数据基本上也是在均值附近震荡的。
其均值和方差分别为 0.0536和8.3698,而其模型本身均值应该为0,方差应该为10*10/12=8.333,可见这一部分的随机数也是符合设定的。
还要提到的是,由于其直方图绘画的范围是-5+n*0.1+-0.05,因此两边的条形图的数值只有其他的一半。
随后我们来看第二个作业的代码与运行结果。
代码如下:
a=[0.082,0.015,0.027,0.043,0.126,0.022,0.02,0.061,0.07,0.002,0.008,0. 04,0.024,0.066,0.075,0.019,0.001,0.06,0.063,0.091,0.028,0.01,0.024,0. 002,0.02,0.001];
EC= 'A':'Z' ;
N = 1000000;
N1=10000;
P = randsample(EC,N,true,a);
P1 = randsample(EC,N1,true,a);
for i=1:26
k(i) = size(find(P == EC(i)),2);
k1(i) = size(find(P1 == EC(i)),2);
end
plot(a);
hold on;
plot(k/N,'r');
hold on;
plot(k1/N1,'b');
im4 im5
如上所示,这里参照作业中的提示,编译了这个程序,但是在要求的基础上也加以了一些自己的调整。
首先来看程序,a这个数组中存储了26个字母每一个的出现概率,其总和为1。
随后E这个数组生成了26个字母,与上面的26个概率值相对应。
随后randsample函数,生成随机符号数组,其后面的参数分别是符号来源,数据个数,符号是否可重复,各个符号出现的概率。
这里分别生成了两
个数组,一个是千万级的样本,一个是万级的样本。
随后的find语句,分别找出了样本中的26种字母,而size语句则计算出了它的个数,也就是最后曲线图需要呈现的值。
在最后这个曲线图im4中,可以看到一共只有两条线,但是程序中却写了3个plot语句。
对此的解释也很简单,在千万级的样本面前其统计结果已十分接近原函数,在大分度值的情况下二者基本上是重合的,但是万级样本还是太小,在这种分度值下无法与原本模型完全重合。
但是如im5所示,在放大多倍后可以
看出还是有极其微小的差异的。
也就是说,按照某个模型生成的随机数组,在样本个数足够多的情况下,会十分接近原始的模型,因此用这种方法产生的随机数,还是可以较为准确的体现出原本模型的一些特性。