数字处理算法程序实现毕业论文.docx

上传人:韩长文 文档编号:3931935 上传时间:2019-10-10 格式:DOCX 页数:38 大小:351.59KB
返回 下载 相关 举报
数字处理算法程序实现毕业论文.docx_第1页
第1页 / 共38页
数字处理算法程序实现毕业论文.docx_第2页
第2页 / 共38页
数字处理算法程序实现毕业论文.docx_第3页
第3页 / 共38页
数字处理算法程序实现毕业论文.docx_第4页
第4页 / 共38页
数字处理算法程序实现毕业论文.docx_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《数字处理算法程序实现毕业论文.docx》由会员分享,可在线阅读,更多相关《数字处理算法程序实现毕业论文.docx(38页珍藏版)》请在三一文库上搜索。

1、四川大学本科毕业论文数字处理算法程序实现 本科生毕业论文(设计) 题 目 数字处理算法程序实现 学 院 电子信息学院 专 业 电子信息工程 学生姓名 秦 杰 学 号 0942051088 年级 2009级 指导教师 秦 杰 教务处制表二一年 六 月 四 日 数字处理算法程序实现 专业:通信与信息工程学生:秦杰 指导老师:滕奇志摘要 数字图像处理是指通过计算机对数字化后的模拟图像进行各种处理操作的方法和技术。这些操作包括,去除杂点、增强、复原、分割、提取特征等。随着计算机技术的进步,数字图像处理也得到了很大的发展。这些处理技术被广泛运用于医学影像,天文学和石油矿业等领域。这篇论文从数字图像介绍开

2、始,使用C+中包含的CImage类在电脑存储空间中读取已有图像,逐步深入介绍数字图像处理的各种算法与每种实现相同功能不同算法的比较。设计出来的软件主要包含以下几个处理功能:图像二值化,图像的放大和缩小,时域中图像的增强处理,图像的边缘检测和聚类分析,图像的快速傅立叶变换及频域内的滤波。其中的图像增强处理是本文的重点,分别从时域和频域内分析。最后介绍了图像频域处理的方法及过程,进而分析时域与频域处理之间的关系。关键字 数字图象处理,增强,滤波 Digital Image Processing Software DesignMajor: Electronics and Information en

3、gineeringStudent: Jie Qin Supervisor: Professor TengAbstract: Digital image processing refers to the technology and method of how to process analog image which has been digitalized. These processes include wiping out noises, image enhancement, image recovery, image segmentation, extracting image fea

4、ture and so on. With the development of computer techniques, digital image processing have achieved great progress. These processing techniques have been widely used in medical imaging, astrology, petroleum mining etc. This paper starts from the introduction of digital image, using Class CImage to l

5、oad and save picture in hard disk. Then various image processing algorithm will be analyzed step by step and some of different algorithms which achieve same function will be compared to each other in terms of pros and cons. The final software mainly have following processing functions: image binariz

6、ation, image magnification and reduction, image enhancement in time domain, image edge detection and cluster analysis, FFT and frequency domain filtering. Additionally, image enhancement is the key point of this paper and will be analyzed from both time and frequency domain. At last, this paper intr

7、oduces the basic method of how to process image in frequency domain, so we can find out the relationship between time domain and frequency domain.Keywords: digital image processing, enhancement, filtering目录前言5第一章数字图像的基本处理61.1 CImage类简介71.3 图像的放大与缩小111.4 图像二值化12第二章聚类与边缘检测132.1 图像的聚类分析132.2 图像的边缘检测15第

8、三章图像增强173.1 图像的简单平滑和高斯平滑173.2 图像的中值、最大值和最小值滤波18第四章图像的频域处理214.1 快速傅立叶变换及蝶形运算214.2 图像的快速傅立叶变换244.3图像频域滤波254.3.1频域平滑滤波器264.3.2 频域锐化滤波器28参考文献29声明30致谢31附录1:外文译文(附英文原文)32前言随着电子计算机的普及,人们已经开始利用计算机软件来操作处理图像与图像信息。早期的图像处理软件的目的主要是改善图像的质量,以人的视觉为导向,改善人的视觉效果为目的。在处理中,输入的是质量较低的图像而输出的则是改善质量后的图像,常用的图像处理方法有图像增强、编码、复原、压

