导航:首页 > 源码编译 > 空间分割算法

空间分割算法

发布时间:2022-12-10 03:08:42

① 大数据时代空间数据挖掘的认识及其思考

引言

空间数据挖掘(Spatial Data Mining,SDM)即找出开始并不知道但是却隐藏在空间数据中潜在的、有价值的规则的过程。具体来说,空间数据挖掘就是在海量空间数据集中,结合确定集、模糊集、仿生学等理论,利用人工智能、模式识别等科学技术,提取出令人相信的、潜在有用的知识,发现空间数据集背后隐藏的规律、联系,为空间决策提供理论技术上的依据[1]。

1.空间数据挖掘的一般步骤

空间数据挖掘系统大致可以分为以下步骤:

(1)空间数据准备:选择合适的多种数据来源,包括地图数据、影像数据、地形数据、属性数据等。

(2)空间数据预处理和特征提取:数据预处理目的是去除数据中的噪声,包括对数据的清洗、数据的转换、数据的集成等。特征提取是剔除掉冗余或不相关的特征并将特征转化为适合数据挖掘的新特征。

(3)空间数据挖掘和知识评估:采用空间数据挖掘技术对空间数据进行分析处理和预测,从而发现数据背后的某种联系。然后结合具体的领域知识进行评估,看是否达到预期效果。

2.空间数据挖掘的方法研究

空间数据挖掘是一门综合型的交叉学科,结合了计算机科学、统计学、地理学等领域的很多特性,产生了大量处理空间数据的挖掘方法。

2.1 空间关联规则

关联规则挖掘是寻找数据项之间的联系,表达式形式是X→Y,其中X与Y是两种不相交的数据项集,即X∩Y=?覫。KOPERSKI K等人将关联规则与空间数据库相结合,提出了空间关联规则挖掘[2]。空间关联规则将数据项替换为了空间谓词,一般表达形式如下:

A1∧A2∧…∧An→B1∧B2∧…∧Bm(3)

令A=(A1,A2,…,An),B=(B1,B2,…,Bm),A和B分别表示Ai和Bj的谓词集合,A和B可以是空间谓词或非空间谓词,但是必须至少包含一个空间谓词且A∩B=?覫。SHEKHAR S和HUANG Y针对空间关联规则的特点提出了把关联规则的思想泛化成空间索引点集的空间同位规则的概念,在不违背空间相关性的同时用邻域替换掉了事务[3]。时空关联不仅涉及事件在空间中的关联,还考虑了空间位置和时间序列因素。国内的柴思跃、苏奋振和周成虎提出了基于周期表的时空关联规则挖掘方法[4]。

2.2 空间聚类

空间聚类分析是普通聚类分析的扩展,不能完全按照处理普通数据的聚类分析方法来处理空间数据。由于存在地理学第一定律,即空间对象之间都存在一定的相关性,因此在空间聚类分析中,对于簇内的定义,要考虑空间自相关这一因素。通过对空间数据进行自相关分析,可判断对象之间是否存在空间相关性,从而可合理判断出对象是否可以分为一簇。

基本的聚类挖掘算法有:

(1)划分聚类算法:存在n个数据对象,对于给定k个分组(k≤n),将n个对象通过基于一定目标划分规则,不停迭代、优化,直到将这n个对象分配到k个分组中,使得每组内部对象相似度大于组之间相似度。

(2)层次聚类算法:通过将数据不停地拆分与重组,最终把数据转为一棵符合一定标准的具有层次结构的聚类树。

(3)密度聚类算法:用低密度的区域对数据对象进行分割,最终将数据对象聚类成为若干高密度的区域。

(4)图聚类算法:用空间结点表示每个数据对象,然后基于一定标准形成若干子图,最后把所有子图聚类成一个包含所有空间对象的整图,子图则代表一个个空间簇。

(5)网格聚类算法:把空间区域分割成具有多重分辨率的和有网格结构特性的若干网格单元,在网格单元上对数据进行聚类。

(6)模型聚类算法:借助一定的数学模型,使用最佳拟合数据的数学模型来对数据进行聚类,每一个簇用一个概率分布表示。

仅采用一种算法通常无法达到令人满意的预期结果,王家耀、张雪萍、周海燕将遗传算法与K-均值算法结合提出了用于空间聚类分析的遗传K-均值算法[5]。现实空间环境中,存在很多像道路、桥梁、河流的障碍物,张雪萍、杨腾飞等人把K-Medoids算法与量子粒子群算法结合进行带有空间障碍约束的聚类分析[6]。

2.3 空间分类

分类,简单地说是通过学习得到一定的分类模型,然后把数据对象按照分类模型划分至预先给定类的过程。空间分类时,不仅考虑数据对象的非空间属性,还要顾及邻近对象的非空间属性对其类别的影响,是一种监督式的分析方法。

空间分类挖掘方法有统计方法、机器学习的方法和神经网络方法等。贝叶斯分类器是基于统计学的方法,利用数据对象的先验概率和贝叶斯公式计算出其后验概率,选择较大后验概率的类作为该对象映射的类别。决策树分类器是机器学习的方法,采取从上到下的贪心策略,比较决策树内部节点的属性值来往下建立决策树的各分支,每个叶节点代表满足某个条件的属性值,从根节点到叶节点的路径表示一条合适的规则。支持向量机也是机器学习的方法,思路是使用非线性映射把训练数据集映射到较高维,然后寻找出最大边缘超平面,将数据对象分类。神经网络是一种模拟人神经的网络,由一组连接的输入和输出单元组成,赋予各个连接相应的权值,通过调节各连接的权值使得数据对象得到正确分类。

针对融入空间自相关性的空间分类挖掘,SHEKHAR S等人使用空间自回归模型和基于贝叶斯的马可夫随机场进行空间分类挖掘[7],汪闽、骆剑承、周成虎等人将高斯马尔可夫随机场与支持向量机结合并将其用于遥感图像的信息提取[8]。

2.4 其他空间挖掘方法

空间数据挖掘的方法多种多样,其他还包括:空间分析的方法,即利用GIS的方法、技术和理论对空间数据进行加工处理,从而找出未知有用的信息模式;基于模糊集、粗糙集和云理论的方法可用来分析具有不确定性的空间数据;可视化方法是对空间数据对象的视觉表示,通过一定技术用图像的形式表达要分析的空间数据,从而得到其隐含的信息;国内张自嘉、岳邦珊、潘琦等人将蚁群算法与自适应滤波的模糊聚类算法相结合用以对图像进行分割[9]。

3.结论

空间数据挖掘作为数据挖掘的延伸,有很好的传统数据挖掘方法理论的基础,虽然取得了很大进步,然而其理论和方法仍需进一步的深入研究。伴随着大数据时代,面对越来越多的空间数据,提升数据挖掘的准确度和精度是一个有待研究的问题。同时现在流行的空间数据挖掘算法的时间复杂度仍停留在O(nlog(n))~O(n3)之间,处理大量的异构数据,数据挖掘算法的效率也需要进一步提高。数据挖掘在云环境下已经得到很好的应用[10],对于处理空间数据的空间云计算是有待学者们研究的方向。大多数空间数据挖掘算法没有考虑含有障碍约束的情况,如何解决现实中障碍约束问题值得探讨。带有时间属性的空间数据呈现出了一种动态、可变的空间现象,时空数据挖掘将是未来研究的重点。

由于数据挖掘涉及多种学科,其基本理论与方法也已经比较成熟,针对空间数据挖掘,如何合理地利用和拓展这些理论方法以实现对空间数据的挖掘仍将是研究人员们需要长期努力的方向。

参考文献

[1] 李德仁,王树良,李德毅.空间数据挖掘理论与应用(第2版)[M].北京:科学出版社,2013.

[2] KOPERSKI K, HAN J W. Discovery of spatial association rules in geographic information databases[C]. Procedings of the 4th International Symposium on Advances in Spatial Databases, 1995: 47-66.

[3] SHEKHAR S, HUANG Y. Discovering spatial co-location patterns: a summary of results[C]. Procedings of the 7th International Symposium on Advances in Spatial and Temporal Databases, 2001:236-256.

[4] 柴思跃,苏奋振,周成虎.基于周期表的时空关联规则挖掘方法与实验[J].地球信息科学学报,2011,13(4):455-464.

[5] 王家耀,张雪萍,周海燕.一个用于空间聚类分析的遗传K-均值算法[J].计算机工程,2006,32(3):188-190.

[6] Zhang Xueping, Du Haohua, Yang Tengfei, et al. A novel spatial clustering with obstacles constraints based on PNPSO and K-medoids[C]. Advances in Swarm Intelligence, Lecture Notes in Computer Science (LNCS), 2010: 476-483.