9、缩等。随着航空业的发展,数字图像处理也得到了充分的利用,例如在对航天探测器传输回来的几千张月球照片使用了图像处理技术,包括灰度变换、几何校正、去除噪声等方法,考虑到月球环境和太阳位置的影响,由计算机软件成功绘制出了月球的表面地图,取得了巨大成功,随后的研究中又对探测器发回的近十万张照片进行了更为复杂的处理,以至获取了月球的彩色图、地形图和全景镶嵌图,推动了数字图像处理这门学科的诞生。在以后航天发展和探测研究中,数字图像处理技术也都继续扮演着重要的角色。 不仅在航天方面图像处理技术得到了广泛的运用,在许多应用领域都受到了广泛的关注并取得了的开拓性进展,属于这些领域的有生物医学工程、机器人视觉、军

10、事制导、工业检测等,使得图像处理成为了一门前景远大、引人注目的高端学科。 概要而论,数字图像的处理所要达到的主要目的有以下三个方面:其一是提高图像的视觉质量;其二是提取图像所包含的某些特殊信息或者特征;其三是图像数据的编码压缩和变换。常用的方法也可以简要概括为以下几个方面:1)图像编码压缩;2)图像增强与复原;3)图像变换;4)图像描述;5)图像分割;6)图像分类。本论文各章节是按照图像处理方法逐步深入,从读取图像及简单操作之中认识图像的格式,和储存方式,对图像像素和操作有初步认识,进而对图像进行聚类和边缘检测,深化理解,后期根据导师指导,对图像在时域和频域内分析,实现了图像增强。此外,在第五

11、章里根据自己的兴趣,实现了图像滤镜效果的一些小功能。数字图像的基本处理 在做任何图像处理之前,我们先必须了解数字图像的基本概念。人眼所看到的任何大自然中的图像都是连续的模拟图像,其形态和形状表现都是由图像每个位置上的颜色所决定的。色度学中认为,任何颜色都是可以由红、绿、蓝三种基本颜色按照不同的比例混合得到。这三种颜色被称为三基色,简称RGB三基色。因此,自然界的图像可由基于位置的坐标三维函数来表示,即 f(x,y,z) = fred(x,y),fgreen(x,y),fblue(x,y) (1.1)图像可以分为黑白图像和彩色图像。所谓黑白图像,就是图像中每一个点都不是彩色的,即每一个点的红、绿

12、、蓝颜色的分量值都相等,即fred =fgreen = fblue (1.2)所以对于黑白图像,函数f(x,y)可以用来表示(x,y)位置处的灰度值。然而计算机所能处理的数据必须是离散的二进制码,如果要使用计算机来处理图像,模拟图像连续性的函数必须转化为离散的数据集,这一过程称作图像采集。我们可以用下图简单描绘图像采集系统:量化器采样系统成像系统f(x,y) g(x,y) gs(x,y) gd(x,y) 景物图像采样图像数字图像 图1.1 图像采集系统采样实际上是把空间坐标量化的一个过程,而量化则是将图像函数值离散化的一个过程。所以可以把采样和量化统称为数字化。至此,我们可以说数字图像其实是连

13、续图像f(x,y)的一种近似表达,在今后的图像处理编程中图像的信息可以由采用点的值所组成的矩阵来表示:f(0,0) f(0,1) f(0,M-1)f(1,0) f(1,1) f(1,M-1): : : f(N-1,0) f(N-1,1) f(N-1,M-1)图1.2 图像像素矩阵图像的像素(Pixel)就是其中每一个采样点。上面的式子中,M、N分别表示数字图像在长与宽方向上的像素个数。在我们使用的计算机中通常采用二维数组来表示数字图像的矩阵。将像素点信息按不同的方式组织或存储就得到了不同的图像格式:把图像数据存成文件就得到了图像文件。按照数字图像格式的不同图像文件一般具有不同的扩展名,常见图像