[7] SHEKHAR S, SCHRATER P R, VATSAVAI R R, et al.Spatial contextual classification and prediction models for mining geospatial data[J]. IEEE Transactions on Multimedia, 2002, 4(2):174-187.

[8] 汪闽,骆剑承,周成虎,等.结合高斯马尔可夫随机场纹理模型与支撑向量机在高分辨率遥感图像上提取道路网[J].遥感学报,2005,9(3):271-275.

[9] 张自嘉,岳邦珊,潘琦,等.基于蚁群和自适应滤波的模糊聚类图像分割[J].电子技术应用,2015,41(4):144-147.

[10] 石杰.云计算环境下的数据挖掘应用[J].微型机与应用,2015,34(5):13-15.

来源 | AET电子技术应用

② 急用!!!数据挖掘的六种常用算法和技术分别是什么

数据挖掘技术和算法技术:概念方法

算法:一步一步具体实现的细节

不同的目标要调用不同的技术

数据挖掘根据其目标分为说明性(Prescriptive)和描述性 (Descriptive)数据挖掘两种

不同的Data Type调用不同技术

三种数据挖掘技术

自动聚集检测;决策树;神经网络

原因: 大量的商业软件应用

覆盖了数据挖掘一个较广的范围

直接数据挖掘目标是预言,估值,分类,预定义目标变量的特征行为

神经元网络;决策树

间接数据挖掘:没有目标变量被预言,目的是发现整个数据集的结构

聚集检测

自动聚集检测

方法

K-均值是讲整个数据集分为K个聚集的算法。

K-均值聚集检测如何工作

随机选取K个记录,作为种子节点;

对剩余的记录集合,计算每个记录与K个种子节点的距离,将每个记录归到最近的那个种子节点,这样整个记录集初次划分为K个聚集;

对每个聚集,计算聚集的质心(聚集中心点);

以每个质心为种子节点,重复上述步骤,直至聚集不再改变。

Consequences of Choosing Clustering

选择距离函数

选择合适的聚集数

对聚集的解释

构造决策树

可视化看聚集如何受输入变量的影响

单变量测试

什么时候使用聚集检测

决策树

决策树分类

决策树分为分类树和回归树两种,分类树对离散变量做决策树,回归树对连续变量做决策树。

一般的数据挖掘工具,允许选择分裂条件和修剪规则,以及控制参数(最小节点的大小,最大树的深度等等),来限制决策树的overfitting。

决策树如何工作

决策树是一棵树,树的根节点是整个数据集合空间,每个分节点是对一个单一变量的测试,该测试将数据集合空间分割成两个或更多块。每个叶节点是属于单一类别的记录。

首先,通过训练集生成决策树,再通过测试集对决策树进行修剪。决策树的功能是预言一个新的记录属于哪一类。

决策树如何构建

通过递归分割的过程构建决策树。

寻找初始分裂

整个训练集作为产生决策树的集合,训练集每个记录必须是已经分好类的。

决定哪个属性(Field)域作为目前最好的分类指标。一般的做法是穷尽所有的属性域,对每个属性域分裂的好坏做出量化,计算出最好的一个分裂。量化的标准是计算每个分裂的多样性(diversity)指标GINI指标。

树增长到一棵完整的树

重复第一步,直至每个叶节点内的记录都属于同一类。

数据的修剪

选择决策树的结果

处理输入变量

树和规则

选择最好的属性的能力

什么时候使用决策树

神经网络

神经元模型

生物模型

人工神经元

神经网模型

网的拓扑结构:层次(前馈,反馈);全连通

学习方法:有教员的(出入均知道);无教员的(输出不知道)

运行机制:同步;异步

神经网络的基本特点

大量简单节点的复杂连接;高度并行处理;分布式存储,信息存在整个网中,用权值体现出来,有联想能力,可以从一个不完整的信息恢复出完整信息;自组织、自学习。

六种常用于模式识别的神经网络分类器

Hopfield Net

Harmming Net

Carpenter/Grossberg 分类器

单层感知网

多层感知网

Kohonen的自组织特性图

③ 常见的提高消隐算法效率的方法有哪些