14、文件格式有位图文件(*.BMP)、PCX文件(*.PCX)、GIF文件(*.GIF)、TGA文件(*.TGA)和TIFF文件(*.TIFF)等。在Windows系统中,最常见的图像格式是位图格式,其文件的扩展名为.BMP1.1CImage类简介CImage是ATL和MFC共享的新类,它能从外部存储空间调入一个BMP、JPEG、GIF和PNG格式的图像文件并且加以显示,并且这些文件格式可以相互转换。菜单栏中的菜单项分别为:文件:子菜单分别有打开和保存操作,实现打开和保存图片的图像操作;放大与缩小:子菜单分别有25%,50%,75%,100%,全屏和自定义6个选项,分别是实现了显示图片对应百分比大

15、小的操作,自定义允许用户自行输入显示的比例;聚类与边缘检测:子菜单分别为K-均值聚类分析和边缘检测,分别事项图像的聚类分析和图像的边缘检测功能,再在边缘检测中继续添加3个算子分别为梯度算子,sobel算子和Robert算子;图像增强:子菜单分别为图像平滑,图像滤波和拉普拉斯边缘增强,分别实现对应名称上的功能,再在图像平滑中继续添加2个选项分别为简单平滑和高斯平滑,图像滤波中添加3个选项分别为中值滤波,最大值滤波和最小值滤波;图像频域处理:子菜单分别为FFT变换,频域平滑滤波器和频域锐化滤波器。再在频域平滑滤波器中加入巴特沃斯低通滤波器和高斯低通滤波器两个选项,在频域锐化滤波器中加入巴特沃斯高通

16、滤波器和高斯高通滤波器两个选项;1.2图像的读取与保存使用CImage的一般过程是这样的:首先,打开应用程序的stdafx.h文件,并添加包含CImage类的include语句:#include之后,在程序中定义一个CImage类对象,然后调用CImage:Load函数加载一个外部图像文件。最后,在重绘函数中调用CImage:Draw方法绘制图像。CImage类中的Draw方法为重载函数,其有如下定义:程序代码:BOOL Draw( HDC hDestDC, intxDest, intyDest,intnDestWidth, intnDestHeight, intxSrc, intySrc,i

17、ntnSrcWidth, intnSrcHeight );BOOL Draw( HDC hDestDC, const RECT&rectDest, const RECT&rectSrc );BOOL Draw( HDC hDestDC, intxDest, intyDest );BOOL Draw( HDC hDestDC, const POINT&pointDest );BOOL Draw( HDC hDestDC, intxDest, intyDest,intnDestWidth, intnDestHeight );BOOL Draw( HDC hDestDC, const RECT&re

18、ctDest );其中,hDestDC用来表示目标设备环境的句柄,pointDest和(xDest, yDest)用来表示图像所要显示的位置,这个位置用来指定源图像的左上角点。nDestWidth和nDestHeight分别给定图像所要显示的高度和宽度,xSrc、ySrc、nSrcWidth和nSrcHeight用来指定要显示的源图像的某个部分所在的位置和大小。rectDest和rectSrc分别用来指定目标设备环境上和源图像所要显示的某个部分的位置和大小。值得一提的是,Draw方法综合了AlphaBlend、TransparentBlt和StretchBlt函数的功能。默认情况下,Draw和

19、StretchBlt功能相同。但当图像含有Alpha通道或透明色时,它的功能又和AlphaBlend、TransparentBlt相同。因此,在一般情况下,我们都应该尽量可能调用CImage:Draw方法来绘制图像。这里开始,我们将新建一个项目名字为“ImageProcess”,逐步开始编写软件功能项。第一步,我们将完成第一个功能:当选择菜单项“文件”中的“打开”子菜单命令后,弹出一个打开文件的对话框。当选定一个图像文件后,就会在窗口客户区中显示所选择的图像内容。步骤具体可以归纳如下:首先,创建一个缺省的MFC单文档程序项目,取名为“ImageProcess”。之后,打开stdafx.h文件中

20、添加一个include语句包括CImage类,#include。之后,在view类的头文件中添加public成员变量Public:CImagem_Image;最后,在view类中添加ID号为ID_FILE_OPEN的COMMAND消息响应程序,并添加下列代码:voidCImageProcessView:OnFileOpen() / TODO: 在此添加命令处理程序代码CStringstrFilter;CFileDialogdlg(TRUE, NULL, NULL, OFN_FILEMUSTEXIST, strFilter);if(IDOK != dlg.DoModal() return;m_I