提高消隐算法效率的常见方法(利用连贯性,将透视投影转换成平行投影,包围盒技术,背面剔除,空间分割技术,物体分层表示)
选择好的算法, 小心地实现, 同时确定程序不做额外的事。例如, 即使世界上最优化的字符复制循环也比不上不用复制。
当担心效率时, 要保持几样事情在视野中, 这很重要。首先, 虽然效率是个非常流行的话题, 它并不总是象人们想的那样重要。大多数程序的大多数代码并不是时间紧要的。当代码不是时间紧要时, 通常把代码写得清楚和可移植比达到最大效率更重要。记住, 电脑运行得非常非常快, 那些看起来 “低效率” 的代码, 也许可以编译得比较有效率, 而运行起来也没有明显的延时。
试图预知程序的 “热点” 是个非常困难的事。当要关心效率时, 使用 profiling软件来确定程序中需要得到关注的地方。通常, 实际计算时间都被外围任务占用了 (例如 I/O 或内存的分配), 可以通过使用缓冲和超高速缓存来提高速度。
即使对于时间紧要的代码, 最无效的优化技巧是忙乱于代码细节。许多常被建议的 “有效的代码技巧”, 即使是很简单的编译器也会自动完成 (例如, 用移位运算符代替二的幂次方乘)。非常多的手动优化有可能是代码变得笨重而使效率反而低下了, 同时几乎不可移植。例如, 也许可以在某台机器上提了速, 但在另一台机器上去变慢了。任何情况下, 修整代码通常最多得到线性信能提高; 更好的算法可以得到更好的回报。

④ 如何用区域生长法实现图像分割

区域生长法图像分割是直接根据像素的相似性和连通性来对图像进行聚类的算法。基本原理是,给出若干种子点,然后依次对这些种子点进行如下操作,直到种子点集合为空:判断种子点四邻域或八邻域的像素点是否和种子点相似(灰度相似或其他测度相似),如果相似则将该点加入种子点集合,否则不作处理。
该算法原理很简单,但在数据结构的组织上却需要技巧,本文介绍一种简易的数据组织方式实现该算法。

如上图所示,左图为一幅W*H大小的图像示意图,利用区域生长法图像分割算法,该图像被分割(聚类)为7块;右图为相应的数据结构,图像分割的结果属于图像空间数据,其实就是一系列的像素点坐标数组或与像素点坐标直接关联的属性数组如FLAG的数组等,这个数组的维度一定是W*H,而分割结果体现在数组元素的排列顺序:同一类别的元素连续存储。然而类别的界限无法用该数组表明,而只能用另外一个描述数组,这里我们称之为图像空间数据的“元数据”数据,这个数组的有效维度为空间数据的类别数,即7,每个元素代表的是空间数据数组中每个类别的元素个数,其实也就相应地表明了每个类别的指针位置。

⑤ 主存空间的分配和回收,

#include "iostream.h"
#include "iomanip.h"

#define nofreearea 2
#define noadequacyarea 3
#define allocated 4

#define noprocess 2
#define nosuchprocess 3
#define reclaimed 4

typedef struct TUN
{
int address;
int size;
char name;
struct TUN *next;
} usedarea , *usedtable;

typedef struct TFN
{
int address;
int size;
struct TFN *next;
} freearea, *freetable;

usedtable usedTable = NULL;
freetable freeTable = NULL;

int alloc( char processname , int processsize )
{

if( freeTable == NULL )
return 1;
freetable p = freeTable;
freetable q = p;

while( p != NULL && p->size < processsize )
{
q = p;
p = p->next;
}

if( p == NULL )
return 3;

usedtable x = new usedarea;
x->address = p->address;
x->size = processsize;
x->name = processname;
x->next = NULL;

if( p->size > processsize )
{
p->size -= processsize;
p->address += processsize;
}

else
{
if( p == freeTable )
freeTable = NULL;
else
q->next = p->next;
delete p;
}

usedtable r = usedTable;
usedtable t = r;

while( r != NULL && r->address < x->address )
{
t = r;
r = r->next;
}

if( usedTable == NULL )
usedTable = x;
else
{
x->next = r;
t->next = x;
}

return 4;
}

int Reclaim( char processname )
{
if( usedTable == NULL )
return 1;
usedtable p = usedTable;
usedtable q = p;
while( p != NULL && p->name != processname )
{
q = p;
p = p->next;
}

if( p == NULL )
return 3;

freetable r = freeTable;
freetable t = r;
freetable x;
while( r != NULL && r->address < p->address )
{
t = r;
r = r->next;
}

x = new freearea;
x->address = p->address;
x->size = p->size;
x->next = NULL;

if( r == freeTable )
{
x->next = r;
freeTable = x;
t = freeTable;
}
else
{
x->next = r;
t->next = x;
}

while( t->next != NULL && t->address + t->size == t->next->address )
{
t->size += t->next->size;
r = t->next;
t->next = t->next->next;
delete r;
}

if( p == usedTable )
{
usedTable = usedTable->next;
}
else
q->next = p->next;
delete p;

return 4;
}

int Init()
{
freeTable = new freearea;
freeTable->address = 0;
freeTable->size = 128;
freeTable->next = NULL;
return 1;
}

void processrequest()
{
char processname;
int processsize;
cout<<"...................."<<endl;
cout<<"作业名: ";
cin >> processname;
cout<<"作业长度: ";
cin >> processsize;
if(processsize<=128)
{int i;
if( alloc( processname , processsize) == 4 )
{
i=i+processsize;
if(i>128)
{cout<<"该作业超出空间"<<endl;
}
if(i<=128)
cout<<"该作业已成功获得所需空间"<<endl;
i=i+processsize;
cout<<"........................................"<<endl;

}
else
cout<<"该作业超出空间,没有获得所需空间"<<endl;
cout<<"........................................"<<endl;
return;
}
if(processsize>128)
{cout<<"该作业超出空间"<<endl;
cout<<"........................................"<<endl;
}

}

void processreclaim()
{
int processname;
cout<<"...................."<<endl;
cout<<"作业名: ";
cin >>processname;
int result = Reclaim( processname );
if( result == 4 )
cout<<"该作业已成功回收"<<endl;
else if( result == 2 || result == 1 )
cout<<"系统没有作业或该作业不存在"<<endl;
cout<<"...................."<<endl;

}

void freeTablePrint()
{
cout<<endl<<endl<<endl<<"***********************************"<<endl;
cout<<setw(10)<<"address"<<setw(10)<<"length"<<setw(10)<<"state"<<endl<<endl;
freetable p = freeTable;
usedtable q = usedTable;
int x , y;
while( p || q )
{
if( p )
x = p->address;
else
x = 0x7fffffff;
if( q )
y = q->address;
else
y = 0x7fffffff;

if( x < y )
{
cout<<setw(10)<<p->address<<setw(10)<<p->size<<setw(10)<<"空闲"<<endl;
p = p->next;
}
if( x > y )
{
cout<<setw(10)<<q->address<<setw(10)<<q->size<<setw(10)<<"已分配"<<setw(10)<<"ID="<<q->name<<endl;
q = q->next;
}
}
cout<<endl<<endl<<endl<<"************************************"<<endl<<endl<<endl;

}

void main()
{
Init();
int choose;
bool exitFlag = false;
while( !exitFlag )
{

cout<<"************************0 - 退出 ************************"<<endl;
cout<<"************************1 - 分配主存 ************************"<<endl;
cout<<"************************2 - 回收主存 ************************"<<endl;
cout<<"************************3 - 显示主存 ************************"<<endl<<endl<<endl;
cout<<"************************选择所要执行的操作:";
cin>>choose;
switch( choose )
{
case 0:
exitFlag = true;
break;
case 1:
processrequest();
break;
case 2:
processreclaim();
break;
case 3:
freeTablePrint();
break;
}
}
}

⑥ 传统的图像分割方法有哪些

1.基于阈值的分割方法

灰度阈值分割法是一种最常用的并行区域技术,它是图像分割中应用数量最多的一类。阈值分割方法实际上是输入图像f到输出图像g的变化
其中,T为阈值;对于物体的图像元素,g(i,j)=1,对于背景的图像元素,g(i,j)=0。

由此可见,阈值分割算法的关键是确定阈值,如果能确定一个适合的阈值就可准确地将图像分割开来。阈值确定后,阈值与像素点的灰度值比较和像素分割可对各像素并行地进行,分割的结果直接给出图像区域。

阈值分割的优点是计算简单、运算效率较高、速度快。在重视运算效率的应用场合(如用于软件实现),它得到了广泛应用。

2.基于区域的分割方法

区域生长和分裂合并法是两种典型的串行区域技术,其分割过程后续步骤的处理要根据前面步骤的结果进行判断而确定。