21、mage.Destroy(); / 将外部图像文件装载到CImage对象中hResult = m_Image.Load(dlg.GetFileName();if (FAILED(hResult) MessageBox(_T(调用图像文件失败!);return; / 设置主窗口标题栏内容CStringstr;str.LoadString(AFX_IDS_APP_TITLE);AfxGetMainWnd()-SetWindowText(str + _T( - ) +dlg.GetFileName(); Invalidate(); / 强制调用OnDraw(5)在CImageProcessView:

22、OnDraw函数处,添加下列代码:voidCImageProcessView:OnDraw(CDC* pDC)CImageProcessDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc);if (!m_Image.IsNull() m_Image.Draw(pDC-m_hDC,0,0);至此,图像打开功能完成,编译链接即可运行程序。下一个功能是将图片用其他的格式保存起来,CImage:Save方法能将一种图像文件格式按另一种格式保存,它的原型声明如下:HRESULT Save( LPCTSTR pszFileName, REFGUID guidFileT

23、ype= GUID_NULL);在ImageProcess基础上,继续在CImageProcess类添加ID_FILE_SAVE_AS的COMMAND消息响应函数,并编辑如下代码:voidCEx_ImageView:OnFileSaveAs() / TODO: 在此添加命令处理程序代码if (m_Image.IsNull() MessageBox(_T(你还没有打开一个要保存的图像文件!);return; CStringstrFilter;strFilter =位图文件|*.bmp|JPEG图像文件|*.jpg| GIF 图像文件|*.gif|PNG图像文件|*.png|;CFileDialo

24、gdlg(FALSE,NULL,NULL,NULL,strFilter);if ( IDOK != dlg.DoModal() return; / 如果用户没有指定文件扩展名,则为其添加一个CStringstrFileName;CStringstrExtension;strFileName = dlg.m_ofn.lpstrFile;if(dlg.m_ofn.nFileExtension = 0) switch (dlg.m_ofn.nFilterIndex) case 1:strExtension = bmp; break;case 2:strExtension = jpg; break;c

25、ase 3:strExtension = gif; break;case 4:strExtension = png; break;default:break; strFileName = strFileName + _T(.) + strExtension; / 图像保存 HRESULT hResult = m_Image.Save(strFileName);if (FAILED(hResult) MessageBox(_T(保存图像文件失败!); 1.3 图像的放大与缩小图像放大和缩小可以由CImage:Draw方法实现,在此简要说明。在CImageProcess工程的view类头文件中添加

26、float型类公有变量m_proportion,由此代表显示比例。放大缩小菜单项中的25%,50%,75%,100%和FULLSCREEN添加消息响应函数,分别在各自函数中将m_proportion赋0.25,0.5,0.75,1和2的值,再在每一个复制语句后面添加Invalidate()返回CImageProcess:OnDraw函数,使得窗口重绘,下面所需要做的就是编辑OnDraw函数中的代码使得图片可以按照我们所点击的大小显示。程序代码:voidCImageProcessView:OnDraw(CDC* pDC)CImageProcessDoc* pDoc = GetDocument()

27、;ASSERT_VALID(pDoc);if (!pDoc)return;CRect r;if(m_proportion = 2)GetClientRect(&r);elseif (!m_Image.IsNull()r.SetRect(0, 0, m_Image.GetWidth() * m_proportion, m_Image.GetHeight() *m_proportion);if(!m_Image.IsNull()m_Image.Draw(pDC-GetSafeHdc(),r);1.4 图像二值化图像二值化是数字图象处理技术里一项比较基础的技术,许多图像处理技术的预处理中也会用到二值

28、化,例如文本增强、图像分析、目标识别等。1实际上,二值化技术大多是用于确定阀值,不同的阀值决定着图像特征信息的保留与否。2其关键的技术就在于如何选取合理的阀值,根据二值化对像素点的处理方式,我们可以分为全局阀值法、局部阀值法和动态阀值法等。全局阀值法指整个图像处理过程采用单一的阀值进行图像的二值化,此阀值一般由图像整体的灰度空间分布确定,将图像中每一个像素点的灰度值与此阀值比较,若大于阀值则取前景色,否则为背景色。局部阀值法是由当前像素灰度值与其周围像素点的灰度特征共同确定像素的阀值。通过考察领域的像素点,并计算模版实现每个点与其领域点的比较。动态阀值法不仅取决于该点像素以及领域像素点的像素信

29、息还必须根据像素的坐标位置关系自动确定不同的阀值,实现动态阀值分配。一般情况下,全局阀值法适用于质量比较好的图像效果比较好,而局部阀值法适用于比较复杂的图像,比全局阀值法使用更为广泛,但是缺陷是往往会忽略图像的边界信息,使得图像二值化后的一些不同区域合并会一块大区域,实际上它们并不属于一块。为了阐述方便,这里实现的二值化使用的是全局阀值法,阀值为图像对角线上的像素点灰度值的平均,核心代码如下:for (inti =0; iiMin; i+)pixel = m_Image.GetPixel(i,i);iColorSum += GetRValue(pixel);iColorAve = iColor

30、Sum/iMin;for (inti = 0; iiMaxX; i+)for(int j = 0; jiMaxY; j+)pixel = m_Image.GetPixel(i,j);if(GetRValue(pixel)iColorAve)m_Image.SetPixelRGB(i,j,0,0,0);elsem_Image.SetPixelRGB(i,j,255,255,255);编译链接之后运行即可达到效果。第二章聚类与边缘检测2.1 图像的聚类分析聚类分析顾名思义,是将图像根据其本身图像像素点的相关性把具有相同特性的像素点归为一类,而具有不同像素点特征的划为异类,这里的像素点特征我们可以指

31、像素点的灰度值。而具有相同特征的像素点我们可以认为是灰度值大小相差不大图像的像素点。在此,我们可以使用K均值算法来聚类分析。6K均值算法的具体步骤如下:已知有20个样本,每个样本有2个特征,数据分布如图2.1:样本序列号X1X2X3X4X5X6X7X8X9X10特征X10101212367特征X20011122266X11X12X13X14X15X16X17X18X19X20特征X18678978989特征X26777788899图2.1 聚类样本第一步:令C=2,选初始聚类中心为 (2.1) (2.2) (2.3) (2.4) (2.5) (2.6) (2.7) (2.8) (2.9)第三步

32、:根据新分成的两类建立新的聚类中心 (2.10) (2.11)第四步:转第二步。第二步:重新计算 到z1(2) , z2(2) 的距离,把它们归为最近聚类中心,重新分为两类, (2.12) (2.13)第三步,更新聚类中心 (2.14) (2.15)第四步,因为Zj(3) Zj(2), j = 1,2 转第二步第二步, (2.16)第三步,更新聚类中心 (2.17) (2.18)很明显,图像数据无非也是每个像素点组成的一个二维函数,而和上例不一样的则是特征由两点距离变为每个像素点的灰度值。在上面程序的基础上,继续添加子菜单K-means,并添加事件处理函数,具体程序如附录。2.2 图像的边缘检

33、测边缘检测和轮廓跟踪是计算机识别中一中非常重要的图像处理技术。利用边缘检测,在计算机上操作可以将图像转化为利于识别的边缘灰度图,而借助轮廓跟踪技术,可以进一步得到图像的轮廓信息。作为非常重要的基础技术计算机的自动识别这项技术已经被推广到各个领域。本节主要介绍的是图像的边缘检测的原理,和其编程实现。边缘可以解释为一组相连的像素集合,它们实际位于不同的两个区域之间。本质上说,边缘是由某种算法所得到的并且具有特定特征的点的集合。可以看出,边缘是以具体的像素灰度跃变为基础,与具体的算法相关的。在边缘检测算法中所说的灰度值的微分通常都是利用领域差分得到的,所以把领域灰度微分运算也称灰度差分。算法通常通过

34、对领域内像素的灰度求一阶导数、二阶导数或者梯度来实现,这些计算可以化简为算子,直接通过算子计算源图像中领域像素点的灰度差分。在对图像具体实现中,可以将算子模版依次对源图像的每个像素进行运算,所得到是每个像素点领域灰度的差分,将结果保存为灰度图像中的像素即可。因为在计算时,灰度差分的结果通常比较小,直接将转换后的灰度图显示会使结果模糊,可以在计算完成后对差分结果乘以一个比例系数scale对差分结果进行缩放,从而可以得到一个比较清晰的边缘图像。7这里介绍用于领域灰度差分的三个算子,分别是梯度算子,Roberts算子和Sobel算子。其中Roberts算子和梯度算子是针对图像22领域的处理,梯度算子

35、通过对像素点水平和竖直方向求差分得到,Roberts算子则是通过对角线求差分法得到领域像素的灰度差分。计算公式如下8:G(A0) = scale (|A0 A1| + |A0 A2|)(2.19)R(A0) = scale (|A0 A3| + |A1 A2|)(2.20) (2.20)下图给出了两种算子在领域内计算差分的方向:A0 A1 A0 A1A2 A3 A2 A3图2.2 Robert算子 图2.3 Sobel算子Sobel算子针对的是33领域差分处理,具体操作是先后在水平和竖直方向上对领域的灰度值求差分,然后取得两个差分的最大值或者平均值,在这里我们取其的最大值,并用S(C)表示So

36、bel算子的计算结果,具体的公式如下:S(C) = max | ( N0 + N12 + N2 ) ( N4 + N52 + N6 )|, | ( N0 + N72 + N6 ) ( N2 + N32 + N4 )|S(C) = | ( N0 + N12 + N2 ) ( N4 + N52 + N6 )| + | ( N0 + N72 + N6 ) ( N2 + N32 + N4 )| / 2 N0N1N2N7CN3N6N5N4图2.4 领域模版具体源程序见附录。第三章图像增强图像增强技术是将图像进行处理以便其更用于特定的场应用。由此可以看出,图像增强技术与实际应用是息息相关的,并非孤立存在,

37、离开了特定的应用特想增强技术是完全无任何意义的。不同的应用场合所做的图像增强处理往往是不同的。例如为了方便人眼观察和为了实现及机器自动识别所做的图像增强处理是不同的,一种方便人眼观察的图像增强算法在其他的领域一般是不适用的。3图像增强所使用的算法大多都由复杂的数学公式推导而来,本章主要介绍时域平滑滤波的具体步骤方法,对算法思路进行的阐述,并不做具体原理性的推导,因为时域分析的所使用的算法都是由频域中推导而来,在第六章中会具体介绍图像的频域处理。关于像素点的领域处理在前面一章有很详细的阐述,在图像的时域平滑滤波中还有两个比较重要的概念,卷积和模版。卷积的过程是利用模版在图像像素点上做加权求和,在

38、图像处理中非常的常用。卷积的思想和并行运算相似,将原始数据与结果数据分开保存,对原始数据分块处理,在处理中保持原始数据不变,得到最终数据。其中模版是卷积计算中的核心部分,在图像处理中模版充当的是一组系数集合,图像的卷积过程实际上是通过模版在图像上移动完成的,在处理过程中,不断移动模版在图像上的位置,每当模版中心移动到图像中的某一个像素点就将其领域内的各像素点的灰度乘以模版上相对应的系数加权求和,得到运算的结果。然而通常情况下,加权求和之后的结果会远远大于原像素的灰度值,这时候往往需要把结果除以一个常数因子,可以称为衰减因子。最后将所得的结果限制在0 255之间作为中心像素点灰度值保存在结果数组

39、中。这样的过程会遍历每一个像素点的领域,直到结束。3.1 图像的简单平滑和高斯平滑图像增强处理中图像的简单平滑是最基本的方法之一,它利用对图像每个像素领域灰度的卷积运算,进行对图像像素灰度的平均化,从而减少图像中的杂点,降低图像的对比度。图像的简单平滑就是对图像中每个像素点一定领域范围内的像素灰度进行平均值运算,将运算结果作为中心像素的灰度保存在结果图灰度值的数组中,这样的操作一定程度上可以把杂点的影响分担到其领域的各像素中,111111111减少了杂点对图像的影响。我们可以利用右图所示的卷积模版,并用9作为衰减因子,可以简单地实现简单平滑。图像的高斯平滑也是利用了图像像素点领域灰度平均法,但是与简单平滑所不同的是其模版产生了变化,以至于领域不同位置的像素点被分 图3.1121242121配了不同的权值。右图给出了33领域的高斯模版,所用的衰减因子一般选用模版中所有权值的总和,这样一来就可以消除对图像整体属性的影响,摸版图中可以发现越靠近中心像素点所分配的权值越高,这样的安排使在对图像细节进行模糊的同时,更多的保留了图像总体

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1