(1)区域生长

区域生长的基本思想是将具有相似性质的像素集合起来构成区域。具体先对每个需要分割的区域找一个种子像素作为生长的起点,然后将种子像素周围邻域中与种子像素有相同或相似性质的像素(根据某种事先确定的生长或相似准则来判定)合并到种子像素所在的区域中。将这些新像素当作新的种子像素继续进行上面的过程,直到再没有满足条件的像素可被包括进来。这样一个区域就长成了。

(2)区域分裂合并

区域生长是从某个或者某些像素点出发,最后得到整个区域,进而实现目标提取。分裂合并差不多是区域生长的逆过程:从整个图像出发,不断分裂得到各个子区域,然后再把前景区域合并,实现目标提取。分裂合并的假设是对于一幅图像,前景区域是由一些相互连通的像素组成的,因此,如果把一幅图像分裂到像素级,那么就可以判定该像素是否为前景像素。当所有像素点或者子区域完成判断以后,把前景区域或者像素合并就可得到前景目标。

3.基于边缘的分割方法

基于边缘的分割方法是指通过边缘检测,即检测灰度级或者结构具有突变的地方,确定一个区域的终结,即另一个区域开始的地方。不同的图像灰度不同,边界处一般有明显的边缘,利用此特征可以分割图像。

4.基于特定理论的分割方法

图像分割至今尚无通用的自身理论。随着各学科新理论和新方法的提出,出现了与一些特定理论、方法相结合的图像分割方法,主要有:基于聚类分析的图像分割方法、基于模糊集理论的分割方法等。

5.基于基因编码的分割方法

基于基因编码的分割方法是指把图像背景和目标像素用不同的基因编码表示,通过区域性的划分,把图像背景和目标分离出来的方法。该方法具有处理速度快的优点,但算法实现起来比较难。

6.基于小波变换的分割方法

小波变换是近年来得到广泛应用的数学工具,它在时域和频域都具有良好的局部化性质,并且小波变换具有多尺度特性,能够在不同尺度上对信号进行分析,因此在图像处理和分析等许多方面得到应用。

基于小波变换的阈值图像分割方法的基本思想是首先由二进小波变换将图像的直方图分解为不同层次的小波系数,然后依据给定的分割准则和小波系数选择阈值门限,最后利用阈值标出图像分割的区域。整个分割过程是从粗到细,由尺度变化来控制,即起始分割由粗略的L2(R)子空间上投影的直方图来实现,如果分割不理想,则利用直方图在精细的子空间上的小波系数逐步细化图像分割。分割算法的计算会与图像尺寸大小呈线性变化。

7.基于神经网络的分割方法

近年来,人工神经网络识别技术已经引起了广泛的关注,并应用于图像分割。基于神经网络的分割方法的基本思想是通过训练多层感知机来得到线性决策函数,然后用决策函数对像素进行分类来达到分割的目的。这种方法需要大量的训练数据。神经网络存在巨量的连接,容易引入空间信息,能较好地解决图像中的噪声和不均匀问题。选择何种网络结构是这种方法要解决的主要问题。

⑦ 黄金分割简单算法

1比0.618啊~ 黄金分割比例。~

例如说人体成黄金比的话 上身下身比为0.618:1

图形的话 长宽比是1:0.618 之类的~

还有黄金分割拍照的方法是。 长和宽都×0.618 可以画出4条线吧。~
拍人的话最好是眼睛在那4个点上。~

阅读全文

与空间分割算法相关的资料

热点内容
java常用的服务器 浏览:277
集结APP在哪里下载 浏览:798
欧洲cf玩什么服务器 浏览:527
如何连接另一台电脑上的共享文件夹 浏览:679
如何让桌面文件夹搬家到e盘 浏览:71
java自动格式化 浏览:617
ipad怎么查看文件夹大小 浏览:581
手工粘土解压球 浏览:550
在线视频教育源码 浏览:39
快四十学什么编程 浏览:754
gnumakelinux 浏览:537
视易峰云服务器怎么改系统 浏览:535
javamap取值 浏览:768
mac和win磁盘加密软件 浏览:474
苹果为什么会连接不到服务器 浏览:726
pdf格式文件如何保存 浏览:303
小霸王服务器tx什么意思 浏览:75
解释dns命令 浏览:584
dmx512怎么编程 浏览:744
北京云主机17t云服务器 浏览:232